@feedmepos/mf-report 5.22.14-beta.2 → 5.22.15-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 (30) hide show
  1. package/dist/{App-Cwppqefm.js → App-BQhR0gXI.js} +5 -5
  2. package/dist/{BaseDialog.vue_vue_type_script_setup_true_lang-CcKWqqNP.js → BaseDialog.vue_vue_type_script_setup_true_lang-CoJrINGt.js} +1890 -1838
  3. package/dist/{DateRangeSelect.vue_vue_type_script_setup_true_lang-CryPHoYr.js → DateRangeSelect.vue_vue_type_script_setup_true_lang-HVO_Z_aB.js} +7 -7
  4. package/dist/{Default.vue_vue_type_script_setup_true_lang-DU3zkEF1.js → Default.vue_vue_type_script_setup_true_lang-B0td3xNS.js} +2 -2
  5. package/dist/{FilterSelector.vue_vue_type_script_setup_true_lang-CyW-5xr4.js → FilterSelector.vue_vue_type_script_setup_true_lang-DB7d9t3_.js} +6 -6
  6. package/dist/{InsightView-DAnaBH3D.js → InsightView-CitbD8mF.js} +6 -6
  7. package/dist/{Integration-DiNs52W5.js → Integration-DjnNmveS.js} +6 -7
  8. package/dist/{Integrations-BvgLRF5N.js → Integrations-BKYeENnK.js} +6 -7
  9. package/dist/{Layout-BAYV4nCo.js → Layout-5TdGrp8j.js} +1 -1
  10. package/dist/{MenuTab.vue_vue_type_script_setup_true_lang-BZphMQGv.js → MenuTab.vue_vue_type_script_setup_true_lang-DkiUvM56.js} +5 -5
  11. package/dist/{NavigationTab.vue_vue_type_script_setup_true_lang-DSTG-gQ3.js → NavigationTab.vue_vue_type_script_setup_true_lang-CifNNsqR.js} +3120 -3095
  12. package/dist/{NoData.vue_vue_type_script_setup_true_lang-zS79GrjC.js → NoData.vue_vue_type_script_setup_true_lang-Uei_Jstp.js} +1 -1
  13. package/dist/{OverviewView-CvRMdLbB.js → OverviewView-DZoL2KUz.js} +5 -5
  14. package/dist/{Report-C6445626.js → Report-D_9Db2Pa.js} +216 -187
  15. package/dist/{ReportEditor-Cy8f2WFu.js → ReportEditor-VGOkYidh.js} +65 -65
  16. package/dist/{ReportView-D-T3b10U.js → ReportView-B9PQlaFs.js} +22 -22
  17. package/dist/{SelectComponent.vue_vue_type_script_setup_true_lang-CYDZzbCU.js → SelectComponent.vue_vue_type_script_setup_true_lang-UhEjUKRz.js} +1 -1
  18. package/dist/{Setting-DBzyuCx-.js → Setting-BpStivU1.js} +5 -5
  19. package/dist/{TileEditor-CWYE5X71.js → TileEditor-CYwZNqhl.js} +110 -110
  20. package/dist/{TransitionFade-DwQjFIYA.js → TransitionFade-Cmxee7D0.js} +6 -6
  21. package/dist/{app-BRv3iLF1.js → app-BXEgzj0c.js} +11 -11
  22. package/dist/app.js +1 -1
  23. package/dist/style.css +1 -1
  24. package/dist/useReportPermission-B_CqU5GP.js +63 -0
  25. package/dist/useRestaurantPermission-DIlTzfKA.js +64 -0
  26. package/dist/{vue-i18n-ComGWqEb.js → vue-i18n-mTXrqqL9.js} +4477 -3241
  27. package/package.json +2 -2
  28. package/dist/access-Dw5cDt65-C2c0R9q4.js +0 -1238
  29. package/dist/useReportPermission-CDWkdi6R.js +0 -60
  30. package/dist/useRestaurantPermission-CjG_t7dK.js +0 -65
@@ -1,15 +1,15 @@
1
1
  import { defineComponent as Te, onBeforeMount as In, onBeforeUnmount as Fn, resolveComponent as N, createElementBlock as ee, openBlock as V, normalizeStyle as kn, unref as X, renderSlot as ze, createVNode as A, createElementVNode as ue, toDisplayString as Ae, TransitionGroup as An, nextTick as nn, h as Rt, mergeModels as Nt, useModel as Ge, computed as Fe, Fragment as qe, renderList as on, createBlock as Pe, normalizeClass as Xt, withCtx as ie, Transition as xt, createCommentVNode as ce, ref as Se, watch as pt, withModifiers as Yt, createTextVNode as Nn } from "vue";
2
- import { u as Pt, e as Pn, p as Vn, j as rn } from "./vue-i18n-ComGWqEb.js";
2
+ import { u as Pt, e as Pn, p as Vn, k as rn } from "./vue-i18n-mTXrqqL9.js";
3
3
  import { useCoreStore as Mn } from "@feedmepos/mf-common";
4
4
  import { storeToRefs as Ln } from "pinia";
5
5
  import { useRoute as Bn } from "vue-router";
6
- import { W as F, c as De, d as $n } from "./BaseDialog.vue_vue_type_script_setup_true_lang-CcKWqqNP.js";
7
- import { _ as Vt, a as Wt } from "./SelectComponent.vue_vue_type_script_setup_true_lang-CYDZzbCU.js";
8
- import { R as Rn, I as Be, f as an, h as ln, i as Xn } from "./FilterSelector.vue_vue_type_script_setup_true_lang-CyW-5xr4.js";
9
- import { d as ht } from "./app-BRv3iLF1.js";
6
+ import { W as F, c as De, d as $n } from "./BaseDialog.vue_vue_type_script_setup_true_lang-CoJrINGt.js";
7
+ import { _ as Vt, a as Wt } from "./SelectComponent.vue_vue_type_script_setup_true_lang-UhEjUKRz.js";
8
+ import { R as Rn, I as Be, f as an, h as ln, i as Xn } from "./FilterSelector.vue_vue_type_script_setup_true_lang-DB7d9t3_.js";
9
+ import { d as ht } from "./app-BXEgzj0c.js";
10
10
  import { r as Yn } from "./i18n-CI_sQ5d_.js";
11
11
  import { useSnackbar as Wn } from "@feedmepos/ui-library";
12
- import { d as Un } from "./DateRangeSelect.vue_vue_type_script_setup_true_lang-CryPHoYr.js";
12
+ import { d as Un } from "./DateRangeSelect.vue_vue_type_script_setup_true_lang-HVO_Z_aB.js";
13
13
  const jn = {
14
14
  key: 0,
15
15
  class: "flex gap-24 flex-col h-screen w-screen justify-center items-center"
@@ -6514,51 +6514,51 @@ const Ue = [
6514
6514
  path: "/overview",
6515
6515
  alias: ["/"],
6516
6516
  name: "overview",
6517
- component: () => import("./OverviewView-CvRMdLbB.js")
6517
+ component: () => import("./OverviewView-DZoL2KUz.js")
6518
6518
  },
6519
6519
  {
6520
6520
  path: "/report",
6521
6521
  name: "reports",
6522
- component: () => import("./Report-C6445626.js")
6522
+ component: () => import("./Report-D_9Db2Pa.js")
6523
6523
  },
6524
6524
  {
6525
6525
  path: "/insights",
6526
6526
  name: "insights",
6527
- component: () => import("./InsightView-DAnaBH3D.js")
6527
+ component: () => import("./InsightView-CitbD8mF.js")
6528
6528
  },
6529
6529
  {
6530
6530
  path: "/report-view",
6531
6531
  name: "reportView",
6532
- component: () => import("./ReportView-D-T3b10U.js")
6532
+ component: () => import("./ReportView-B9PQlaFs.js")
6533
6533
  },
6534
6534
  {
6535
6535
  path: "/report-editor",
6536
6536
  name: "reportEditor",
6537
- component: () => import("./ReportEditor-Cy8f2WFu.js")
6537
+ component: () => import("./ReportEditor-VGOkYidh.js")
6538
6538
  },
6539
6539
  {
6540
6540
  path: "/report-editor/tile-editor",
6541
6541
  name: "tileEditor",
6542
- component: () => import("./TileEditor-CWYE5X71.js")
6542
+ component: () => import("./TileEditor-CYwZNqhl.js")
6543
6543
  },
6544
6544
  {
6545
6545
  path: "/setting",
6546
6546
  name: "setting",
6547
- component: () => import("./Setting-DBzyuCx-.js")
6547
+ component: () => import("./Setting-BpStivU1.js")
6548
6548
  },
6549
6549
  {
6550
6550
  path: "/integration",
6551
- component: () => import("./Layout-BAYV4nCo.js"),
6551
+ component: () => import("./Layout-5TdGrp8j.js"),
6552
6552
  children: [
6553
6553
  {
6554
6554
  name: "integrations",
6555
6555
  path: "",
6556
- component: () => import("./Integrations-BvgLRF5N.js")
6556
+ component: () => import("./Integrations-BKYeENnK.js")
6557
6557
  },
6558
6558
  {
6559
6559
  name: "integration",
6560
6560
  path: "/integration/:id",
6561
- component: () => import("./Integration-DiNs52W5.js")
6561
+ component: () => import("./Integration-DjnNmveS.js")
6562
6562
  }
6563
6563
  ]
6564
6564
  },
@@ -6582,7 +6582,7 @@ const Ve = {
6582
6582
  "zh-CN": ve,
6583
6583
  "th-TH": be,
6584
6584
  "zh-Hant": Se
6585
- }, Ye = le(() => import("./App-Cwppqefm.js"));
6585
+ }, Ye = le(() => import("./App-BQhR0gXI.js"));
6586
6586
  export {
6587
6587
  Ye as F,
6588
6588
  ve as a,
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-BRv3iLF1.js";
2
+ import { F as e, i as o, r as p } from "./app-BXEgzj0c.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-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-75b05b43]{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-c7321b3d] .line-clamp-1,.remove-line-clamping[data-v-c7321b3d] .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-75b05b43]{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,63 @@
1
+ import { computed as i } from "vue";
2
+ import { c as b, h as y, y as r, i as f } from "./vue-i18n-mTXrqqL9.js";
3
+ import { useCoreStore as F } from "@feedmepos/mf-common";
4
+ function h(n) {
5
+ const u = n.permissionKey || n.id;
6
+ return u ? `business::report::reports::${u}` : null;
7
+ }
8
+ function P() {
9
+ const { sessionUser: n } = F(), u = b(), c = i(() => {
10
+ const e = u.flags.find(
11
+ (t) => t.key === y.report_portal_permission
12
+ );
13
+ return (e == null ? void 0 : e.value) === !0;
14
+ }), a = i(
15
+ () => {
16
+ var e, t;
17
+ return Array.isArray((e = n.value) == null ? void 0 : e.permissions) ? (t = n.value) == null ? void 0 : t.permissions : [];
18
+ }
19
+ );
20
+ function s(e, t) {
21
+ if (!c.value) return !0;
22
+ const o = h(e);
23
+ return !o || !a.value.length ? !1 : t.some((l) => f([{
24
+ action: l,
25
+ // Report subjects are custom strings; cast to satisfy CaslPermission type
26
+ subject: o
27
+ }], a.value).granted);
28
+ }
29
+ function m(e) {
30
+ return s(e, [r.update, r.manage]);
31
+ }
32
+ function p(e) {
33
+ return s(e, [r.read, r.manage]);
34
+ }
35
+ function d(e) {
36
+ return s(e, [r.delete, r.manage]);
37
+ }
38
+ function g(e) {
39
+ return s(e, [r.manage]);
40
+ }
41
+ function v(e) {
42
+ return s(e, [r.create, r.manage]);
43
+ }
44
+ const R = i(() => {
45
+ if (!c.value) return !0;
46
+ const e = "business::report::createReport";
47
+ return a.value.length ? [r.create, r.manage].some((t) => f([{
48
+ action: t,
49
+ subject: e
50
+ }], a.value).granted) : !1;
51
+ });
52
+ return {
53
+ canRead: p,
54
+ canUpdate: m,
55
+ canDelete: d,
56
+ canManage: g,
57
+ canDuplicate: v,
58
+ canCreateReport: R
59
+ };
60
+ }
61
+ export {
62
+ P as u
63
+ };
@@ -0,0 +1,64 @@
1
+ import { computed as u } from "vue";
2
+ import { S as c, i, u as f } from "./vue-i18n-mTXrqqL9.js";
3
+ import { useSnackbar as d } from "@feedmepos/ui-library";
4
+ import { useCoreStore as l } from "@feedmepos/mf-common";
5
+ function g(t) {
6
+ return Array.isArray(t) ? t : [];
7
+ }
8
+ function R(t) {
9
+ const { rules: n, action: a, restaurantId: e } = t;
10
+ if (!n.length) return !1;
11
+ const s = {
12
+ action: a,
13
+ subject: c.restaurant
14
+ };
15
+ return e ? i(s, n, { restaurantId: e }).granted : i([s], n).granted;
16
+ }
17
+ function h(t) {
18
+ const { integrationRestaurantIds: n, rules: a, action: e } = t;
19
+ if (!Array.isArray(n) || n.length === 0)
20
+ return [];
21
+ const s = [];
22
+ for (const o of n)
23
+ typeof o == "string" && (R({ rules: a, action: e, restaurantId: o }) || s.push(o));
24
+ return s;
25
+ }
26
+ function m(t) {
27
+ return h({
28
+ integrationRestaurantIds: t.integrationRestaurantIds,
29
+ rules: t.rules,
30
+ action: t.action
31
+ }).length > 0;
32
+ }
33
+ function A() {
34
+ const t = d(), { t: n } = f(), { sessionUser: a } = l(), e = u(
35
+ () => {
36
+ var r;
37
+ return g((r = a.value) == null ? void 0 : r.permissions);
38
+ }
39
+ );
40
+ function s(r) {
41
+ t.open({
42
+ type: "error",
43
+ message: n("report.integration.error.containsUnauthorizedRestaurant", {
44
+ action: n(`report.integration.permissionAction.${r}`)
45
+ })
46
+ });
47
+ }
48
+ function o(r) {
49
+ return m({
50
+ integrationRestaurantIds: r.integrationRestaurantIds,
51
+ rules: e.value,
52
+ action: r.action
53
+ });
54
+ }
55
+ return {
56
+ rules: e,
57
+ notifyUnauthorized: s,
58
+ isRestricted: o
59
+ };
60
+ }
61
+ export {
62
+ m as h,
63
+ A as u
64
+ };