@feedmepos/mf-report 5.22.12 → 5.22.13-beta.0

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 (29) hide show
  1. package/dist/{App-DDzVhXL7.js → App-Ci4TNGo-.js} +40 -40
  2. package/dist/{BaseDialog.vue_vue_type_script_setup_true_lang-BZlvMBPW.js → BaseDialog.vue_vue_type_script_setup_true_lang-N4p0t07m.js} +3 -3
  3. package/dist/{DateRangeSelect.vue_vue_type_script_setup_true_lang-BM-li0d3.js → DateRangeSelect.vue_vue_type_script_setup_true_lang-GTlzuFQB.js} +2 -2
  4. package/dist/{Default.vue_vue_type_script_setup_true_lang-BuFLfame.js → Default.vue_vue_type_script_setup_true_lang-COOzNYD3.js} +2 -2
  5. package/dist/{FilterSelector.vue_vue_type_script_setup_true_lang-BoX6fRDT.js → FilterSelector.vue_vue_type_script_setup_true_lang-lO1-P1LC.js} +6 -6
  6. package/dist/{InsightView-DBmUbSlP.js → InsightView-waXZnisb.js} +6 -6
  7. package/dist/{Integration-BDC13WLh.js → Integration-Dn9Ivqfx.js} +36 -35
  8. package/dist/{Integrations-C6gWnyhy.js → Integrations-B56QpwNs.js} +7 -6
  9. package/dist/{Layout-DbHEONpc.js → Layout-ydTDzEg9.js} +1 -1
  10. package/dist/{MenuTab.vue_vue_type_script_setup_true_lang-G9CiV2LK.js → MenuTab.vue_vue_type_script_setup_true_lang-Bqbrinds.js} +5 -5
  11. package/dist/{NavigationTab.vue_vue_type_script_setup_true_lang-D9-002wn.js → NavigationTab.vue_vue_type_script_setup_true_lang-Cpa9H1ZR.js} +5 -5
  12. package/dist/{NoData.vue_vue_type_script_setup_true_lang-CdGpZdFx.js → NoData.vue_vue_type_script_setup_true_lang-C7GXgBKq.js} +1 -1
  13. package/dist/{OverviewView-B0dWJYNP.js → OverviewView-Y-KB6M-1.js} +5 -5
  14. package/dist/{Report-QeJVzX13.js → Report-DvSjPfbV.js} +202 -177
  15. package/dist/{ReportEditor-LupGO1_l.js → ReportEditor-Dj-pof8I.js} +6 -6
  16. package/dist/ReportView-DH8tcg-Q.js +265 -0
  17. package/dist/{SelectComponent.vue_vue_type_script_setup_true_lang-DMMP43KF.js → SelectComponent.vue_vue_type_script_setup_true_lang-DY50WPYu.js} +1 -1
  18. package/dist/{Setting-Dv-Eo5IX.js → Setting-Do5JShD8.js} +5 -5
  19. package/dist/{TileEditor-ZqOV5_Le.js → TileEditor-Do0x54jE.js} +8 -8
  20. package/dist/{TransitionFade-CsoI1XtQ.js → TransitionFade-lS2nSDyF.js} +6 -6
  21. package/dist/{useRestaurantPermission-8zTUt56b.js → access-Dw5cDt65-CQ5PE5GD.js} +386 -388
  22. package/dist/{app-Du0ALyx7.js → app-wKEwqUHq.js} +56 -36
  23. package/dist/app.js +1 -1
  24. package/dist/style.css +1 -1
  25. package/dist/useReportPermission-CRkYtDX0.js +60 -0
  26. package/dist/useRestaurantPermission-3Sf0GSc7.js +65 -0
  27. package/dist/{vue-i18n-kHBFKu4C.js → vue-i18n-wKxo3TA6.js} +7 -7
  28. package/package.json +2 -2
  29. package/dist/ReportView-BMgXES5v.js +0 -250
@@ -131,7 +131,12 @@ const he = {
131
131
  saveError: "Failed to @.lower:report.common.save @.lower:report.common.report",
132
132
  copiedReportIdToClipboard: "Copied @.lower:report.common.report ID to clipboard",
133
133
  failedToAction: "Failed to {action} @.lower:report.common.report",
134
- generatingReport: "Report is being generated and will be sent to your email shortly. Large files may take some time."
134
+ generatingReport: "Report is being generated and will be sent to your email shortly. Large files may take some time.",
135
+ noPermission: "No permission",
136
+ noPermissionRead: "You do not have permission to view this report.",
137
+ noPermissionUpdateReport: "You do not have permission to update this report.",
138
+ noPermissionDuplicateReport: "You do not have permission to duplicate this report.",
139
+ noPermissionDeleteReport: "You do not have permission to delete this report."
135
140
  },
136
141
  schedule: {
137
142
  title: "Schedule @:report.common.email for @:report.common.report",
@@ -1606,7 +1611,12 @@ const he = {
1606
1611
  saveError: "失败@:report.common.save@:report.common.report",
1607
1612
  copiedReportIdToClipboard: "已复制@:report.common.reportID到剪贴板",
1608
1613
  failedToAction: "失败{action} @:report.common.report",
1609
- generatingReport: "报告正在生成,将很快发送到您的电子邮件。大文件可能需要一些时间。"
1614
+ generatingReport: "报告正在生成,将很快发送到您的电子邮件。大文件可能需要一些时间。",
1615
+ noPermission: "无权限",
1616
+ noPermissionRead: "您没有查看此报告的权限。",
1617
+ noPermissionUpdateReport: "您没有更新此报告的权限。",
1618
+ noPermissionDuplicateReport: "您没有复制此报告的权限。",
1619
+ noPermissionDeleteReport: "您没有删除此报告的权限。"
1610
1620
  },
1611
1621
  schedule: {
1612
1622
  title: "@:report.common.schedule@:{report.common.email'}给@:report.common.report",
@@ -3081,7 +3091,12 @@ const he = {
3081
3091
  saveError: "ไม่สามารถ @.lower:report.common.save @.lower:report.common.report ได้",
3082
3092
  copiedReportIdToClipboard: "คัดลอก ID ของ @.lower:report.common.report ไปยังคลิปบอร์ดแล้ว",
3083
3093
  failedToAction: "ไม่สามารถ {action} @.lower:report.common.report ได้",
3084
- generatingReport: "กำลังสร้างรายงานและจะถูกส่งไปยังอีเมลของคุณในไม่ช้า ไฟล์ขนาดใหญ่ قدใช้เวลาสักครู่"
3094
+ generatingReport: "กำลังสร้างรายงานและจะถูกส่งไปยังอีเมลของคุณในไม่ช้า ไฟล์ขนาดใหญ่อาจใช้เวลาสักครู่",
3095
+ noPermission: "ไม่มีสิทธิ์",
3096
+ noPermissionRead: "คุณไม่มีสิทธิ์ดูรายงานนี้",
3097
+ noPermissionUpdateReport: "คุณไม่มีสิทธิ์แก้ไขรายงานนี้",
3098
+ noPermissionDuplicateReport: "คุณไม่มีสิทธิ์ทำสำเนารายงานนี้",
3099
+ noPermissionDeleteReport: "คุณไม่มีสิทธิ์ลบรายงานนี้"
3085
3100
  },
3086
3101
  schedule: {
3087
3102
  title: "กำหนดเวลาสำหรับอีเมลของ @:report.common.report",
@@ -4557,7 +4572,12 @@ const he = {
4557
4572
  saveError: "失敗@:report.common.save@:report.common.report",
4558
4573
  copiedReportIdToClipboard: "已複製@:report.common.reportID到剪貼板",
4559
4574
  failedToAction: "失敗{action} @:report.common.report",
4560
- generatingReport: "報告正在生成,將很快發送到您的電子郵件。大文件可能需要一些時間。"
4575
+ generatingReport: "報告正在生成,將很快發送到您的電子郵件。大文件可能需要一些時間。",
4576
+ noPermission: "無權限",
4577
+ noPermissionRead: "您沒有檢視此報告的權限。",
4578
+ noPermissionUpdateReport: "您沒有更新此報告的權限。",
4579
+ noPermissionDuplicateReport: "您沒有複製此報告的權限。",
4580
+ noPermissionDeleteReport: "您沒有刪除此報告的權限。"
4561
4581
  },
4562
4582
  schedule: {
4563
4583
  title: "@:report.common.schedule@:{report.common.email'}給@:report.common.report",
@@ -5989,11 +6009,11 @@ var ie = { exports: {} };
5989
6009
  return this.$d.getTime();
5990
6010
  }, o.startOf = function(e, i) {
5991
6011
  var t = this, m = !!y.u(i) || i, d = y.p(e), u = function(_, L) {
5992
- var Y = y.w(t.$u ? Date.UTC(t.$y, L, _) : new Date(t.$y, L, _), t);
5993
- return m ? Y : Y.endOf(U);
6012
+ var H = y.w(t.$u ? Date.UTC(t.$y, L, _) : new Date(t.$y, L, _), t);
6013
+ return m ? H : H.endOf(U);
5994
6014
  }, C = function(_, L) {
5995
6015
  return y.w(t.toDate()[_].apply(t.toDate("s"), (m ? [0, 0, 0, 0] : [23, 59, 59, 999]).slice(L)), t);
5996
- }, P = this.$W, k = this.$M, H = this.$D, W = "set" + (this.$u ? "UTC" : "");
6016
+ }, P = this.$W, k = this.$M, Y = this.$D, W = "set" + (this.$u ? "UTC" : "");
5997
6017
  switch (d) {
5998
6018
  case S:
5999
6019
  return m ? u(1, 0) : u(31, 11);
@@ -6001,7 +6021,7 @@ var ie = { exports: {} };
6001
6021
  return m ? u(1, k) : u(0, k + 1);
6002
6022
  case D:
6003
6023
  var $ = this.$locale().weekStart || 0, j = (P < $ ? P + 7 : P) - $;
6004
- return u(m ? H - j : H + (6 - j), k);
6024
+ return u(m ? Y - j : Y + (6 - j), k);
6005
6025
  case U:
6006
6026
  case g:
6007
6027
  return C(W + "Hours", 0);
@@ -6031,8 +6051,8 @@ var ie = { exports: {} };
6031
6051
  var t, m = this;
6032
6052
  e = Number(e);
6033
6053
  var d = y.p(i), u = function(k) {
6034
- var H = f(m);
6035
- return y.w(H.date(H.date() + Math.round(k * e)), m);
6054
+ var Y = f(m);
6055
+ return y.w(Y.date(Y.date() + Math.round(k * e)), m);
6036
6056
  };
6037
6057
  if (d === O) return this.set(O, this.$M + e);
6038
6058
  if (d === S) return this.set(S, this.$y + e);
@@ -6045,16 +6065,16 @@ var ie = { exports: {} };
6045
6065
  }, o.format = function(e) {
6046
6066
  var i = this, t = this.$locale();
6047
6067
  if (!this.isValid()) return t.invalidDate || a;
6048
- var m = e || "YYYY-MM-DDTHH:mm:ssZ", d = y.z(this), u = this.$H, C = this.$m, P = this.$M, k = t.weekdays, H = t.months, W = t.meridiem, $ = function(L, Y, G, K) {
6049
- return L && (L[Y] || L(i, m)) || G[Y].slice(0, K);
6068
+ var m = e || "YYYY-MM-DDTHH:mm:ssZ", d = y.z(this), u = this.$H, C = this.$m, P = this.$M, k = t.weekdays, Y = t.months, W = t.meridiem, $ = function(L, H, G, K) {
6069
+ return L && (L[H] || L(i, m)) || G[H].slice(0, K);
6050
6070
  }, j = function(L) {
6051
6071
  return y.s(u % 12 || 12, L, "0");
6052
- }, _ = W || function(L, Y, G) {
6072
+ }, _ = W || function(L, H, G) {
6053
6073
  var K = L < 12 ? "AM" : "PM";
6054
6074
  return G ? K.toLowerCase() : K;
6055
6075
  };
6056
- return m.replace(c, function(L, Y) {
6057
- return Y || function(G) {
6076
+ return m.replace(c, function(L, H) {
6077
+ return H || function(G) {
6058
6078
  switch (G) {
6059
6079
  case "YY":
6060
6080
  return String(i.$y).slice(-2);
@@ -6065,9 +6085,9 @@ var ie = { exports: {} };
6065
6085
  case "MM":
6066
6086
  return y.s(P + 1, 2, "0");
6067
6087
  case "MMM":
6068
- return $(t.monthsShort, P, H, 3);
6088
+ return $(t.monthsShort, P, Y, 3);
6069
6089
  case "MMMM":
6070
- return $(H, P);
6090
+ return $(Y, P);
6071
6091
  case "D":
6072
6092
  return i.$D;
6073
6093
  case "DD":
@@ -6111,18 +6131,18 @@ var ie = { exports: {} };
6111
6131
  }, o.utcOffset = function() {
6112
6132
  return 15 * -Math.round(this.$d.getTimezoneOffset() / 15);
6113
6133
  }, o.diff = function(e, i, t) {
6114
- var m, d = this, u = y.p(i), C = f(e), P = (C.utcOffset() - this.utcOffset()) * v, k = this - C, H = function() {
6134
+ var m, d = this, u = y.p(i), C = f(e), P = (C.utcOffset() - this.utcOffset()) * v, k = this - C, Y = function() {
6115
6135
  return y.m(d, C);
6116
6136
  };
6117
6137
  switch (u) {
6118
6138
  case S:
6119
- m = H() / 12;
6139
+ m = Y() / 12;
6120
6140
  break;
6121
6141
  case O:
6122
- m = H();
6142
+ m = Y();
6123
6143
  break;
6124
6144
  case b:
6125
- m = H() / 3;
6145
+ m = Y() / 3;
6126
6146
  break;
6127
6147
  case D:
6128
6148
  m = (k - P) / 6048e5;
@@ -6414,9 +6434,9 @@ var ce = { exports: {} };
6414
6434
  y && (V = x[2]), h = this.$locale(), !f && V && (h = l.Ls[V]), this.$d = function(i, t, m, d) {
6415
6435
  try {
6416
6436
  if (["x", "X"].indexOf(t) > -1) return new Date((t === "X" ? 1e3 : 1) * i);
6417
- var u = a(t)(i), C = u.year, P = u.month, k = u.day, H = u.hours, W = u.minutes, $ = u.seconds, j = u.milliseconds, _ = u.zone, L = u.week, Y = /* @__PURE__ */ new Date(), G = k || (C || P ? 1 : Y.getDate()), K = C || Y.getFullYear(), J = 0;
6418
- C && !P || (J = P > 0 ? P - 1 : Y.getMonth());
6419
- var ee, oe = H || 0, te = W || 0, re = $ || 0, ae = j || 0;
6437
+ var u = a(t)(i), C = u.year, P = u.month, k = u.day, Y = u.hours, W = u.minutes, $ = u.seconds, j = u.milliseconds, _ = u.zone, L = u.week, H = /* @__PURE__ */ new Date(), G = k || (C || P ? 1 : H.getDate()), K = C || H.getFullYear(), J = 0;
6438
+ C && !P || (J = P > 0 ? P - 1 : H.getMonth());
6439
+ var ee, oe = Y || 0, te = W || 0, re = $ || 0, ae = j || 0;
6420
6440
  return _ ? new Date(Date.UTC(K, J, G, oe, te, re, ae + 60 * _.offset * 1e3)) : m ? new Date(Date.UTC(K, J, G, oe, te, re, ae)) : (ee = new Date(K, J, G, oe, te, re, ae), L && (ee = d(ee).week(L).toDate()), ee);
6421
6441
  } catch {
6422
6442
  return /* @__PURE__ */ new Date("");
@@ -6494,51 +6514,51 @@ const Ue = [
6494
6514
  path: "/overview",
6495
6515
  alias: ["/"],
6496
6516
  name: "overview",
6497
- component: () => import("./OverviewView-B0dWJYNP.js")
6517
+ component: () => import("./OverviewView-Y-KB6M-1.js")
6498
6518
  },
6499
6519
  {
6500
6520
  path: "/report",
6501
6521
  name: "reports",
6502
- component: () => import("./Report-QeJVzX13.js")
6522
+ component: () => import("./Report-DvSjPfbV.js")
6503
6523
  },
6504
6524
  {
6505
6525
  path: "/insights",
6506
6526
  name: "insights",
6507
- component: () => import("./InsightView-DBmUbSlP.js")
6527
+ component: () => import("./InsightView-waXZnisb.js")
6508
6528
  },
6509
6529
  {
6510
6530
  path: "/report-view",
6511
6531
  name: "reportView",
6512
- component: () => import("./ReportView-BMgXES5v.js")
6532
+ component: () => import("./ReportView-DH8tcg-Q.js")
6513
6533
  },
6514
6534
  {
6515
6535
  path: "/report-editor",
6516
6536
  name: "reportEditor",
6517
- component: () => import("./ReportEditor-LupGO1_l.js")
6537
+ component: () => import("./ReportEditor-Dj-pof8I.js")
6518
6538
  },
6519
6539
  {
6520
6540
  path: "/report-editor/tile-editor",
6521
6541
  name: "tileEditor",
6522
- component: () => import("./TileEditor-ZqOV5_Le.js")
6542
+ component: () => import("./TileEditor-Do0x54jE.js")
6523
6543
  },
6524
6544
  {
6525
6545
  path: "/setting",
6526
6546
  name: "setting",
6527
- component: () => import("./Setting-Dv-Eo5IX.js")
6547
+ component: () => import("./Setting-Do5JShD8.js")
6528
6548
  },
6529
6549
  {
6530
6550
  path: "/integration",
6531
- component: () => import("./Layout-DbHEONpc.js"),
6551
+ component: () => import("./Layout-ydTDzEg9.js"),
6532
6552
  children: [
6533
6553
  {
6534
6554
  name: "integrations",
6535
6555
  path: "",
6536
- component: () => import("./Integrations-C6gWnyhy.js")
6556
+ component: () => import("./Integrations-B56QpwNs.js")
6537
6557
  },
6538
6558
  {
6539
6559
  name: "integration",
6540
6560
  path: "/integration/:id",
6541
- component: () => import("./Integration-BDC13WLh.js")
6561
+ component: () => import("./Integration-Dn9Ivqfx.js")
6542
6562
  }
6543
6563
  ]
6544
6564
  },
@@ -6562,9 +6582,9 @@ const Ve = {
6562
6582
  "zh-CN": ve,
6563
6583
  "th-TH": be,
6564
6584
  "zh-Hant": Se
6565
- }, He = le(() => import("./App-DDzVhXL7.js"));
6585
+ }, Ye = le(() => import("./App-Ci4TNGo-.js"));
6566
6586
  export {
6567
- He as F,
6587
+ Ye as F,
6568
6588
  ve as a,
6569
6589
  Te as b,
6570
6590
  q as c,
package/dist/app.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import "vue";
2
- import { F as e, i as o, r as p } from "./app-Du0ALyx7.js";
2
+ import { F as e, i as o, r as p } from "./app-wKEwqUHq.js";
3
3
  export {
4
4
  e as FmApp,
5
5
  o as i18nMessages,
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .glassmorphism{background:linear-gradient(135deg,#fffffff5,#fffffff5);box-shadow:0 8px 24px #0f172a2e}.chart-legend-text[data-v-6006dfdf]{color:var(--legend-text-color);font-size:var(--legend-font-size)}.chart-legend-list[data-v-6006dfdf]{scrollbar-width:none;-ms-overflow-style:none}.chart-legend-list[data-v-6006dfdf]::-webkit-scrollbar{display:none;width:0;height:0}.circular{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;padding:0;width:var(--chart-width);height:var(--chart-height)}.circular .flex-col.gap-8{gap:0!important}.circular .fm-color-typo-primary:empty,.circular .fm-color-typo-secondary:empty{display:none}.circular .grow{height:100%}.sparkline{margin:0;padding:0}.sparkline .grow{height:50px;flex-grow:0}.scrollbar-hide-table>div{scrollbar-width:thin}.bar-chart{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;padding:0;width:var(--chart-width);height:var(--chart-height)}.bar-chart .grow{height:100%}.bar-chart .flex-col{gap:0}.widget-content{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.chart-layout{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-height:0}.chart-layout--side{flex-direction:row;align-items:stretch;gap:0;min-height:0}.line-chart{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;margin:0;padding:8px 0 0;width:var(--chart-width);height:var(--chart-height)}.line-chart .grow{height:100%}.line-chart .flex-col{gap:0}.card-container[data-v-1284dd51]{overflow-y:auto;overflow-x:hidden}.show-pin{visibility:hidden}.row:hover .show-pin{visibility:visible}.icon-btn{border-radius:100%}.overlay{background:#0006;position:absolute;top:0;left:0;height:100vh;width:100vw}.side-panel{position:fixed;right:0;top:0;height:100%;background:#fff}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .3s ease-out}.slide-enter-from,.slide-leave-to{transform:translate(100%)}.remove-line-clamping[data-v-57161c29] .line-clamp-1,.remove-line-clamping[data-v-57161c29] .line-clamp-2{display:block!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;-webkit-box-orient:unset!important;overflow:visible!important;white-space:normal!important}.selected-widget[data-v-7c1916a3]{background-color:#fff4e6;border-color:#ff7823}.slide-fade-enter-active[data-v-fa67a3a4],.slide-fade-leave-active[data-v-fa67a3a4]{transition:all .3s ease-in-out}.slide-fade-enter-from[data-v-fa67a3a4],.slide-fade-leave-to[data-v-fa67a3a4]{transform:translateY(-50px);opacity:0}.slide-fade-right-enter-active[data-v-a98ca9bc],.slide-fade-right-leave-active[data-v-a98ca9bc]{transition:all .3s ease-in-out}.slide-fade-right-enter-from[data-v-a98ca9bc],.slide-fade-right-leave-to[data-v-a98ca9bc]{position:absolute;transform:translate(-50px);opacity:.4}.slide-fade-left-enter-active[data-v-a98ca9bc]{transition-delay:.3s;transition:all .3s ease-in-out}.slide-fade-left-leave-active[data-v-a98ca9bc]{transition:all .3s ease-in-out}.slide-fade-left-enter-from[data-v-a98ca9bc],.slide-fade-left-leave-to[data-v-a98ca9bc]{position:absolute;transform:translate(-50px);opacity:.1}.toggleEditResize{border:2px dashed #3b82f6!important;position:relative}th:hover,td:hover{cursor:default}.col-resize-handle{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.highlight-hover-col,.highlight-col{border-right:2px solid #3b82f6!important}.row-resize-handle{position:absolute;bottom:0;left:0;width:100%;height:6px;cursor:row-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.highlight-hover-row,.highlight-row{border-bottom:2px solid #3b82f6!important}.legend-color-input[data-v-0f6af12a]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:40px;height:24px;border:0;background:transparent;padding:0}.legend-color-input[data-v-0f6af12a]::-webkit-color-swatch-wrapper{padding:0}.legend-color-input[data-v-0f6af12a]::-webkit-color-swatch{border:1px solid rgb(var(--fm-color-neutral-gray-200));border-radius:4px}.legend-color-input[data-v-0f6af12a]::-moz-color-swatch{border:1px solid rgb(var(--fm-color-neutral-gray-200));border-radius:4px}.line-style-icon[data-v-f1c35513]{width:28px;border-top:2px solid currentColor;color:rgb(var(--fm-color-neutral-gray-300));flex-shrink:0}.line-style-icon--solid[data-v-f1c35513]{border-top-style:solid}.line-style-icon--dashed[data-v-f1c35513]{border-top-style:dashed}.line-style-icon--dotted[data-v-f1c35513]{border-top-style:dotted}.fm-top-sheet{height:100%}.integration-card[data-v-b7f0bdc3]{height:140px;width:140px;padding:0}.integration-card .logo-card[data-v-b7f0bdc3]{width:100%;padding:24px;background:#fff}.integration-card .title-card[data-v-b7f0bdc3]{height:36px;color:#fff}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}
1
+ .glassmorphism{background:linear-gradient(135deg,#fffffff5,#fffffff5);box-shadow:0 8px 24px #0f172a2e}.chart-legend-text[data-v-6006dfdf]{color:var(--legend-text-color);font-size:var(--legend-font-size)}.chart-legend-list[data-v-6006dfdf]{scrollbar-width:none;-ms-overflow-style:none}.chart-legend-list[data-v-6006dfdf]::-webkit-scrollbar{display:none;width:0;height:0}.circular{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;padding:0;width:var(--chart-width);height:var(--chart-height)}.circular .flex-col.gap-8{gap:0!important}.circular .fm-color-typo-primary:empty,.circular .fm-color-typo-secondary:empty{display:none}.circular .grow{height:100%}.sparkline{margin:0;padding:0}.sparkline .grow{height:50px;flex-grow:0}.scrollbar-hide-table>div{scrollbar-width:thin}.bar-chart{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;padding:0;width:var(--chart-width);height:var(--chart-height)}.bar-chart .grow{height:100%}.bar-chart .flex-col{gap:0}.widget-content{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}.chart-layout{display:flex;flex-direction:column;flex:1 1 auto;width:100%;min-height:0}.chart-layout--side{flex-direction:row;align-items:stretch;gap:0;min-height:0}.line-chart{flex:1 1 auto;min-height:0;min-width:0;max-height:100%;overflow:hidden;margin:0;padding:8px 0 0;width:var(--chart-width);height:var(--chart-height)}.line-chart .grow{height:100%}.line-chart .flex-col{gap:0}.card-container[data-v-1284dd51]{overflow-y:auto;overflow-x:hidden}.show-pin{visibility:hidden}.row:hover .show-pin{visibility:visible}.icon-btn{border-radius:100%}.overlay{background:#0006;position:absolute;top:0;left:0;height:100vh;width:100vw}.side-panel{position:fixed;right:0;top:0;height:100%;background:#fff}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease}.fade-enter-from,.fade-leave-to{opacity:0}.slide-enter-active,.slide-leave-active{transition:all .3s ease-out}.slide-enter-from,.slide-leave-to{transform:translate(100%)}.remove-line-clamping[data-v-6ddab9e2] .line-clamp-1,.remove-line-clamping[data-v-6ddab9e2] .line-clamp-2{display:block!important;-webkit-line-clamp:unset!important;line-clamp:unset!important;-webkit-box-orient:unset!important;overflow:visible!important;white-space:normal!important}.selected-widget[data-v-7c1916a3]{background-color:#fff4e6;border-color:#ff7823}.slide-fade-enter-active[data-v-fa67a3a4],.slide-fade-leave-active[data-v-fa67a3a4]{transition:all .3s ease-in-out}.slide-fade-enter-from[data-v-fa67a3a4],.slide-fade-leave-to[data-v-fa67a3a4]{transform:translateY(-50px);opacity:0}.slide-fade-right-enter-active[data-v-a98ca9bc],.slide-fade-right-leave-active[data-v-a98ca9bc]{transition:all .3s ease-in-out}.slide-fade-right-enter-from[data-v-a98ca9bc],.slide-fade-right-leave-to[data-v-a98ca9bc]{position:absolute;transform:translate(-50px);opacity:.4}.slide-fade-left-enter-active[data-v-a98ca9bc]{transition-delay:.3s;transition:all .3s ease-in-out}.slide-fade-left-leave-active[data-v-a98ca9bc]{transition:all .3s ease-in-out}.slide-fade-left-enter-from[data-v-a98ca9bc],.slide-fade-left-leave-to[data-v-a98ca9bc]{position:absolute;transform:translate(-50px);opacity:.1}.toggleEditResize{border:2px dashed #3b82f6!important;position:relative}th:hover,td:hover{cursor:default}.col-resize-handle{position:absolute;top:0;right:0;width:6px;height:100%;cursor:col-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.highlight-hover-col,.highlight-col{border-right:2px solid #3b82f6!important}.row-resize-handle{position:absolute;bottom:0;left:0;width:100%;height:6px;cursor:row-resize;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:10}.highlight-hover-row,.highlight-row{border-bottom:2px solid #3b82f6!important}.legend-color-input[data-v-0f6af12a]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:40px;height:24px;border:0;background:transparent;padding:0}.legend-color-input[data-v-0f6af12a]::-webkit-color-swatch-wrapper{padding:0}.legend-color-input[data-v-0f6af12a]::-webkit-color-swatch{border:1px solid rgb(var(--fm-color-neutral-gray-200));border-radius:4px}.legend-color-input[data-v-0f6af12a]::-moz-color-swatch{border:1px solid rgb(var(--fm-color-neutral-gray-200));border-radius:4px}.line-style-icon[data-v-f1c35513]{width:28px;border-top:2px solid currentColor;color:rgb(var(--fm-color-neutral-gray-300));flex-shrink:0}.line-style-icon--solid[data-v-f1c35513]{border-top-style:solid}.line-style-icon--dashed[data-v-f1c35513]{border-top-style:dashed}.line-style-icon--dotted[data-v-f1c35513]{border-top-style:dotted}.fm-top-sheet{height:100%}.integration-card[data-v-b7f0bdc3]{height:140px;width:140px;padding:0}.integration-card .logo-card[data-v-b7f0bdc3]{width:100%;padding:24px;background:#fff}.integration-card .title-card[data-v-b7f0bdc3]{height:36px;color:#fff}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}
@@ -0,0 +1,60 @@
1
+ import { computed as i } from "vue";
2
+ import { y as r, g as m } from "./access-Dw5cDt65-CQ5PE5GD.js";
3
+ import { useCoreStore as b } from "@feedmepos/mf-common";
4
+ import { c as R, h as y } from "./vue-i18n-wKxo3TA6.js";
5
+ function F(n) {
6
+ const s = n.permissionKey || n.id;
7
+ return s ? `business::report::reports::${s}` : null;
8
+ }
9
+ function P() {
10
+ const { sessionUser: n } = b(), s = R(), c = i(() => {
11
+ const e = s.flags.find(
12
+ (t) => t.key === y.report_portal_permission
13
+ );
14
+ return (e == null ? void 0 : e.value) === !0;
15
+ }), u = i(
16
+ () => {
17
+ var e, t;
18
+ return Array.isArray((e = n.value) == null ? void 0 : e.permissions) ? (t = n.value) == null ? void 0 : t.permissions : [];
19
+ }
20
+ );
21
+ function o(e, t) {
22
+ if (!c.value) return !0;
23
+ const a = F(e);
24
+ return !a || !u.value.length ? !1 : t.some((l) => m([{
25
+ action: l,
26
+ // Report subjects are custom strings; cast to satisfy CaslPermission type
27
+ subject: a
28
+ }], u.value).granted);
29
+ }
30
+ function p(e) {
31
+ return o(e, [r.update, r.manage]);
32
+ }
33
+ function f(e) {
34
+ return o(e, [r.delete, r.manage]);
35
+ }
36
+ function d(e) {
37
+ return o(e, [r.manage]);
38
+ }
39
+ function g(e) {
40
+ return o(e, [r.create, r.manage]);
41
+ }
42
+ const v = i(() => {
43
+ if (!c.value) return !0;
44
+ const e = "business::report::createReport";
45
+ return u.value.length ? [r.create, r.manage].some((t) => m([{
46
+ action: t,
47
+ subject: e
48
+ }], u.value).granted) : !1;
49
+ });
50
+ return {
51
+ canUpdate: p,
52
+ canDelete: f,
53
+ canManage: d,
54
+ canDuplicate: g,
55
+ canCreateReport: v
56
+ };
57
+ }
58
+ export {
59
+ P as u
60
+ };
@@ -0,0 +1,65 @@
1
+ import { computed as u } from "vue";
2
+ import { u as c } from "./vue-i18n-wKxo3TA6.js";
3
+ import { useSnackbar as f } from "@feedmepos/ui-library";
4
+ import { useCoreStore as d } from "@feedmepos/mf-common";
5
+ import { l, g as i } from "./access-Dw5cDt65-CQ5PE5GD.js";
6
+ function g(t) {
7
+ return Array.isArray(t) ? t : [];
8
+ }
9
+ function m(t) {
10
+ const { rules: r, action: a, restaurantId: e } = t;
11
+ if (!r.length) return !1;
12
+ const s = {
13
+ action: a,
14
+ subject: l.restaurant
15
+ };
16
+ return e ? i(s, r, { restaurantId: e }).granted : i([s], r).granted;
17
+ }
18
+ function R(t) {
19
+ const { integrationRestaurantIds: r, rules: a, action: e } = t;
20
+ if (!Array.isArray(r) || r.length === 0)
21
+ return [];
22
+ const s = [];
23
+ for (const o of r)
24
+ typeof o == "string" && (m({ rules: a, action: e, restaurantId: o }) || s.push(o));
25
+ return s;
26
+ }
27
+ function p(t) {
28
+ return R({
29
+ integrationRestaurantIds: t.integrationRestaurantIds,
30
+ rules: t.rules,
31
+ action: t.action
32
+ }).length > 0;
33
+ }
34
+ function U() {
35
+ const t = f(), { t: r } = c(), { sessionUser: a } = d(), e = u(
36
+ () => {
37
+ var n;
38
+ return g((n = a.value) == null ? void 0 : n.permissions);
39
+ }
40
+ );
41
+ function s(n) {
42
+ t.open({
43
+ type: "error",
44
+ message: r("report.integration.error.containsUnauthorizedRestaurant", {
45
+ action: r(`report.integration.permissionAction.${n}`)
46
+ })
47
+ });
48
+ }
49
+ function o(n) {
50
+ return p({
51
+ integrationRestaurantIds: n.integrationRestaurantIds,
52
+ rules: e.value,
53
+ action: n.action
54
+ });
55
+ }
56
+ return {
57
+ rules: e,
58
+ notifyUnauthorized: s,
59
+ isRestricted: o
60
+ };
61
+ }
62
+ export {
63
+ p as h,
64
+ U as u
65
+ };
@@ -3,7 +3,7 @@ var Cr = (e, t, A) => t in e ? wr(e, t, { enumerable: !0, configurable: !0, writ
3
3
  var Ft = (e, t, A) => Cr(e, typeof t != "symbol" ? t + "" : t, A);
4
4
  import { defineStore as Gt, storeToRefs as tt } from "pinia";
5
5
  import { ref as ue, computed as je, readonly as SA, getCurrentInstance as cn, inject as pr, shallowRef as Br, watch as Xn, onMounted as hr, onUnmounted as Er, defineComponent as Fn, h as ho, createVNode as Dr, Text as xr, Fragment as Eo } from "vue";
6
- import { d as Z, c as Hr } from "./app-Du0ALyx7.js";
6
+ import { d as Z, c as Hr } from "./app-wKEwqUHq.js";
7
7
  import "@vue/devtools-api";
8
8
  const Xr = "mf-reportquery-store", te = Gt(Xr, () => {
9
9
  const e = ue(""), t = ue(""), A = ue("MY");
@@ -1766,7 +1766,7 @@ class Rn {
1766
1766
  this.baseUrl = t;
1767
1767
  }
1768
1768
  }
1769
- const Ue = new Rn("https://query-engine{.country}.feedmeapi.com"), kt = new Rn("https://query-engine{.country}.feedmeapi.com/report-query"), Ol = new Rn("https://query-engine{.country}.feedmeapi.com/report-file"), la = (e) => ({
1769
+ const Ue = new Rn("https://query-engine{.country}.feedmeapidev.com"), kt = new Rn("https://query-engine{.country}.feedmeapidev.com/report-query"), Ol = new Rn("https://query-engine{.country}.feedmeapidev.com/report-file"), la = (e) => ({
1770
1770
  id: e._id,
1771
1771
  name: e.profile.name,
1772
1772
  code: e.profile.code,
@@ -2940,7 +2940,7 @@ function xa(e = Da) {
2940
2940
  reset: l
2941
2941
  };
2942
2942
  }
2943
- var Ha = () => xa(), ye = /* @__PURE__ */ ((e) => (e.report_portal_integration_bukku_api = "report_portal_integration_bukku_api", e.report_portal_integration_autocount_export = "report_portal_integration_autocount_export", e.report_portal_integration_sql_export = "report_portal_integration_sql_export", e.report_portal_integration_xero_api = "report_portal_integration_xero_api", e.report_portal_integration_netsuite_export = "report_portal_integration_netsuite_export", e.report_portal_integration_netsuite_api = "report_portal_integration_netsuite_api", e.report_portal_integration_iflexi_hrms_export = "report_portal_integration_iflexi_hrms_export", e.report_portal_integration_custom_report = "report_portal_integration_custom_report", e.report_portal_integration_biztory_api = "report_portal_integration_biztory_api", e.report_portal_integration_autocount_cloud_api = "report_portal_integration_autocount_cloud_api", e.report_portal_integration_autocount_cloud_export = "report_portal_integration_autocount_cloud_export", e.report_portal_integration_synergy_export = "report_portal_integration_synergy_export", e.report_portal_integration_codemax_pos_api = "report_portal_integration_codemax_pos_api", e.report_portal_integration_custom_sql = "report_portal_integration_custom_sql", e))(ye || {});
2943
+ var Ha = () => xa(), ye = /* @__PURE__ */ ((e) => (e.report_portal_integration_bukku_api = "report_portal_integration_bukku_api", e.report_portal_integration_autocount_export = "report_portal_integration_autocount_export", e.report_portal_integration_sql_export = "report_portal_integration_sql_export", e.report_portal_integration_xero_api = "report_portal_integration_xero_api", e.report_portal_integration_netsuite_export = "report_portal_integration_netsuite_export", e.report_portal_integration_netsuite_api = "report_portal_integration_netsuite_api", e.report_portal_integration_iflexi_hrms_export = "report_portal_integration_iflexi_hrms_export", e.report_portal_integration_custom_report = "report_portal_integration_custom_report", e.report_portal_integration_biztory_api = "report_portal_integration_biztory_api", e.report_portal_integration_autocount_cloud_api = "report_portal_integration_autocount_cloud_api", e.report_portal_integration_autocount_cloud_export = "report_portal_integration_autocount_cloud_export", e.report_portal_integration_synergy_export = "report_portal_integration_synergy_export", e.report_portal_integration_codemax_pos_api = "report_portal_integration_codemax_pos_api", e.report_portal_integration_custom_sql = "report_portal_integration_custom_sql", e.report_portal_permission = "report_portal_permission", e))(ye || {});
2944
2944
  const Xa = async () => {
2945
2945
  const { setUser: e, getFlag: t } = Ha(), { businessId: A } = te(), n = [], o = `business-${A}`;
2946
2946
  await e(o);
@@ -5996,10 +5996,10 @@ export {
5996
5996
  Au as e,
5997
5997
  Ha as f,
5998
5998
  Mn as g,
5999
- jl as h,
6000
- bl as i,
6001
- Jl as j,
6002
- ye as k,
5999
+ ye as h,
6000
+ jl as i,
6001
+ bl as j,
6002
+ Jl as k,
6003
6003
  kt as l,
6004
6004
  yl as m,
6005
6005
  Gl as n,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@feedmepos/mf-report",
3
- "version": "5.22.12",
3
+ "version": "5.22.13-beta.0",
4
4
  "files": [
5
5
  "dist"
6
6
  ],
@@ -19,7 +19,7 @@
19
19
  "@feedmepos/feature-flag": "^0.0.15",
20
20
  "@feedmepos/mf-common": "1.24.0",
21
21
  "@feedmepos/ui-library": "1.10.1",
22
- "@feedmepos/hrm-permission": "1.0.0",
22
+ "@feedmepos/hrm-permission": "1.0.1",
23
23
  "axios": "^1.6.7",
24
24
  "change-case": "^5.4.3",
25
25
  "chart.js": "^4.4.2",