web-mojo 2.2.28 → 2.2.30

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 (37) hide show
  1. package/README.md +296 -367
  2. package/dist/admin.cjs.js +1 -1
  3. package/dist/admin.cjs.js.map +1 -1
  4. package/dist/admin.es.js +47 -7
  5. package/dist/admin.es.js.map +1 -1
  6. package/dist/auth.cjs.js +1 -1
  7. package/dist/auth.es.js +1 -1
  8. package/dist/charts.cjs.js +1 -1
  9. package/dist/charts.es.js +1 -1
  10. package/dist/chunks/{ChatView-ChGpB5fY.js → ChatView-CQk-sfqb.js} +2 -2
  11. package/dist/chunks/{ChatView-ChGpB5fY.js.map → ChatView-CQk-sfqb.js.map} +1 -1
  12. package/dist/chunks/{ChatView-wMhIMZ01.js → ChatView-DPzQ-iXx.js} +65 -20
  13. package/dist/chunks/{ChatView-wMhIMZ01.js.map → ChatView-DPzQ-iXx.js.map} +1 -1
  14. package/dist/chunks/{Collection-9DhgHESv.js → Collection-mUHj_157.js} +2 -2
  15. package/dist/chunks/{Collection-9DhgHESv.js.map → Collection-mUHj_157.js.map} +1 -1
  16. package/dist/chunks/{ContextMenu-fsEv-iq5.js → ContextMenu-B-l9KTz3.js} +2 -2
  17. package/dist/chunks/{ContextMenu-fsEv-iq5.js.map → ContextMenu-B-l9KTz3.js.map} +1 -1
  18. package/dist/chunks/{ListView-Whl0135W.js → ListView-C8SEk-3W.js} +2 -2
  19. package/dist/chunks/{ListView-Whl0135W.js.map → ListView-C8SEk-3W.js.map} +1 -1
  20. package/dist/chunks/{TokenManager-EiNkojsp.js → TokenManager-DPH8v1BZ.js} +3 -3
  21. package/dist/chunks/{TokenManager-EiNkojsp.js.map → TokenManager-DPH8v1BZ.js.map} +1 -1
  22. package/dist/chunks/{version-CbWgDs2g.js → version-CAfUFzNd.js} +4 -4
  23. package/dist/chunks/{version-CbWgDs2g.js.map → version-CAfUFzNd.js.map} +1 -1
  24. package/dist/chunks/{version-DGV8FEbm.js → version-DDuf9Z9u.js} +2 -2
  25. package/dist/chunks/{version-DGV8FEbm.js.map → version-DDuf9Z9u.js.map} +1 -1
  26. package/dist/docit.cjs.js +1 -1
  27. package/dist/docit.es.js +4 -4
  28. package/dist/index.cjs.js +1 -1
  29. package/dist/index.es.js +8 -8
  30. package/dist/lightbox.cjs.js +1 -1
  31. package/dist/lightbox.es.js +1 -1
  32. package/dist/map.cjs.js +1 -1
  33. package/dist/map.cjs.js.map +1 -1
  34. package/dist/map.es.js +2 -2
  35. package/dist/map.es.js.map +1 -1
  36. package/dist/timeline.es.js +2 -2
  37. package/package.json +1 -1
package/dist/admin.es.js CHANGED
@@ -1,16 +1,16 @@
1
- import { P as Page, U as User, e as UserDataView, g as UserDeviceList, i as UserDeviceLocationList, C as ContextMenu, d as UserForms, c as UserList, a as Group, G as GroupList, b as GroupForms, f as UserDevice } from "./chunks/ContextMenu-fsEv-iq5.js";
1
+ import { P as Page, U as User, e as UserDataView, g as UserDeviceList, i as UserDeviceLocationList, C as ContextMenu, d as UserForms, c as UserList, a as Group, G as GroupList, b as GroupForms, f as UserDevice } from "./chunks/ContextMenu-B-l9KTz3.js";
2
2
  import { V as View, a as MOJOUtils, r as rest } from "./chunks/Rest-DnVeH4wg.js";
3
3
  import "./chunks/WebSocketClient-D6kP3imj.js";
4
4
  import Dialog$1 from "./chunks/Dialog-2U9faiAH.js";
5
5
  import { M as MetricsChart, c as MetricsMiniChartWidget, P as PieChart } from "./chunks/MetricsMiniChartWidget-C976DEgD.js";
6
- import { ak as MemberList, T as TableView, B as IncidentEventList, aq as PushDeviceList, aj as LogList, c as TabView, b as TablePage, M as Member, al as MemberForms, az as GeoLocatedIP, aA as GeoLocatedIPList, aC as TicketList, J as IncidentList, a0 as IncidentStats, V as IncidentHistoryList, U as IncidentHistory, H as Incident, C as ChatView, K as IncidentForms, I as IncidentEvent, G as IncidentEventForms, aE as TicketNoteList, aD as TicketNote, aB as Ticket, aF as TicketForms, aG as TicketCategories, W as RuleSet, a2 as MatchByOptions, a1 as BundleByOptions, _ as RuleList, X as RuleSetList, k as EmailDomainForms, j as EmailDomainList, E as EmailDomain, n as MailboxForms, m as MailboxList, l as Mailbox, s as EmailTemplate, u as EmailTemplateForms, t as EmailTemplateList, o as SentMessage, q as SentMessageList, aw as PushDeliveryList, ax as PushConfigForms, au as PushConfigList, ay as PushTemplateForms, as as PushTemplateList, a7 as Job, ad as JobEventList, ab as JobLogList, a9 as JobForms, ae as JobsEngineStats, a8 as JobList, ag as JobRunnerList, ah as JobRunnerForms, af as JobRunner, ai as Log, am as MetricsPermission, ao as MetricsForms, an as MetricsPermissionList, x as FileManagerForms, w as FileManagerList, y as File, A as FileForms, z as FileList, i as S3BucketForms, h as S3BucketList } from "./chunks/ChatView-wMhIMZ01.js";
6
+ import { ak as MemberList, T as TableView, B as IncidentEventList, aq as PushDeviceList, aj as LogList, c as TabView, b as TablePage, M as Member, al as MemberForms, az as GeoLocatedIP, aA as GeoLocatedIPList, aC as TicketList, J as IncidentList, a0 as IncidentStats, V as IncidentHistoryList, U as IncidentHistory, H as Incident, C as ChatView, K as IncidentForms, I as IncidentEvent, G as IncidentEventForms, aE as TicketNoteList, aD as TicketNote, aB as Ticket, aF as TicketForms, aG as TicketCategories, W as RuleSet, a2 as MatchByOptions, a1 as BundleByOptions, _ as RuleList, X as RuleSetList, k as EmailDomainForms, j as EmailDomainList, E as EmailDomain, n as MailboxForms, m as MailboxList, l as Mailbox, s as EmailTemplate, u as EmailTemplateForms, t as EmailTemplateList, o as SentMessage, q as SentMessageList, aw as PushDeliveryList, ax as PushConfigForms, au as PushConfigList, ay as PushTemplateForms, as as PushTemplateList, a7 as Job, ad as JobEventList, ab as JobLogList, a9 as JobForms, ae as JobsEngineStats, a8 as JobList, ag as JobRunnerList, ah as JobRunnerForms, af as JobRunner, ai as Log, am as MetricsPermission, ao as MetricsForms, an as MetricsPermissionList, x as FileManagerForms, w as FileManagerList, y as File, A as FileForms, z as FileList, i as S3BucketForms, h as S3BucketList } from "./chunks/ChatView-DPzQ-iXx.js";
7
7
  import DataView from "./chunks/DataView-aFvKzCsO.js";
8
8
  import { F as FormView, a as applyFileDropMixin } from "./chunks/FormView-D6TdblYe.js";
9
9
  import { M as MapView, a as MetricsCountryMapView } from "./chunks/MetricsCountryMapView-BNpojbUy.js";
10
- import { M as Model, C as Collection } from "./chunks/Collection-9DhgHESv.js";
10
+ import { M as Model, C as Collection } from "./chunks/Collection-mUHj_157.js";
11
11
  import { L as LightboxGallery, P as PDFViewer } from "./chunks/PDFViewer-DQwOZokX.js";
12
12
  import { W } from "./chunks/WebApp-DEo7MILL.js";
13
- import { B, a, V, b, c, d } from "./chunks/version-CbWgDs2g.js";
13
+ import { B, a, V, b, c, d } from "./chunks/version-CAfUFzNd.js";
14
14
  class AdminHeaderView extends View {
15
15
  constructor(options = {}) {
16
16
  super({
@@ -4208,6 +4208,47 @@ class EmailMailboxTablePage extends TablePage {
4208
4208
  }
4209
4209
  }
4210
4210
  }
4211
+ class EmailHtmlPreviewView extends View {
4212
+ constructor(options = {}) {
4213
+ super({
4214
+ className: "email-html-preview",
4215
+ template: `
4216
+ <div class="email-html-preview-container">
4217
+ <div class="d-flex justify-content-between align-items-center mb-2">
4218
+ <small class="text-muted">HTML Preview (sandboxed)</small>
4219
+ <button type="button" class="btn btn-sm btn-outline-secondary" data-action="refresh-preview">
4220
+ <i class="bi bi-arrow-clockwise"></i> Refresh
4221
+ </button>
4222
+ </div>
4223
+ <iframe
4224
+ id="email-preview-frame"
4225
+ class="border rounded w-100"
4226
+ style="height: 500px; background: white;"
4227
+ sandbox="allow-same-origin"
4228
+ frameborder="0"
4229
+ ></iframe>
4230
+ </div>
4231
+ `,
4232
+ ...options
4233
+ });
4234
+ }
4235
+ async onAfterRender() {
4236
+ await super.onAfterRender();
4237
+ this.renderHtmlInIframe();
4238
+ }
4239
+ renderHtmlInIframe() {
4240
+ const iframe = this.element.querySelector("#email-preview-frame");
4241
+ if (!iframe) return;
4242
+ const htmlContent = this.model.get("html_template") || "";
4243
+ const iframeDoc = iframe.contentDocument || iframe.contentWindow.document;
4244
+ iframeDoc.open();
4245
+ iframeDoc.write(htmlContent);
4246
+ iframeDoc.close();
4247
+ }
4248
+ async onActionRefreshPreview(event, element) {
4249
+ this.renderHtmlInIframe();
4250
+ }
4251
+ }
4211
4252
  class EmailTemplateView extends View {
4212
4253
  constructor(options = {}) {
4213
4254
  super({
@@ -4236,9 +4277,8 @@ class EmailTemplateView extends View {
4236
4277
  async onInit() {
4237
4278
  const tabs = {};
4238
4279
  if (this.hasHtml) {
4239
- tabs["HTML Preview"] = new View({
4240
- model: this.model,
4241
- template: `<div class="email-html-content border rounded p-3" style="height: 500px; overflow-y: auto;">{{model.html_template}}</div>`
4280
+ tabs["HTML Preview"] = new EmailHtmlPreviewView({
4281
+ model: this.model
4242
4282
  });
4243
4283
  }
4244
4284
  if (this.hasText) {