@cling-se/widget 0.9.15 → 0.9.17

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 (133) hide show
  1. package/dist/{AddClientCallout-ab49f62b.js → AddClientCallout-064aede9.js} +5 -5
  2. package/dist/{AnswerModal-2fde5937.js → AnswerModal-f00b2576.js} +3 -3
  3. package/dist/{AttachmentItem-e54af2bb.js → AttachmentItem-614ed2ea.js} +3 -3
  4. package/dist/{BaseDatePicker-cb470a9e.js → BaseDatePicker-99d99f2b.js} +1 -1
  5. package/dist/{BaseInput-3d9f4279.js → BaseInput-4ee00e7a.js} +1 -1
  6. package/dist/{BaseUpload-26e05a5c.js → BaseUpload-7d9dd124.js} +2 -2
  7. package/dist/{BlockMedia-8cded5ef.js → BlockMedia-354eff33.js} +1 -1
  8. package/dist/{CCallout-a561eca4.js → CCallout-764d08cd.js} +2 -2
  9. package/dist/{CDropdownItem-df2fa4e1.js → CDropdownItem-ef2d7897.js} +1 -1
  10. package/dist/{CField-6545c8d4.js → CField-f8b8481d.js} +1 -1
  11. package/dist/{CSlider.vue_vue_type_style_index_0_lang-a27aef22.js → CSlider.vue_vue_type_style_index_0_lang-4a1c5561.js} +1 -1
  12. package/dist/{ClientAutocomplete-6d25f1ac.js → ClientAutocomplete-04d85a96.js} +2 -2
  13. package/dist/{ClientModal-f954d9e4.js → ClientModal-56731bee.js} +10 -12
  14. package/dist/{ColorPicker-b81d49dc.js → ColorPicker-15579f77.js} +1 -1
  15. package/dist/{CompanyModal-3c0542ed.js → CompanyModal-49b3f20e.js} +3 -3
  16. package/dist/{ContentWrapper-023e7d2e.js → ContentWrapper-6315056f.js} +12 -12
  17. package/dist/{CoverBlockSettings-bf46f7c3.js → CoverBlockSettings-34313ba7.js} +8 -8
  18. package/dist/{DocAnswer-9e30ed6c.js → DocAnswer-a53c34f6.js} +4 -4
  19. package/dist/{DocForm-d0be2afd.js → DocForm-bf97c67e.js} +577 -507
  20. package/dist/{DocFormSend-2257bdb8.js → DocFormSend-1247c216.js} +17 -17
  21. package/dist/{DocLinks-49de3d35.js → DocLinks-8bbcbd46.js} +2 -2
  22. package/dist/{DocModalBase-2e474321.js → DocModalBase-e1dee9d6.js} +1 -1
  23. package/dist/{DocPrint-b31bfe3e.js → DocPrint-dcb6b719.js} +1 -1
  24. package/dist/{DocReceipt-b28fa3e6.js → DocReceipt-d03ff3f1.js} +1 -1
  25. package/dist/{DocSendReminder-04ff970b.js → DocSendReminder-ecc36aca.js} +1 -1
  26. package/dist/{DocTextEditor-a4dc3100.js → DocTextEditor-f4b51510.js} +8 -8
  27. package/dist/{DocTimeline-c1078cae.js → DocTimeline-28430a90.js} +1 -1
  28. package/dist/{DocumentClient-0f32e0c9.js → DocumentClient-ade9af67.js} +6 -6
  29. package/dist/{DocumentLayout-9d7c3945.js → DocumentLayout-632a6f98.js} +3 -3
  30. package/dist/{DocumentLogotype-53f70c53.js → DocumentLogotype-dacee892.js} +3 -3
  31. package/dist/{EmbedInput-d69ce4f8.js → EmbedInput-a3868460.js} +2 -2
  32. package/dist/{EmbedSettings-2ec76322.js → EmbedSettings-4e3d8c41.js} +3 -3
  33. package/dist/{ErrorCallout-73785234.js → ErrorCallout-d05d6cc2.js} +1 -1
  34. package/dist/{FilePreviewModal-109c7b33.js → FilePreviewModal-31b883c3.js} +4 -4
  35. package/dist/{HeaderSettings-3d83ccfc.js → HeaderSettings-131840ed.js} +15 -15
  36. package/dist/{ImageSelectModal-75c53e98.js → ImageSelectModal-7706f79f.js} +8 -8
  37. package/dist/{ImageUploadWrapper-decbb774.js → ImageUploadWrapper-65d04b72.js} +2 -2
  38. package/dist/{Index-bff9c5af.js → Index-0dbc20a5.js} +30 -36
  39. package/dist/{Index-a1f511d2.js → Index-17db3981.js} +2 -2
  40. package/dist/{Index-d9879953.js → Index-1ec70336.js} +4 -4
  41. package/dist/{Index-d937a089.js → Index-21b9ef50.js} +2 -2
  42. package/dist/{Index-47fb4f85.js → Index-275a26f3.js} +4 -4
  43. package/dist/{Index-ffd4628c.js → Index-3a278b14.js} +4 -4
  44. package/dist/{Index-cc254b04.js → Index-4ecb48f7.js} +4 -4
  45. package/dist/{Index-226c110a.js → Index-51f43342.js} +2 -2
  46. package/dist/Index-5204e965.js +59 -0
  47. package/dist/{Index-5ec00453.js → Index-63a45208.js} +23 -29
  48. package/dist/{Index-55e3cefd.js → Index-6a2c0245.js} +4 -4
  49. package/dist/{Index-d0baff52.js → Index-860706da.js} +9 -9
  50. package/dist/{Index-dca7a282.js → Index-8c45d1e8.js} +4 -4
  51. package/dist/{Index-1ce1aa40.js → Index-9275b550.js} +3 -3
  52. package/dist/{Index-be17e087.js → Index-a6deb4ef.js} +2 -2
  53. package/dist/{Index-f553b37b.js → Index-b7ee6604.js} +1 -1
  54. package/dist/{Index-49b4cd87.js → Index-c1782811.js} +2 -2
  55. package/dist/{Index-fb376836.js → Index-c217198e.js} +5 -5
  56. package/dist/{Index-c6cfa7d2.js → Index-c3cf1a7a.js} +35 -26
  57. package/dist/{Index-22d94abb.js → Index-c5a2140d.js} +1 -1
  58. package/dist/{Index-73c44a65.js → Index-c5d2a3f3.js} +2 -2
  59. package/dist/{Index-63310172.js → Index-ca586e17.js} +13 -13
  60. package/dist/{Index-e09c49fe.js → Index-d3789f66.js} +5 -5
  61. package/dist/{Index-a463bce9.js → Index-d4b5163a.js} +4 -4
  62. package/dist/{Index-155458e8.js → Index-d54abcde.js} +6 -6
  63. package/dist/{Index-5469b8ea.js → Index-d54ff9f5.js} +8 -8
  64. package/dist/{Index-1b28d760.js → Index-d9dd3c6b.js} +7 -7
  65. package/dist/{Index-d3807403.js → Index-de220060.js} +2 -2
  66. package/dist/{Index-50af499a.js → Index-e9c20129.js} +19 -22
  67. package/dist/{Index-10bfb47a.js → Index-eb5ab752.js} +2 -2
  68. package/dist/{Index-0ee59b64.js → Index-f465338a.js} +4 -4
  69. package/dist/{Index-837d1c1e.js → Index-f7e348e2.js} +12 -12
  70. package/dist/Index-fb7d681c.js +72 -0
  71. package/dist/{Index-ce221abf.js → Index-ffb5b6ae.js} +4 -4
  72. package/dist/{InputToggleRow-30c797ff.js → InputToggleRow-281e90c1.js} +1 -1
  73. package/dist/{IsPremiumPreStep-29ac5130.js → IsPremiumPreStep-b1384bb4.js} +440 -290
  74. package/dist/{ManualPopover-e29aec0f.js → ManualPopover-d5ea2774.js} +1 -1
  75. package/dist/{MediaWrapper-5ab8b512.js → MediaWrapper-a0b4ebe8.js} +3 -3
  76. package/dist/{NotBindingText-52e7d568.js → NotBindingText-67a1409e.js} +2 -2
  77. package/dist/{PackageGroup-a8ba9e0c.js → PackageGroup-29439e17.js} +11 -11
  78. package/dist/{PdfTerms-3070a25a.js → PdfTerms-2e6c0285.js} +4 -4
  79. package/dist/{PdfViewer-ccf3911c.js → PdfViewer-371b5058.js} +2 -2
  80. package/dist/{PlainHtml-ae01e2c1.js → PlainHtml-c70dc350.js} +1 -1
  81. package/dist/PriceHeader-5ff405b6.js +339 -0
  82. package/dist/{SearchApi-c4b052bb.js → SearchApi-b14c893f.js} +2 -2
  83. package/dist/{Setup-1317a382.js → Setup-4d84f86a.js} +1 -1
  84. package/dist/{TermsSettings-01af3b70.js → TermsSettings-7072778d.js} +6 -6
  85. package/dist/{ThemeColorRow-269ca4a8.js → ThemeColorRow-37a17ce4.js} +3 -3
  86. package/dist/{ToggleBinding-dad24847.js → ToggleBinding-e04d9dfc.js} +3 -3
  87. package/dist/{UploadModal-0b1b4fdc.js → UploadModal-39f04624.js} +3 -3
  88. package/dist/{VideoPlayerInput-549aefde.js → VideoPlayerInput-55ab9dd1.js} +3 -3
  89. package/dist/{VideoPlayerSettings-ae3426d4.js → VideoPlayerSettings-1d2507e8.js} +4 -4
  90. package/dist/{VideoSelectModal-02d28522.js → VideoSelectModal-c158c88b.js} +7 -7
  91. package/dist/{answerDocumentMixin-7be9822c.js → answerDocumentMixin-5711c3ae.js} +3 -3
  92. package/dist/{cssMode-69bff585.js → cssMode-b85ed111.js} +7 -7
  93. package/dist/focusDrawerMixin-5139ff2d.js +22 -0
  94. package/dist/{formComponentsInstall-ff788fa4.js → formComponentsInstall-ea9fe0f1.js} +12 -12
  95. package/dist/formDrawerState-872f6c63.js +20 -0
  96. package/dist/{formValidationMixin-7af4cf59.js → formValidationMixin-20797066.js} +1 -1
  97. package/dist/{freemarker2-c8b91e6a.js → freemarker2-db773dc4.js} +7 -7
  98. package/dist/{handlebars-407a195e.js → handlebars-f4e59d92.js} +7 -7
  99. package/dist/{html-9fbb1e72.js → html-60722cac.js} +7 -7
  100. package/dist/{htmlMode-a62a60c0.js → htmlMode-699d17ac.js} +7 -7
  101. package/dist/{image-b55f2afd.js → image-c4536036.js} +1 -1
  102. package/dist/{index-d71d06aa.js → index-01a9890c.js} +2 -2
  103. package/dist/{index-793542d1.js → index-1f9bf410.js} +8 -8
  104. package/dist/{index-21eac157.js → index-a0dcb949.js} +1 -1
  105. package/dist/{index-76693b13.js → index-b5312c69.js} +4 -4
  106. package/dist/{index-dfb4db64.js → index-b6204795.js} +1 -1
  107. package/dist/{index-016c9a62.js → index-d9683bc3.js} +4 -4
  108. package/dist/index.es.js +3 -3
  109. package/dist/index.umd.js +452 -452
  110. package/dist/{javascript-09ef29cb.js → javascript-10d90d6d.js} +8 -8
  111. package/dist/{jsonMode-10afc369.js → jsonMode-7689792e.js} +7 -7
  112. package/dist/{liquid-233a80fe.js → liquid-d3d3f6d5.js} +7 -7
  113. package/dist/{main-d566af3b.js → main-9daa18a1.js} +7142 -7097
  114. package/dist/{mapFormMixin-c6d17f7c.js → mapFormMixin-1236b266.js} +1 -1
  115. package/dist/{publicSenderState-1c913217.js → publicSenderState-5036fa9a.js} +1 -1
  116. package/dist/{python-90cbed7b.js → python-29472e5e.js} +7 -7
  117. package/dist/{razor-0f34f5b0.js → razor-2dfcf495.js} +7 -7
  118. package/dist/{simplebar.min-7b840f57.js → simplebar.min-8422a634.js} +1 -1
  119. package/dist/style.css +2 -2
  120. package/dist/{template-6c789e3b.js → template-282dfd7f.js} +1 -1
  121. package/dist/{throttle-b4fba152.js → throttle-d4af9020.js} +2 -2
  122. package/dist/{tinycolor-72610713.js → tinycolor-e750ced7.js} +1 -1
  123. package/dist/{tippy.esm-c1d37448.js → tippy.esm-ae169d52.js} +5 -5
  124. package/dist/{tsMode-26efb298.js → tsMode-af13fa75.js} +7 -7
  125. package/dist/{typescript-06af0784.js → typescript-278dd0a0.js} +7 -7
  126. package/dist/{utils-9efb546e.js → utils-a1170d9a.js} +1 -1
  127. package/dist/{vuedraggable.umd-64934a87.js → vuedraggable.umd-e860e729.js} +1 -1
  128. package/dist/{xml-7b0b742f.js → xml-2214e1d4.js} +7 -7
  129. package/package.json +2 -3
  130. package/dist/Index-30e95a66.js +0 -76
  131. package/dist/Index-f38920d4.js +0 -69
  132. package/dist/PriceHeader-41fd73c8.js +0 -338
  133. package/dist/focusDrawerMixin-1a22fcb0.js +0 -68
@@ -1,10 +1,10 @@
1
- import { c as h, a4 as L, au as H, b as C, av as T, aw as j, ax as K, ay as Y, az as W, V as B, aA as X, aB as J, n as d, s as _, ae as y, aC as Q, g as m, aD as b, aE as ee, aF as te, aG as F, p as ne, h as R, I as M, aH as U, H as ae, aI as re, ak as ie } from "./main-d566af3b.js";
2
- import { m as v, a as w, b as se } from "./vuex.esm-4a0fff7c.js";
1
+ import { c as h, a4 as L, au as B, b as C, av as M, aw as K, ax as Y, ay as W, az as X, V as H, aA as Q, aB as J, n as d, s as P, D as ee, ae as y, aC as te, g as m, aD as _, aE as ne, aF as ae, aG as re, aH as F, p as ie, h as D, I as E, aI as U, H as se, aJ as oe, ak as le } from "./main-9daa18a1.js";
2
+ import { m as v, a as $, b as ce } from "./vuex.esm-4a0fff7c.js";
3
3
  import { a as u } from "./anime.es-e284c852.js";
4
- import { g as E } from "./image-b55f2afd.js";
5
- import "./index-21eac157.js";
6
- import { v as S } from "./index-805c56e4.js";
7
- const k = {
4
+ import { g as k } from "./image-c4536036.js";
5
+ import "./index-a0dcb949.js";
6
+ import { v as b } from "./index-805c56e4.js";
7
+ const x = {
8
8
  AD: {
9
9
  name: "Andorra",
10
10
  callingCode: "+376",
@@ -1250,27 +1250,27 @@ const k = {
1250
1250
  callingCode: "+263",
1251
1251
  currency: "USD"
1252
1252
  }
1253
- }, oe = (n) => {
1253
+ }, ue = (n) => {
1254
1254
  if (document.getElementById("stripe-js"))
1255
1255
  return n();
1256
1256
  const e = "js.stripe.com/v3/", t = document.createElement("script"), a = document.getElementsByTagName("script")[0];
1257
1257
  return t.src = `https://${e}`, t.id = "stripe-js", n && t.addEventListener("load", (r) => n(null, r), !1), a.parentNode.insertBefore(t, a), !0;
1258
- }, ce = () => oe(() => {
1258
+ }, de = () => ue(() => {
1259
1259
  window.$stripe = Stripe(h.stripe.publishableKey, { locale: L.lang || "en" });
1260
1260
  });
1261
- ce();
1262
- const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1261
+ de();
1262
+ const me = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), pe = "stripe", {
1263
1263
  LOAD_PRICES: A,
1264
- RESET_STRIPE_FORM: de,
1265
- SET_STRIPE_FORM_VALUE: me,
1264
+ RESET_STRIPE_FORM: ge,
1265
+ SET_STRIPE_FORM_VALUE: he,
1266
1266
  SET_FORM_PROMOTION: V,
1267
- SUBMIT_PROMOTION_CODE: pe,
1267
+ SUBMIT_PROMOTION_CODE: fe,
1268
1268
  SUBMIT_PAYMENT_METHOD: O,
1269
- SUBMIT_FORM_PLAN: ge,
1270
- REMOVE_SUBSCRIPTION_ITEM: he,
1269
+ SUBMIT_FORM_PLAN: ye,
1270
+ REMOVE_SUBSCRIPTION_ITEM: Ce,
1271
1271
  CONFIRM_PAYMENT: N,
1272
- SUBMIT_FORM_PAYMENT: x,
1273
- SUBMIT_FORM_PRODUCTS: ye
1272
+ SUBMIT_FORM_PAYMENT: w,
1273
+ SUBMIT_FORM_PRODUCTS: ve
1274
1274
  } = J, z = {
1275
1275
  // The term "plan" refers to a _price_ connected to a _product_ with metadata.accountType
1276
1276
  plan: { accountType: "pro", interval: "month", quantity: 1 },
@@ -1297,7 +1297,7 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1297
1297
  base: { month: null, year: null },
1298
1298
  pro: { month: null, year: null }
1299
1299
  },
1300
- form: H(z)
1300
+ form: B(z)
1301
1301
  },
1302
1302
  getters: {
1303
1303
  isPosting: ({ isPosting: n }) => n,
@@ -1357,6 +1357,8 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1357
1357
  const { accountType: t, interval: a, quantity: r } = n.form.plan;
1358
1358
  if (!t || !a)
1359
1359
  return null;
1360
+ if (t === "free")
1361
+ return { accountType: t, interval: a, quantity: r };
1360
1362
  const i = e.getPrice(t, a);
1361
1363
  return {
1362
1364
  quantity: r,
@@ -1390,7 +1392,7 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1390
1392
  * @returns {Object} Price obj on format { intervals: {}, currency }
1391
1393
  */
1392
1394
  formPrices: (n, e) => {
1393
- function t(i, s, c) {
1395
+ function t(i, s, l) {
1394
1396
  const o = i;
1395
1397
  return (!o.intervals[s] || !Object.keys(o.intervals[s]).length) && (o.intervals[s] = {
1396
1398
  subTotalBeforeDiscount: 0,
@@ -1398,8 +1400,8 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1398
1400
  subTotal: 0,
1399
1401
  totalAmount: 0,
1400
1402
  items: []
1401
- }), Object.keys(c).forEach((l) => {
1402
- Array.isArray(c[l]) ? o.intervals[s][l] = o.intervals[s][l].concat(c[l]) : o.intervals[s][l] += c[l];
1403
+ }), Object.keys(l).forEach((c) => {
1404
+ Array.isArray(l[c]) ? o.intervals[s][c] = o.intervals[s][c].concat(l[c]) : o.intervals[s][c] += l[c];
1403
1405
  }), o;
1404
1406
  }
1405
1407
  let a = {
@@ -1410,11 +1412,11 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1410
1412
  const i = (e.formPlan.amount || 0) * e.formPlan.quantity;
1411
1413
  let s = i;
1412
1414
  e.formPromotion && (e.formPromotion.amountOff ? s -= e.formPromotion.amountOff : e.formPromotion.percentOff && (s *= 1 - e.formPromotion.percentOff / 100));
1413
- const c = s * (q[e.formCustomer.region] || 0), o = s + c;
1415
+ const l = s * (q[e.formCustomer.region] || 0), o = s + l;
1414
1416
  a = t(a, e.formPlan.interval, {
1415
1417
  subTotalBeforeDiscount: i,
1416
1418
  subTotal: s,
1417
- vatAmount: c,
1419
+ vatAmount: l,
1418
1420
  totalAmount: o,
1419
1421
  items: [{
1420
1422
  name: e.formPlan.accountType,
@@ -1426,15 +1428,15 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1426
1428
  return r(), e.formProducts.forEach((i) => {
1427
1429
  const s = e.priceById(i.stripePriceStripeId);
1428
1430
  if (s) {
1429
- let c = s.interval;
1430
- s.usageType === "one_time" && (c = "oneOff");
1431
+ let l = s.interval;
1432
+ s.usageType === "one_time" && (l = "oneOff");
1431
1433
  const o = s.amount * i.quantity;
1432
- let l = o;
1433
- e.formPromotion && (e.formPromotion.amountOff ? l -= e.formPromotion.amountOff : e.formPromotion.percentOff && (l *= 1 - e.formPromotion.percentOff / 100));
1434
- const p = l * (q[e.formCustomer.region] || 0), g = l + p;
1435
- a = t(a, c, {
1434
+ let c = o;
1435
+ e.formPromotion && (e.formPromotion.amountOff ? c -= e.formPromotion.amountOff : e.formPromotion.percentOff && (c *= 1 - e.formPromotion.percentOff / 100));
1436
+ const p = c * (q[e.formCustomer.region] || 0), g = c + p;
1437
+ a = t(a, l, {
1436
1438
  subTotalBeforeDiscount: o,
1437
- subTotal: l,
1439
+ subTotal: c,
1438
1440
  vatAmount: p,
1439
1441
  totalAmount: g,
1440
1442
  items: [{
@@ -1451,21 +1453,21 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1451
1453
  async [A]({ commit: n }) {
1452
1454
  try {
1453
1455
  n("setFetching", !0);
1454
- const { data: e } = await T.getPrices();
1456
+ const { data: e } = await M.getPrices();
1455
1457
  n("setPrices", { data: e }), n("setActivePriceMap");
1456
1458
  } catch (e) {
1457
1459
  this.handleError(e, {
1458
- action: `${ue}/${A}`,
1460
+ action: `${pe}/${A}`,
1459
1461
  actionPayload: null
1460
1462
  });
1461
1463
  } finally {
1462
1464
  n("setFetching", !1);
1463
1465
  }
1464
1466
  },
1465
- async [de]({ commit: n }) {
1466
- n("setForm", H(z));
1467
+ async [ge]({ commit: n }) {
1468
+ n("setForm", B(z));
1467
1469
  },
1468
- async [me]({ commit: n }, { key: e, value: t }) {
1470
+ async [he]({ commit: n }, { key: e, value: t }) {
1469
1471
  n("setFormValue", { key: e, value: t });
1470
1472
  },
1471
1473
  [V]({ commit: n, getters: e }, { promotionDetails: t, code: a = null } = {}) {
@@ -1474,12 +1476,12 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1474
1476
  const { appliesToStripeProductIds: r } = t, { stripeProductId: i } = e.formPlan || {};
1475
1477
  return Array.isArray(r) && !r.includes(i) ? !1 : (n("setFormValue", { key: "promotion", value: { ...t, code: a } }), !0);
1476
1478
  },
1477
- async [pe]({ commit: n, getters: e, dispatch: t }, a) {
1479
+ async [fe]({ commit: n, getters: e, dispatch: t }, a) {
1478
1480
  try {
1479
1481
  if (e.isPosting || !a)
1480
1482
  return !1;
1481
1483
  n("setPosting", !0);
1482
- const { data: r } = await j(a);
1484
+ const { data: r } = await K(a);
1483
1485
  return t(V, { promotionDetails: r, code: a });
1484
1486
  } catch {
1485
1487
  return !1;
@@ -1499,8 +1501,8 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1499
1501
  const { paymentMethod: a = {}, error: r } = await t.createPaymentMethod("card", e);
1500
1502
  if (r)
1501
1503
  throw new Error(r.message || "Card Error");
1502
- const { id: i } = a, { last4: s, brand: c } = a.card || {};
1503
- return { id: i, last4: s, brand: c };
1504
+ const { id: i } = a, { last4: s, brand: l } = a.card || {};
1505
+ return { id: i, last4: s, brand: l };
1504
1506
  } catch (a) {
1505
1507
  return this.handleError(a), null;
1506
1508
  } finally {
@@ -1515,43 +1517,43 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1515
1517
  * @param {Boolean} obj.removeUnusedItems Optional if items not specified should be removed, defaults true
1516
1518
  * @returns {Promise<Boolean>} Resolves with true if successful, otherwise false
1517
1519
  */
1518
- async [x]({ commit: n, getters: e, dispatch: t }, { form: a, stripe: { cardElement: r } = {}, removeUnusedItems: i = !0 } = {}) {
1520
+ async [w]({ commit: n, getters: e, dispatch: t }, { form: a, stripe: { cardElement: r } = {}, removeUnusedItems: i = !0 } = {}) {
1519
1521
  try {
1520
1522
  n("setPosting", !0), n("setFormValue", { key: "error", value: null });
1521
- const { items: s } = a, { formCustomer: c, formPromotion: o, customer: l, formDealSource: p } = e;
1523
+ const { items: s } = a, { formCustomer: l, formPromotion: o, customer: c, formDealSource: p } = e;
1522
1524
  let g;
1523
1525
  r && (g = await t(O, { cardElement: r }));
1524
- const P = { ...c, items: s };
1525
- g && (P.paymentMethod = g), o && o.code && (P.promotionCode = o.code), p && (P.dealSource = p);
1526
- const { data: Z = {} } = await T.product(P, { removeUnusedItems: i }), { clientSecrets: $ } = Z, D = g && g.id ? g.id : l && l.paymentMethodId;
1527
- return $ && $.length && D ? await t(N, { clientSecrets: $, paymentMethodId: D }) : !0;
1526
+ const S = { ...l, items: s };
1527
+ g && (S.paymentMethod = g), o && o.code && (S.promotionCode = o.code), p && (S.dealSource = p);
1528
+ const { data: Z = {} } = await M.product(S, { removeUnusedItems: i }), { clientSecrets: T } = Z, R = g && g.id ? g.id : c && c.paymentMethodId;
1529
+ return T && T.length && R ? await t(N, { clientSecrets: T, paymentMethodId: R }) : !0;
1528
1530
  } catch (s) {
1529
1531
  this.handleError(s);
1530
- const c = (s.errorCode ? le(s.errorCode) : "") || s.message;
1531
- return n("setFormValue", { key: "error", value: c || "Submit Form Payment Error" }), !1;
1532
+ const l = (s.errorCode ? me(s.errorCode) : "") || s.message;
1533
+ return n("setFormValue", { key: "error", value: l || "Submit Form Payment Error" }), !1;
1532
1534
  } finally {
1533
1535
  n("setPosting", !1);
1534
1536
  }
1535
1537
  },
1536
- async [ge]({ commit: n, dispatch: e, getters: t }, { cardElement: a } = {}) {
1538
+ async [ye]({ commit: n, dispatch: e, getters: t }, { cardElement: a } = {}) {
1537
1539
  try {
1538
- const { formPlan: r, formProducts: i, products: s, subscriptionItems: c } = t;
1540
+ const { formPlan: r, formProducts: i, products: s, subscriptionItems: l } = t;
1539
1541
  if (!r)
1540
1542
  return !1;
1541
- const o = [...c], l = o.findIndex((p) => C(s[p.stripeProductStripeId], "metadata.accountType"));
1542
- return l !== -1 && o.splice(l, 1), o.push({
1543
+ const o = [...l], c = o.findIndex((p) => C(s[p.stripeProductStripeId], "metadata.accountType"));
1544
+ return c !== -1 && o.splice(c, 1), o.push({
1543
1545
  stripePriceStripeId: r.stripeId,
1544
1546
  stripeProductStripeId: r.stripeProductId,
1545
1547
  quantity: r.quantity
1546
- }), o.push(...i), await e(x, { form: { items: o }, stripe: { cardElement: a } });
1548
+ }), o.push(...i), await e(w, { form: { items: o }, stripe: { cardElement: a } });
1547
1549
  } catch (r) {
1548
1550
  return this.handleError(r), n("setFormValue", { key: "error", value: r.message || "Submit Plan Error" }), !1;
1549
1551
  }
1550
1552
  },
1551
- async [ye]({ commit: n, dispatch: e, getters: t }, { cardElement: a, removeUnusedItems: r = !0 } = {}) {
1553
+ async [ve]({ commit: n, dispatch: e, getters: t }, { cardElement: a, removeUnusedItems: r = !0 } = {}) {
1552
1554
  try {
1553
1555
  const { formProducts: i } = t, s = [...i];
1554
- return s.length ? await e(x, { form: { items: s }, stripe: { cardElement: a }, removeUnusedItems: r }) : !1;
1556
+ return s.length ? await e(w, { form: { items: s }, stripe: { cardElement: a }, removeUnusedItems: r }) : !1;
1555
1557
  } catch (i) {
1556
1558
  return this.handleError(i), n("setFormValue", { key: "error", value: i.message || "Submit Products Error" }), !1;
1557
1559
  }
@@ -1576,8 +1578,8 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1576
1578
  throw new Error("Param clientSecrets needs to be an array");
1577
1579
  return await e.reduce(async (i, s) => {
1578
1580
  await i;
1579
- const { paymentIntent: c, error: o } = await a.confirmCardPayment(s, { payment_method: t });
1580
- return o ? (o.message && n("setFormValue", { key: "error", value: o.message }), await T.cancelAll({ immediately: !0, status: "incomplete" }), !1) : c && c.status === "succeeded";
1581
+ const { paymentIntent: l, error: o } = await a.confirmCardPayment(s, { payment_method: t });
1582
+ return o ? (o.message && n("setFormValue", { key: "error", value: o.message }), await M.cancelAll({ immediately: !0, status: "incomplete" }), !1) : l && l.status === "succeeded";
1581
1583
  }, Promise.resolve());
1582
1584
  } catch (r) {
1583
1585
  return this.handleError(r), !1;
@@ -1591,14 +1593,14 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1591
1593
  * @param {String} obj.stripePriceStripeId priceId to remove
1592
1594
  * @returns {Promise<Boolean>} Resolves with true if successful, otherwise false
1593
1595
  */
1594
- async [he]({ commit: n, dispatch: e, getters: t }, { stripePriceStripeId: a }) {
1596
+ async [Ce]({ commit: n, dispatch: e, getters: t }, { stripePriceStripeId: a }) {
1595
1597
  try {
1596
1598
  if (!a)
1597
1599
  throw new Error("Missing parameter stripePriceStripeId");
1598
1600
  n("setPosting", !0);
1599
1601
  const { subscriptionItems: r } = t;
1600
1602
  let i = [...r];
1601
- return i = i.filter((s) => s.stripePriceStripeId !== a), await e(x, { form: { items: i } });
1603
+ return i = i.filter((s) => s.stripePriceStripeId !== a), await e(w, { form: { items: i } });
1602
1604
  } catch (r) {
1603
1605
  return this.handleError(r), !1;
1604
1606
  } finally {
@@ -1620,8 +1622,8 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1620
1622
  setPrices: (n, { data: e = [] }) => {
1621
1623
  if (typeof e != "object")
1622
1624
  throw Error("Data must be a priceItem or array of priceItems!");
1623
- const t = Array.isArray(e) ? e : [e], { ids: a, values: r } = K(t, { keyId: "stripeId" });
1624
- Y(n.prices, r), n.priceIds = W([...a, ...n.priceIds]);
1625
+ const t = Array.isArray(e) ? e : [e], { ids: a, values: r } = Y(t, { keyId: "stripeId" });
1626
+ W(n.prices, r), n.priceIds = X([...a, ...n.priceIds]);
1625
1627
  },
1626
1628
  setActivePriceMap: ({ prices: n, activePriceMap: e }) => Object.keys(n).forEach((t) => {
1627
1629
  const a = n[t], r = C(a, "StripeProduct.metadata.accountType");
@@ -1629,15 +1631,15 @@ const le = (n) => L.te(`errors:${n}`) && L.t(`errors:${n}`), ue = "stripe", {
1629
1631
  }),
1630
1632
  // --- Form ---
1631
1633
  setForm: (n, e) => {
1632
- B.set(n, "form", e);
1634
+ H.set(n, "form", e);
1633
1635
  },
1634
1636
  setFormValue: (n, { key: e, value: t }) => {
1635
- const { root: a, prop: r } = X(n, `form.${e}`);
1636
- B.set(a, r, t);
1637
+ const { root: a, prop: r } = Q(n, `form.${e}`);
1638
+ H.set(a, r, t);
1637
1639
  }
1638
1640
  }
1639
1641
  };
1640
- const fe = {
1642
+ const _e = {
1641
1643
  props: {
1642
1644
  colors: {
1643
1645
  type: Array,
@@ -1745,24 +1747,24 @@ const fe = {
1745
1747
  }
1746
1748
  }
1747
1749
  };
1748
- var Ce = function() {
1750
+ var be = function() {
1749
1751
  var e = this;
1750
1752
  return e._self._c, e._m(0);
1751
- }, ve = [function() {
1753
+ }, Pe = [function() {
1752
1754
  var n = this, e = n._self._c;
1753
1755
  return e("div", [e("canvas", { attrs: { id: "fireworks" } })]);
1754
- }], be = /* @__PURE__ */ d(
1755
- fe,
1756
- Ce,
1757
- ve,
1756
+ }], Se = /* @__PURE__ */ d(
1757
+ _e,
1758
+ be,
1759
+ Pe,
1758
1760
  !1,
1759
1761
  null,
1760
1762
  "1254a889",
1761
1763
  null,
1762
1764
  null
1763
1765
  );
1764
- const _e = be.exports;
1765
- const Pe = {
1766
+ const ke = Se.exports;
1767
+ const xe = {
1766
1768
  name: "PremiumStripeSelect",
1767
1769
  i18nOptions: {
1768
1770
  namespaces: "PremiumStripeSelect",
@@ -1804,7 +1806,7 @@ const Pe = {
1804
1806
  }),
1805
1807
  currentAccountType() {
1806
1808
  var n;
1807
- return (n = this.currentPlan) == null ? void 0 : n.accountType;
1809
+ return ((n = this.currentPlan) == null ? void 0 : n.accountType) || "free";
1808
1810
  },
1809
1811
  currentInterval() {
1810
1812
  var n;
@@ -1829,15 +1831,17 @@ const Pe = {
1829
1831
  },
1830
1832
  methods: {
1831
1833
  getPriceFormatted(n) {
1834
+ if (n.accountType === "free")
1835
+ return "";
1832
1836
  const { amount: e, currency: t } = this.getPrice(n.accountType, this.interval) || {};
1833
1837
  if (typeof e > "u" || typeof t > "u")
1834
1838
  return "";
1835
1839
  const a = e / (this.interval === "month" ? 1 : 12);
1836
- return `${_(a, { currency: t })}/${this.$t("_common:month")}`;
1840
+ return `${P(a, { currency: t })}/${this.$t("_common:month")}`;
1837
1841
  }
1838
1842
  }
1839
1843
  };
1840
- var Se = function() {
1844
+ var we = function() {
1841
1845
  var e = this, t = e._self._c;
1842
1846
  return t("div", { staticClass: "flex flex-col items-center w-full animating", staticStyle: { "padding-top": "30px" } }, [t("div", { staticClass: "flex flex-col items-center w-full text-center anim-block", staticStyle: { "margin-bottom": "50px" } }, [t("div", { staticStyle: { "font-size": "22px", "font-weight": "600", "margin-bottom": "20px", "max-width": "20ch" }, domProps: { innerHTML: e._s(e.$t("title", { brand: e.$t("_common:brand.name") })) } }), t("div", { staticStyle: { position: "relative" } }, [t("div", { staticClass: "tgl-btn-group" }, e._l([
1843
1847
  "month",
@@ -1853,24 +1857,24 @@ var Se = function() {
1853
1857
  selected: e.plan === a.accountType
1854
1858
  }, on: { click: function(i) {
1855
1859
  return e.$emit("update:plan", a.accountType);
1856
- } } }, [t("div", [t("img", { staticStyle: { "box-shadow": "0 4px 6px rgba(240, 147, 234, 0.34)", "border-radius": "50%" }, attrs: { src: a.img, alt: a.name, width: "50", height: "50" } })]), t("div", { staticClass: "PriceItem__title" }, [t("span", { domProps: { textContent: e._s(a.name) } }), e._v("   ")]), e.currentAccountType === a.accountType ? t("svg", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.$t("currentPlan"), expression: "$t('currentPlan')" }], staticClass: "absolute right-0 top-0 rounded-tr-lg text-gray-400 [.selected_&]:text-primary-500", attrs: { width: "50", height: "50", viewBox: "0 0 70 70", fill: "none", xmlns: "http://www.w3.org/2000/svg" } }, [t("path", { attrs: { d: "M0 0H70V70L0 0Z", fill: "currentColor" } }), t("path", { attrs: { d: "M39.4203 23.5667L45 29.1464L57.0732 17.0732", stroke: "white", "stroke-width": "4" } })]) : e._e(), t("div", { staticClass: "PriceItem__cost" }, [t("span", { staticStyle: { display: "inline-block" }, domProps: { textContent: e._s(e.getPriceFormatted(a)) } }), e._v("   ")]), t("div", { staticStyle: { "font-size": "14px", "margin-bottom": "20px", color: "hsl(240, 8%, 45%)", "min-height": "2em" } }, [t("transition", { attrs: { name: "vertical-fader" } }, [e.interval === "year" ? t("span", { staticStyle: { display: "inline-block" }, domProps: { textContent: e._s(e.$t("billedYearly")) } }) : e._e()])], 1), t("ul", { staticClass: "PriceItem__text" }, e._l(a.features, function(i) {
1860
+ } } }, [t("div", [t("img", { staticStyle: { "box-shadow": "0 4px 6px rgba(240, 147, 234, 0.34)", "border-radius": "50%" }, attrs: { src: a.img, alt: a.name, width: "50", height: "50" } })]), t("div", { staticClass: "PriceItem__title" }, [t("span", { domProps: { textContent: e._s(a.name) } }), e._v("   ")]), e.currentAccountType === a.accountType ? t("svg", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.$t("currentPlan"), expression: "$t('currentPlan')" }], staticClass: "absolute right-0 top-0 rounded-tr-lg text-gray-400 [.selected_&]:text-primary-500", attrs: { width: "50", height: "50", viewBox: "0 0 70 70", fill: "none", xmlns: "http://www.w3.org/2000/svg" } }, [t("path", { attrs: { d: "M0 0H70V70L0 0Z", fill: "currentColor" } }), t("path", { attrs: { d: "M39.4203 23.5667L45 29.1464L57.0732 17.0732", stroke: "white", "stroke-width": "4" } })]) : e._e(), t("div", { staticClass: "PriceItem__cost" }, [t("span", { staticStyle: { display: "inline-block" }, domProps: { textContent: e._s(e.getPriceFormatted(a)) } }), e._v("   ")]), t("div", { staticStyle: { "font-size": "14px", "margin-bottom": "20px", color: "hsl(240, 8%, 45%)", "min-height": "2em" } }, [t("transition", { attrs: { name: "vertical-fader" } }, [e.interval === "year" && a.accountType !== "free" ? t("span", { staticStyle: { display: "inline-block" }, domProps: { textContent: e._s(e.$t("billedYearly")) } }) : e._e()])], 1), t("ul", { staticClass: "PriceItem__text" }, e._l(a.features, function(i) {
1857
1861
  return t("li", { key: i }, [t("span", { domProps: { textContent: e._s(i) } })]);
1858
1862
  }), 0)]);
1859
- }), 0), t("CButton", { staticClass: "anim-block sticky-btn", attrs: { disabled: e.currentAccountType === e.plan && e.currentInterval === e.interval, type: "secondary", "icon-right": "arrow-right" }, on: { click: function(a) {
1863
+ }), 0), t("CButton", { staticClass: "anim-block sticky-btn", attrs: { disabled: e.currentAccountType === e.plan && e.currentInterval === e.interval || e.plan === "free", type: "secondary", "icon-right": "arrow-right" }, on: { click: function(a) {
1860
1864
  return e.$emit("next");
1861
1865
  } } }, [e._v(e._s(e.$t("continueButton")))])], 1);
1862
- }, ke = [], xe = /* @__PURE__ */ d(
1863
- Pe,
1864
- Se,
1865
- ke,
1866
+ }, $e = [], Te = /* @__PURE__ */ d(
1867
+ xe,
1868
+ we,
1869
+ $e,
1866
1870
  !1,
1867
1871
  null,
1868
- "07f8ee65",
1872
+ "61cc7791",
1869
1873
  null,
1870
1874
  null
1871
1875
  );
1872
- const we = xe.exports;
1873
- const $e = {
1876
+ const Me = Te.exports;
1877
+ const Ee = {
1874
1878
  props: {
1875
1879
  defaultOpen: {
1876
1880
  type: Boolean,
@@ -1933,22 +1937,22 @@ const $e = {
1933
1937
  }
1934
1938
  }
1935
1939
  };
1936
- var Te = function() {
1940
+ var Ie = function() {
1937
1941
  var e = this, t = e._self._c;
1938
1942
  return t("div", [t("div", { on: { click: function(a) {
1939
1943
  e.expanded = !e.expanded;
1940
1944
  } } }, [e._t("trigger", null, { expanded: e.expanded })], 2), t("transition", { on: { enter: e.onEnter, "after-enter": e.onAfterEnter, "before-leave": e.onBeforeLeave, leave: e.onLeave } }, [e.expanded ? t("div", { ref: "wrapper", staticClass: "c-accordion", style: e.wrapperStyle }, [t("div", { ref: "inner", staticClass: "c-accordion__inner" }, [e._t("default")], 2)]) : e._e()])], 1);
1941
- }, Me = [], Ee = /* @__PURE__ */ d(
1942
- $e,
1943
- Te,
1944
- Me,
1945
+ }, Le = [], De = /* @__PURE__ */ d(
1946
+ Ee,
1947
+ Ie,
1948
+ Le,
1945
1949
  !1,
1946
1950
  null,
1947
1951
  null,
1948
1952
  null,
1949
1953
  null
1950
1954
  );
1951
- const Ie = Ee.exports, Le = {
1955
+ const Re = De.exports, Be = {
1952
1956
  amex: {
1953
1957
  name: "American Express",
1954
1958
  logo: '<g><rect width="48" height="32" rx="4" fill="white"/><g><path d="M8.88 17.9V26.06H17.14L18 24.84L18.84 26.06H23.89V24.22H24.45C24.9584 24.2244 25.4643 24.1502 25.95 24V26.06H29.38V24.6L30.54 26.06H46.16C46.802 26.0712 47.4338 25.8977 47.98 25.56V29C47.5224 30.7722 45.9203 32.0078 44.09 32H4C1.79086 32 0 30.2091 0 28V15.4H2.28L2.75 14.18H3.87L4.33 15.4H22.67V13.94L23.83 15.4H28.64V14.66C29.3453 15.1621 30.1945 15.4217 31.06 15.4H33.93L34.39 14.18H35.51L36 15.4H40.9V13.82L41.9 15.4H45.28V7.24H41.69V8.9L40.62 7.24H37.48V9.34L36.48 7.24H31.14C30.2366 7.21382 29.3524 7.50384 28.64 8.06V7.24H11L10.4 9L9.8 7.2H5.8V9.3L4.86 7.2H1.6L0 11V4C0 1.79086 1.79086 1.31011e-07 4 1.31011e-07H44.09C45.9278 -0.0169872 47.5406 1.2205 48 3V17.9H18.86L18 19.1L17.16 17.9H8.88Z" fill="#296DB6"/><path fill-rule="evenodd" clip-rule="evenodd" d="M21.32 19.2H24.43V19.16C24.9479 19.1165 25.4595 19.2976 25.8345 19.6574C26.2096 20.0171 26.4119 20.5208 26.39 21.04C26.4028 21.5655 26.1927 22.0718 25.8116 22.4338C25.4306 22.7958 24.9141 22.9797 24.39 22.94H22.69V24.8H21.32V19.2ZM14.71 20.36V19.16H10.18V24.8H14.71V23.6H11.54V22.6H14.65V21.38H11.54V20.38L14.71 20.36ZM18.8 22L21.06 19.2H19.4L18 20.94L16.61 19.16H14.91L17.2 22L15 24.8H16.64L18 23L19.36 24.82H21.08L18.8 22ZM24.31 21.78H22.69V20.36H24.31C24.6911 20.36 25 20.6689 25 21.05C25 21.4311 24.6911 21.74 24.31 21.74V21.78ZM32.17 20.79C32.286 21.7731 31.5831 22.664 30.6 22.78L32.49 24.8H30.78L29.1 22.8H28.48V24.8H27.12V19.22H30.18C31.1631 19.104 32.054 19.8069 32.17 20.79ZM30.06 21.66H28.48V20.36H30.06C30.2378 20.3369 30.4169 20.3918 30.5511 20.5107C30.6853 20.6296 30.7615 20.8007 30.76 20.98C30.7649 21.1604 30.6898 21.3337 30.5547 21.4533C30.4196 21.573 30.2385 21.6267 30.06 21.6V21.66ZM37.36 19.22V20.42L34.19 20.38V21.38H37.28V22.6H34.19V23.6H37.36V24.8H32.81V19.22H37.36ZM41.13 21.42H39.82C39.6175 21.4607 39.4105 21.3753 39.2956 21.2036C39.1808 21.032 39.1808 20.808 39.2956 20.6364C39.4105 20.4647 39.6175 20.3793 39.82 20.42H42.25L42.79 19.22H39.86C39.3615 19.1622 38.8623 19.3225 38.4906 19.6597C38.1189 19.9969 37.9109 20.4782 37.92 20.98C37.8896 21.4469 38.0691 21.903 38.4094 22.2241C38.7498 22.5451 39.2157 22.6976 39.68 22.64H41C41.2025 22.5993 41.4095 22.6847 41.5244 22.8564C41.6392 23.028 41.6392 23.252 41.5244 23.4236C41.4095 23.5953 41.2025 23.6807 41 23.64H38.08V24.84H41C41.5039 24.8812 42.0011 24.7024 42.3634 24.3497C42.7257 23.997 42.9177 23.5049 42.89 23C42.9153 22.5378 42.7326 22.0885 42.392 21.775C42.0514 21.4615 41.5885 21.3166 41.13 21.38V21.42ZM47.46 20.42H45.03L45 20.38C44.7975 20.3393 44.5905 20.4247 44.4756 20.5964C44.3608 20.768 44.3608 20.992 44.4756 21.1636C44.5905 21.3353 44.7975 21.4207 45 21.38H46.36C47.0518 21.3089 47.7118 21.6871 48 22.32V23.66C47.7246 24.4224 46.9666 24.9003 46.16 24.82H43.29V23.62H46.18C46.3825 23.6607 46.5895 23.5753 46.7044 23.4036C46.8192 23.232 46.8192 23.008 46.7044 22.8364C46.5895 22.6647 46.3825 22.5793 46.18 22.62H44.89C44.4257 22.6776 43.9598 22.5251 43.6194 22.2041C43.2791 21.883 43.0996 21.4269 43.13 20.96C43.1209 20.4582 43.3289 19.9769 43.7006 19.6397C44.0723 19.3025 44.5715 19.1422 45.07 19.2H48L47.46 20.42Z" fill="#296DB6"/><path fill-rule="evenodd" clip-rule="evenodd" d="M25.45 10.28C25.4719 11.1815 24.8053 11.9521 23.91 12.06L25.79 14.14H24.09L22.41 12.14H21.79V14.14H20.4V8.5H23.45C23.9596 8.43317 24.473 8.59111 24.8569 8.93278C25.2408 9.27446 25.4573 9.76612 25.45 10.28ZM4.23 8.5H2.45L0 14.14H1.48L2 13H4.63L5.11 14.18H6.65L4.23 8.5ZM2.38 11.86L2.93 10.54L3.29 9.66L3.65 10.54L4.19 11.86H2.38ZM10.6 11.76L11.7 8.5H13.89V14.14H12.57V10.44V9.58L12.31 10.44L11 14.14H9.8L8.52 10.44L8.24 9.58V10.44V14.14H6.91V8.5H9.12L10.24 11.76L10.42 12.38L10.6 11.76ZM19.5 9.7V8.5H15V14.14H19.5V12.94H16.33V11.94H19.42V10.72H16.33V9.72L19.5 9.7ZM23.37 10.94H21.79V9.7H23.37C23.5471 9.68019 23.7243 9.73632 23.8577 9.85449C23.9912 9.97265 24.0683 10.1418 24.07 10.32C24.0749 10.5004 23.9998 10.6737 23.8647 10.7933C23.7296 10.913 23.5485 10.9667 23.37 10.94ZM26.11 14.14V8.5H27.48V14.14H26.11ZM31.11 9.72H32.58V8.5H31C30.2562 8.45299 29.5291 8.7337 29.0099 9.26831C28.4907 9.80292 28.2313 10.5379 28.3 11.28V11.36C28.2164 12.0915 28.4596 12.8226 28.9645 13.3583C29.4694 13.8941 30.1849 14.1801 30.92 14.14H31L31.55 12.94H31.1C30.685 12.9613 30.2819 12.7972 29.9999 12.492C29.7179 12.1868 29.586 11.772 29.64 11.36V11.28C29.5925 10.8712 29.7272 10.4621 30.0085 10.1616C30.2897 9.86113 30.6889 9.69961 31.1 9.72H31.11ZM34.09 8.5H35.89L38.3 14.18H36.76L36.28 13H33.61L33.13 14.14H31.67L34.09 8.5ZM34.05 11.86L34.57 10.54L34.93 9.66L35.27 10.54L35.81 11.86H34.05ZM42.61 11.5V8.5H44V14.14H42.35L40.26 10.96L39.9 10.34V11V14.18H38.56V8.54H40.23L42.23 11.54L42.61 12.18V11.5Z" fill="#296DB6"/></g></g>'
@@ -1988,7 +1992,11 @@ const Ie = Ee.exports, Le = {
1988
1992
  logo: i
1989
1993
  };
1990
1994
  }
1991
- }, Re = {
1995
+ };
1996
+ function j(n) {
1997
+ return n == null ? null : n.scrollHeight > n.clientHeight ? n : j(n.parentNode);
1998
+ }
1999
+ const He = {
1992
2000
  data() {
1993
2001
  return {
1994
2002
  stripeCardElementId: null,
@@ -2000,8 +2008,9 @@ const Ie = Ee.exports, Le = {
2000
2008
  // message for invalid input to Card Element
2001
2009
  card: "",
2002
2010
  // will be the object representation of the Card from Stripe Elements
2003
- cardIsComplete: !1
2011
+ cardIsComplete: !1,
2004
2012
  // Boolean if cart input is completed
2013
+ removeEventListeners: null
2005
2014
  };
2006
2015
  },
2007
2016
  created() {
@@ -2010,7 +2019,7 @@ const Ie = Ee.exports, Le = {
2010
2019
  });
2011
2020
  },
2012
2021
  beforeDestroy() {
2013
- this.card && (this.card.unmount(), this.card = null);
2022
+ this.unmountCardInput();
2014
2023
  },
2015
2024
  methods: {
2016
2025
  mountCardInput() {
@@ -2021,8 +2030,8 @@ const Ie = Ee.exports, Le = {
2021
2030
  this.stripeCardElementId && this.callCard("mount", this.stripeCardElementId);
2022
2031
  },
2023
2032
  unmountCardInput() {
2024
- var n;
2025
- this.stripeCardElementId && this.callCard("unmount", this.stripeCardElementId), this.isShadowParent() && ((n = document.querySelector(this.stripeCardElementId)) == null || n.remove());
2033
+ var n, e;
2034
+ this.stripeCardElementId && this.callCard("unmount", this.stripeCardElementId), this.card && (this.card = null), this.isShadowParent() && ((n = document.querySelector(this.stripeCardElementId)) == null || n.remove(), (e = this.removeEventListeners) == null || e.call(this));
2026
2035
  },
2027
2036
  callCard(n, e) {
2028
2037
  this.card && typeof this.card[n] == "function" && this.card[n](e);
@@ -2063,9 +2072,21 @@ const Ie = Ee.exports, Le = {
2063
2072
  var n, e;
2064
2073
  return this.isShadowParent() ? (e = (n = this.$el).getRootNode) == null ? void 0 : e.call(n) : document;
2065
2074
  },
2066
- copyInputStyle(n) {
2067
- const e = n.cloneNode(!0), { x: t, y: a } = n.getBoundingClientRect();
2075
+ repositionStripeEl({ original: n, clone: e }) {
2076
+ const { x: t, y: a } = n.getBoundingClientRect();
2068
2077
  e.style.position = "absolute", e.style.top = `${a}px`, e.style.left = `${t}px`;
2078
+ },
2079
+ copyInputStyle(n) {
2080
+ const e = n.cloneNode(!0), t = j(n), a = () => {
2081
+ this.repositionStripeEl({ original: n, clone: e });
2082
+ };
2083
+ t.addEventListener("scroll", a, {
2084
+ passive: !0
2085
+ }), window.addEventListener("resize", a), this.removeEventListeners = () => {
2086
+ t.removeEventListener("scroll", a, {
2087
+ passive: !0
2088
+ }), window.removeEventListener("resize", a);
2089
+ }, this.repositionStripeEl({ original: n, clone: e });
2069
2090
  const r = Number(
2070
2091
  window.getComputedStyle(n).getPropertyValue("--app-z-index")
2071
2092
  );
@@ -2073,7 +2094,7 @@ const Ie = Ee.exports, Le = {
2073
2094
  }
2074
2095
  }
2075
2096
  };
2076
- const De = {
2097
+ const Fe = {
2077
2098
  i18nOptions: {
2078
2099
  namespaces: "PremiumStripeForm",
2079
2100
  messages: {
@@ -2164,6 +2185,9 @@ const De = {
2164
2185
  apiDocument: "API-documents",
2165
2186
  quotaIncluded: "Each month includes a quota of {{count}} per license.",
2166
2187
  quotaExtra: "The cost for each additional one above your quota is {{cost}}."
2188
+ },
2189
+ consent: {
2190
+ label: "I accept {{brand,capitalize}}'s"
2167
2191
  }
2168
2192
  },
2169
2193
  sv: {
@@ -2253,15 +2277,19 @@ const De = {
2253
2277
  apiDocument: "API-dokument",
2254
2278
  quotaIncluded: "Varje månad inkluderar en kvot om {{ count }} st per licens.",
2255
2279
  quotaExtra: "Överskrider du din kvot så tillkommer en styckkostnad om {{ cost }}."
2280
+ },
2281
+ consent: {
2282
+ label: "Jag godkänner {{brand,capitalize}}s"
2256
2283
  }
2257
2284
  }
2258
2285
  }
2259
2286
  },
2260
2287
  name: "PremiumStripeForm",
2261
2288
  components: {
2262
- CAccordion: Ie
2289
+ CAccordion: Re,
2290
+ CCheckbox: ee
2263
2291
  },
2264
- mixins: [Re],
2292
+ mixins: [He],
2265
2293
  props: {
2266
2294
  formPlan: {
2267
2295
  type: Object,
@@ -2270,32 +2298,48 @@ const De = {
2270
2298
  uiPlan: {
2271
2299
  type: Object,
2272
2300
  required: !0
2301
+ },
2302
+ disableQuantity: {
2303
+ type: Boolean,
2304
+ default: !1
2305
+ },
2306
+ hideExtraInfo: {
2307
+ type: Boolean,
2308
+ default: !1
2309
+ },
2310
+ collectConsent: {
2311
+ type: Boolean,
2312
+ default: !1
2273
2313
  }
2274
2314
  },
2275
2315
  data() {
2276
2316
  return {
2277
- regions: k,
2278
- cardBrands: Le,
2317
+ regions: x,
2318
+ cardBrands: Be,
2279
2319
  stripeCardElementId: "#card-element",
2280
2320
  promoInputVisible: !1,
2281
2321
  inputPromotionCode: "",
2282
2322
  isEditLock: !1,
2283
2323
  isInvalidPromotionCode: !1,
2284
2324
  useExistingCard: !1,
2285
- useExistingCustomer: !1
2325
+ useExistingCustomer: !1,
2326
+ consent: !1
2286
2327
  };
2287
2328
  },
2288
2329
  validations() {
2289
2330
  return {
2290
2331
  formCustomer: {
2291
2332
  email: {
2292
- email: S.email
2333
+ email: b.email
2293
2334
  }
2294
2335
  },
2295
2336
  quantity: {
2296
- required: S.required,
2297
- minValue: S.minValue(1),
2298
- numeric: S.numeric
2337
+ required: b.required,
2338
+ minValue: b.minValue(1),
2339
+ numeric: b.numeric
2340
+ },
2341
+ consent: {
2342
+ required: (e) => b.requiredIf((t) => t.collectConsent) && e
2299
2343
  }
2300
2344
  };
2301
2345
  },
@@ -2339,7 +2383,7 @@ const De = {
2339
2383
  return (n = this.customer) == null ? void 0 : n.paymentMethodLast4;
2340
2384
  },
2341
2385
  sortedRegions() {
2342
- return (Object.keys(k) || []).map((n) => ({ key: n, title: `${k[n].name} (${n})`, callingCode: k[n].callingCode })).sort((n, e) => n.title.localeCompare(e.title));
2386
+ return (Object.keys(x) || []).map((n) => ({ key: n, title: `${x[n].name} (${n})`, callingCode: x[n].callingCode })).sort((n, e) => n.title.localeCompare(e.title));
2343
2387
  },
2344
2388
  currency() {
2345
2389
  return this.formPrices.currency;
@@ -2347,7 +2391,7 @@ const De = {
2347
2391
  promotionDescription() {
2348
2392
  let n = "- ";
2349
2393
  const { amountOff: e, percentOff: t } = this.promotion || {};
2350
- return e ? n += _(e, { currency: this.currency }) : t && (n += `${t}%`), n;
2394
+ return e ? n += P(e, { currency: this.currency }) : t && (n += `${t}%`), n;
2351
2395
  },
2352
2396
  reasonableUseQuotas() {
2353
2397
  var i;
@@ -2364,21 +2408,21 @@ const De = {
2364
2408
  }), a.forEach((s) => {
2365
2409
  if (s === "bankId" && y[h.brand].defaultRegion === "US")
2366
2410
  return;
2367
- const c = this.getMeteredProduct(s);
2368
- if (!c)
2411
+ const l = this.getMeteredProduct(s);
2412
+ if (!l)
2369
2413
  return;
2370
- const o = c.prices.find((p) => {
2414
+ const o = l.prices.find((p) => {
2371
2415
  var g;
2372
2416
  return p.active && ((g = p == null ? void 0 : p.metadata) == null ? void 0 : g.visible) === !0;
2373
2417
  });
2374
2418
  if (!o)
2375
2419
  return;
2376
- const l = _(o.amount, {
2420
+ const c = P(o.amount, {
2377
2421
  currency: o.currency,
2378
2422
  decimals: 2,
2379
2423
  hideZeroDecimals: !0
2380
2424
  });
2381
- n[s] || (n[s] = { type: s, count: 0, cost: null }), n[s].cost = l;
2425
+ n[s] || (n[s] = { type: s, count: 0, cost: null }), n[s].cost = c;
2382
2426
  }), Object.keys(n).map((s) => n[s]);
2383
2427
  }
2384
2428
  },
@@ -2403,18 +2447,18 @@ const De = {
2403
2447
  this.useExistingCard = n, this.useExistingCustomer = n, ["name", "region", "email"].forEach((t) => {
2404
2448
  this.customer[t] && this.$emit("input", { key: `customer.${t}`, value: this.customer[t] });
2405
2449
  });
2406
- const { data: e } = await Q();
2450
+ const { data: e } = await te();
2407
2451
  this.setPromotion({ promotionDetails: e });
2408
2452
  }
2409
2453
  this.companyRegion === "SE" && !this.formCustomer.region && this.$emit("input", { key: "customer.region", value: this.companyRegion }), this.routePromo && this.verifyPromotionCode(this.routePromo);
2410
2454
  },
2411
2455
  methods: {
2412
- ...w({
2456
+ ...$({
2413
2457
  usePromotionCode: m.SUBMIT_PROMOTION_CODE,
2414
2458
  setPromotion: m.SET_FORM_PROMOTION,
2415
2459
  submitPlan: m.SUBMIT_FORM_PLAN
2416
2460
  }),
2417
- priceFormat: _,
2461
+ priceFormat: P,
2418
2462
  getIntervalTitle(n) {
2419
2463
  return n === "month" ? this.$t("_common:monthly").capitalize() : n === "year" ? this.$t("_common:yearly").capitalize() : n === "oneOff" ? this.$t("oneTimeFee").capitalize() : null;
2420
2464
  },
@@ -2436,13 +2480,13 @@ const De = {
2436
2480
  }
2437
2481
  }
2438
2482
  };
2439
- var He = function() {
2483
+ var Ue = function() {
2440
2484
  var e = this, t = e._self._c;
2441
2485
  return t("div", { staticClass: "root font-inter anime-payment-modal" }, [t("div", { staticClass: "flex w-full", staticStyle: { overflow: "hidden" } }, [t("div", { staticClass: "anim-block p-aside" }, [t("div", { staticClass: "p-callout", class: e.uiPlan.accountType }, [t("div", { staticStyle: { "font-size": "11px", position: "absolute", right: "calc(0.5 * var(--rem))", top: "calc(1.5 * var(--rem))", display: "flex", "line-height": "1.2" } }, [t("div", { staticStyle: { "text-align": "right", "padding-right": "0.5em" } }, [t("div", { staticStyle: { opacity: "0.7" }, domProps: { textContent: e._s(e.$t("payYearly")) } }), t("div", { staticClass: "font-medium text-primary-500", domProps: { textContent: e._s(e.$t("saveAmount")) } })]), t("CSwitch", { attrs: { value: e.formPlan.interval === "year", size: "small", type: "secondary" }, on: { input: function(a) {
2442
2486
  return e.$emit("update:interval", e.formPlan.interval === "year" ? "month" : "year");
2443
2487
  } } })], 1), t("div", [t("img", { staticStyle: { "box-shadow": "0 4px 6px rgba(240, 147, 234, 0.34)", "border-radius": "50%", "margin-bottom": "calc(1 * var(--rem))" }, attrs: { src: e.uiPlan.img, alt: e.uiPlan.name, width: "50", height: "50" } })]), t("div", { staticStyle: { "font-weight": "600", "font-size": "21px" } }, [e._v(" " + e._s(e.$t("cardTitle", { plan: e.uiPlan.name })) + " ")]), t("div", { staticClass: "text-[15px] py-4" }, [e._l(e.formPrices.intervals, function(a, r) {
2444
2488
  return t("div", { key: `interval-${r}`, staticClass: "pb-2 mb-4 border-b border-gray-200" }, [t("div", { staticClass: "flex justify-between w-full" }, [t("div", { staticClass: "font-medium" }, [e._v(e._s(e.getIntervalTitle(r)))]), t("div", { staticClass: "text-right" }, [t("div", { staticClass: "font-semibold leading-none text-[17px]" }, [e._v(" " + e._s(e.priceFormat(a.subTotal, { currency: e.currency })) + " ")]), t("div", { staticClass: "opacity-70 text-[13px]" }, [e._v(" " + e._s(a.vatAmount ? e.$t("_common:vat.exVat", { thing: e.$t("_common:vat.vat") }) : e.$t("_common:total").capitalize()) + " "), r !== "oneOff" ? [e._v("/ " + e._s(e.$t(`_common:${r}`)) + " ")] : e._e()], 2)])]), e._l(a.items, function(i, s) {
2445
- return t("div", { key: s, staticClass: "flex justify-between w-full pb-1 mt-2" }, [t("div", { staticClass: "font-medium opacity-70" }, [e._v(" " + e._s(i.quantity) + " x " + e._s(i.name.capitalize()) + " ")]), t("div", { staticClass: "text-right opacity-70" }, [e._v(e._s(e.priceFormat(i.amount, { currency: e.currency })))])]);
2489
+ return t("div", { key: s, staticClass: "flex justify-between w-full pb-1 mt-2" }, [t("div", { staticClass: "font-medium opacity-70" }, [e._v(" " + e._s(e.disableQuantity ? "" : `${i.quantity} x `) + e._s(i.name.capitalize()) + " ")]), t("div", { staticClass: "text-right opacity-70" }, [e._v(e._s(e.priceFormat(i.amount, { currency: e.currency })))])]);
2446
2490
  })], 2);
2447
2491
  }), e.promotion ? t("div", { staticClass: "flex justify-between w-full", staticStyle: { "padding-bottom": "4px" } }, [t("div", { staticStyle: { "font-weight": "500", opacity: "0.7" } }, [e._v(e._s(e.promotion.code || e.promotion.name) + " ")]), t("div", { staticClass: "text-right has-text-danger", staticStyle: { display: "inline-flex", "justify-content": "flex-end", "align-items": "center" } }, [t("CButton", { staticStyle: { height: "inherit", "margin-right": "3px" }, attrs: { disabled: e.isEditLock, "icon-props": { size: 15 }, size: "small", type: "none", pattern: "tertiary", icon: "trash" }, on: { click: function(a) {
2448
2492
  return e.$emit("input", { key: "promotion", value: null });
@@ -2456,11 +2500,11 @@ var He = function() {
2456
2500
  return e.verifyPromotionCode(e.inputPromotionCode);
2457
2501
  } } }, [e._v(" " + e._s(e.$t("promotion.submit")) + " ")])], 1)], 2)], 1) : t("CButton", { staticStyle: { "text-decoration": "underline", "margin-right": "-1em" }, attrs: { disabled: e.isEditLock, type: "secondary", pattern: "tertiary", size: "small" }, on: { click: function(a) {
2458
2502
  e.promoInputVisible = !0;
2459
- } } }, [e._v(" " + e._s(e.$t("promotion.add")) + " ")])], 1)], 2)]), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("svg", { staticClass: "has-text-success", staticStyle: { "margin-right": "0.5em" }, attrs: { width: "17", height: "15", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 448 512" } }, [t("path", { attrs: { fill: "currentColor", d: "M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z" } })]), e._v(" " + e._s(e.$t("highlights.securePayment")) + " ")]), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("svg", { staticClass: "has-text-success", staticStyle: { "margin-right": "0.5em" }, attrs: { width: "17", height: "20", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512" } }, [t("path", { attrs: { fill: "currentColor", d: "M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4zm-144.8-44.25L236.16 341.74c-4.31 4.28-11.28 4.25-15.55-.06l-75.72-76.33c-4.28-4.31-4.25-11.28.06-15.56l26.03-25.82c4.31-4.28 11.28-4.25 15.56.06l42.15 42.49 97.2-96.42c4.31-4.28 11.28-4.25 15.55.06l25.82 26.03c4.28 4.32 4.26 11.29-.06 15.56z" } })]), e._v(" " + e._s(e.$t("highlights.satisfiedCustomer")) + " ")]), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("BaseIcon", { staticStyle: { opacity: "0.65", "margin-right": "0.5em" }, attrs: { size: 17, "stroke-width": "2", type: "question" } }), t("span", { staticStyle: { "text-decoration": "underline", opacity: "0.85", cursor: "pointer" }, domProps: { textContent: e._s(e.$t("reasonableUse.title")) }, on: { click: function(a) {
2503
+ } } }, [e._v(" " + e._s(e.$t("promotion.add")) + " ")])], 1)], 2)]), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("svg", { staticClass: "has-text-success", staticStyle: { "margin-right": "0.5em" }, attrs: { width: "17", height: "15", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 448 512" } }, [t("path", { attrs: { fill: "currentColor", d: "M400 224h-24v-72C376 68.2 307.8 0 224 0S72 68.2 72 152v72H48c-26.5 0-48 21.5-48 48v192c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V272c0-26.5-21.5-48-48-48zm-104 0H152v-72c0-39.7 32.3-72 72-72s72 32.3 72 72v72z" } })]), e._v(" " + e._s(e.$t("highlights.securePayment")) + " ")]), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("svg", { staticClass: "has-text-success", staticStyle: { "margin-right": "0.5em" }, attrs: { width: "17", height: "20", xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512" } }, [t("path", { attrs: { fill: "currentColor", d: "M512 256c0-37.7-23.7-69.9-57.1-82.4 14.7-32.4 8.8-71.9-17.9-98.6-26.7-26.7-66.2-32.6-98.6-17.9C325.9 23.7 293.7 0 256 0s-69.9 23.7-82.4 57.1c-32.4-14.7-72-8.8-98.6 17.9-26.7 26.7-32.6 66.2-17.9 98.6C23.7 186.1 0 218.3 0 256s23.7 69.9 57.1 82.4c-14.7 32.4-8.8 72 17.9 98.6 26.6 26.6 66.1 32.7 98.6 17.9 12.5 33.3 44.7 57.1 82.4 57.1s69.9-23.7 82.4-57.1c32.6 14.8 72 8.7 98.6-17.9 26.7-26.7 32.6-66.2 17.9-98.6 33.4-12.5 57.1-44.7 57.1-82.4zm-144.8-44.25L236.16 341.74c-4.31 4.28-11.28 4.25-15.55-.06l-75.72-76.33c-4.28-4.31-4.25-11.28.06-15.56l26.03-25.82c4.31-4.28 11.28-4.25 15.56.06l42.15 42.49 97.2-96.42c4.31-4.28 11.28-4.25 15.55.06l25.82 26.03c4.28 4.32 4.26 11.29-.06 15.56z" } })]), e._v(" " + e._s(e.$t("highlights.satisfiedCustomer")) + " ")]), e.hideExtraInfo ? e._e() : [t("div", { staticClass: "flex items-center w-full p-badge" }, [t("BaseIcon", { staticStyle: { opacity: "0.65", "margin-right": "0.5em" }, attrs: { size: 17, "stroke-width": "2", type: "question" } }), t("span", { staticStyle: { "text-decoration": "underline", opacity: "0.85", cursor: "pointer" }, domProps: { textContent: e._s(e.$t("reasonableUse.title")) }, on: { click: function(a) {
2460
2504
  return e.$modal.show("reasonableUse");
2461
2505
  } } })], 1), t("div", { staticClass: "flex items-center w-full p-badge" }, [t("BaseIcon", { staticStyle: { opacity: "0.65", "margin-right": "0.5em" }, attrs: { size: 17, "stroke-width": "2", type: "question" } }), t("span", { staticStyle: { "text-decoration": "underline", opacity: "0.85", cursor: "pointer" }, domProps: { textContent: e._s(e.$t("faq.title")) }, on: { click: function(a) {
2462
2506
  return e.$modal.show("faq");
2463
- } } })], 1)]), t("div", [t("div", { staticClass: "anim-block p-block", staticStyle: { "padding-bottom": "2em" } }, [t("div", { staticStyle: { "font-size": "18px", "font-weight": "600", "line-height": "1.5" } }, [t("span", { staticStyle: { opacity: "0.5" } }, [e._v(e._s(e.$t("formSteps")))]), t("br"), e._v(" " + e._s(e.$t("formTitle")) + " ")])]), t("div", { staticClass: "anim-block", staticStyle: { "font-size": "14px" } }, [t("div", { staticClass: "p-block" }, [t("div", { staticClass: "flex items-center w-full p-block-title" }, [t("div", [e._v(" " + e._s(e.$t("quantity.label")) + " "), t("BaseIcon", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.$t("quantity.tooltip"), expression: "$t('quantity.tooltip')" }], staticClass: "text-gray-400", attrs: { type: "info", size: "16" } })], 1)]), t("div", { staticClass: "flex w-full" }, [t("div", { staticClass: "p-option-list", staticStyle: { flex: "1 1 auto" } }, [t("CField", { attrs: { validator: e.$v.quantity, messages: e.messages.quantity, expanded: "" } }, [t("CInput", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.uiPlan.accountType === "start" ? { content: e.$t("quantity.disabled") } : "", expression: `
2507
+ } } })], 1)]], 2), t("div", [t("div", { staticClass: "anim-block p-block", staticStyle: { "padding-bottom": "2em" } }, [t("div", { staticStyle: { "font-size": "18px", "font-weight": "600", "line-height": "1.5" } }, [t("span", { staticStyle: { opacity: "0.5" } }, [e._v(e._s(e.$t("formSteps")))]), t("br"), e._v(" " + e._s(e.$t("formTitle")) + " ")])]), t("div", { staticClass: "anim-block", staticStyle: { "font-size": "14px" } }, [e.disableQuantity ? e._e() : t("div", { staticClass: "p-block" }, [t("div", { staticClass: "flex items-center w-full p-block-title" }, [t("div", [e._v(" " + e._s(e.$t("quantity.label")) + " "), t("BaseIcon", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.$t("quantity.tooltip"), expression: "$t('quantity.tooltip')" }], staticClass: "text-gray-400", attrs: { type: "info", size: "16" } })], 1)]), t("div", { staticClass: "flex w-full" }, [t("div", { staticClass: "p-option-list", staticStyle: { flex: "1 1 auto" } }, [t("CField", { attrs: { validator: e.$v.quantity, messages: e.messages.quantity, expanded: "" } }, [t("CInput", { directives: [{ name: "tooltip", rawName: "v-tooltip", value: e.uiPlan.accountType === "start" ? { content: e.$t("quantity.disabled") } : "", expression: `
2464
2508
  uiPlan.accountType === 'start'
2465
2509
  ? { content: $t('quantity.disabled') }
2466
2510
  : ''
@@ -2482,24 +2526,65 @@ var He = function() {
2482
2526
  return t("option", { key: a, domProps: { value: a } }, [e._v(" " + e._s(r) + " ")]);
2483
2527
  }), 0)], 1), t("div", { staticClass: "p-block" }, [e._v(" " + e._s(e.$t("email.label")) + " "), t("CField", { attrs: { validator: e.$v.formCustomer.email, messages: e.messages.email, expanded: "" } }, [t("CInput", { attrs: { value: e.formCustomer.email, placeholder: e.$t("email.placeholder"), size: "medium", filled: "" }, on: { input: function(a) {
2484
2528
  return e.$emit("input", { key: "customer.email", value: a });
2485
- } } })], 1)], 1)]], 2), t("div", { staticClass: "anim-block p-block" }, [t("CButton", { staticStyle: { "margin-top": "calc(1 * var(--rem))" }, attrs: { loading: e.isPosting, type: "secondary", wide: "", size: "medium", "icon-right": "arrow-right" }, on: { click: e.submit } }, [e._v(" " + e._s(e.$t("submitButton", { plan: e.uiPlan.name })) + " ")])], 1)])]), t("modal", { staticClass: "overflow-visible primary", attrs: { adaptive: !0, scrollable: !0, "max-width": 400, height: "auto", width: "90%", classes: "primary overflow-visible", name: "faq" } }, [t("div", { staticStyle: { "background-color": "white", "border-radius": "calc(0.5 * var(--rem))", padding: "calc(1 * var(--rem))" } }, [t("div", { staticStyle: { "font-size": "calc(2 * var(--rem))", "font-weight": "600", "margin-bottom": ".5em", padding: "calc(1 * var(--rem))" }, domProps: { textContent: e._s(e.$t("faq.title")) } }), e._l(6, function(a) {
2529
+ } } })], 1)], 1)]], 2), e.collectConsent ? t("div", { staticClass: "anim-block p-block" }, [t("CCheckbox", { attrs: { type: "secondary", size: "normal" }, model: { value: e.consent, callback: function(a) {
2530
+ e.consent = a;
2531
+ }, expression: "consent" } }, [t("div", { class: [
2532
+ e.$v.consent.$invalid && e.$v.consent.$dirty ? "has-text-danger" : "has-text-grey-dark"
2533
+ ] }, [e._v(" " + e._s(e.$t("consent.label", { brand: e.$t("_common:brand.name") })) + " "), t("a", { attrs: { href: e.$t("_common:brand.termsOfService.url"), target: "_blank", rel: "noopener", tabindex: "-1" } }, [e._v(" " + e._s(e.$t("_common:terms.termsAndConditions")) + " ")]), e._v(" " + e._s(e.$t("_common:and")) + " "), t("a", { attrs: { href: e.$t("_common:brand.privacyPolicy.url"), target: "_blank", rel: "noopener", tabindex: "-1" } }, [e._v(" " + e._s(e.$t("_common:terms.privacyPolicy")) + " ")])])])], 1) : e._e(), t("div", { staticClass: "anim-block p-block" }, [t("CButton", { staticStyle: { "margin-top": "calc(1 * var(--rem))" }, attrs: { loading: e.isPosting, type: "secondary", wide: "", size: "medium", "icon-right": "arrow-right" }, on: { click: e.submit } }, [e._v(" " + e._s(e.$t("submitButton", { plan: e.uiPlan.name })) + " ")])], 1)])]), t("modal", { staticClass: "overflow-visible primary", attrs: { adaptive: !0, scrollable: !0, "max-width": 400, height: "auto", width: "90%", classes: "primary overflow-visible", name: "faq" } }, [t("div", { staticStyle: { "background-color": "white", "border-radius": "calc(0.5 * var(--rem))", padding: "calc(1 * var(--rem))" } }, [t("div", { staticStyle: { "font-size": "calc(2 * var(--rem))", "font-weight": "600", "margin-bottom": ".5em", padding: "calc(1 * var(--rem))" }, domProps: { textContent: e._s(e.$t("faq.title")) } }), e._l(6, function(a) {
2486
2534
  return t("CAccordion", { key: a, attrs: { "default-open": null }, scopedSlots: e._u([{ key: "trigger", fn: function({ expanded: r }) {
2487
2535
  return t("div", { staticClass: "list-button" }, [t("span", { domProps: { textContent: e._s(e.$t(`faq.items.${a - 1}.title`, { brand: e.$t("_common:brand.name") })) } }), t("BaseIcon", { staticStyle: { transition: "200ms" }, style: { transform: `rotate(${r ? "0deg" : "180deg"})` }, attrs: { type: "chevron-down", size: "15" } })], 1);
2488
2536
  } }], null, !0) }, [t("div", { staticStyle: { "font-size": "14px", opacity: "0.65", padding: "0 calc(.5 * var(--rem)) calc(2 * var(--rem)) calc(.5 * var(--rem))" }, domProps: { textContent: e._s(e.$t(`faq.items.${a - 1}.text`, { brand: e.$t("_common:brand.name") })) } })]);
2489
2537
  })], 2)]), t("modal", { staticClass: "overflow-visible primary", attrs: { adaptive: !0, scrollable: !0, "max-width": 400, height: "auto", width: "90%", classes: "primary overflow-visible", name: "reasonableUse" } }, [t("div", { staticStyle: { "background-color": "white", "border-radius": "calc(0.5 * var(--rem))", padding: "calc(1 * var(--rem))" } }, [t("div", { staticStyle: { "font-size": "calc(1.5 * var(--rem))", "font-weight": "600", padding: "calc(1 * var(--rem))" }, domProps: { textContent: e._s(e.$t("reasonableUse.title")) } }), t("div", { staticStyle: { "font-size": "15px", opacity: "0.75", padding: "0 calc(1 * var(--rem)) calc(2 * var(--rem))" }, domProps: { textContent: e._s(e.$t("reasonableUse.text", { brand: e.$t("_common:brand.name") })) } }), t("div", { staticStyle: { padding: "0 calc(1 * var(--rem))" } }, e._l(e.reasonableUseQuotas, function(a, r) {
2490
2538
  return t("div", { key: r, staticStyle: { "font-size": "14px", "margin-bottom": "calc(1 * var(--rem))" } }, [t("span", { staticStyle: { "font-weight": "500", "padding-right": "0.5ch" }, domProps: { textContent: e._s(e.$t(`reasonableUse.${a.type}`) + ":") } }), t("span", { staticStyle: { opacity: "0.75", "padding-right": "0.5ch" }, domProps: { textContent: e._s(e.$t("reasonableUse.quotaIncluded", { count: a.count })) } }), a.cost ? t("span", { staticStyle: { opacity: "0.75" }, domProps: { textContent: e._s(e.$t("reasonableUse.quotaExtra", { cost: a.cost })) } }) : e._e()]);
2491
2539
  }), 0)])])], 1);
2492
- }, Be = [], Fe = /* @__PURE__ */ d(
2493
- De,
2494
- He,
2495
- Be,
2540
+ }, Ae = [], Ve = /* @__PURE__ */ d(
2541
+ Fe,
2542
+ Ue,
2543
+ Ae,
2496
2544
  !1,
2497
2545
  null,
2498
- "3d9ab864",
2546
+ "f53b97d8",
2499
2547
  null,
2500
2548
  null
2501
2549
  );
2502
- const Ue = Fe.exports, Ae = {
2550
+ const Oe = Ve.exports, Ne = {
2551
+ sv: {
2552
+ premiumStripe: {
2553
+ "features.free": [
2554
+ "Skapa offerter med standardmallen",
2555
+ "Skapa PDF-offerter",
2556
+ "Signering - standard",
2557
+ "SMS"
2558
+ ],
2559
+ "features.pro": [
2560
+ "Skicka offerter & avtal med e-signering",
2561
+ "BankID-signaturer",
2562
+ "Design:a offerter",
2563
+ "Skapa & använd offertmallar",
2564
+ "Skicka offerter till kunder utanför Offerta",
2565
+ "Dessutom allt som ingår i Cling Pro"
2566
+ ]
2567
+ }
2568
+ },
2569
+ en: {
2570
+ premiumStripe: {
2571
+ "features.free": [
2572
+ "Create proposals with the default template",
2573
+ "Create PDF-proposals",
2574
+ "Sign method - standard",
2575
+ "SMS"
2576
+ ],
2577
+ "features.pro": [
2578
+ "Send proposals & contracts with e-signatures",
2579
+ "BankID-signatures",
2580
+ "Design proposals",
2581
+ "Create & use document templates",
2582
+ "Send proposals to clients outside Offerta",
2583
+ "Everything in Cling Pro"
2584
+ ]
2585
+ }
2586
+ }
2587
+ }, ze = {
2503
2588
  name: "PremiumStripe",
2504
2589
  i18nOptions: {
2505
2590
  namespaces: "premiumStripe",
@@ -2527,12 +2612,13 @@ const Ue = Fe.exports, Ae = {
2527
2612
  }
2528
2613
  },
2529
2614
  features: {
2615
+ free: [],
2530
2616
  start: [
2531
2617
  "Single user only",
2532
2618
  "Send up to 5 docs / month",
2533
2619
  "Up to 2 templates",
2534
2620
  "Real-time audit trail",
2535
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2621
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2536
2622
  "SMS"
2537
2623
  ],
2538
2624
  base: [
@@ -2542,7 +2628,7 @@ const Ue = Fe.exports, Ae = {
2542
2628
  "Members",
2543
2629
  "Reminders",
2544
2630
  "Real-time audit trail",
2545
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2631
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2546
2632
  "SMS"
2547
2633
  ],
2548
2634
  pro: [
@@ -2555,7 +2641,7 @@ const Ue = Fe.exports, Ae = {
2555
2641
  "Custom subdomain",
2556
2642
  "Custom email address",
2557
2643
  "Version control",
2558
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2644
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2559
2645
  `Hide ${y[h.brand].name}-logo`,
2560
2646
  "CRM integrations"
2561
2647
  ]
@@ -2590,12 +2676,13 @@ const Ue = Fe.exports, Ae = {
2590
2676
  }
2591
2677
  },
2592
2678
  features: {
2679
+ free: [],
2593
2680
  start: [
2594
2681
  "Endast en användare",
2595
2682
  "Skicka upp till 5 dokument / månad",
2596
2683
  "Upp till 2 mallar",
2597
2684
  "Dokumentspårning i realtid",
2598
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2685
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2599
2686
  "SMS"
2600
2687
  ],
2601
2688
  base: [
@@ -2605,7 +2692,7 @@ const Ue = Fe.exports, Ae = {
2605
2692
  "Medlemmar",
2606
2693
  "Påminnelser",
2607
2694
  "Dokumentspårning i realtid",
2608
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2695
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2609
2696
  "SMS"
2610
2697
  ],
2611
2698
  pro: [
@@ -2618,7 +2705,7 @@ const Ue = Fe.exports, Ae = {
2618
2705
  "Subdomän",
2619
2706
  "Egen e-postdomän",
2620
2707
  "Versionshantering",
2621
- ...b.checkFeature("bankId") ? ["BankID"] : [],
2708
+ ..._.checkFeature("bankId") ? ["BankID"] : [],
2622
2709
  `Göm ${y[h.brand].name}-logo`,
2623
2710
  "CRM-Integrationer"
2624
2711
  ]
@@ -2633,9 +2720,9 @@ const Ue = Fe.exports, Ae = {
2633
2720
  }
2634
2721
  },
2635
2722
  components: {
2636
- Confetti: _e,
2637
- PremiumStripeSelect: we,
2638
- PremiumStripeForm: Ue
2723
+ Confetti: ke,
2724
+ PremiumStripeSelect: Me,
2725
+ PremiumStripeForm: Oe
2639
2726
  },
2640
2727
  props: {
2641
2728
  suggestedQuantity: {
@@ -2656,20 +2743,21 @@ const Ue = Fe.exports, Ae = {
2656
2743
  };
2657
2744
  },
2658
2745
  computed: {
2659
- ...se({
2746
+ ...ce({
2660
2747
  forceShowBase: (n) => n.route.query.base,
2661
2748
  routeDeal: (n) => n.route.query.deal
2662
2749
  }),
2663
2750
  ...v({
2751
+ accountConfigName: "application/accountConfigName",
2664
2752
  accountType: "application/companyAccountType",
2665
2753
  subscription: "application/subscription",
2666
2754
  formPlan: "stripe/formPlan",
2667
2755
  formProducts: "stripe/formProducts",
2668
- currentPlan: "stripe/currentPlan",
2669
2756
  subscriptions: "stripe/subscriptions",
2670
2757
  subscriptionItems: "stripe/subscriptionItems",
2671
2758
  getProductByPriceId: "stripe/getProductByPriceId",
2672
- stripeCustomDealToken: "settings/stripeCustomDealToken"
2759
+ stripeCustomDealToken: "settings/stripeCustomDealToken",
2760
+ getPrice: "stripe/getPrice"
2673
2761
  }),
2674
2762
  quantity: {
2675
2763
  get() {
@@ -2707,39 +2795,51 @@ const Ue = Fe.exports, Ae = {
2707
2795
  }
2708
2796
  },
2709
2797
  prettyPlans() {
2710
- const n = [], e = this.subscription.maxProjectManagers === 1 && this.subscription.mrr < 4e4 || !["base", "pro"].includes(this.accountType), t = () => {
2711
- const a = this.subscription.isStripeLegacy || this.subscription.paymentMethod === "invoice", r = this.subscription.billingCycleInterval === "month" && this.subscription.mrr < 45e3 || this.subscription.billingCycleInterval === "year" && this.subscription.mrr < 38e3;
2712
- return a && !this.forceShowBase ? r : !0;
2798
+ const n = [], e = this.getPrice("start", "month") || this.getPrice("start", "year"), t = this.getPrice("base", "month") || this.getPrice("base", "year"), a = e && (this.subscription.maxProjectManagers === 1 && this.subscription.mrr < 4e4 || !["base", "pro"].includes(this.accountType)), r = () => {
2799
+ const i = this.subscription.isStripeLegacy || this.subscription.paymentMethod === "invoice", s = this.subscription.billingCycleInterval === "month" && this.subscription.mrr < 45e3 || this.subscription.billingCycleInterval === "year" && this.subscription.mrr < 38e3;
2800
+ return t && (i && !this.forceShowBase ? s : !0);
2713
2801
  };
2714
- return e && n.push({
2802
+ return this.isOfferta && n.push({
2803
+ name: "Free",
2804
+ accountType: "free",
2805
+ img: k("/account/subscription/bg-start.png"),
2806
+ // TODO: same img as base
2807
+ features: this.$t("features.free")
2808
+ }), a && n.push({
2715
2809
  name: "Start",
2716
2810
  accountType: "start",
2717
- img: E("/account/subscription/bg-start.png"),
2811
+ img: k("/account/subscription/bg-start.png"),
2718
2812
  features: this.$t("features.start")
2719
- }), t() && n.push({
2813
+ }), r() && n.push({
2720
2814
  name: "Base",
2721
2815
  accountType: "base",
2722
- img: E("/account/subscription/bg-base.png"),
2816
+ img: k("/account/subscription/bg-base.png"),
2723
2817
  features: this.$t("features.base")
2724
2818
  }), n.push({
2725
2819
  name: "Pro",
2726
2820
  accountType: "pro",
2727
- img: E("/account/subscription/bg-pro.png"),
2821
+ img: k("/account/subscription/bg-pro.png"),
2728
2822
  features: this.$t("features.pro")
2729
2823
  }), n;
2730
2824
  },
2731
2825
  calloutMode() {
2732
2826
  return this.subscription.showCalloutConvertStripe ? "invoice" : this.subscription.isStripeLegacy ? "legacy" : null;
2827
+ },
2828
+ isOfferta() {
2829
+ return this.accountConfigName === "offerta";
2830
+ },
2831
+ disableQuantity() {
2832
+ return this.isOfferta && this.$view === "widget";
2733
2833
  }
2734
2834
  },
2735
2835
  beforeCreate() {
2736
2836
  this.$store.hasModule("stripe") || this.$store.registerModuleState("stripe", G);
2737
2837
  },
2738
2838
  async created() {
2739
- this.resetStripeForm(), await this.loadPrices(), await this.suggestQuantity(), await this.handlePossibleDeal(), this.isEdit = !!this.subscriptions.length;
2839
+ this.isOfferta && ne(Ne), this.resetStripeForm(), await this.loadPrices(), await this.suggestQuantity(), await this.handlePossibleDeal(), this.isEdit = !!this.subscriptions.length;
2740
2840
  },
2741
2841
  methods: {
2742
- ...w({
2842
+ ...$({
2743
2843
  loadPrices: m.LOAD_PRICES,
2744
2844
  resetStripeForm: m.RESET_STRIPE_FORM,
2745
2845
  setFormValue: m.SET_STRIPE_FORM_VALUE,
@@ -2747,13 +2847,13 @@ const Ue = Fe.exports, Ae = {
2747
2847
  }),
2748
2848
  // Suggest quantity of licenses based on property or from account
2749
2849
  async suggestQuantity() {
2750
- if (this.plan === "start")
2850
+ if (this.disableQuantity || this.plan === "start")
2751
2851
  return;
2752
2852
  if (this.suggestedQuantity && typeof this.suggestedQuantity == "number") {
2753
2853
  this.quantity = this.suggestedQuantity;
2754
2854
  return;
2755
2855
  }
2756
- const { data: n } = await ee();
2856
+ const { data: n } = await ae();
2757
2857
  this.quantity = n;
2758
2858
  },
2759
2859
  onReset() {
@@ -2791,7 +2891,7 @@ const Ue = Fe.exports, Ae = {
2791
2891
  setFromDealToken(n) {
2792
2892
  if (n)
2793
2893
  try {
2794
- const e = te(n);
2894
+ const e = re(n);
2795
2895
  if (e.accountType && (this.plan = e.accountType), e.accountTypeInterval && (this.interval = e.accountTypeInterval), e.accountQuantity && (this.quantity = e.accountQuantity), e.dealSource && (this.dealSource = e.dealSource), e.items) {
2796
2896
  const t = [];
2797
2897
  Object.keys(e.items).forEach((a) => {
@@ -2812,35 +2912,36 @@ const Ue = Fe.exports, Ae = {
2812
2912
  }
2813
2913
  }
2814
2914
  };
2815
- var Ve = function() {
2915
+ var qe = function() {
2816
2916
  var e = this, t = e._self._c;
2817
2917
  return t("div", { staticClass: "relative grid h-full px-12 py-8 overflow-auto bg-white font-inter anime-payment-modal font-base place-items-center" }, [t("div", { staticStyle: { position: "absolute", left: "1em", top: "0.5em", display: "inline-flex", "z-index": "10" } }, [t("CButton", { attrs: { "icon-props": { size: 20 }, pattern: "tertiary", type: "none", circle: "", icon: "x" }, on: { click: function(a) {
2818
2918
  return e.$emit("close");
2819
- } } }), e.view === "form" ? t("CButton", { staticStyle: { "margin-left": "2px" }, attrs: { "icon-props": { size: 20 }, pattern: "tertiary", type: "none", circle: "", icon: "arrow-left" }, on: { click: e.onReset } }) : e._e()], 1), e.calloutMode ? t("div", { staticClass: "relative inline-block py-4 pl-12 pr-4 border-2 rounded-lg bg-primary-100 border-primary-300", staticStyle: { "max-width": "calc(55 * var(--rem))" } }, [t("BaseIcon", { staticClass: "absolute left-4 top-5 text-primary-800", attrs: { type: "info", size: "20" } }), t("div", { staticClass: "font-semibold text-primary-800", domProps: { textContent: e._s(e.$t(`callout.${e.calloutMode}.title`)) } }), t("div", { staticClass: "text-sm opacity-70", domProps: { innerHTML: e._s(e.$t(`callout.${e.calloutMode}.text`)) } })], 1) : e._e(), e.$view === "widget" && e.view !== "success" ? t("div", { staticClass: "absolute flex justify-center text-xs -translate-x-1/2 left-1/2 top-4" }, [t("div", { staticClass: "relative inline-block rounded-full py-1.5 px-4 bg-primary-50 border border-primary-200 text-primary-900", staticStyle: { "max-width": "calc(55 * var(--rem))" }, domProps: { innerHTML: e._s(e.$t("callout.widget.text")) } })]) : e._e(), t("div", [e.view === "select" ? t("PremiumStripeSelect", { attrs: { plan: e.plan, interval: e.interval, plans: e.prettyPlans }, on: { "update:plan": function(a) {
2919
+ } } }), e.view === "form" ? t("CButton", { staticStyle: { "margin-left": "2px" }, attrs: { "icon-props": { size: 20 }, pattern: "tertiary", type: "none", circle: "", icon: "arrow-left" }, on: { click: e.onReset } }) : e._e()], 1), e.calloutMode ? t("div", { staticClass: "relative inline-block py-4 pl-12 pr-4 border-2 rounded-lg bg-primary-100 border-primary-300", staticStyle: { "max-width": "calc(55 * var(--rem))" } }, [t("BaseIcon", { staticClass: "absolute left-4 top-5 text-primary-800", attrs: { type: "info", size: "20" } }), t("div", { staticClass: "font-semibold text-primary-800", domProps: { textContent: e._s(e.$t(`callout.${e.calloutMode}.title`)) } }), t("div", { staticClass: "text-sm opacity-70", domProps: { innerHTML: e._s(e.$t(`callout.${e.calloutMode}.text`)) } })], 1) : e._e(), t("div", [e.view === "select" ? t("PremiumStripeSelect", { attrs: { plan: e.plan, interval: e.interval, plans: e.prettyPlans }, on: { "update:plan": function(a) {
2820
2920
  e.plan = a;
2821
2921
  }, "update:interval": function(a) {
2822
2922
  e.interval = a;
2823
2923
  }, next: function(a) {
2824
2924
  e.view = "form";
2825
- } } }) : e.view === "form" ? t("PremiumStripeForm", { attrs: { "ui-plan": e.prettyPlans.find((a) => a.accountType === e.plan), "form-plan": e.formPlan }, on: { "update:interval": function(a) {
2925
+ } } }) : e.view === "form" ? t("PremiumStripeForm", { attrs: { "ui-plan": e.prettyPlans.find((a) => a.accountType === e.plan), "form-plan": e.formPlan, "disable-quantity": e.disableQuantity, "hide-extra-info": e.isOfferta, "collect-consent": e.isOfferta }, on: { "update:interval": function(a) {
2826
2926
  e.interval = a;
2827
2927
  }, input: e.setFormValue, success: e.goToSuccess } }) : e.view === "success" ? t("div", { staticClass: "flex flex-col items-center justify-center w-full h-full text-center" }, [t("Confetti", { attrs: { animate: e.animateConfetti } }), e.isEdit ? e._e() : t("div", { staticClass: "success-block", staticStyle: { "font-size": "calc(18px + 2vw)", "font-weight": "800" } }, [e._v(" " + e._s(e.$t("success.title")) + " ")]), t("div", { staticClass: "success-block", staticStyle: { "font-size": "20px", opacity: "0.7" } }, [e._v(" " + e._s(e.isEdit ? e.$t("success.subTitleEdit") : e.$t("success.subTitle")) + " ")]), t("CButton", { staticClass: "success-block", staticStyle: { "margin-top": "3em" }, attrs: { type: "secondary", size: "medium", rounded: "" }, on: { click: function(a) {
2828
2928
  return e.closeAndContinue();
2829
2929
  } } }, [e._v(e._s(e.$t("success.closeButton")))])], 1) : e._e()], 1)]);
2830
- }, Oe = [], Ne = /* @__PURE__ */ d(
2831
- Ae,
2832
- Ve,
2833
- Oe,
2930
+ }, Ge = [], je = /* @__PURE__ */ d(
2931
+ ze,
2932
+ qe,
2933
+ Ge,
2834
2934
  !1,
2835
2935
  null,
2836
2936
  null,
2837
2937
  null,
2838
2938
  null
2839
2939
  );
2840
- const ze = Ne.exports, qe = {
2940
+ const Ze = je.exports, Ke = {
2841
2941
  name: "IsPremium",
2842
2942
  computed: {
2843
2943
  ...v({
2944
+ feature: "application/feature",
2844
2945
  subscription: "application/subscription",
2845
2946
  companyAccount: "application/companyAccount",
2846
2947
  stripeCustomDealToken: "settings/stripeCustomDealToken"
@@ -2860,6 +2961,12 @@ const ze = Ne.exports, qe = {
2860
2961
  canCreateDocument() {
2861
2962
  return this.subscription.freeDocumentsLeft > 0 || C(this.companyAccount, "documentQuota.priceExtra.value") !== null;
2862
2963
  },
2964
+ canCreateTemplate() {
2965
+ return this.feature("createDocTemplate");
2966
+ },
2967
+ canUseTemplate() {
2968
+ return this.feature("useDocTemplate");
2969
+ },
2863
2970
  canUseBankId() {
2864
2971
  return this.isPremiumLike ? !0 : !!this.subscription.freeBankIdLeft;
2865
2972
  },
@@ -2889,7 +2996,7 @@ const ze = Ne.exports, qe = {
2889
2996
  openUpgradeModal({ suggestedQuantity: n = null, callback: e = null, onClosed: t = null } = {}) {
2890
2997
  let a = () => null, r = () => null;
2891
2998
  typeof e == "function" && (a = e), typeof t == "function" && (r = t), this.$modal.show(
2892
- ze,
2999
+ Ze,
2893
3000
  {
2894
3001
  suggestedQuantity: n,
2895
3002
  onUpgrade: a
@@ -2925,22 +3032,24 @@ const ze = Ne.exports, qe = {
2925
3032
  trialDaysLeft: this.subscription.trialDaysLeft,
2926
3033
  maxProjectManagers: this.subscription.maxProjectManagers,
2927
3034
  canCreateDocument: this.canCreateDocument,
3035
+ canUseTemplate: this.canUseTemplate,
3036
+ canCreateTemplate: this.canCreateTemplate,
2928
3037
  canUseBankId: this.canUseBankId,
2929
3038
  canUseSms: this.canUseSms
2930
3039
  }) : {};
2931
3040
  }
2932
- }, Ge = null, Ze = null;
2933
- var je = /* @__PURE__ */ d(
2934
- qe,
2935
- Ge,
2936
- Ze,
3041
+ }, Ye = null, We = null;
3042
+ var Xe = /* @__PURE__ */ d(
3043
+ Ke,
3044
+ Ye,
3045
+ We,
2937
3046
  !1,
2938
3047
  null,
2939
3048
  null,
2940
3049
  null,
2941
3050
  null
2942
3051
  );
2943
- const Ke = je.exports, Ye = {
3052
+ const Qe = Xe.exports, Je = {
2944
3053
  name: "CalloutLegacy",
2945
3054
  i18nOptions: {
2946
3055
  namespaces: "components",
@@ -2990,21 +3099,21 @@ const Ke = je.exports, Ye = {
2990
3099
  }
2991
3100
  }
2992
3101
  };
2993
- var We = function() {
3102
+ var et = function() {
2994
3103
  var e = this, t = e._self._c;
2995
3104
  return t("div", { staticStyle: { border: "2px solid hsla(35, 100%, 50%, 0.2)", "background-color": "hsl(35, 100%, 91%)", padding: "1.5em", "border-radius": "8px", margin: "calc(2 * var(--rem)) 0 calc(3 * var(--rem)) 0" } }, [t("div", { staticStyle: { "font-weight": "600" }, domProps: { textContent: e._s(e.$t(`${e.mode}.title`)) } }), t("div", { staticStyle: { "font-size": "14px", opacity: "0.7", "margin-bottom": "2em" }, domProps: { textContent: e._s(e.$t(`${e.mode}.text`)) } }), t("CButton", { attrs: { to: { name: "settingsBilling", query: { highlight: e.mode } }, target: "_blank", type: "secondary", wide: "", "icon-right": "new-window" } }, [e._v(" " + e._s(e.$t(`${e.mode}.action`)) + " ")])], 1);
2996
- }, Xe = [], Je = /* @__PURE__ */ d(
2997
- Ye,
2998
- We,
2999
- Xe,
3105
+ }, tt = [], nt = /* @__PURE__ */ d(
3106
+ Je,
3107
+ et,
3108
+ tt,
3000
3109
  !1,
3001
3110
  null,
3002
3111
  null,
3003
3112
  null,
3004
3113
  null
3005
3114
  );
3006
- const Qe = Je.exports;
3007
- const et = {
3115
+ const at = nt.exports;
3116
+ const rt = {
3008
3117
  i18nOptions: {
3009
3118
  namespaces: "components",
3010
3119
  messages: {
@@ -3028,8 +3137,8 @@ const et = {
3028
3137
  },
3029
3138
  name: "PremiumRestrictedBase",
3030
3139
  components: {
3031
- IsPremium: Ke,
3032
- CalloutLegacy: Qe
3140
+ IsPremium: Qe,
3141
+ CalloutLegacy: at
3033
3142
  },
3034
3143
  props: {
3035
3144
  plan: {
@@ -3075,7 +3184,7 @@ const et = {
3075
3184
  }
3076
3185
  }
3077
3186
  };
3078
- var tt = function() {
3187
+ var it = function() {
3079
3188
  var e = this, t = e._self._c;
3080
3189
  return t("div", { staticClass: "root font-inter" }, [t("div", { staticClass: "lock-wrapper has-text-white" }, [t("BaseIcon", { attrs: { type: "lock", size: "24" } })], 1), t("div", { staticStyle: { width: "100%" } }, [t("div", { staticClass: "flex items-center justify-center" }, [t("div", { staticClass: "badge-premium" }, [e._v(e._s(e.$t(`badge.${e.plan}`)))])]), t("div", { staticStyle: { "text-align": "center" } }, [e._t("default", function() {
3081
3190
  return [e._t("image"), t("div", { staticClass: "title" }, [e._v(e._s(e.title))]), t("div", { staticClass: "sub-title" }, [e._v(e._s(e.subTitle))])];
@@ -3088,17 +3197,17 @@ var tt = function() {
3088
3197
  } }], null, !0) }), t("div", { staticStyle: { "margin-top": "5px" } }, [t("CButton", { attrs: { type: "none", pattern: "tertiary", wide: "" }, on: { click: function(a) {
3089
3198
  return e.$parent.$emit("close");
3090
3199
  } } }, [e._v(" " + e._s(e.$t("cancelButton")) + " ")])], 1)], 1)])]);
3091
- }, nt = [], at = /* @__PURE__ */ d(
3092
- et,
3093
- tt,
3094
- nt,
3200
+ }, st = [], ot = /* @__PURE__ */ d(
3201
+ rt,
3202
+ it,
3203
+ st,
3095
3204
  !1,
3096
3205
  null,
3097
3206
  "993cb5cc",
3098
3207
  null,
3099
3208
  null
3100
3209
  );
3101
- const f = at.exports, rt = {
3210
+ const f = ot.exports, lt = {
3102
3211
  i18nOptions: {
3103
3212
  namespaces: "winProfile",
3104
3213
  keyPrefix: "account.subscription.winProfile",
@@ -3126,20 +3235,20 @@ const f = at.exports, rt = {
3126
3235
  }
3127
3236
  }
3128
3237
  };
3129
- var it = function() {
3238
+ var ct = function() {
3130
3239
  var e = this, t = e._self._c;
3131
3240
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade } });
3132
- }, st = [], ot = /* @__PURE__ */ d(
3133
- rt,
3134
- it,
3135
- st,
3241
+ }, ut = [], dt = /* @__PURE__ */ d(
3242
+ lt,
3243
+ ct,
3244
+ ut,
3136
3245
  !1,
3137
3246
  null,
3138
3247
  null,
3139
3248
  null,
3140
3249
  null
3141
3250
  );
3142
- const ct = ot.exports, lt = {
3251
+ const mt = dt.exports, pt = {
3143
3252
  i18nOptions: {
3144
3253
  namespaces: "subTemplates",
3145
3254
  messages: {
@@ -3164,20 +3273,20 @@ const ct = ot.exports, lt = {
3164
3273
  }
3165
3274
  }
3166
3275
  };
3167
- var ut = function() {
3276
+ var gt = function() {
3168
3277
  var e = this, t = e._self._c;
3169
3278
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade } });
3170
- }, dt = [], mt = /* @__PURE__ */ d(
3171
- lt,
3172
- ut,
3173
- dt,
3279
+ }, ht = [], ft = /* @__PURE__ */ d(
3280
+ pt,
3281
+ gt,
3282
+ ht,
3174
3283
  !1,
3175
3284
  null,
3176
3285
  null,
3177
3286
  null,
3178
3287
  null
3179
3288
  );
3180
- const pt = mt.exports, gt = {
3289
+ const yt = ft.exports, Ct = {
3181
3290
  i18nOptions: {
3182
3291
  namespaces: "PremiumRestrictedDocuments",
3183
3292
  messages: {
@@ -3226,58 +3335,58 @@ const pt = mt.exports, gt = {
3226
3335
  },
3227
3336
  created() {
3228
3337
  try {
3229
- ne("/documentLimitReached", {});
3338
+ ie("/documentLimitReached", {});
3230
3339
  } catch (n) {
3231
- R(n, { showMessage: !1 });
3340
+ D(n, { showMessage: !1 });
3232
3341
  }
3233
3342
  },
3234
3343
  async mounted() {
3235
3344
  this.checkFreeDocVoucher();
3236
3345
  },
3237
3346
  methods: {
3238
- ...w({
3347
+ ...$({
3239
3348
  loadCurrentCompany: m.DO_LOAD_CURRENT_COMPANY
3240
3349
  }),
3241
3350
  async checkFreeDocVoucher() {
3242
3351
  var e, t;
3243
3352
  if (this.canUseFreeDocVoucher = !1, ((e = this.account) == null ? void 0 : e.accountType) !== "free")
3244
3353
  return;
3245
- const n = JSON.parse(M.getItem("voucher-freeUserDocs-company-id"));
3354
+ const n = JSON.parse(E.getItem("voucher-freeUserDocs-company-id"));
3246
3355
  ((t = this.account) == null ? void 0 : t.CompanyId) !== n && (this.canUseFreeDocVoucher = await this.canUseVoucher());
3247
3356
  },
3248
3357
  async canUseVoucher() {
3249
3358
  try {
3250
3359
  return await U.canUse("freeUserDocs"), !0;
3251
3360
  } catch {
3252
- return M.setItem("voucher-freeUserDocs-company-id", this.account.CompanyId), !1;
3361
+ return E.setItem("voucher-freeUserDocs-company-id", this.account.CompanyId), !1;
3253
3362
  }
3254
3363
  },
3255
3364
  async useFreeDocsVoucher() {
3256
3365
  this.isLoading = !0;
3257
3366
  try {
3258
- await U.post({ code: "freeUserDocs" }), M.setItem("voucher-freeUserDocs-company-id", this.account.CompanyId), await this.loadCurrentCompany(), ae("success", this.$t("voucherSuccessMessage", { count: this.voucherDocCount })), this.onUpgrade && typeof this.onUpgrade == "function" && this.onUpgrade();
3367
+ await U.post({ code: "freeUserDocs" }), E.setItem("voucher-freeUserDocs-company-id", this.account.CompanyId), await this.loadCurrentCompany(), se("success", this.$t("voucherSuccessMessage", { count: this.voucherDocCount })), this.onUpgrade && typeof this.onUpgrade == "function" && this.onUpgrade();
3259
3368
  } catch (n) {
3260
- R(n);
3369
+ D(n);
3261
3370
  } finally {
3262
- this.isLoading = !1;
3371
+ this.isLoading = !1, this.$emit("close");
3263
3372
  }
3264
3373
  }
3265
3374
  }
3266
3375
  };
3267
- var ht = function() {
3376
+ var vt = function() {
3268
3377
  var e = this, t = e._self._c;
3269
3378
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade } }, [e.canUseFreeDocVoucher ? t("div", { staticStyle: { background: "hsl(33, 100%, 84%)", padding: "1em", "font-size": "15px", "border-radius": "0.5em" }, attrs: { slot: "content" }, slot: "content" }, [t("div", { staticStyle: { "font-size": "16px", "font-weight": "500" } }, [t("span", { staticStyle: { "margin-right": "4px" } }, [e._v("🎁")]), e._v(" " + e._s(e.$t("voucherTitle")) + " ")]), t("div", { staticStyle: { opacity: "0.75" }, domProps: { textContent: e._s(e.$t("voucherText", { count: e.voucherDocCount })) } }), t("div", { staticClass: "flex justify-center w-full", staticStyle: { "margin-top": "calc(1 * var(--rem))" } }, [t("CButton", { staticStyle: { border: "none", background: "hsl(33, 100%, 95%)", color: "hsl(33, 88%, 36%)", "box-shadow": "0 3px 6px -2px rgb(0, 0, 0, 0.3)" }, attrs: { loading: e.isLoading, transparent: "", "icon-left": "heart" }, on: { click: e.useFreeDocsVoucher } }, [e._v(" " + e._s(e.$t("voucherButton", { count: e.voucherDocCount })) + " ")])], 1)]) : e._e()]);
3270
- }, yt = [], ft = /* @__PURE__ */ d(
3271
- gt,
3272
- ht,
3273
- yt,
3379
+ }, _t = [], bt = /* @__PURE__ */ d(
3380
+ Ct,
3381
+ vt,
3382
+ _t,
3274
3383
  !1,
3275
3384
  null,
3276
3385
  null,
3277
3386
  null,
3278
3387
  null
3279
3388
  );
3280
- const Ct = ft.exports, vt = {
3389
+ const Pt = bt.exports, St = {
3281
3390
  i18nOptions: {
3282
3391
  namespaces: "personalMessage",
3283
3392
  messages: {
@@ -3291,7 +3400,7 @@ const Ct = ft.exports, vt = {
3291
3400
  }
3292
3401
  }
3293
3402
  },
3294
- name: "PremiumRestrictedWinProfile",
3403
+ name: "PremiumRestrictedPersonalMessage",
3295
3404
  components: {
3296
3405
  PremiumRestrictedBase: f
3297
3406
  },
@@ -3302,21 +3411,21 @@ const Ct = ft.exports, vt = {
3302
3411
  }
3303
3412
  }
3304
3413
  };
3305
- var bt = function() {
3414
+ var kt = function() {
3306
3415
  var e = this, t = e._self._c;
3307
3416
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade } });
3308
- }, _t = [], Pt = /* @__PURE__ */ d(
3309
- vt,
3310
- bt,
3311
- _t,
3417
+ }, xt = [], wt = /* @__PURE__ */ d(
3418
+ St,
3419
+ kt,
3420
+ xt,
3312
3421
  !1,
3313
3422
  null,
3314
3423
  null,
3315
3424
  null,
3316
3425
  null
3317
3426
  );
3318
- const St = Pt.exports;
3319
- const kt = {
3427
+ const $t = wt.exports;
3428
+ const Tt = {
3320
3429
  i18nOptions: {
3321
3430
  namespaces: "licenses",
3322
3431
  messages: {
@@ -3365,14 +3474,14 @@ const kt = {
3365
3474
  this.initLicense();
3366
3475
  },
3367
3476
  methods: {
3368
- ...w({
3477
+ ...$({
3369
3478
  loadCurrentCompany: m.DO_LOAD_CURRENT_COMPANY,
3370
3479
  loadPrices: m.LOAD_PRICES,
3371
3480
  resetStripeForm: m.RESET_STRIPE_FORM,
3372
3481
  updateFormValue: m.SET_STRIPE_FORM_VALUE,
3373
3482
  submitPlan: m.SUBMIT_FORM_PLAN
3374
3483
  }),
3375
- priceFormat: _,
3484
+ priceFormat: P,
3376
3485
  async initLicense() {
3377
3486
  this.subscription.paymentMethod === "stripe" && (await this.loadPrices(), await this.resetStripeForm(), this.updateFormValue({ key: "plan", value: this.currentPlan }));
3378
3487
  },
@@ -3389,7 +3498,7 @@ const kt = {
3389
3498
  else
3390
3499
  throw new Error("Cannot upgrade license as current paymentMethod is not valid");
3391
3500
  } catch (t) {
3392
- R(t);
3501
+ D(t);
3393
3502
  }
3394
3503
  e && await n();
3395
3504
  },
@@ -3399,25 +3508,25 @@ const kt = {
3399
3508
  return await this.loadCurrentCompany(), n;
3400
3509
  },
3401
3510
  async addInvoiceLicense() {
3402
- await re(), await this.loadCurrentCompany();
3511
+ await oe(), await this.loadCurrentCompany();
3403
3512
  }
3404
3513
  }
3405
3514
  };
3406
- var xt = function() {
3515
+ var Mt = function() {
3407
3516
  var e = this, t = e._self._c;
3408
3517
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade, "action-function": e.doUpgrade } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")]), e.extraPrice && e.extraPrice.amount && e.extraPrice.currency && e.extraPrice.interval ? t("div", { staticClass: "flex justify-between w-full", staticStyle: { "background-color": "hsl(var(--gray-color-100) / 1)", padding: "0.5em 1em", "border-radius": "0.5em" }, attrs: { slot: "content" }, slot: "content" }, [t("div", { staticStyle: { "text-align": "left" } }, [t("div", { staticStyle: { "font-weight": "500" }, domProps: { textContent: e._s(e.$t("productTitle")) } }), t("div", { staticStyle: { opacity: "0.75", "font-size": "13px" }, domProps: { textContent: e._s(e.$t("productCost")) } })]), t("div", { staticStyle: { "text-align": "right" } }, [t("div", [e._v(" +" + e._s(e.priceFormat(e.extraPrice.amount, { currency: e.extraPrice.currency })) + " ")]), t("div", { staticStyle: { "font-size": "13px", opacity: "0.7" } }, [e._v(" per " + e._s(e.$t(`_common:${e.extraPrice.interval}`)) + " ")])])]) : e._e()], 2);
3409
- }, wt = [], $t = /* @__PURE__ */ d(
3410
- kt,
3411
- xt,
3412
- wt,
3518
+ }, Et = [], It = /* @__PURE__ */ d(
3519
+ Tt,
3520
+ Mt,
3521
+ Et,
3413
3522
  !1,
3414
3523
  null,
3415
3524
  null,
3416
3525
  null,
3417
3526
  null
3418
3527
  );
3419
- const Tt = $t.exports;
3420
- const Mt = {
3528
+ const Lt = It.exports;
3529
+ const Dt = {
3421
3530
  i18nOptions: {
3422
3531
  namespaces: "licenses",
3423
3532
  messages: {
@@ -3433,7 +3542,7 @@ const Mt = {
3433
3542
  }
3434
3543
  }
3435
3544
  },
3436
- name: "PremiumRestrictedLicenses",
3545
+ name: "PremiumRestrictedCreators",
3437
3546
  components: {
3438
3547
  PremiumRestrictedBase: f
3439
3548
  },
@@ -3444,20 +3553,20 @@ const Mt = {
3444
3553
  }
3445
3554
  }
3446
3555
  };
3447
- var Et = function() {
3556
+ var Rt = function() {
3448
3557
  var e = this, t = e._self._c;
3449
3558
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "action-function": e.onUpgrade, plan: "premium" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3450
- }, It = [], Lt = /* @__PURE__ */ d(
3451
- Mt,
3452
- Et,
3453
- It,
3559
+ }, Bt = [], Ht = /* @__PURE__ */ d(
3560
+ Dt,
3561
+ Rt,
3562
+ Bt,
3454
3563
  !1,
3455
3564
  null,
3456
3565
  null,
3457
3566
  null,
3458
3567
  null
3459
3568
  );
3460
- const Rt = Lt.exports, Dt = {
3569
+ const Ft = Ht.exports, Ut = {
3461
3570
  i18nOptions: {
3462
3571
  namespaces: "stats",
3463
3572
  messages: {
@@ -3484,20 +3593,20 @@ const Rt = Lt.exports, Dt = {
3484
3593
  }
3485
3594
  }
3486
3595
  };
3487
- var Ht = function() {
3596
+ var At = function() {
3488
3597
  var e = this, t = e._self._c;
3489
3598
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade, plan: "pro" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3490
- }, Bt = [], Ft = /* @__PURE__ */ d(
3491
- Dt,
3492
- Ht,
3493
- Bt,
3599
+ }, Vt = [], Ot = /* @__PURE__ */ d(
3600
+ Ut,
3601
+ At,
3602
+ Vt,
3494
3603
  !1,
3495
3604
  null,
3496
3605
  null,
3497
3606
  null,
3498
3607
  null
3499
3608
  );
3500
- const Ut = Ft.exports, At = {
3609
+ const Nt = Ot.exports, zt = {
3501
3610
  i18nOptions: {
3502
3611
  namespaces: "stats",
3503
3612
  messages: {
@@ -3513,7 +3622,7 @@ const Ut = Ft.exports, At = {
3513
3622
  }
3514
3623
  }
3515
3624
  },
3516
- name: "PremiumRestrictedStats",
3625
+ name: "PremiumRestrictedDocumentBlocks",
3517
3626
  components: {
3518
3627
  PremiumRestrictedBase: f
3519
3628
  },
@@ -3524,20 +3633,20 @@ const Ut = Ft.exports, At = {
3524
3633
  }
3525
3634
  }
3526
3635
  };
3527
- var Vt = function() {
3636
+ var qt = function() {
3528
3637
  var e = this, t = e._self._c;
3529
3638
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade, plan: "pro" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3530
- }, Ot = [], Nt = /* @__PURE__ */ d(
3531
- At,
3532
- Vt,
3533
- Ot,
3639
+ }, Gt = [], jt = /* @__PURE__ */ d(
3640
+ zt,
3641
+ qt,
3642
+ Gt,
3534
3643
  !1,
3535
3644
  null,
3536
3645
  null,
3537
3646
  null,
3538
3647
  null
3539
3648
  );
3540
- const zt = Nt.exports, qt = {
3649
+ const Zt = jt.exports, Kt = {
3541
3650
  i18nOptions: {
3542
3651
  namespaces: "PremiumRestrictedBankIdAndSms",
3543
3652
  messages: {
@@ -3569,40 +3678,80 @@ const zt = Nt.exports, qt = {
3569
3678
  })
3570
3679
  }
3571
3680
  };
3572
- var Gt = function() {
3681
+ var Yt = function() {
3573
3682
  var e = this, t = e._self._c;
3574
3683
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title", {
3575
3684
  bankIdText: e.feature("bankId") ? "BankID " + e.$t("_common:and") : ""
3576
3685
  }), "sub-title": e.$t("subTitle", {
3577
3686
  bankIdText: e.feature("bankId") ? "BankID " + e.$t("_common:or") : ""
3578
3687
  }), "on-upgrade": e.onUpgrade, plan: "pro" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3579
- }, Zt = [], jt = /* @__PURE__ */ d(
3580
- qt,
3581
- Gt,
3582
- Zt,
3688
+ }, Wt = [], Xt = /* @__PURE__ */ d(
3689
+ Kt,
3690
+ Yt,
3691
+ Wt,
3692
+ !1,
3693
+ null,
3694
+ null,
3695
+ null,
3696
+ null
3697
+ );
3698
+ const Qt = Xt.exports, Jt = {
3699
+ i18nOptions: {
3700
+ namespaces: "PremiumRestrictedUseDocTemplates",
3701
+ messages: {
3702
+ sv: {
3703
+ title: "Använd dokumentmallar",
3704
+ subTitle: "För att använda dokumentmallar behöver du uppgradera till ett betalkonto.",
3705
+ actionText: "Uppgradera konto"
3706
+ },
3707
+ en: {
3708
+ title: "Use document templates",
3709
+ subTitle: "To use document templates you need to upgrade to a paid plan.",
3710
+ actionText: "Upgrade my plan"
3711
+ }
3712
+ }
3713
+ },
3714
+ name: "PremiumRestrictedUseDocTemplates",
3715
+ components: {
3716
+ PremiumRestrictedBase: f
3717
+ },
3718
+ props: {
3719
+ onUpgrade: {
3720
+ type: Function,
3721
+ default: null
3722
+ }
3723
+ }
3724
+ };
3725
+ var en = function() {
3726
+ var e = this, t = e._self._c;
3727
+ return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade, plan: "pro" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3728
+ }, tn = [], nn = /* @__PURE__ */ d(
3729
+ Jt,
3730
+ en,
3731
+ tn,
3583
3732
  !1,
3584
3733
  null,
3585
3734
  null,
3586
3735
  null,
3587
3736
  null
3588
3737
  );
3589
- const Kt = jt.exports, Yt = {
3738
+ const an = nn.exports, rn = {
3590
3739
  i18nOptions: {
3591
3740
  namespaces: "PremiumRestrictedEditDocumentLayout",
3592
3741
  messages: {
3593
3742
  sv: {
3594
- title: "Redigerbara dokumentmallar",
3595
- subTitle: "För att använda redigerbara dokumentmallar behöver du uppgradera till ett betalkonto.",
3743
+ title: "Spara dokumentmall",
3744
+ subTitle: "För att spara en dokumentmall behöver du uppgradera till ett betalkonto.",
3596
3745
  actionText: "Uppgradera konto"
3597
3746
  },
3598
3747
  en: {
3599
- title: "Editable document templates",
3600
- subTitle: "To use editable document templates you need to upgrade to a paid plan.",
3748
+ title: "Save document template",
3749
+ subTitle: "To save a document template you need to upgrade to a paid plan.",
3601
3750
  actionText: "Upgrade my plan"
3602
3751
  }
3603
3752
  }
3604
3753
  },
3605
- name: "PremiumRestrictedStats",
3754
+ name: "PremiumRestrictedSaveDocTemplate",
3606
3755
  components: {
3607
3756
  PremiumRestrictedBase: f
3608
3757
  },
@@ -3613,31 +3762,32 @@ const Kt = jt.exports, Yt = {
3613
3762
  }
3614
3763
  }
3615
3764
  };
3616
- var Wt = function() {
3765
+ var sn = function() {
3617
3766
  var e = this, t = e._self._c;
3618
3767
  return t("PremiumRestrictedBase", { attrs: { title: e.$t("title"), "sub-title": e.$t("subTitle"), "on-upgrade": e.onUpgrade, plan: "pro" } }, [t("template", { slot: "actionText" }, [e._v(" " + e._s(e.$t("actionText")) + " ")])], 2);
3619
- }, Xt = [], Jt = /* @__PURE__ */ d(
3620
- Yt,
3621
- Wt,
3622
- Xt,
3768
+ }, on = [], ln = /* @__PURE__ */ d(
3769
+ rn,
3770
+ sn,
3771
+ on,
3623
3772
  !1,
3624
3773
  null,
3625
3774
  null,
3626
3775
  null,
3627
3776
  null
3628
3777
  );
3629
- const Qt = Jt.exports, I = {
3630
- winProfile: ct,
3631
- templates: pt,
3632
- documents: Ct,
3633
- personalMessage: St,
3634
- licenses: Tt,
3635
- inviteCreators: Rt,
3636
- stats: Ut,
3637
- documentBlocks: zt,
3638
- bankIdAndSms: Kt,
3639
- editDocumentLayout: Qt
3640
- }, en = {
3778
+ const cn = ln.exports, I = {
3779
+ winProfile: mt,
3780
+ templates: yt,
3781
+ documents: Pt,
3782
+ personalMessage: $t,
3783
+ licenses: Lt,
3784
+ inviteCreators: Ft,
3785
+ stats: Nt,
3786
+ documentBlocks: Zt,
3787
+ bankIdAndSms: Qt,
3788
+ useDocTemplate: an,
3789
+ saveDocTemplate: cn
3790
+ }, un = {
3641
3791
  name: "IsPremiumPreStep",
3642
3792
  props: {
3643
3793
  feature: {
@@ -3648,7 +3798,7 @@ const Qt = Jt.exports, I = {
3648
3798
  },
3649
3799
  computed: {
3650
3800
  modalName() {
3651
- return I[this.feature] ? I[this.feature] : (ie.error("Missing IsPremiumPreStep component name"), null);
3801
+ return I[this.feature] ? I[this.feature] : (le.error("Missing IsPremiumPreStep component name"), null);
3652
3802
  }
3653
3803
  },
3654
3804
  methods: {
@@ -3674,25 +3824,25 @@ const Qt = Jt.exports, I = {
3674
3824
  onClick: this.onClick
3675
3825
  }) : {};
3676
3826
  }
3677
- }, tn = null, nn = null;
3678
- var an = /* @__PURE__ */ d(
3679
- en,
3680
- tn,
3681
- nn,
3827
+ }, dn = null, mn = null;
3828
+ var pn = /* @__PURE__ */ d(
3829
+ un,
3830
+ dn,
3831
+ mn,
3682
3832
  !1,
3683
3833
  null,
3684
3834
  null,
3685
3835
  null,
3686
3836
  null
3687
3837
  );
3688
- const mn = an.exports;
3838
+ const bn = pn.exports;
3689
3839
  export {
3690
- Qe as C,
3691
- mn as I,
3692
- ze as P,
3693
- Ke as a,
3840
+ at as C,
3841
+ bn as I,
3842
+ Ze as P,
3843
+ Qe as a,
3694
3844
  G as b,
3695
- Ie as c,
3696
- k as r,
3697
- Re as s
3845
+ Re as c,
3846
+ x as r,
3847
+ He as s
3698
3848
  };