web-mojo 2.1.627 → 2.1.676

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 (61) hide show
  1. package/dist/admin.cjs.js +1 -1
  2. package/dist/admin.cjs.js.map +1 -1
  3. package/dist/admin.es.js +105 -75
  4. package/dist/admin.es.js.map +1 -1
  5. package/dist/auth.cjs.js +1 -1
  6. package/dist/auth.cjs.js.map +1 -1
  7. package/dist/auth.es.js +3 -3
  8. package/dist/auth.es.js.map +1 -1
  9. package/dist/charts.cjs.js +1 -1
  10. package/dist/charts.cjs.js.map +1 -1
  11. package/dist/charts.es.js +8 -590
  12. package/dist/charts.es.js.map +1 -1
  13. package/dist/chunks/{ChatView-swFqHyZi.js → ChatView-B3p8qSTr.js} +6 -6
  14. package/dist/chunks/{ChatView-swFqHyZi.js.map → ChatView-B3p8qSTr.js.map} +1 -1
  15. package/dist/chunks/{ChatView-BjbXRdAB.js → ChatView-BGlI_MSK.js} +2 -2
  16. package/dist/chunks/{ChatView-BjbXRdAB.js.map → ChatView-BGlI_MSK.js.map} +1 -1
  17. package/dist/chunks/{ContextMenu-CyfbvpND.js → ContextMenu-Bx0cE5UR.js} +2 -2
  18. package/dist/chunks/{ContextMenu-CyfbvpND.js.map → ContextMenu-Bx0cE5UR.js.map} +1 -1
  19. package/dist/chunks/{ContextMenu-DeL1AJ2K.js → ContextMenu-C5T3u9pD.js} +2 -2
  20. package/dist/chunks/{ContextMenu-DeL1AJ2K.js.map → ContextMenu-C5T3u9pD.js.map} +1 -1
  21. package/dist/chunks/{DataView-gB9r-zaX.js → DataView-DnmzuwRI.js} +2 -2
  22. package/dist/chunks/{DataView-gB9r-zaX.js.map → DataView-DnmzuwRI.js.map} +1 -1
  23. package/dist/chunks/{DataView-jx8l28w_.js → DataView-Qn3t_qcS.js} +2 -2
  24. package/dist/chunks/{DataView-jx8l28w_.js.map → DataView-Qn3t_qcS.js.map} +1 -1
  25. package/dist/chunks/{Dialog-Cj0Qxc7O.js → Dialog-CDwoJqc9.js} +5 -5
  26. package/dist/chunks/{Dialog-Cj0Qxc7O.js.map → Dialog-CDwoJqc9.js.map} +1 -1
  27. package/dist/chunks/{Dialog-JhRBUdiM.js → Dialog-DMXaIubd.js} +2 -2
  28. package/dist/chunks/{Dialog-JhRBUdiM.js.map → Dialog-DMXaIubd.js.map} +1 -1
  29. package/dist/chunks/{FormView-bFKcq_xg.js → FormView-66LGmBqh.js} +2 -2
  30. package/dist/chunks/{FormView-bFKcq_xg.js.map → FormView-66LGmBqh.js.map} +1 -1
  31. package/dist/chunks/{FormView-CpChFpxv.js → FormView-DP6RZ-L7.js} +2 -2
  32. package/dist/chunks/{FormView-CpChFpxv.js.map → FormView-DP6RZ-L7.js.map} +1 -1
  33. package/dist/chunks/{MetricsChart-DS6rz7HC.js → MetricsMiniChartWidget-CzqKovoB.js} +777 -4
  34. package/dist/chunks/MetricsMiniChartWidget-CzqKovoB.js.map +1 -0
  35. package/dist/chunks/{MetricsChart-Dv49hXjf.js → MetricsMiniChartWidget-hthLm2UU.js} +2 -2
  36. package/dist/chunks/MetricsMiniChartWidget-hthLm2UU.js.map +1 -0
  37. package/dist/chunks/{PDFViewer-DnsHONcG.js → PDFViewer-B1mYS5sx.js} +2 -2
  38. package/dist/chunks/{PDFViewer-DnsHONcG.js.map → PDFViewer-B1mYS5sx.js.map} +1 -1
  39. package/dist/chunks/{PDFViewer-CcHiuM7c.js → PDFViewer-DcCMCAcj.js} +3 -3
  40. package/dist/chunks/{PDFViewer-CcHiuM7c.js.map → PDFViewer-DcCMCAcj.js.map} +1 -1
  41. package/dist/chunks/{Page-DmOy8qUF.js → Page-CTj8NKBW.js} +2 -2
  42. package/dist/chunks/{Page-DmOy8qUF.js.map → Page-CTj8NKBW.js.map} +1 -1
  43. package/dist/chunks/{Page-DdYMaASr.js → Page-CayRLia1.js} +2 -2
  44. package/dist/chunks/{Page-DdYMaASr.js.map → Page-CayRLia1.js.map} +1 -1
  45. package/dist/chunks/{TopNav-Bat8EzdF.js → TopNav-CKO0_lBo.js} +5 -5
  46. package/dist/chunks/{TopNav-Bat8EzdF.js.map → TopNav-CKO0_lBo.js.map} +1 -1
  47. package/dist/chunks/{TopNav-CN_2e_48.js → TopNav-DMkIwiOK.js} +2 -2
  48. package/dist/chunks/{TopNav-CN_2e_48.js.map → TopNav-DMkIwiOK.js.map} +1 -1
  49. package/dist/chunks/{WebApp-DpGABopL.js → WebApp-BEjXQJb8.js} +2 -2
  50. package/dist/chunks/{WebApp-DpGABopL.js.map → WebApp-BEjXQJb8.js.map} +1 -1
  51. package/dist/chunks/{WebApp-DeoEYrl6.js → WebApp-nRyeYQ0g.js} +14 -13
  52. package/dist/chunks/{WebApp-DeoEYrl6.js.map → WebApp-nRyeYQ0g.js.map} +1 -1
  53. package/dist/docit.cjs.js +1 -1
  54. package/dist/docit.es.js +5 -5
  55. package/dist/index.cjs.js +1 -1
  56. package/dist/index.es.js +11 -11
  57. package/dist/lightbox.cjs.js +1 -1
  58. package/dist/lightbox.es.js +4 -4
  59. package/package.json +1 -1
  60. package/dist/chunks/MetricsChart-DS6rz7HC.js.map +0 -1
  61. package/dist/chunks/MetricsChart-Dv49hXjf.js.map +0 -1
package/dist/admin.es.js CHANGED
@@ -1,13 +1,13 @@
1
- import { P as Page } from "./chunks/Page-DmOy8qUF.js";
2
- import { V as View, h as MOJOUtils } from "./chunks/WebApp-DeoEYrl6.js";
3
- import { B, b, a, c, e, f, W } from "./chunks/WebApp-DeoEYrl6.js";
4
- import Dialog$1 from "./chunks/Dialog-Cj0Qxc7O.js";
5
- import { M as MetricsChart, P as PieChart } from "./chunks/MetricsChart-DS6rz7HC.js";
6
- import { b as TablePage, k as EmailDomainForms, j as EmailDomainList, E as EmailDomain, n as MailboxForms, m as MailboxList, l as Mailbox, r as EmailTemplate, d as TabView, t as EmailTemplateForms, s as EmailTemplateList, I as IncidentEvent, B as IncidentEventForms, A as IncidentEventList, w as FileManagerForms, v as FileManagerList, x as File, T as TableView, z as FileForms, y as FileList, ap as GeoLocatedIP, aq as GeoLocatedIPList, aa as MemberList, a9 as LogList, as as TicketList, G as IncidentList, Y as IncidentStats, R as IncidentHistoryList, Q as IncidentHistory, D as Incident, C as ChatView, H as IncidentForms, Z as Job, a3 as JobEventList, a1 as JobLogList, $ as JobForms, _ as JobList, a6 as JobRunnerList, a4 as JobsEngineStats, a7 as JobRunnerForms, a5 as JobRunner, a8 as Log, M as Member, ab as MemberForms, ac as MetricsPermission, ae as MetricsForms, ad as MetricsPermissionList, an as PushConfigForms, ak as PushConfigList, am as PushDeliveryList, ag as PushDeviceList, ao as PushTemplateForms, ai as PushTemplateList, U as RuleSet, X as RuleList, V as RuleSetList, i as S3BucketForms, h as S3BucketList, o as SentMessage, p as SentMessageList, au as TicketNoteList, at as TicketNote, ar as Ticket, av as TicketForms, aw as TicketCategories } from "./chunks/ChatView-swFqHyZi.js";
7
- import DataView from "./chunks/DataView-gB9r-zaX.js";
8
- import { b as ContextMenu, C as Collection, a as Group, G as GroupList, c as GroupForms, g as UserDevice, j as UserDeviceLocationList, h as UserDeviceList, U as User, f as UserDataView, e as UserForms, d as UserList } from "./chunks/ContextMenu-CyfbvpND.js";
9
- import { L as LightboxGallery, P as PDFViewer } from "./chunks/PDFViewer-CcHiuM7c.js";
10
- import { a as applyFileDropMixin, F as FormView } from "./chunks/FormView-bFKcq_xg.js";
1
+ import { P as Page } from "./chunks/Page-CTj8NKBW.js";
2
+ import { V as View, h as MOJOUtils } from "./chunks/WebApp-nRyeYQ0g.js";
3
+ import { B, b, a, c, e, f, W } from "./chunks/WebApp-nRyeYQ0g.js";
4
+ import Dialog$1 from "./chunks/Dialog-CDwoJqc9.js";
5
+ import { M as MetricsChart, c as MetricsMiniChartWidget, P as PieChart } from "./chunks/MetricsMiniChartWidget-CzqKovoB.js";
6
+ import { b as TablePage, k as EmailDomainForms, j as EmailDomainList, E as EmailDomain, n as MailboxForms, m as MailboxList, l as Mailbox, r as EmailTemplate, d as TabView, t as EmailTemplateForms, s as EmailTemplateList, I as IncidentEvent, B as IncidentEventForms, A as IncidentEventList, w as FileManagerForms, v as FileManagerList, x as File, T as TableView, z as FileForms, y as FileList, ap as GeoLocatedIP, aq as GeoLocatedIPList, aa as MemberList, a9 as LogList, as as TicketList, G as IncidentList, Y as IncidentStats, R as IncidentHistoryList, Q as IncidentHistory, D as Incident, C as ChatView, H as IncidentForms, Z as Job, a3 as JobEventList, a1 as JobLogList, $ as JobForms, _ as JobList, a6 as JobRunnerList, a4 as JobsEngineStats, a7 as JobRunnerForms, a5 as JobRunner, a8 as Log, M as Member, ab as MemberForms, ac as MetricsPermission, ae as MetricsForms, ad as MetricsPermissionList, an as PushConfigForms, ak as PushConfigList, am as PushDeliveryList, ag as PushDeviceList, ao as PushTemplateForms, ai as PushTemplateList, U as RuleSet, X as RuleList, V as RuleSetList, i as S3BucketForms, h as S3BucketList, o as SentMessage, p as SentMessageList, au as TicketNoteList, at as TicketNote, ar as Ticket, av as TicketForms, aw as TicketCategories } from "./chunks/ChatView-B3p8qSTr.js";
7
+ import DataView from "./chunks/DataView-DnmzuwRI.js";
8
+ import { b as ContextMenu, C as Collection, a as Group, G as GroupList, c as GroupForms, g as UserDevice, j as UserDeviceLocationList, h as UserDeviceList, U as User, f as UserDataView, e as UserForms, d as UserList } from "./chunks/ContextMenu-Bx0cE5UR.js";
9
+ import { L as LightboxGallery, P as PDFViewer } from "./chunks/PDFViewer-DcCMCAcj.js";
10
+ import { a as applyFileDropMixin, F as FormView } from "./chunks/FormView-66LGmBqh.js";
11
11
  class AdminHeaderView extends View {
12
12
  constructor(options = {}) {
13
13
  super({
@@ -40,85 +40,115 @@ class AdminHeaderView extends View {
40
40
  <div class="admin-stats-header mb-4">
41
41
  <div class="row">
42
42
  <div class="col-xl-3 col-lg-6 col-12 mb-3">
43
- <div class="card h-100 border-0 shadow-sm">
44
- <div class="card-body">
45
- <div class="d-flex justify-content-between align-items-start">
46
- <div>
47
- <h6 class="card-title text-muted mb-2">Active Users</h6>
48
- <h3 class="mb-1 fw-bold">{{stats.user_activity_day}}</h3>
49
- <span class="badge bg-success-subtle text-success">
50
- {{stats.total_users|compact}}
51
- </span>
52
- </div>
53
- <div class="text-primary">
54
- <i class="bi bi-people fs-2"></i>
55
- </div>
56
- </div>
57
- </div>
58
- </div>
43
+ <div data-container="user_activity_day"></div>
59
44
  </div>
60
45
 
61
46
  <div class="col-xl-3 col-lg-6 col-12 mb-3">
62
- <div class="card h-100 border-0 shadow-sm">
63
- <div class="card-body">
64
- <div class="d-flex justify-content-between align-items-start">
65
- <div>
66
- <h6 class="card-title text-muted mb-2">Active Groups</h6>
67
- <h3 class="mb-1 fw-bold">{{stats.group_activity_day}}</h3>
68
- <span class="badge bg-info-subtle text-info">
69
- {{stats.total_groups|compact}}
70
- </span>
71
- </div>
72
- <div class="text-info">
73
- <i class="bi bi-collection fs-2"></i>
74
- </div>
75
- </div>
76
- </div>
77
- </div>
47
+ <div data-container="group_activity_day"></div>
78
48
  </div>
79
49
 
80
50
  <div class="col-xl-3 col-lg-6 col-12 mb-3">
81
- <div class="card h-100 border-0 shadow-sm">
82
- <div class="card-body">
83
- <div class="d-flex justify-content-between align-items-start">
84
- <div>
85
- <h6 class="card-title text-muted mb-2">API Requests</h6>
86
- <h3 class="mb-1 fw-bold">{{stats.api_calls|compact}}</h3>
87
- <span class="badge bg-success-subtle text-success">
88
- <i class="bi bi-arrow-up"></i> {{stats.apiChange}}
89
- </span>
90
- </div>
91
- <div class="text-success">
92
- <i class="bi bi-graph-up fs-2"></i>
93
- </div>
94
- </div>
95
- </div>
96
- </div>
51
+ <div data-container="api_activity_day"></div>
97
52
  </div>
98
53
 
99
54
  <div class="col-xl-3 col-lg-6 col-12 mb-3">
100
- <div class="card h-100 border-0 shadow-sm">
101
- <div class="card-body">
102
- <div class="d-flex justify-content-between align-items-start">
103
- <div>
104
- <h6 class="card-title text-muted mb-2">Incidents</h6>
105
- <h3 class="mb-1 fw-bold">{{stats.incidents|compact}}</h3>
106
- <span class="badge {{stats.incidentsBadgeClass}}">
107
- <i class="bi bi-{{stats.incidentsIconClass}}"></i> {{stats.incidentsChange}}
108
- </span>
109
- </div>
110
- <div class="text-danger">
111
- <i class="bi bi-exclamation-triangle fs-2"></i>
112
- </div>
113
- </div>
114
- </div>
115
- </div>
55
+ <div data-container="incident_activity_day"></div>
116
56
  </div>
117
57
  </div>
118
58
  </div>
119
59
  `;
120
60
  }
121
61
  async onInit() {
62
+ this.userActivity = new MetricsMiniChartWidget({
63
+ icon: "bi bi-people fs-2",
64
+ title: "User Activity",
65
+ subtitle: "{{now_value}}",
66
+ background: "#5388D6",
67
+ textColor: "#FFFFFF",
68
+ granularity: "days",
69
+ slugs: ["user_activity_day"],
70
+ account: "global",
71
+ chartType: "bar",
72
+ showTooltip: true,
73
+ showXAxis: true,
74
+ height: 50,
75
+ chartWidth: "100%",
76
+ color: "rgba(245, 245, 255, 0.8)",
77
+ fill: true,
78
+ fillColor: "rgba(245, 245, 255, 0.6)",
79
+ smoothing: 0.3,
80
+ showTrending: true,
81
+ containerId: "user_activity_day"
82
+ });
83
+ this.addChild(this.userActivity);
84
+ this.groupActivity = new MetricsMiniChartWidget({
85
+ icon: "bi bi-collection fs-2",
86
+ title: "Group Activity",
87
+ subtitle: "{{now_value}}",
88
+ background: "#1f6a7a",
89
+ textColor: "#FFFFFF",
90
+ granularity: "days",
91
+ slugs: ["group_activity_day"],
92
+ account: "global",
93
+ chartType: "bar",
94
+ showTooltip: true,
95
+ showXAxis: true,
96
+ height: 50,
97
+ chartWidth: "100%",
98
+ color: "rgba(245, 245, 255, 0.8)",
99
+ fill: true,
100
+ fillColor: "rgba(245, 245, 255, 0.6)",
101
+ smoothing: 0.3,
102
+ showTrending: true,
103
+ containerId: "group_activity_day"
104
+ });
105
+ this.addChild(this.groupActivity);
106
+ this.apiActivity = new MetricsMiniChartWidget({
107
+ icon: "bi bi-graph-up fs-2",
108
+ title: "API Requests",
109
+ subtitle: "{{now_value}}",
110
+ background: "#50A079",
111
+ textColor: "#FFFFFF",
112
+ endpoint: "/api/metrics/fetch",
113
+ granularity: "days",
114
+ slugs: ["api_calls"],
115
+ account: "global",
116
+ chartType: "line",
117
+ showTooltip: true,
118
+ showXAxis: true,
119
+ height: 50,
120
+ chartWidth: "100%",
121
+ color: "rgba(245, 245, 255, 0.8)",
122
+ fill: true,
123
+ fillColor: "rgba(245, 245, 255, 0.6)",
124
+ smoothing: 0.3,
125
+ showTrending: true,
126
+ containerId: "api_activity_day"
127
+ });
128
+ this.addChild(this.apiActivity);
129
+ this.incidentActivity = new MetricsMiniChartWidget({
130
+ icon: "bi bi-exclamation-triangle fs-2",
131
+ title: "Incidents",
132
+ subtitle: "{{now_value}}",
133
+ background: "#B14545",
134
+ textColor: "#FFFFFF",
135
+ endpoint: "/api/metrics/fetch",
136
+ granularity: "days",
137
+ slugs: ["incidents"],
138
+ account: "incident",
139
+ chartType: "line",
140
+ showTooltip: true,
141
+ showXAxis: true,
142
+ height: 50,
143
+ chartWidth: "100%",
144
+ color: "rgba(245, 245, 255, 0.8)",
145
+ fill: true,
146
+ fillColor: "rgba(245, 245, 255, 0.6)",
147
+ smoothing: 0.3,
148
+ showTrending: true,
149
+ containerId: "incident_activity_day"
150
+ });
151
+ this.addChild(this.incidentActivity);
122
152
  }
123
153
  async onBeforeRender() {
124
154
  await Promise.all([
@@ -204,7 +234,7 @@ class AdminDashboardPage extends Page {
204
234
 
205
235
  <!-- Stats Header -->
206
236
  <div data-container="admin-header"></div>
207
-
237
+ <div data-container="example-chart"></div>
208
238
  <!-- Charts Section -->
209
239
  <div class="row">
210
240
  <!-- Full Width API Metrics Chart -->