@memberjunction/ng-dashboard-viewer 6.1.4 → 6.2.0-edge.1

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 (60) hide show
  1. package/dist/lib/config-dialogs/confirm-dialog.component.d.ts +58 -8
  2. package/dist/lib/config-dialogs/confirm-dialog.component.d.ts.map +1 -1
  3. package/dist/lib/config-dialogs/confirm-dialog.component.js +119 -17
  4. package/dist/lib/config-dialogs/confirm-dialog.component.js.map +1 -1
  5. package/dist/lib/config-panels/artifact-config-panel.component.d.ts +63 -11
  6. package/dist/lib/config-panels/artifact-config-panel.component.d.ts.map +1 -1
  7. package/dist/lib/config-panels/artifact-config-panel.component.js +152 -48
  8. package/dist/lib/config-panels/artifact-config-panel.component.js.map +1 -1
  9. package/dist/lib/config-panels/query-config-panel.component.d.ts +57 -9
  10. package/dist/lib/config-panels/query-config-panel.component.d.ts.map +1 -1
  11. package/dist/lib/config-panels/query-config-panel.component.js +142 -46
  12. package/dist/lib/config-panels/query-config-panel.component.js.map +1 -1
  13. package/dist/lib/config-panels/view-config-panel.component.d.ts +69 -11
  14. package/dist/lib/config-panels/view-config-panel.component.d.ts.map +1 -1
  15. package/dist/lib/config-panels/view-config-panel.component.js +165 -49
  16. package/dist/lib/config-panels/view-config-panel.component.js.map +1 -1
  17. package/dist/lib/config-panels/weburl-config-panel.component.d.ts +42 -6
  18. package/dist/lib/config-panels/weburl-config-panel.component.d.ts.map +1 -1
  19. package/dist/lib/config-panels/weburl-config-panel.component.js +113 -41
  20. package/dist/lib/config-panels/weburl-config-panel.component.js.map +1 -1
  21. package/dist/lib/dashboard-browser/dashboard-browser.component.d.ts.map +1 -1
  22. package/dist/lib/dashboard-browser/dashboard-browser.component.js +7 -4
  23. package/dist/lib/dashboard-browser/dashboard-browser.component.js.map +1 -1
  24. package/dist/lib/dashboard-viewer/dashboard-viewer.component.d.ts +163 -12
  25. package/dist/lib/dashboard-viewer/dashboard-viewer.component.d.ts.map +1 -1
  26. package/dist/lib/dashboard-viewer/dashboard-viewer.component.js +332 -78
  27. package/dist/lib/dashboard-viewer/dashboard-viewer.component.js.map +1 -1
  28. package/dist/lib/dialogs/add-panel-dialog/add-panel-dialog.component.d.ts +63 -9
  29. package/dist/lib/dialogs/add-panel-dialog/add-panel-dialog.component.d.ts.map +1 -1
  30. package/dist/lib/dialogs/add-panel-dialog/add-panel-dialog.component.js +172 -66
  31. package/dist/lib/dialogs/add-panel-dialog/add-panel-dialog.component.js.map +1 -1
  32. package/dist/lib/dialogs/edit-part-dialog/edit-part-dialog.component.d.ts +11 -1
  33. package/dist/lib/dialogs/edit-part-dialog/edit-part-dialog.component.d.ts.map +1 -1
  34. package/dist/lib/dialogs/edit-part-dialog/edit-part-dialog.component.js +30 -10
  35. package/dist/lib/dialogs/edit-part-dialog/edit-part-dialog.component.js.map +1 -1
  36. package/dist/lib/models/dashboard-types.d.ts +8 -0
  37. package/dist/lib/models/dashboard-types.d.ts.map +1 -1
  38. package/dist/lib/models/dashboard-types.js +21 -5
  39. package/dist/lib/models/dashboard-types.js.map +1 -1
  40. package/dist/lib/parts/artifact-part.component.d.ts +63 -7
  41. package/dist/lib/parts/artifact-part.component.d.ts.map +1 -1
  42. package/dist/lib/parts/artifact-part.component.js +98 -22
  43. package/dist/lib/parts/artifact-part.component.js.map +1 -1
  44. package/dist/lib/parts/query-part.component.d.ts +26 -4
  45. package/dist/lib/parts/query-part.component.d.ts.map +1 -1
  46. package/dist/lib/parts/query-part.component.js +62 -18
  47. package/dist/lib/parts/query-part.component.js.map +1 -1
  48. package/dist/lib/parts/view-part.component.d.ts +21 -3
  49. package/dist/lib/parts/view-part.component.d.ts.map +1 -1
  50. package/dist/lib/parts/view-part.component.js +55 -19
  51. package/dist/lib/parts/view-part.component.js.map +1 -1
  52. package/dist/lib/parts/weburl-part.component.d.ts +29 -5
  53. package/dist/lib/parts/weburl-part.component.d.ts.map +1 -1
  54. package/dist/lib/parts/weburl-part.component.js +63 -15
  55. package/dist/lib/parts/weburl-part.component.js.map +1 -1
  56. package/dist/lib/services/golden-layout-wrapper.service.d.ts +65 -5
  57. package/dist/lib/services/golden-layout-wrapper.service.d.ts.map +1 -1
  58. package/dist/lib/services/golden-layout-wrapper.service.js +135 -27
  59. package/dist/lib/services/golden-layout-wrapper.service.js.map +1 -1
  60. package/package.json +13 -13
@@ -37,62 +37,110 @@ function WebURLConfigPanelComponent_Conditional_16_Template(rf, ctx) { if (rf &
37
37
  let WebURLConfigPanelComponent = class WebURLConfigPanelComponent extends BaseConfigPanel {
38
38
  // Form fields
39
39
  title = '';
40
- url = '';
41
- sandboxMode = 'standard';
42
- allowFullscreen = true;
43
- refreshOnResize = false;
40
+ Url = '';
41
+ /** @deprecated Use {@link Url}. */
42
+ get url() {
43
+ return this.Url;
44
+ }
45
+ /** @deprecated Use {@link Url}. */
46
+ set url(value) {
47
+ this.Url = value;
48
+ }
49
+ SandboxMode = 'standard';
50
+ /** @deprecated Use {@link SandboxMode}. */
51
+ get sandboxMode() {
52
+ return this.SandboxMode;
53
+ }
54
+ /** @deprecated Use {@link SandboxMode}. */
55
+ set sandboxMode(value) {
56
+ this.SandboxMode = value;
57
+ }
58
+ AllowFullscreen = true;
59
+ /** @deprecated Use {@link AllowFullscreen}. */
60
+ get allowFullscreen() {
61
+ return this.AllowFullscreen;
62
+ }
63
+ /** @deprecated Use {@link AllowFullscreen}. */
64
+ set allowFullscreen(value) {
65
+ this.AllowFullscreen = value;
66
+ }
67
+ RefreshOnResize = false;
68
+ /** @deprecated Use {@link RefreshOnResize}. */
69
+ get refreshOnResize() {
70
+ return this.RefreshOnResize;
71
+ }
72
+ /** @deprecated Use {@link RefreshOnResize}. */
73
+ set refreshOnResize(value) {
74
+ this.RefreshOnResize = value;
75
+ }
44
76
  // Validation
45
- urlError = '';
46
- showUrlPreview = false;
77
+ UrlError = '';
78
+ /** @deprecated Use {@link UrlError}. */
79
+ get urlError() {
80
+ return this.UrlError;
81
+ }
82
+ /** @deprecated Use {@link UrlError}. */
83
+ set urlError(value) {
84
+ this.UrlError = value;
85
+ }
86
+ ShowUrlPreview = false;
87
+ /** @deprecated Use {@link ShowUrlPreview}. */
88
+ get showUrlPreview() {
89
+ return this.ShowUrlPreview;
90
+ }
91
+ /** @deprecated Use {@link ShowUrlPreview}. */
92
+ set showUrlPreview(value) {
93
+ this.ShowUrlPreview = value;
94
+ }
47
95
  constructor(cdr) {
48
96
  super(cdr);
49
97
  }
50
98
  initFromConfig(config) {
51
99
  if (config && config.type === 'WebURL') {
52
- this.url = config['url'] || '';
53
- this.sandboxMode = config['sandboxMode'] || 'standard';
54
- this.allowFullscreen = config['allowFullscreen'] ?? true;
55
- this.refreshOnResize = config['refreshOnResize'] ?? false;
100
+ this.Url = config['url'] || '';
101
+ this.SandboxMode = config['sandboxMode'] || 'standard';
102
+ this.AllowFullscreen = config['allowFullscreen'] ?? true;
103
+ this.RefreshOnResize = config['refreshOnResize'] ?? false;
56
104
  }
57
105
  else {
58
106
  // Defaults for new WebURL panel
59
- this.url = '';
60
- this.sandboxMode = 'standard';
61
- this.allowFullscreen = true;
62
- this.refreshOnResize = false;
107
+ this.Url = '';
108
+ this.SandboxMode = 'standard';
109
+ this.AllowFullscreen = true;
110
+ this.RefreshOnResize = false;
63
111
  }
64
112
  this.title = this.panel?.title || '';
65
- this.urlError = '';
66
- this.showUrlPreview = this.url ? this.isValidUrl(this.url) : false;
113
+ this.UrlError = '';
114
+ this.ShowUrlPreview = this.Url ? this.isValidUrl(this.Url) : false;
67
115
  this.cdr.detectChanges();
68
116
  }
69
117
  buildConfig() {
70
118
  return {
71
119
  type: 'WebURL',
72
- url: this.url.trim(),
73
- sandboxMode: this.sandboxMode,
74
- allowFullscreen: this.allowFullscreen,
75
- refreshOnResize: this.refreshOnResize
120
+ url: this.Url.trim(),
121
+ sandboxMode: this.SandboxMode,
122
+ allowFullscreen: this.AllowFullscreen,
123
+ refreshOnResize: this.RefreshOnResize
76
124
  };
77
125
  }
78
126
  validate() {
79
127
  const errors = [];
80
- this.urlError = '';
81
- if (!this.url.trim()) {
82
- this.urlError = 'URL is required';
83
- errors.push(this.urlError);
128
+ this.UrlError = '';
129
+ if (!this.Url.trim()) {
130
+ this.UrlError = 'URL is required';
131
+ errors.push(this.UrlError);
84
132
  }
85
- else if (!this.isValidUrl(this.url.trim())) {
86
- this.urlError = 'Please enter a valid URL (e.g., https://example.com)';
87
- errors.push(this.urlError);
133
+ else if (!this.isValidUrl(this.Url.trim())) {
134
+ this.UrlError = 'Please enter a valid URL (e.g., https://example.com)';
135
+ errors.push(this.UrlError);
88
136
  }
89
137
  this.cdr.detectChanges();
90
138
  return { valid: errors.length === 0, errors };
91
139
  }
92
140
  getDefaultTitle() {
93
- if (this.url) {
141
+ if (this.Url) {
94
142
  try {
95
- const hostname = new URL(this.url).hostname;
143
+ const hostname = new URL(this.Url).hostname;
96
144
  return hostname || 'Web Page';
97
145
  }
98
146
  catch {
@@ -105,14 +153,18 @@ let WebURLConfigPanelComponent = class WebURLConfigPanelComponent extends BaseCo
105
153
  return this.title || this.getDefaultTitle();
106
154
  }
107
155
  // Form event handlers
108
- onTitleChange() {
156
+ OnTitleChange() {
109
157
  this.emitConfigChanged();
110
158
  }
111
- onUrlChange() {
112
- this.urlError = '';
113
- this.showUrlPreview = false;
114
- if (this.url.trim() && this.isValidUrl(this.url.trim())) {
115
- this.showUrlPreview = true;
159
+ /** @deprecated Use {@link OnTitleChange}. */
160
+ onTitleChange() {
161
+ return this.OnTitleChange();
162
+ }
163
+ OnUrlChange() {
164
+ this.UrlError = '';
165
+ this.ShowUrlPreview = false;
166
+ if (this.Url.trim() && this.isValidUrl(this.Url.trim())) {
167
+ this.ShowUrlPreview = true;
116
168
  // Update title if it's still empty
117
169
  if (!this.title) {
118
170
  this.title = this.getDefaultTitle();
@@ -121,17 +173,33 @@ let WebURLConfigPanelComponent = class WebURLConfigPanelComponent extends BaseCo
121
173
  this.emitConfigChanged();
122
174
  this.cdr.detectChanges();
123
175
  }
176
+ /** @deprecated Use {@link OnUrlChange}. */
177
+ onUrlChange() {
178
+ return this.OnUrlChange();
179
+ }
180
+ OnSandboxModeChange() {
181
+ this.emitConfigChanged();
182
+ }
183
+ /** @deprecated Use {@link OnSandboxModeChange}. */
124
184
  onSandboxModeChange() {
185
+ return this.OnSandboxModeChange();
186
+ }
187
+ OnOptionChange() {
125
188
  this.emitConfigChanged();
126
189
  }
190
+ /** @deprecated Use {@link OnOptionChange}. */
127
191
  onOptionChange() {
128
- this.emitConfigChanged();
192
+ return this.OnOptionChange();
129
193
  }
130
- previewUrl() {
131
- if (this.url && this.isValidUrl(this.url)) {
132
- window.open(this.url, '_blank', 'noopener,noreferrer');
194
+ PreviewUrl() {
195
+ if (this.Url && this.isValidUrl(this.Url)) {
196
+ window.open(this.Url, '_blank', 'noopener,noreferrer');
133
197
  }
134
198
  }
199
+ /** @deprecated Use {@link PreviewUrl}. */
200
+ previewUrl() {
201
+ return this.PreviewUrl();
202
+ }
135
203
  isValidUrl(url) {
136
204
  try {
137
205
  const parsed = new URL(url);
@@ -141,8 +209,8 @@ let WebURLConfigPanelComponent = class WebURLConfigPanelComponent extends BaseCo
141
209
  return false;
142
210
  }
143
211
  }
144
- getSandboxModeDescription() {
145
- switch (this.sandboxMode) {
212
+ GetSandboxModeDescription() {
213
+ switch (this.SandboxMode) {
146
214
  case 'strict':
147
215
  return 'Only allows scripts to run. Most secure but may break some sites.';
148
216
  case 'permissive':
@@ -151,6 +219,10 @@ let WebURLConfigPanelComponent = class WebURLConfigPanelComponent extends BaseCo
151
219
  return 'Allows scripts, forms, and popups. Good balance of security and compatibility.';
152
220
  }
153
221
  }
222
+ /** @deprecated Use {@link GetSandboxModeDescription}. */
223
+ getSandboxModeDescription() {
224
+ return this.GetSandboxModeDescription();
225
+ }
154
226
  static ɵfac = function WebURLConfigPanelComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || WebURLConfigPanelComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef)); };
155
227
  static ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({ type: WebURLConfigPanelComponent, selectors: [["mj-weburl-config-panel"]], standalone: false, features: [i0.ɵɵInheritDefinitionFeature], decls: 69, vars: 19, consts: [[1, "config-panel"], [1, "form-group"], ["for", "partTitle"], [1, "fa-solid", "fa-heading"], ["type", "text", "id", "partTitle", "placeholder", "Enter a title for this part", 1, "form-input", 3, "ngModelChange", "input", "ngModel"], ["for", "webUrl"], [1, "fa-solid", "fa-link"], [1, "required"], [1, "input-with-action"], ["type", "url", "id", "webUrl", "placeholder", "https://example.com", 1, "form-input", 3, "ngModelChange", "input", "ngModel"], ["title", "Preview in new tab", 1, "input-action-btn"], [1, "form-error"], [1, "form-hint"], [1, "fa-solid", "fa-shield-halved"], [1, "radio-group"], [1, "radio-option"], ["type", "radio", "name", "sandboxMode", "value", "standard", 3, "ngModelChange", "change", "ngModel"], [1, "radio-mark"], [1, "radio-content"], [1, "radio-label"], [1, "radio-badge", "recommended"], ["type", "radio", "name", "sandboxMode", "value", "strict", 3, "ngModelChange", "change", "ngModel"], [1, "radio-badge", "secure"], ["type", "radio", "name", "sandboxMode", "value", "permissive", 3, "ngModelChange", "change", "ngModel"], [1, "radio-badge", "warning"], [1, "fa-solid", "fa-sliders"], [1, "checkbox-group"], [1, "checkbox-option"], ["type", "checkbox", 3, "ngModelChange", "change", "ngModel"], [1, "checkbox-mark"], [1, "checkbox-content"], [1, "checkbox-label"], [1, "checkbox-desc"], ["title", "Preview in new tab", 1, "input-action-btn", 3, "click"], [1, "fa-solid", "fa-external-link"]], template: function WebURLConfigPanelComponent_Template(rf, ctx) { if (rf & 1) {
156
228
  i0.ɵɵelementStart(0, "div", 0)(1, "div", 1)(2, "label", 2);
@@ -1 +1 @@
1
- {"version":3,"file":"weburl-config-panel.component.js","sourceRoot":"","sources":["../../../src/lib/config-panels/weburl-config-panel.component.ts","../../../src/lib/config-panels/weburl-config-panel.component.html"],"names":[],"mappings":"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","sourcesContent":["import { Component, ChangeDetectorRef } from '@angular/core';\nimport { RegisterClass } from '@memberjunction/global';\nimport { BaseConfigPanel } from './base-config-panel';\nimport { PanelConfig } from '../models/dashboard-types';\n\n/**\n * Configuration panel for WebURL parts.\n * Contains only the form content - no dialog chrome.\n */\n@RegisterClass(BaseConfigPanel, 'WebURLPanelConfigDialog')\n@Component({\n standalone: false,\n selector: 'mj-weburl-config-panel',\n templateUrl: './weburl-config-panel.component.html',\n styleUrls: ['./config-panel.component.css']\n})\nexport class WebURLConfigPanelComponent extends BaseConfigPanel {\n // Form fields\n public title = '';\n public url = '';\n public sandboxMode: 'standard' | 'strict' | 'permissive' = 'standard';\n public allowFullscreen = true;\n public refreshOnResize = false;\n\n // Validation\n public urlError = '';\n public showUrlPreview = false;\n\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n\n public initFromConfig(config: PanelConfig | null): void {\n if (config && config.type === 'WebURL') {\n this.url = (config['url'] as string) || '';\n this.sandboxMode = (config['sandboxMode'] as 'standard' | 'strict' | 'permissive') || 'standard';\n this.allowFullscreen = (config['allowFullscreen'] as boolean) ?? true;\n this.refreshOnResize = (config['refreshOnResize'] as boolean) ?? false;\n } else {\n // Defaults for new WebURL panel\n this.url = '';\n this.sandboxMode = 'standard';\n this.allowFullscreen = true;\n this.refreshOnResize = false;\n }\n\n this.title = this.panel?.title || '';\n this.urlError = '';\n this.showUrlPreview = this.url ? this.isValidUrl(this.url) : false;\n this.cdr.detectChanges();\n }\n\n public buildConfig(): PanelConfig {\n return {\n type: 'WebURL',\n url: this.url.trim(),\n sandboxMode: this.sandboxMode,\n allowFullscreen: this.allowFullscreen,\n refreshOnResize: this.refreshOnResize\n };\n }\n\n public override validate(): { valid: boolean; errors: string[] } {\n const errors: string[] = [];\n this.urlError = '';\n\n if (!this.url.trim()) {\n this.urlError = 'URL is required';\n errors.push(this.urlError);\n } else if (!this.isValidUrl(this.url.trim())) {\n this.urlError = 'Please enter a valid URL (e.g., https://example.com)';\n errors.push(this.urlError);\n }\n\n this.cdr.detectChanges();\n return { valid: errors.length === 0, errors };\n }\n\n public getDefaultTitle(): string {\n if (this.url) {\n try {\n const hostname = new URL(this.url).hostname;\n return hostname || 'Web Page';\n } catch {\n return 'Web Page';\n }\n }\n return 'Web Page';\n }\n\n public getTitle(): string {\n return this.title || this.getDefaultTitle();\n }\n\n // Form event handlers\n public onTitleChange(): void {\n this.emitConfigChanged();\n }\n\n public onUrlChange(): void {\n this.urlError = '';\n this.showUrlPreview = false;\n\n if (this.url.trim() && this.isValidUrl(this.url.trim())) {\n this.showUrlPreview = true;\n // Update title if it's still empty\n if (!this.title) {\n this.title = this.getDefaultTitle();\n }\n }\n\n this.emitConfigChanged();\n this.cdr.detectChanges();\n }\n\n public onSandboxModeChange(): void {\n this.emitConfigChanged();\n }\n\n public onOptionChange(): void {\n this.emitConfigChanged();\n }\n\n public previewUrl(): void {\n if (this.url && this.isValidUrl(this.url)) {\n window.open(this.url, '_blank', 'noopener,noreferrer');\n }\n }\n\n private isValidUrl(url: string): boolean {\n try {\n const parsed = new URL(url);\n return parsed.protocol === 'http:' || parsed.protocol === 'https:';\n } catch {\n return false;\n }\n }\n\n public getSandboxModeDescription(): string {\n switch (this.sandboxMode) {\n case 'strict':\n return 'Only allows scripts to run. Most secure but may break some sites.';\n case 'permissive':\n return 'Allows most features including popups and navigation. Use with trusted sites only.';\n default:\n return 'Allows scripts, forms, and popups. Good balance of security and compatibility.';\n }\n }\n}\n","<!-- WebURL Config Panel - Form content only, no dialog chrome -->\n<div class=\"config-panel\">\n <!-- Title -->\n <div class=\"form-group\">\n <label for=\"partTitle\">\n <i class=\"fa-solid fa-heading\"></i>\n Part Title\n </label>\n <input\n type=\"text\"\n id=\"partTitle\"\n [(ngModel)]=\"title\"\n (input)=\"onTitleChange()\"\n placeholder=\"Enter a title for this part\"\n class=\"form-input\">\n </div>\n\n <!-- URL -->\n <div class=\"form-group\">\n <label for=\"webUrl\">\n <i class=\"fa-solid fa-link\"></i>\n URL\n <span class=\"required\">*</span>\n </label>\n <div class=\"input-with-action\">\n <input\n type=\"url\"\n id=\"webUrl\"\n [(ngModel)]=\"url\"\n (input)=\"onUrlChange()\"\n placeholder=\"https://example.com\"\n class=\"form-input\"\n [class.error]=\"urlError\">\n @if (showUrlPreview) {\n <button\n class=\"input-action-btn\"\n (click)=\"previewUrl()\"\n title=\"Preview in new tab\">\n <i class=\"fa-solid fa-external-link\"></i>\n </button>\n }\n </div>\n @if (urlError) {\n <span class=\"form-error\">{{ urlError }}</span>\n }\n @if (!urlError) {\n <span class=\"form-hint\">\n Enter the full URL including https://\n </span>\n }\n </div>\n\n <!-- Security Mode -->\n <div class=\"form-group\">\n <label>\n <i class=\"fa-solid fa-shield-halved\"></i>\n Security Mode\n </label>\n <div class=\"radio-group\">\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'standard'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"standard\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Standard</span>\n <span class=\"radio-badge recommended\">Recommended</span>\n </span>\n </label>\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'strict'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"strict\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Strict</span>\n <span class=\"radio-badge secure\">Most Secure</span>\n </span>\n </label>\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'permissive'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"permissive\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Permissive</span>\n <span class=\"radio-badge warning\">Least Secure</span>\n </span>\n </label>\n </div>\n <span class=\"form-hint\">{{ getSandboxModeDescription() }}</span>\n </div>\n\n <!-- Options -->\n <div class=\"form-group\">\n <label>\n <i class=\"fa-solid fa-sliders\"></i>\n Options\n </label>\n <div class=\"checkbox-group\">\n <label class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"allowFullscreen\"\n (change)=\"onOptionChange()\">\n <span class=\"checkbox-mark\"></span>\n <span class=\"checkbox-content\">\n <span class=\"checkbox-label\">Allow Fullscreen</span>\n <span class=\"checkbox-desc\">Enable fullscreen mode for the embedded content</span>\n </span>\n </label>\n <label class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"refreshOnResize\"\n (change)=\"onOptionChange()\">\n <span class=\"checkbox-mark\"></span>\n <span class=\"checkbox-content\">\n <span class=\"checkbox-label\">Refresh on Resize</span>\n <span class=\"checkbox-desc\">Reload the page when the part is resized</span>\n </span>\n </label>\n </div>\n </div>\n</div>\n"]}
1
+ {"version":3,"file":"weburl-config-panel.component.js","sourceRoot":"","sources":["../../../src/lib/config-panels/weburl-config-panel.component.ts","../../../src/lib/config-panels/weburl-config-panel.component.html"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,SAAS,EAAqB,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;;;;;ICgC9C,kCAG6B;IAD3B,+LAAS,mBAAY,KAAC;IAEtB,wBAAyC;IAC3C,iBAAS;;;IAIX,gCAAyB;IAAA,YAAc;IAAA,iBAAO;;;IAArB,cAAc;IAAd,qCAAc;;;IAGvC,gCAAwB;IACtB,uDACF;IAAA,iBAAO;;AD3Cb;;;GAGG;AAQI,IAAM,0BAA0B,GAAhC,MAAM,0BAA2B,SAAQ,eAAe;IAC3D,cAAc;IACP,KAAK,GAAG,EAAE,CAAC;IACX,GAAG,GAAG,EAAE,CAAC;IAEhB,mCAAmC;IACnC,IAAW,GAAG;QACZ,OAAO,IAAI,CAAC,GAAG,CAAC;IAClB,CAAC;IACD,mCAAmC;IACnC,IAAW,GAAG,CAAC,KAAK;QAClB,IAAI,CAAC,GAAG,GAAG,KAAK,CAAC;IACnB,CAAC;IACM,WAAW,GAAyC,UAAU,CAAC;IAEtE,2CAA2C;IAC3C,IAAW,WAAW;QACpB,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IACD,2CAA2C;IAC3C,IAAW,WAAW,CAAC,KAA2C;QAChE,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC;IAC3B,CAAC;IACM,eAAe,GAAG,IAAI,CAAC;IAE9B,+CAA+C;IAC/C,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IACD,+CAA+C;IAC/C,IAAW,eAAe,CAAC,KAAK;QAC9B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IACM,eAAe,GAAG,KAAK,CAAC;IAE/B,+CAA+C;IAC/C,IAAW,eAAe;QACxB,OAAO,IAAI,CAAC,eAAe,CAAC;IAC9B,CAAC;IACD,+CAA+C;IAC/C,IAAW,eAAe,CAAC,KAAK;QAC9B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;IAC/B,CAAC;IAED,aAAa;IACN,QAAQ,GAAG,EAAE,CAAC;IAErB,wCAAwC;IACxC,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IACD,wCAAwC;IACxC,IAAW,QAAQ,CAAC,KAAK;QACvB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;IACxB,CAAC;IACM,cAAc,GAAG,KAAK,CAAC;IAE9B,8CAA8C;IAC9C,IAAW,cAAc;QACvB,OAAO,IAAI,CAAC,cAAc,CAAC;IAC7B,CAAC;IACD,8CAA8C;IAC9C,IAAW,cAAc,CAAC,KAAK;QAC7B,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IAC9B,CAAC;IAED,YAAY,GAAsB;QAC9B,KAAK,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;IAEM,cAAc,CAAC,MAA0B;QAC5C,IAAI,MAAM,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrC,IAAI,CAAC,GAAG,GAAI,MAAM,CAAC,KAAK,CAAY,IAAI,EAAE,CAAC;YAC3C,IAAI,CAAC,WAAW,GAAI,MAAM,CAAC,aAAa,CAA0C,IAAI,UAAU,CAAC;YACjG,IAAI,CAAC,eAAe,GAAI,MAAM,CAAC,iBAAiB,CAAa,IAAI,IAAI,CAAC;YACtE,IAAI,CAAC,eAAe,GAAI,MAAM,CAAC,iBAAiB,CAAa,IAAI,KAAK,CAAC;QAC3E,CAAC;aAAM,CAAC;YACJ,gCAAgC;YAChC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;YACd,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;YAC9B,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;YAC5B,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QACjC,CAAC;QAED,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE,CAAC;QACrC,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QACnE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAEM,WAAW;QACd,OAAO;YACH,IAAI,EAAE,QAAQ;YACd,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE;YACpB,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,eAAe,EAAE,IAAI,CAAC,eAAe;YACrC,eAAe,EAAE,IAAI,CAAC,eAAe;SACxC,CAAC;IACN,CAAC;IAEe,QAAQ;QACpB,MAAM,MAAM,GAAa,EAAE,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QAEnB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC;YACnB,IAAI,CAAC,QAAQ,GAAG,iBAAiB,CAAC;YAClC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,QAAQ,GAAG,sDAAsD,CAAC;YACvE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IAClD,CAAC;IAEM,eAAe;QAClB,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;YACX,IAAI,CAAC;gBACD,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,QAAQ,CAAC;gBAC5C,OAAO,QAAQ,IAAI,UAAU,CAAC;YAClC,CAAC;YAAC,MAAM,CAAC;gBACL,OAAO,UAAU,CAAC;YACtB,CAAC;QACL,CAAC;QACD,OAAO,UAAU,CAAC;IACtB,CAAC;IAEM,QAAQ;QACX,OAAO,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;IAChD,CAAC;IAED,sBAAsB;IACf,aAAa;QAChB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAED,6CAA6C;IACtC,aAAa;QAClB,OAAO,IAAI,CAAC,aAAa,EAAE,CAAC;IAC9B,CAAC;IAEM,WAAW;QACd,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;QACnB,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;QAE5B,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YACtD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;YAC3B,mCAAmC;YACnC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;gBACd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,CAAC;QACL,CAAC;QAED,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzB,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;IAC7B,CAAC;IAED,2CAA2C;IACpC,WAAW;QAChB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;IAC5B,CAAC;IAEM,mBAAmB;QACtB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAED,mDAAmD;IAC5C,mBAAmB;QACxB,OAAO,IAAI,CAAC,mBAAmB,EAAE,CAAC;IACpC,CAAC;IAEM,cAAc;QACjB,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC7B,CAAC;IAED,8CAA8C;IACvC,cAAc;QACnB,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;IAC/B,CAAC;IAEM,UAAU;QACb,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACxC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAC;QAC3D,CAAC;IACL,CAAC;IAED,0CAA0C;IACnC,UAAU;QACf,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC;IAEO,UAAU,CAAC,GAAW;QAC1B,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YAC5B,OAAO,MAAM,CAAC,QAAQ,KAAK,OAAO,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,KAAK,CAAC;QACjB,CAAC;IACL,CAAC;IAEM,yBAAyB;QAC5B,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,KAAK,QAAQ;gBACT,OAAO,mEAAmE,CAAC;YAC/E,KAAK,YAAY;gBACb,OAAO,oFAAoF,CAAC;YAChG;gBACI,OAAO,gFAAgF,CAAC;QAChG,CAAC;IACL,CAAC;IAED,yDAAyD;IAClD,yBAAyB;QAC9B,OAAO,IAAI,CAAC,yBAAyB,EAAE,CAAC;IAC1C,CAAC;oHAvNQ,0BAA0B;6DAA1B,0BAA0B;YCZnC,AADF,AAFF,8BAA0B,aAEA,eACC;YACrB,uBAAmC;YACnC,4BACF;YAAA,iBAAQ;YACR,gCAMqB;YAHnB,8MAAmB;YACnB,sGAAS,mBAAe,IAAC;YAG7B,AAPE,iBAMqB,EACjB;YAIJ,AADF,8BAAwB,eACF;YAClB,uBAAgC;YAChC,qBACA;YAAA,gCAAuB;YAAA,kBAAC;YAC1B,AAD0B,iBAAO,EACzB;YAEN,AADF,+BAA+B,gBAQF;YAJzB,2MAAiB;YACjB,uGAAS,iBAAa,IAAC;YAJzB,iBAO2B;YAC3B,kGAAsB;YAQxB,iBAAM;YACN,gGAAgB;YAGhB,gGAAiB;YAKnB,iBAAM;YAIJ,AADF,+BAAwB,aACf;YACL,yBAAyC;YACzC,gCACF;YAAA,iBAAQ;YAGJ,AADF,AADF,gCAAyB,iBACmD,iBAMrC;YADjC,2NAAyB;YACzB,yGAAU,yBAAqB,IAAC;YALlC,iBAKmC;YACnC,4BAAgC;YAE9B,AADF,iCAA4B,gBACA;YAAA,yBAAQ;YAAA,iBAAO;YACzC,iCAAsC;YAAA,4BAAW;YAErD,AADE,AADmD,iBAAO,EACnD,EACD;YAEN,AADF,kCAAwE,iBAMnC;YADjC,2NAAyB;YACzB,yGAAU,yBAAqB,IAAC;YALlC,iBAKmC;YACnC,4BAAgC;YAE9B,AADF,iCAA4B,gBACA;YAAA,uBAAM;YAAA,iBAAO;YACvC,iCAAiC;YAAA,4BAAW;YAEhD,AADE,AAD8C,iBAAO,EAC9C,EACD;YAEN,AADF,kCAA4E,iBAMvC;YADjC,2NAAyB;YACzB,yGAAU,yBAAqB,IAAC;YALlC,iBAKmC;YACnC,4BAAgC;YAE9B,AADF,iCAA4B,gBACA;YAAA,2BAAU;YAAA,iBAAO;YAC3C,iCAAkC;YAAA,6BAAY;YAGpD,AADE,AADE,AADgD,iBAAO,EAChD,EACD,EACJ;YACN,iCAAwB;YAAA,aAAiC;YAC3D,AAD2D,iBAAO,EAC5D;YAIJ,AADF,+BAAwB,aACf;YACL,yBAAmC;YACnC,0BACF;YAAA,iBAAQ;YAGJ,AADF,AADF,gCAA4B,iBACK,iBAIC;YAD5B,mOAA6B;YAC7B,yGAAU,oBAAgB,IAAC;YAH7B,iBAG8B;YAC9B,4BAAmC;YAEjC,AADF,iCAA+B,gBACA;YAAA,iCAAgB;YAAA,iBAAO;YACpD,iCAA4B;YAAA,gEAA+C;YAE/E,AADE,AAD6E,iBAAO,EAC7E,EACD;YAEN,AADF,kCAA+B,iBAIC;YAD5B,mOAA6B;YAC7B,yGAAU,oBAAgB,IAAC;YAH7B,iBAG8B;YAC9B,4BAAmC;YAEjC,AADF,iCAA+B,gBACA;YAAA,kCAAiB;YAAA,iBAAO;YACrD,iCAA4B;YAAA,yDAAwC;YAK9E,AADE,AADE,AADE,AADE,AADsE,iBAAO,EACtE,EACD,EACJ,EACF,EACF;;YA1HA,eAAmB;YAAnB,yCAAmB;YAqBjB,eAAwB;YAAxB,qCAAwB;YAJxB,uCAAiB;YAKnB,cAOC;YAPD,8CAOC;YAEH,cAEC;YAFD,wCAEC;YACD,cAIC;YAJD,yCAIC;YAU6B,eAA6C;YAA7C,0DAA6C;YAKrE,cAAyB;YAAzB,+CAAyB;YAQD,eAA2C;YAA3C,wDAA2C;YAKnE,cAAyB;YAAzB,+CAAyB;YAQD,eAA+C;YAA/C,4DAA+C;YAKvE,cAAyB;YAAzB,+CAAyB;YASP,eAAiC;YAAjC,qDAAiC;YAanD,eAA6B;YAA7B,mDAA6B;YAW7B,eAA6B;YAA7B,mDAA6B;;;AD3G1B,0BAA0B;IAPtC,aAAa,CAAC,eAAe,EAAE,yBAAyB,CAAC;GAO7C,0BAA0B,CAwNtC;;iFAxNY,0BAA0B;cANtC,SAAS;6BACI,KAAK,YACL,wBAAwB;;kFAIzB,0BAA0B","sourcesContent":["import { Component, ChangeDetectorRef } from '@angular/core';\nimport { RegisterClass } from '@memberjunction/global';\nimport { BaseConfigPanel } from './base-config-panel';\nimport { PanelConfig } from '../models/dashboard-types';\n\n/**\n * Configuration panel for WebURL parts.\n * Contains only the form content - no dialog chrome.\n */\n@RegisterClass(BaseConfigPanel, 'WebURLPanelConfigDialog')\n@Component({\n standalone: false,\n selector: 'mj-weburl-config-panel',\n templateUrl: './weburl-config-panel.component.html',\n styleUrls: ['./config-panel.component.css']\n})\nexport class WebURLConfigPanelComponent extends BaseConfigPanel {\n // Form fields\n public title = '';\n public Url = '';\n\n /** @deprecated Use {@link Url}. */\n public get url() {\n return this.Url;\n }\n /** @deprecated Use {@link Url}. */\n public set url(value) {\n this.Url = value;\n }\n public SandboxMode: 'standard' | 'strict' | 'permissive' = 'standard';\n\n /** @deprecated Use {@link SandboxMode}. */\n public get sandboxMode(): 'standard' | 'strict' | 'permissive' {\n return this.SandboxMode;\n }\n /** @deprecated Use {@link SandboxMode}. */\n public set sandboxMode(value: 'standard' | 'strict' | 'permissive') {\n this.SandboxMode = value;\n }\n public AllowFullscreen = true;\n\n /** @deprecated Use {@link AllowFullscreen}. */\n public get allowFullscreen() {\n return this.AllowFullscreen;\n }\n /** @deprecated Use {@link AllowFullscreen}. */\n public set allowFullscreen(value) {\n this.AllowFullscreen = value;\n }\n public RefreshOnResize = false;\n\n /** @deprecated Use {@link RefreshOnResize}. */\n public get refreshOnResize() {\n return this.RefreshOnResize;\n }\n /** @deprecated Use {@link RefreshOnResize}. */\n public set refreshOnResize(value) {\n this.RefreshOnResize = value;\n }\n\n // Validation\n public UrlError = '';\n\n /** @deprecated Use {@link UrlError}. */\n public get urlError() {\n return this.UrlError;\n }\n /** @deprecated Use {@link UrlError}. */\n public set urlError(value) {\n this.UrlError = value;\n }\n public ShowUrlPreview = false;\n\n /** @deprecated Use {@link ShowUrlPreview}. */\n public get showUrlPreview() {\n return this.ShowUrlPreview;\n }\n /** @deprecated Use {@link ShowUrlPreview}. */\n public set showUrlPreview(value) {\n this.ShowUrlPreview = value;\n }\n\n constructor(cdr: ChangeDetectorRef) {\n super(cdr);\n }\n\n public initFromConfig(config: PanelConfig | null): void {\n if (config && config.type === 'WebURL') {\n this.Url = (config['url'] as string) || '';\n this.SandboxMode = (config['sandboxMode'] as 'standard' | 'strict' | 'permissive') || 'standard';\n this.AllowFullscreen = (config['allowFullscreen'] as boolean) ?? true;\n this.RefreshOnResize = (config['refreshOnResize'] as boolean) ?? false;\n } else {\n // Defaults for new WebURL panel\n this.Url = '';\n this.SandboxMode = 'standard';\n this.AllowFullscreen = true;\n this.RefreshOnResize = false;\n }\n\n this.title = this.panel?.title || '';\n this.UrlError = '';\n this.ShowUrlPreview = this.Url ? this.isValidUrl(this.Url) : false;\n this.cdr.detectChanges();\n }\n\n public buildConfig(): PanelConfig {\n return {\n type: 'WebURL',\n url: this.Url.trim(),\n sandboxMode: this.SandboxMode,\n allowFullscreen: this.AllowFullscreen,\n refreshOnResize: this.RefreshOnResize\n };\n }\n\n public override validate(): { valid: boolean; errors: string[] } {\n const errors: string[] = [];\n this.UrlError = '';\n\n if (!this.Url.trim()) {\n this.UrlError = 'URL is required';\n errors.push(this.UrlError);\n } else if (!this.isValidUrl(this.Url.trim())) {\n this.UrlError = 'Please enter a valid URL (e.g., https://example.com)';\n errors.push(this.UrlError);\n }\n\n this.cdr.detectChanges();\n return { valid: errors.length === 0, errors };\n }\n\n public getDefaultTitle(): string {\n if (this.Url) {\n try {\n const hostname = new URL(this.Url).hostname;\n return hostname || 'Web Page';\n } catch {\n return 'Web Page';\n }\n }\n return 'Web Page';\n }\n\n public getTitle(): string {\n return this.title || this.getDefaultTitle();\n }\n\n // Form event handlers\n public OnTitleChange(): void {\n this.emitConfigChanged();\n }\n\n /** @deprecated Use {@link OnTitleChange}. */\n public onTitleChange(): void {\n return this.OnTitleChange();\n }\n\n public OnUrlChange(): void {\n this.UrlError = '';\n this.ShowUrlPreview = false;\n\n if (this.Url.trim() && this.isValidUrl(this.Url.trim())) {\n this.ShowUrlPreview = true;\n // Update title if it's still empty\n if (!this.title) {\n this.title = this.getDefaultTitle();\n }\n }\n\n this.emitConfigChanged();\n this.cdr.detectChanges();\n }\n\n /** @deprecated Use {@link OnUrlChange}. */\n public onUrlChange(): void {\n return this.OnUrlChange();\n }\n\n public OnSandboxModeChange(): void {\n this.emitConfigChanged();\n }\n\n /** @deprecated Use {@link OnSandboxModeChange}. */\n public onSandboxModeChange(): void {\n return this.OnSandboxModeChange();\n }\n\n public OnOptionChange(): void {\n this.emitConfigChanged();\n }\n\n /** @deprecated Use {@link OnOptionChange}. */\n public onOptionChange(): void {\n return this.OnOptionChange();\n }\n\n public PreviewUrl(): void {\n if (this.Url && this.isValidUrl(this.Url)) {\n window.open(this.Url, '_blank', 'noopener,noreferrer');\n }\n }\n\n /** @deprecated Use {@link PreviewUrl}. */\n public previewUrl(): void {\n return this.PreviewUrl();\n }\n\n private isValidUrl(url: string): boolean {\n try {\n const parsed = new URL(url);\n return parsed.protocol === 'http:' || parsed.protocol === 'https:';\n } catch {\n return false;\n }\n }\n\n public GetSandboxModeDescription(): string {\n switch (this.SandboxMode) {\n case 'strict':\n return 'Only allows scripts to run. Most secure but may break some sites.';\n case 'permissive':\n return 'Allows most features including popups and navigation. Use with trusted sites only.';\n default:\n return 'Allows scripts, forms, and popups. Good balance of security and compatibility.';\n }\n }\n\n /** @deprecated Use {@link GetSandboxModeDescription}. */\n public getSandboxModeDescription(): string {\n return this.GetSandboxModeDescription();\n }\n}\n","<!-- WebURL Config Panel - Form content only, no dialog chrome -->\n<div class=\"config-panel\">\n <!-- Title -->\n <div class=\"form-group\">\n <label for=\"partTitle\">\n <i class=\"fa-solid fa-heading\"></i>\n Part Title\n </label>\n <input\n type=\"text\"\n id=\"partTitle\"\n [(ngModel)]=\"title\"\n (input)=\"onTitleChange()\"\n placeholder=\"Enter a title for this part\"\n class=\"form-input\">\n </div>\n\n <!-- URL -->\n <div class=\"form-group\">\n <label for=\"webUrl\">\n <i class=\"fa-solid fa-link\"></i>\n URL\n <span class=\"required\">*</span>\n </label>\n <div class=\"input-with-action\">\n <input\n type=\"url\"\n id=\"webUrl\"\n [(ngModel)]=\"url\"\n (input)=\"onUrlChange()\"\n placeholder=\"https://example.com\"\n class=\"form-input\"\n [class.error]=\"urlError\">\n @if (showUrlPreview) {\n <button\n class=\"input-action-btn\"\n (click)=\"previewUrl()\"\n title=\"Preview in new tab\">\n <i class=\"fa-solid fa-external-link\"></i>\n </button>\n }\n </div>\n @if (urlError) {\n <span class=\"form-error\">{{ urlError }}</span>\n }\n @if (!urlError) {\n <span class=\"form-hint\">\n Enter the full URL including https://\n </span>\n }\n </div>\n\n <!-- Security Mode -->\n <div class=\"form-group\">\n <label>\n <i class=\"fa-solid fa-shield-halved\"></i>\n Security Mode\n </label>\n <div class=\"radio-group\">\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'standard'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"standard\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Standard</span>\n <span class=\"radio-badge recommended\">Recommended</span>\n </span>\n </label>\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'strict'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"strict\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Strict</span>\n <span class=\"radio-badge secure\">Most Secure</span>\n </span>\n </label>\n <label class=\"radio-option\" [class.selected]=\"sandboxMode === 'permissive'\">\n <input\n type=\"radio\"\n name=\"sandboxMode\"\n value=\"permissive\"\n [(ngModel)]=\"sandboxMode\"\n (change)=\"onSandboxModeChange()\">\n <span class=\"radio-mark\"></span>\n <span class=\"radio-content\">\n <span class=\"radio-label\">Permissive</span>\n <span class=\"radio-badge warning\">Least Secure</span>\n </span>\n </label>\n </div>\n <span class=\"form-hint\">{{ getSandboxModeDescription() }}</span>\n </div>\n\n <!-- Options -->\n <div class=\"form-group\">\n <label>\n <i class=\"fa-solid fa-sliders\"></i>\n Options\n </label>\n <div class=\"checkbox-group\">\n <label class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"allowFullscreen\"\n (change)=\"onOptionChange()\">\n <span class=\"checkbox-mark\"></span>\n <span class=\"checkbox-content\">\n <span class=\"checkbox-label\">Allow Fullscreen</span>\n <span class=\"checkbox-desc\">Enable fullscreen mode for the embedded content</span>\n </span>\n </label>\n <label class=\"checkbox-option\">\n <input\n type=\"checkbox\"\n [(ngModel)]=\"refreshOnResize\"\n (change)=\"onOptionChange()\">\n <span class=\"checkbox-mark\"></span>\n <span class=\"checkbox-content\">\n <span class=\"checkbox-label\">Refresh on Resize</span>\n <span class=\"checkbox-desc\">Reload the page when the part is resized</span>\n </span>\n </label>\n </div>\n </div>\n</div>\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"dashboard-browser.component.d.ts","sourceRoot":"","sources":["../../../src/lib/dashboard-browser/dashboard-browser.component.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dashboard-browser.component.d.ts","sourceRoot":"","sources":["../../../src/lib/dashboard-browser/dashboard-browser.component.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { Component, Input, Output, EventEmitter, ChangeDetectionStrategy } from '@angular/core';
2
2
  import { Subject } from 'rxjs';
3
- import { UUIDsEqual, HighlightSearchMatches } from '@memberjunction/global';
3
+ import { UUIDsEqual, NormalizeUUID, HighlightSearchMatches } from '@memberjunction/global';
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/forms";
6
6
  import * as i2 from "@memberjunction/ng-shared-generic";
@@ -1334,7 +1334,8 @@ export class DashboardBrowserComponent {
1334
1334
  try {
1335
1335
  const dragData = JSON.parse(data);
1336
1336
  if (dragData.type === 'dashboards' && dragData.ids?.length > 0) {
1337
- const dashboards = this.Dashboards.filter(d => dragData.ids.some((id) => UUIDsEqual(id, d.ID)));
1337
+ const draggedIds = new Set(dragData.ids.map((id) => NormalizeUUID(id)));
1338
+ const dashboards = this.Dashboards.filter(d => draggedIds.has(NormalizeUUID(d.ID)));
1338
1339
  if (dashboards.length > 0) {
1339
1340
  this.DashboardMove.emit({
1340
1341
  Dashboards: dashboards,
@@ -1505,7 +1506,8 @@ export class DashboardBrowserComponent {
1505
1506
  try {
1506
1507
  const dragData = JSON.parse(data);
1507
1508
  if (dragData.type === 'dashboards' && dragData.ids?.length > 0) {
1508
- const dashboards = this.Dashboards.filter(d => dragData.ids.some((id) => UUIDsEqual(id, d.ID)));
1509
+ const draggedIds = new Set(dragData.ids.map((id) => NormalizeUUID(id)));
1510
+ const dashboards = this.Dashboards.filter(d => draggedIds.has(NormalizeUUID(d.ID)));
1509
1511
  if (dashboards.length > 0) {
1510
1512
  this.DashboardMove.emit({
1511
1513
  Dashboards: dashboards,
@@ -1529,7 +1531,8 @@ export class DashboardBrowserComponent {
1529
1531
  * Handle drop from breadcrumb component
1530
1532
  */
1531
1533
  OnBreadcrumbDrop(event) {
1532
- const dashboards = this.Dashboards.filter(d => event.DashboardIds.some(id => UUIDsEqual(id, d.ID)));
1534
+ const droppedIds = new Set(event.DashboardIds.map(id => NormalizeUUID(id)));
1535
+ const dashboards = this.Dashboards.filter(d => droppedIds.has(NormalizeUUID(d.ID)));
1533
1536
  if (dashboards.length > 0) {
1534
1537
  this.DashboardMove.emit({
1535
1538
  Dashboards: dashboards,