web-mojo 2.1.783 → 2.1.799

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 (66) 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 +90 -28
  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.es.js +2 -2
  11. package/dist/chunks/{ChatView-DnlFXNbs.js → ChatView-CG0MxxC0.js} +9 -50
  12. package/dist/chunks/ChatView-CG0MxxC0.js.map +1 -0
  13. package/dist/chunks/{ChatView-DrBUQ373.js → ChatView-DsAe76Iw.js} +2 -2
  14. package/dist/chunks/ChatView-DsAe76Iw.js.map +1 -0
  15. package/dist/chunks/{ContextMenu-BnUxQSjf.js → ContextMenu-CUzoOzxz.js} +2 -2
  16. package/dist/chunks/{ContextMenu-BnUxQSjf.js.map → ContextMenu-CUzoOzxz.js.map} +1 -1
  17. package/dist/chunks/{ContextMenu-b_OrhKHs.js → ContextMenu-Cwwt69yf.js} +2 -2
  18. package/dist/chunks/{ContextMenu-b_OrhKHs.js.map → ContextMenu-Cwwt69yf.js.map} +1 -1
  19. package/dist/chunks/{DataView-DrEVJtrm.js → DataView-BpiXyyVG.js} +2 -2
  20. package/dist/chunks/{DataView-DrEVJtrm.js.map → DataView-BpiXyyVG.js.map} +1 -1
  21. package/dist/chunks/{DataView-t3OBXM-2.js → DataView-D0ycwi7W.js} +2 -2
  22. package/dist/chunks/{DataView-t3OBXM-2.js.map → DataView-D0ycwi7W.js.map} +1 -1
  23. package/dist/chunks/{Dialog-DmXdNWsq.js → Dialog-C1bsyxOc.js} +2 -2
  24. package/dist/chunks/{Dialog-DmXdNWsq.js.map → Dialog-C1bsyxOc.js.map} +1 -1
  25. package/dist/chunks/{Dialog-CCLikhVB.js → Dialog-C469ul5I.js} +5 -5
  26. package/dist/chunks/{Dialog-CCLikhVB.js.map → Dialog-C469ul5I.js.map} +1 -1
  27. package/dist/chunks/{FormView-CDR6Tkde.js → FormView-B_lR2GG4.js} +2 -2
  28. package/dist/chunks/{FormView-CDR6Tkde.js.map → FormView-B_lR2GG4.js.map} +1 -1
  29. package/dist/chunks/{FormView-DMyXiDWu.js → FormView-CFEBoHcV.js} +2 -2
  30. package/dist/chunks/{FormView-DMyXiDWu.js.map → FormView-CFEBoHcV.js.map} +1 -1
  31. package/dist/chunks/{MetricsMiniChartWidget-BmY66k1F.js → MetricsMiniChartWidget-BsGbSx8_.js} +3 -3
  32. package/dist/chunks/{MetricsMiniChartWidget-BmY66k1F.js.map → MetricsMiniChartWidget-BsGbSx8_.js.map} +1 -1
  33. package/dist/chunks/{MetricsMiniChartWidget-CZ2J2Hc2.js → MetricsMiniChartWidget-JdcYul7m.js} +2 -2
  34. package/dist/chunks/{MetricsMiniChartWidget-CZ2J2Hc2.js.map → MetricsMiniChartWidget-JdcYul7m.js.map} +1 -1
  35. package/dist/chunks/{PDFViewer-B6e5yweS.js → PDFViewer-BTePcTwW.js} +3 -3
  36. package/dist/chunks/{PDFViewer-B6e5yweS.js.map → PDFViewer-BTePcTwW.js.map} +1 -1
  37. package/dist/chunks/{PDFViewer-B8AW4CBc.js → PDFViewer-DgtfmQBH.js} +2 -2
  38. package/dist/chunks/{PDFViewer-B8AW4CBc.js.map → PDFViewer-DgtfmQBH.js.map} +1 -1
  39. package/dist/chunks/{Page-Bv3lkFL5.js → Page-BNzfxoLN.js} +2 -2
  40. package/dist/chunks/{Page-Bv3lkFL5.js.map → Page-BNzfxoLN.js.map} +1 -1
  41. package/dist/chunks/{Page-DEBpjrLS.js → Page-BOBZ_hsj.js} +2 -2
  42. package/dist/chunks/{Page-DEBpjrLS.js.map → Page-BOBZ_hsj.js.map} +1 -1
  43. package/dist/chunks/{TopNav-BLY2EcD5.js → TopNav-CBtwOzt8.js} +22 -8
  44. package/dist/chunks/TopNav-CBtwOzt8.js.map +1 -0
  45. package/dist/chunks/{TopNav-DNUFKcWJ.js → TopNav-pB6gzZRF.js} +2 -2
  46. package/dist/chunks/TopNav-pB6gzZRF.js.map +1 -0
  47. package/dist/chunks/{WebApp-AGmBnM8H.js → WebApp-BOZJfaC7.js} +33 -14
  48. package/dist/chunks/{WebApp-AGmBnM8H.js.map → WebApp-BOZJfaC7.js.map} +1 -1
  49. package/dist/chunks/{WebApp-BR_7YgWu.js → WebApp-NjfRcJiV.js} +2 -2
  50. package/dist/chunks/WebApp-NjfRcJiV.js.map +1 -0
  51. package/dist/core.css +264 -0
  52. package/dist/css/web-mojo.css +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.cjs.js.map +1 -1
  57. package/dist/index.es.js +25 -23
  58. package/dist/index.es.js.map +1 -1
  59. package/dist/lightbox.cjs.js +1 -1
  60. package/dist/lightbox.es.js +4 -4
  61. package/package.json +1 -1
  62. package/dist/chunks/ChatView-DnlFXNbs.js.map +0 -1
  63. package/dist/chunks/ChatView-DrBUQ373.js.map +0 -1
  64. package/dist/chunks/TopNav-BLY2EcD5.js.map +0 -1
  65. package/dist/chunks/TopNav-DNUFKcWJ.js.map +0 -1
  66. package/dist/chunks/WebApp-BR_7YgWu.js.map +0 -1
package/dist/admin.es.js CHANGED
@@ -1,13 +1,13 @@
1
- import { P as Page } from "./chunks/Page-Bv3lkFL5.js";
2
- import { V as View, h as MOJOUtils } from "./chunks/WebApp-AGmBnM8H.js";
3
- import { B, b, a, c, e, f, W } from "./chunks/WebApp-AGmBnM8H.js";
4
- import Dialog$1 from "./chunks/Dialog-CCLikhVB.js";
5
- import { M as MetricsChart, c as MetricsMiniChartWidget, P as PieChart } from "./chunks/MetricsMiniChartWidget-BmY66k1F.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-DnlFXNbs.js";
7
- import DataView from "./chunks/DataView-DrEVJtrm.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-b_OrhKHs.js";
9
- import { L as LightboxGallery, P as PDFViewer } from "./chunks/PDFViewer-B6e5yweS.js";
10
- import { a as applyFileDropMixin, F as FormView } from "./chunks/FormView-DMyXiDWu.js";
1
+ import { P as Page } from "./chunks/Page-BNzfxoLN.js";
2
+ import { V as View, h as MOJOUtils } from "./chunks/WebApp-BOZJfaC7.js";
3
+ import { B, b, a, c, e, f, W } from "./chunks/WebApp-BOZJfaC7.js";
4
+ import Dialog$1 from "./chunks/Dialog-C469ul5I.js";
5
+ import { M as MetricsChart, c as MetricsMiniChartWidget, P as PieChart } from "./chunks/MetricsMiniChartWidget-BsGbSx8_.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-CG0MxxC0.js";
7
+ import DataView from "./chunks/DataView-BpiXyyVG.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-Cwwt69yf.js";
9
+ import { L as LightboxGallery, P as PDFViewer } from "./chunks/PDFViewer-BTePcTwW.js";
10
+ import { a as applyFileDropMixin, F as FormView } from "./chunks/FormView-CFEBoHcV.js";
11
11
  class AdminHeaderView extends View {
12
12
  constructor(options = {}) {
13
13
  super({
@@ -1457,11 +1457,81 @@ class FileTablePage extends TablePage {
1457
1457
  validateOnDrop: true
1458
1458
  });
1459
1459
  }
1460
+ /**
1461
+ * Override the default add action to handle file uploads
1462
+ * This ensures both button clicks and drag-drop use the same upload flow
1463
+ */
1464
+ async onActionAdd(event, element) {
1465
+ const Dialog2 = (await import("./chunks/Dialog-C469ul5I.js")).default;
1466
+ const formData = await Dialog2.showForm({
1467
+ title: "Upload File",
1468
+ size: "md",
1469
+ fields: [
1470
+ {
1471
+ type: "file",
1472
+ name: "file",
1473
+ label: "Select File",
1474
+ required: true,
1475
+ accept: "*/*",
1476
+ help: "Choose a file to upload (max 100MB)"
1477
+ },
1478
+ {
1479
+ type: "text",
1480
+ name: "description",
1481
+ label: "Description (optional)",
1482
+ placeholder: "Enter a description for this file",
1483
+ cols: 12
1484
+ }
1485
+ ]
1486
+ });
1487
+ if (!formData) {
1488
+ return;
1489
+ }
1490
+ const file = formData.file;
1491
+ if (!file || !(file instanceof File)) {
1492
+ this.showError("No file selected");
1493
+ return;
1494
+ }
1495
+ console.log(`File Selected: ${file.name} (${file.type}) (${file.size} bytes)`);
1496
+ try {
1497
+ const fileModel = new File();
1498
+ let extra = {};
1499
+ if (this.options.requiresGroup && this.getApp().activeGroup) {
1500
+ extra.group = this.getApp().activeGroup.id;
1501
+ }
1502
+ const upload = fileModel.upload({
1503
+ file,
1504
+ name: file.name,
1505
+ description: formData.description || `File uploaded on ${(/* @__PURE__ */ new Date()).toLocaleDateString()}`,
1506
+ showToast: true,
1507
+ onProgress: (progressInfo) => {
1508
+ console.log(`Upload progress: ${progressInfo.percentage}%`);
1509
+ },
1510
+ onComplete: (result) => {
1511
+ console.log("Upload completed:", result);
1512
+ this.refresh();
1513
+ },
1514
+ onError: (error) => {
1515
+ console.error("Upload failed:", error);
1516
+ this.showError("Upload failed: " + error.message);
1517
+ },
1518
+ ...extra
1519
+ });
1520
+ await upload;
1521
+ } catch (error) {
1522
+ console.error("Error starting file upload:", error);
1523
+ this.showError("Failed to start file upload: " + error.message);
1524
+ }
1525
+ }
1460
1526
  async onFileDrop(files, event, validation) {
1461
1527
  const file = files[0];
1462
1528
  console.log(`File Dropped: ${file.name} (${file.type}) (${file.size} bytes)`);
1463
1529
  try {
1464
1530
  const fileModel = new File();
1531
+ let extra = {};
1532
+ if (this.options.requiresGroup && this.getApp().activeGroup) {
1533
+ extra.group = this.getApp().activeGroup.id;
1534
+ }
1465
1535
  const upload = fileModel.upload({
1466
1536
  file,
1467
1537
  name: file.name,
@@ -1477,7 +1547,8 @@ class FileTablePage extends TablePage {
1477
1547
  onError: (error) => {
1478
1548
  console.error("Upload failed:", error);
1479
1549
  this.showError("Upload failed: " + error.message);
1480
- }
1550
+ },
1551
+ ...extra
1481
1552
  });
1482
1553
  await upload;
1483
1554
  } catch (error) {
@@ -1901,6 +1972,11 @@ class GroupTablePage extends TablePage {
1901
1972
  icon: "bi-pencil",
1902
1973
  action: "edit",
1903
1974
  label: "Edit Group"
1975
+ },
1976
+ {
1977
+ icon: "bi-bullseye",
1978
+ action: "make-active",
1979
+ label: "Make Active Group"
1904
1980
  }
1905
1981
  ],
1906
1982
  // Table features
@@ -1933,23 +2009,9 @@ class GroupTablePage extends TablePage {
1933
2009
  }
1934
2010
  });
1935
2011
  }
1936
- async onActionAddMultiple() {
1937
- const data = await this.getApp().showForm({
1938
- title: "Select Members",
1939
- fields: [
1940
- {
1941
- type: "collectionmultiselect",
1942
- name: "member_ids",
1943
- Collection: GroupList,
1944
- collectionParams: {
1945
- is_active: true
1946
- },
1947
- labelField: "name",
1948
- valueField: "id"
1949
- }
1950
- ]
1951
- });
1952
- console.log(data);
2012
+ onActionMakeActive(event, element) {
2013
+ const item = this.collection.get(element.dataset.id);
2014
+ this.getApp().setActiveGroup(item);
1953
2015
  }
1954
2016
  }
1955
2017
  class IncidentDashboardHeader extends View {