pushfeedback 0.1.70 → 0.1.71

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 (43) hide show
  1. package/dist/cjs/canvas-editor_3.cjs.entry.js +1367 -0
  2. package/dist/cjs/index-9a8f4784.js +1584 -0
  3. package/dist/cjs/index.cjs.js +2 -0
  4. package/dist/cjs/loader.cjs.js +22 -0
  5. package/dist/cjs/pushfeedback.cjs.js +23 -0
  6. package/dist/collection/collection-manifest.json +14 -0
  7. package/dist/collection/components/canvas-editor/canvas-editor.css +404 -0
  8. package/dist/collection/components/canvas-editor/canvas-editor.js +1282 -0
  9. package/dist/collection/components/feedback-button/feedback-button.css +81 -0
  10. package/dist/collection/components/feedback-button/feedback-button.js +1169 -0
  11. package/dist/collection/components/feedback-modal/feedback-modal.css +547 -0
  12. package/dist/collection/components/feedback-modal/feedback-modal.js +1257 -0
  13. package/dist/collection/index.js +1 -0
  14. package/dist/components/canvas-editor.js +6 -0
  15. package/dist/{pushfeedback/canvas-editor.entry.js → components/canvas-editor2.js} +64 -7
  16. package/dist/{pushfeedback/feedback-button.entry.js → components/feedback-button.js} +90 -8
  17. package/dist/components/feedback-modal.js +6 -0
  18. package/dist/{pushfeedback/feedback-modal.entry.js → components/feedback-modal2.js} +97 -7
  19. package/dist/components/index.js +4 -0
  20. package/dist/esm/canvas-editor_3.entry.js +1361 -0
  21. package/dist/esm/index-f65e9124.js +1555 -0
  22. package/dist/esm/index.js +1 -0
  23. package/dist/esm/loader.js +18 -0
  24. package/dist/esm/polyfills/core-js.js +11 -0
  25. package/dist/esm/polyfills/css-shim.js +1 -0
  26. package/dist/esm/polyfills/dom.js +79 -0
  27. package/dist/esm/polyfills/es5-html-element.js +1 -0
  28. package/dist/esm/polyfills/index.js +34 -0
  29. package/dist/esm/polyfills/system.js +6 -0
  30. package/dist/esm/pushfeedback.js +18 -0
  31. package/dist/index.cjs.js +1 -0
  32. package/dist/index.js +1 -0
  33. package/dist/pushfeedback/index.esm.js +0 -1
  34. package/dist/pushfeedback/p-2c39091c.entry.js +1 -0
  35. package/dist/pushfeedback/p-af2a1f7f.js +2 -0
  36. package/dist/pushfeedback/pushfeedback.css +1 -146
  37. package/dist/pushfeedback/pushfeedback.esm.js +1 -148
  38. package/package.json +1 -1
  39. package/dist/pushfeedback/app-globals-0f993ce5.js +0 -3
  40. package/dist/pushfeedback/css-shim-b7d3d95f.js +0 -4
  41. package/dist/pushfeedback/dom-64053c71.js +0 -73
  42. package/dist/pushfeedback/index-36434da0.js +0 -3371
  43. package/dist/pushfeedback/shadow-css-98135883.js +0 -387
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -0,0 +1,6 @@
1
+ import { C as CanvasEditor$1, d as defineCustomElement$1 } from './canvas-editor2.js';
2
+
3
+ const CanvasEditor = CanvasEditor$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { CanvasEditor, defineCustomElement };
@@ -1,10 +1,12 @@
1
- import { r as registerInstance, e as createEvent, h } from './index-36434da0.js';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
2
 
3
3
  const canvasEditorCss = ":host{display:block}.canvas-editor-wrapper{position:relative}.canvas-editor-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:rgba(0, 0, 0, 0.8);display:flex;align-items:center;justify-content:center;z-index:9999}.canvas-editor-modal{width:95vw;max-width:1400px;max-height:900px;background:var(--feedback-canvas-editor-bg-color, #ffffff);border-radius:8px;border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 40px rgba(0, 0, 0, 0.2)}.canvas-editor-header{background:var(--feedback-canvas-editor-header-bg-color, #f5f5f5);border-bottom:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);padding:12px 16px;display:flex;flex-direction:column;gap:12px}.canvas-editor-title h3{margin:0;font-size:16px;font-weight:600;color:var(--feedback-canvas-editor-tool-text-color, #333)}.canvas-editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:16px}.toolbar-section{display:flex;align-items:center;gap:8px}.tool-group{display:flex;align-items:center;gap:4px}.tool-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--feedback-canvas-editor-tool-bg-color, #ffffff);border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);border-radius:6px;cursor:pointer;transition:all 0.2s ease;padding:0}.tool-btn svg{width:18px;height:18px;color:var(--feedback-canvas-editor-tool-text-color, #333)}.tool-btn:hover:not(:disabled){background:var(--feedback-canvas-editor-tool-bg-hover, #f0f0f0)}.tool-btn.active,.tool-btn.active:hover{background:var(--feedback-canvas-editor-tool-bg-active, #0070f4);color:var(--feedback-canvas-editor-tool-text-active, #ffffff)}.tool-btn.active svg{color:var(--feedback-canvas-editor-tool-text-active, #ffffff)}.tool-btn:disabled{opacity:0.4;cursor:not-allowed;color:var(--feedback-canvas-editor-tool-text-color, #333)}.toolbar-divider{width:1px;height:24px;background:var(--feedback-canvas-editor-divider-color, #e0e0e0);margin:0 4px}.undo-btn{background:var(--feedback-canvas-editor-tool-bg-color, #ffffff) !important;border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0) !important}.undo-btn:hover:not(:disabled){background:var(--feedback-canvas-editor-tool-bg-hover, #f0f0f0) !important}.color-palette{display:flex;align-items:center;gap:6px}.color-slot-wrapper{position:relative;display:flex;align-items:center}.color-btn{width:32px;height:32px;border-radius:6px;border:2px solid transparent;cursor:pointer;transition:all 0.2s ease;display:flex;align-items:center;justify-content:center;background:var(--feedback-canvas-editor-tool-bg-color, #ffffff);border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0)}.color-btn:hover{transform:scale(1.1)}.color-btn.active{border-color:var(--feedback-primary-color, #0070f4);box-shadow:0 0 0 2px rgba(0, 112, 244, 0.2)}.color-btn.editing{border-color:var(--feedback-primary-color, #0070f4)}.color-picker-dropdown{position:absolute;top:100%;left:0;z-index:1000;margin-top:4px;background:var(--feedback-canvas-editor-tool-bg-color, #ffffff);border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);border-radius:6px;padding:8px;box-shadow:0 4px 12px rgba(0, 0, 0, 0.1)}.color-picker-dropdown input[type=\"color\"]{width:40px;height:40px;border:none;border-radius:4px;cursor:pointer}.size-control{display:flex;align-items:center;gap:8px;background:var(--feedback-canvas-editor-tool-bg-color, #ffffff);border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);border-radius:6px;padding:6px 12px}.size-slider{width:80px;height:20px;-webkit-appearance:none;appearance:none;background:transparent;cursor:pointer}.size-slider::-webkit-slider-track{width:100%;height:4px;background:var(--feedback-canvas-editor-slider-track, #e0e0e0);border-radius:2px}.size-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;background:var(--feedback-primary-color, #0070f4);border-radius:50%;cursor:pointer}.size-slider::-moz-range-track{width:100%;height:4px;background:var(--feedback-canvas-editor-slider-track, #e0e0e0);border-radius:2px;border:none}.size-slider::-moz-range-thumb{width:16px;height:16px;background:var(--feedback-primary-color, #0070f4);border-radius:50%;border:none;cursor:pointer}.size-slider::-ms-track{width:100%;height:4px;background:var(--feedback-canvas-editor-slider-track, #e0e0e0);border-radius:2px;border:none;color:transparent}.size-slider::-ms-thumb{width:16px;height:16px;background:var(--feedback-primary-color, #0070f4);border-radius:50%;border:none;cursor:pointer}.size-value{font-weight:500;color:var(--feedback-canvas-editor-tool-text-color, #333);font-size:12px;min-width:30px}.selected-annotation-controls{border-left:2px solid var(--feedback-canvas-editor-divider-color, #e0e0e0);padding-left:12px;margin-left:8px;min-width:200px}.text-controls{display:flex;flex-direction:row;align-items:center;gap:12px}.font-size-control,.border-width-control{display:flex;align-items:center;gap:6px}.font-size-control label,.border-width-control label{font-size:12px;color:var(--feedback-canvas-editor-tool-text-color, #333);font-weight:500;min-width:35px}.action-btn{display:flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid var(--feedback-canvas-editor-border-color, #e0e0e0);border-radius:6px;cursor:pointer;font-size:12px;font-weight:500;transition:all 0.2s ease;min-width:65px;justify-content:center;height:36px}.action-btn.secondary{background:var(--feedback-canvas-editor-tool-bg-color, #ffffff);color:var(--feedback-canvas-editor-tool-text-color, #333);border-color:var(--feedback-canvas-editor-border-color, #e0e0e0)}.action-btn.secondary:hover{background:var(--feedback-canvas-editor-tool-bg-hover, #f0f0f0)}.action-btn.primary{background:var(--feedback-primary-color, #0070f4);color:#ffffff;border-color:var(--feedback-primary-color, #0070f4)}.action-btn.primary:hover{background:#0056cc;border-color:#0056cc}.action-btn.small{height:28px;padding:4px 8px;font-size:12px;min-width:65px}.shape-controls{display:flex;flex-direction:column;gap:8px}.canvas-editor-content{flex:1;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--feedback-canvas-editor-content-bg, #f5f5f5);overflow:hidden;min-height:0;min-width:0}.annotation-canvas{max-width:100%;max-height:100%;width:auto;height:auto;cursor:crosshair;border-radius:6px;box-shadow:0px 1px 2px 0px rgba(60, 64, 67, .30), 0px 2px 6px 2px rgba(60, 64, 67, .15);background:#ffffff;transition:box-shadow 0.3s ease;object-fit:contain;display:block}.annotation-canvas:hover{box-shadow:0px 2px 4px 0px rgba(60, 64, 67, .35), 0px 4px 12px 4px rgba(60, 64, 67, .20)}@media screen and (max-width: 768px){.canvas-editor-modal{width:100vw;height:100vh;border-radius:0}.canvas-editor-toolbar{flex-direction:column;align-items:stretch;gap:8px}.toolbar-section{justify-content:center}.selected-annotation-controls{border-left:none;border-top:2px solid var(--feedback-canvas-editor-divider-color, #e0e0e0);padding-left:0;padding-top:8px;margin-left:0;margin-top:8px;min-width:auto}}";
4
4
 
5
- const CanvasEditor = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
5
+ const CanvasEditor = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.__attachShadow();
8
10
  this.screenshotReady = createEvent(this, "screenshotReady", 7);
9
11
  this.screenshotCancelled = createEvent(this, "screenshotCancelled", 7);
10
12
  this.screenshotFailed = createEvent(this, "screenshotFailed", 7);
@@ -854,7 +856,62 @@ const CanvasEditor = class {
854
856
  }
855
857
  }, class: "size-slider" }), h("span", { class: "size-value" }, ((_f = this.selectedAnnotation) === null || _f === void 0 ? void 0 : _f.lineWidth) || this.canvasLineWidth, "px")))))), h("div", { class: "toolbar-section" }, h("button", { class: "action-btn secondary", onClick: this.closeCanvasEditor }, this.canvasEditorCancelText), h("button", { class: "action-btn primary", onClick: this.saveAnnotations }, this.canvasEditorSaveText))), h("div", { class: "canvas-editor-content" }, h("canvas", { ref: (el) => this.canvasRef = el, class: "annotation-canvas", onMouseDown: this.handleCanvasMouseDown, onMouseMove: this.handleCanvasMouseMove, onMouseUp: this.handleCanvasMouseUp, onMouseLeave: this.handleCanvasMouseUp }))))))));
856
858
  }
857
- };
858
- CanvasEditor.style = canvasEditorCss;
859
+ static get style() { return canvasEditorCss; }
860
+ }, [1, "canvas-editor", {
861
+ "canvasEditorTitle": [1, "canvas-editor-title"],
862
+ "canvasEditorCancelText": [1, "canvas-editor-cancel-text"],
863
+ "canvasEditorSaveText": [1, "canvas-editor-save-text"],
864
+ "screenshotTakingText": [1, "screenshot-taking-text"],
865
+ "screenshotAttachedText": [1, "screenshot-attached-text"],
866
+ "screenshotButtonText": [1, "screenshot-button-text"],
867
+ "autoStartScreenshot": [4, "auto-start-screenshot"],
868
+ "existingScreenshot": [1, "existing-screenshot"],
869
+ "editTextButtonText": [1, "edit-text-button-text"],
870
+ "sizeLabelText": [1, "size-label-text"],
871
+ "borderLabelText": [1, "border-label-text"],
872
+ "editTextPromptText": [1, "edit-text-prompt-text"],
873
+ "screenshotErrorGeneral": [1, "screenshot-error-general"],
874
+ "screenshotErrorPermission": [1, "screenshot-error-permission"],
875
+ "screenshotErrorNotSupported": [1, "screenshot-error-not-supported"],
876
+ "screenshotErrorNotFound": [1, "screenshot-error-not-found"],
877
+ "screenshotErrorCancelled": [1, "screenshot-error-cancelled"],
878
+ "screenshotErrorBrowserNotSupported": [1, "screenshot-error-browser-not-supported"],
879
+ "screenshotErrorUnexpected": [1, "screenshot-error-unexpected"],
880
+ "takingScreenshot": [32],
881
+ "showCanvasEditor": [32],
882
+ "canvasDrawingTool": [32],
883
+ "canvasDrawingColor": [32],
884
+ "canvasLineWidth": [32],
885
+ "canvasTextSize": [32],
886
+ "isDrawing": [32],
887
+ "annotations": [32],
888
+ "currentAnnotation": [32],
889
+ "isDragging": [32],
890
+ "draggedAnnotation": [32],
891
+ "dragStartPos": [32],
892
+ "showColorPicker": [32],
893
+ "editingColorIndex": [32],
894
+ "selectedAnnotation": [32],
895
+ "isResizing": [32],
896
+ "resizingAnnotation": [32],
897
+ "resizeStartSize": [32],
898
+ "resizeStartDimensions": [32],
899
+ "hoveredAnnotation": [32],
900
+ "resizeHandle": [32],
901
+ "defaultColors": [32]
902
+ }]);
903
+ function defineCustomElement() {
904
+ if (typeof customElements === "undefined") {
905
+ return;
906
+ }
907
+ const components = ["canvas-editor"];
908
+ components.forEach(tagName => { switch (tagName) {
909
+ case "canvas-editor":
910
+ if (!customElements.get(tagName)) {
911
+ customElements.define(tagName, CanvasEditor);
912
+ }
913
+ break;
914
+ } });
915
+ }
859
916
 
860
- export { CanvasEditor as canvas_editor };
917
+ export { CanvasEditor as C, defineCustomElement as d };
@@ -1,10 +1,14 @@
1
- import { r as registerInstance, e as createEvent, h, f as Host, g as getElement } from './index-36434da0.js';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$3 } from './canvas-editor2.js';
3
+ import { d as defineCustomElement$2 } from './feedback-modal2.js';
2
4
 
3
5
  const feedbackButtonCss = ".feedback-button-content{cursor:pointer;max-width:fit-content;z-index:var(--feedback-button-z-index);font-family:var(--feedback-font-family)}.feedback-button-content--custom-font{font-family:inherit}.feedback-button-content--light{align-items:center;background-color:var(--feedback-button-light-bg-color);border-radius:var(--feedback-button-border-radius);box-shadow:rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;box-sizing:border-box;color:var(--feedback-button-light-text-color);display:flex;font-size:var(--feedback-button-text-font-size);font-weight:var(--feedback-button-text-font-weight);padding:8px 15px}.feedback-button-content--dark{align-items:center;background-color:var(--feedback-button-dark-bg-color);border-radius:var(--feedback-button-border-radius);box-shadow:rgba(60, 64, 67, 0.3) 0px 1px 2px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;box-sizing:border-box;color:var(--feedback-button-dark-text-color);display:flex;font-weight:var(--feedback-button-text-font-weight);font-size:var(--feedback-button-text-font-size);padding:8px 15px}.icon-edit{stroke:var(--feedback-button-light-icon-color)}.feedback-button-content--dark .icon-edit{stroke:var(--feedback-button-dark-icon-color)}.feedback-button-content--bottom-right{bottom:10px;position:fixed;right:10px}.feedback-button-content--center-right{position:fixed;transform:rotate(-90deg) translateY(-50%);top:50%}.feedback-button-content--center-right.feedback-button-content--dark,.feedback-button-content--center-right.feedback-button-content--light{border-radius:4px;border-bottom-left-radius:0px;border-bottom-right-radius:0px}.feedback-button-content-icon{height:16px;margin-right:5px;width:16px}.feedback-button-content--center-right .feedback-button-content-icon{rotate:90deg}@media screen and (max-width: 767px){.feedback-button-content--hide-mobile{display:none}}";
4
6
 
5
- const FeedbackButton = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
7
+ const FeedbackButton$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.__attachShadow();
8
12
  this.feedbackSent = createEvent(this, "feedbackSent", 7);
9
13
  this.feedbackError = createEvent(this, "feedbackError", 7);
10
14
  this.buttonPosition = 'default';
@@ -205,8 +209,86 @@ const FeedbackButton = class {
205
209
  render() {
206
210
  return (h(Host, null, h("a", { class: `feedback-button-content feedback-button-content--${this.buttonStyle} feedback-button-content--${this.buttonPosition} ${this.customFont ? 'feedback-button-content--custom-font' : ''} ${this.hideMobile ? 'feedback-button-content--hide-mobile' : ''}`, onClick: () => this.showModal() }, !this.hideIcon && this.buttonStyle != 'default' && (h("span", { class: "feedback-button-content-icon" }, h("svg", { xmlns: "http://www.w3.org/2000/svg", width: "16", height: "16", viewBox: "0 0 24 24", fill: "none", stroke: "#fff", "stroke-width": "2", "stroke-linecap": "round", "stroke-linejoin": "round", class: "icon-edit" }, h("path", { d: "M12 20h9" }), h("path", { d: "M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z" })))), h("slot", null))));
207
211
  }
208
- get el() { return getElement(this); }
209
- };
210
- FeedbackButton.style = feedbackButtonCss;
212
+ get el() { return this; }
213
+ static get style() { return feedbackButtonCss; }
214
+ }, [1, "feedback-button", {
215
+ "buttonPosition": [1, "button-position"],
216
+ "buttonStyle": [1, "button-style"],
217
+ "hideIcon": [4, "hide-icon"],
218
+ "hideMobile": [4, "hide-mobile"],
219
+ "sessionId": [1537, "session-id"],
220
+ "metadata": [1],
221
+ "submit": [4],
222
+ "customFont": [4, "custom-font"],
223
+ "emailAddress": [1, "email-address"],
224
+ "isEmailRequired": [4, "is-email-required"],
225
+ "fetchData": [4, "fetch-data"],
226
+ "hideEmail": [4, "hide-email"],
227
+ "hidePrivacyPolicy": [4, "hide-privacy-policy"],
228
+ "hideRating": [4, "hide-rating"],
229
+ "hideScreenshotButton": [4, "hide-screenshot-button"],
230
+ "modalPosition": [1, "modal-position"],
231
+ "project": [1],
232
+ "rating": [2],
233
+ "ratingMode": [1, "rating-mode"],
234
+ "canvasEditorTitle": [1, "canvas-editor-title"],
235
+ "canvasEditorCancelText": [1, "canvas-editor-cancel-text"],
236
+ "canvasEditorSaveText": [1, "canvas-editor-save-text"],
237
+ "editTextButtonText": [1, "edit-text-button-text"],
238
+ "sizeLabelText": [1, "size-label-text"],
239
+ "borderLabelText": [1, "border-label-text"],
240
+ "editTextPromptText": [1, "edit-text-prompt-text"],
241
+ "screenshotErrorGeneral": [1, "screenshot-error-general"],
242
+ "screenshotErrorPermission": [1, "screenshot-error-permission"],
243
+ "screenshotErrorNotSupported": [1, "screenshot-error-not-supported"],
244
+ "screenshotErrorNotFound": [1, "screenshot-error-not-found"],
245
+ "screenshotErrorCancelled": [1, "screenshot-error-cancelled"],
246
+ "screenshotErrorBrowserNotSupported": [1, "screenshot-error-browser-not-supported"],
247
+ "screenshotErrorUnexpected": [1, "screenshot-error-unexpected"],
248
+ "emailPlaceholder": [1, "email-placeholder"],
249
+ "errorMessage": [1, "error-message"],
250
+ "errorMessage403": [1, "error-message-4-0-3"],
251
+ "errorMessage404": [1, "error-message-4-0-4"],
252
+ "footerText": [1, "footer-text"],
253
+ "messagePlaceholder": [1, "message-placeholder"],
254
+ "modalTitle": [1, "modal-title"],
255
+ "modalTitleError": [1, "modal-title-error"],
256
+ "modalTitleSuccess": [1, "modal-title-success"],
257
+ "privacyPolicyText": [1, "privacy-policy-text"],
258
+ "ratingPlaceholder": [1, "rating-placeholder"],
259
+ "ratingStarsPlaceholder": [1, "rating-stars-placeholder"],
260
+ "screenshotAttachedText": [1, "screenshot-attached-text"],
261
+ "screenshotButtonText": [1, "screenshot-button-text"],
262
+ "screenshotTakingText": [1, "screenshot-taking-text"],
263
+ "screenshotTopbarText": [1, "screenshot-topbar-text"],
264
+ "sendButtonText": [1, "send-button-text"],
265
+ "successMessage": [1, "success-message"]
266
+ }]);
267
+ function defineCustomElement$1() {
268
+ if (typeof customElements === "undefined") {
269
+ return;
270
+ }
271
+ const components = ["feedback-button", "canvas-editor", "feedback-modal"];
272
+ components.forEach(tagName => { switch (tagName) {
273
+ case "feedback-button":
274
+ if (!customElements.get(tagName)) {
275
+ customElements.define(tagName, FeedbackButton$1);
276
+ }
277
+ break;
278
+ case "canvas-editor":
279
+ if (!customElements.get(tagName)) {
280
+ defineCustomElement$3();
281
+ }
282
+ break;
283
+ case "feedback-modal":
284
+ if (!customElements.get(tagName)) {
285
+ defineCustomElement$2();
286
+ }
287
+ break;
288
+ } });
289
+ }
290
+
291
+ const FeedbackButton = FeedbackButton$1;
292
+ const defineCustomElement = defineCustomElement$1;
211
293
 
212
- export { FeedbackButton as feedback_button };
294
+ export { FeedbackButton, defineCustomElement };
@@ -0,0 +1,6 @@
1
+ import { F as FeedbackModal$1, d as defineCustomElement$1 } from './feedback-modal2.js';
2
+
3
+ const FeedbackModal = FeedbackModal$1;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { FeedbackModal, defineCustomElement };
@@ -1,10 +1,13 @@
1
- import { r as registerInstance, e as createEvent, h } from './index-36434da0.js';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$1 } from './canvas-editor2.js';
2
3
 
3
4
  const feedbackModalCss = ".text-center{flex-grow:1;text-align:center}.feedback-modal-wrapper *{font-family:var(--feedback-font-family)}.feedback-modal-wrapper--custom-font *{font-family:inherit}.feedback-modal-wrapper{position:absolute;z-index:var(--feedback-modal-modal-wrapper-z-index)}.feedback-overlay{background-color:var(--feedback-modal-screenshot-bg-color);height:100%;left:0;opacity:0;position:fixed;top:0;width:100%;z-index:var(--feedback-modal-screnshot-z-index);transition:opacity 0.2s ease-out}.feedback-overlay--visible{opacity:1}.feedback-modal{display:inline-block;position:relative}.feedback-modal-content{background-color:var(--feedback-modal-content-bg-color);border-color:1px solid var(--feedback-modal-header-text-color);border-radius:var(--feedback-modal-content-border-radius);box-shadow:0px 1px 2px 0px rgba(60, 64, 67, .30), 0px 2px 6px 2px rgba(60, 64, 67, .15);box-sizing:border-box;color:var(--feedback-modal-content-text-color);display:flex;flex-direction:column;left:50%;max-width:90%;padding:20px;position:fixed;top:50%;transform:translate(-50%, -50%) scale(0.95);opacity:0;width:100%;z-index:var(--feedback-modal-content-z-index);transition:transform 0.2s ease-out, opacity 0.2s ease-out}.feedback-modal-content--open{transform:translate(-50%, -50%) scale(1);opacity:1}.feedback-modal-header{align-items:center;color:var(--feedback-modal-header-text-color);display:flex;font-size:var(--feedback-header-font-size);font-weight:var(--feedback-modal-header-font-weight);justify-content:space-between;margin-bottom:20px}.feedback-modal-rating-buttons{width:100%;margin-bottom:20px}.feedback-modal-rating-button{padding:0;background-color:transparent;border:transparent;margin-right:5px;cursor:pointer}.feedback-modal-rating-buttons--thumbs .feedback-modal-rating-button{border:1px solid var(--feedback-modal-button-border-color);border-radius:var(--feedback-modal-button-border-radius);color:var(--feedback-modal-button-text-color);font-size:var(--feedback-modal-button-font-size);font-weight:500;margin-right:10px;justify-content:center;padding:5px 10px}.feedback-modal-rating-buttons--thumbs .feedback-modal-rating-button:hover,.feedback-modal-rating-buttons--thumbs .feedback-modal-rating-button--selected{background-color:var(--feedback-modal-button-bg-color-active);border:1px solid var(--feedback-modal-button-border-color-active);color:var(--feedback-modal-button-text-color-active)}.feedback-modal-rating-buttons--thumbs .feedback-modal-rating-button:hover svg,.feedback-modal-rating-buttons--thumbs .feedback-modal-rating-button--selected svg{stroke:var(--feedback-modal-rating-button-selected-color)}.feedback-modal-rating-buttons svg{stroke:var(--feedback-modal-rating-button-color);cursor:pointer}.feedback-modal-rating-buttons--stars .feedback-modal-rating-button--selected svg{fill:var(--feedback-modal-rating-button-stars-selected-color);stroke:var(--feedback-modal-rating-button-stars-selected-color)}.feedback-modal-text textarea{background-color:var(--feedback-modal-input-bg-color);border:1px solid var(--feedback-modal-input-border-color);border-radius:var(--feedback-modal-input-border-radius);box-sizing:border-box;color:var(--feedback-modal-input-text-color);font-size:var(--feedback-modal-input-font-size);margin-bottom:20px;height:100px;min-height:100px;padding:10px;resize:vertical;width:100%}.feedback-modal-email input{background-color:var(--feedback-modal-input-bg-color);border:1px solid var(--feedback-modal-input-border-color);border-radius:var(--feedback-modal-input-border-radius);box-sizing:border-box;color:var(--feedback-modal-input-text-color);font-size:var(--feedback-modal-input-font-size);margin-bottom:20px;height:40px;padding:10px;width:100%;margin-bottom:20px}.feedback-modal-privacy{font-size:var(--feedback-modal-input-font-size);margin-bottom:20px}.feedback-modal-text textarea:focus,.feedback-modal-email input:focus{border:1px solid var(--feedback-modal-input-border-color-focused);outline:none}.feedback-modal-buttons{display:flex;flex-direction:column}.feedback-modal-buttons .feedback-modal-button{margin-bottom:20px}.feedback-modal-button{align-items:center;background-color:transparent;border:1px solid var(--feedback-modal-button-border-color);border-radius:var(--feedback-modal-button-border-radius);color:var(--feedback-modal-button-text-color);cursor:pointer;display:flex;font-size:var(--feedback-modal-button-font-size);font-weight:500;justify-content:center;min-height:40px;padding:5px 10px}.feedback-modal-button svg{margin-right:6px}.feedback-modal-button path{fill:var(--feedback-modal-button-icon-color)}.feedback-modal-button:hover path,.feedback-modal-button--active path{fill:var(--feedback-modal-button-icon-color-active)}.feedback-modal-button--submit{background-color:var(--feedback-modal-button-submit-bg-color);border:1px solid var(--feedback-modal-button-border-color-active);color:var(--feedback-modal-button-submit-text-color)}.feedback-modal-button:hover,.feedback-modal-button--active{background-color:var(--feedback-modal-button-bg-color-active);border:1px solid var(--feedback-modal-button-border-color-active);color:var(--feedback-modal-button-text-color-active)}.feedback-modal-button--submit:hover{background-color:var(--feedback-modal-button-submit-bg-color-hover);border:1px solid var(--feedback-modal-button-submit-border-color-hover);color:var(--feedback-modal-button-submit-text-color-hover)}.feedback-modal-input-heading{display:block;font-size:14px;font-weight:300;padding-bottom:10px}.feedback-modal-footer{font-size:12px;text-align:center}.feedback-modal-footer a{color:var(--feedback-modal-footer-link);font-weight:500;text-decoration:none}.feedback-logo,.feedback-footer-text{display:block;text-align:center;margin-top:5px}.feedback-footer-text{margin-top:10px;line-height:1.5}.feedback-modal-close{background-color:var(--feedback-modal-close-bg-color);border:0;border-radius:50%;cursor:pointer;height:22px;margin-left:auto;padding:0;width:22px}.feedback-modal-close svg{stroke:var(--feedback-modal-close-color)}.feedback-modal-screenshot{background-color:var(--feedback-modal-screenshot-bg-color);height:100%;left:0;position:fixed;top:0;width:100%;z-index:var(--feedback-modal-screnshot-z-index)}.feedback-modal-screenshot-header{align-items:center;background-color:var(--feedback-modal-screenshot-header-bg-color);border-radius:var(--feedback-modal-content-border-radius);box-shadow:0px 1px 2px 0px rgba(60, 64, 67, .30), 0px 2px 6px 2px rgba(60, 64, 67, .15);box-sizing:border-box;color:var(--feedback-modal-screenshot-header-text-color);cursor:pointer;display:flex;left:50%;top:20px;transform:translateX(-50%);padding:10px;position:fixed;width:max-content;z-index:var(--feedback-modal-screenshot-header-z-index)}.feedback-modal-screenshot-close{height:24px;padding-left:10px;width:24px}.feedback-modal-screenshot-close svg{stroke:var(--feedback-modal-close-color)}.feedback-modal-message{font-size:var(--feedback-modal-message-font-size);margin-top:0}.feedback-modal-element-hover{background-color:transparent;cursor:pointer;border:1px solid var(--feedback-modal-element-hover-border-color)}.feedback-modal-element-selected{background-color:transparent;border:3px solid var(--feedback-modal-element-selected-border-color) !important;box-shadow:0 0 0 2px rgba(0, 123, 255, 0.3) !important}.screenshot-preview{display:inline-block;width:30px;height:30px;overflow:hidden;border-radius:4px;margin-right:10px;box-shadow:0 2px 4px rgba(0, 0, 0, 0.1);cursor:pointer;transition:transform 0.2s ease}.screenshot-preview:hover{transform:scale(1.1)}.screenshot-preview img{width:100%;height:100%;object-fit:cover}.screenshot-loading{display:inline-flex;align-items:center;margin-right:8px}@media screen and (min-width: 768px){.feedback-modal-content{max-width:var(--feedback-modal-content-max-width)}.feedback-modal-content.feedback-modal-content--bottom-right{bottom:var(--feedback-modal-content-position-bottom);left:initial;right:var(--feedback-modal-content-position-right);top:initial;transform:initial}.feedback-modal-content.feedback-modal-content--bottom-left{bottom:var(--feedback-modal-content-position-bottom);left:var(--feedback-modal-content-position-left);top:initial;transform:initial}.feedback-modal-content.feedback-modal-content--top-right{right:var(--feedback-modal-content-position-right);top:var(--feedback-modal-content-position-top);transform:initial}.feedback-modal-content.feedback-modal-content--top-left{left:var(--feedback-modal-content-position-left);top:var(--feedback-modal-content-position-top);transform:initial}.feedback-modal-content.feedback-modal-content--center-left{left:5px;right:auto;top:50%;transform:translateY(-50%)}.feedback-modal-content.feedback-modal-content--center-right{left:auto;right:5px;top:50%;transform:translateY(-50%)}.feedback-modal-content.feedback-modal-content--sidebar-left.feedback-modal-content--open,.feedback-modal-content.feedback-modal-content--sidebar-right.feedback-modal-content--open{transform:translateX(0)}.feedback-modal-content.feedback-modal-content--sidebar-left{max-width:var(--feedback-modal-content-sidebar-max-width);left:0;right:auto;height:100vh;top:0;transform:translateX(-100%);transition:transform 0.5s ease-in-out;border-radius:0}.feedback-modal-content.feedback-modal-content--sidebar-right{max-width:var(--feedback-modal-content-sidebar-max-width);left:auto;right:0;height:100vh;top:0;transform:translateX(100%);transition:transform 0.5s ease-in-out;border-radius:0}.feedback-modal-text textarea{height:150px;min-height:150px}.feedback-modal-content.feedback-modal-content--bottom-right{transform:translateY(20px)}.feedback-modal-content.feedback-modal-content--bottom-right.feedback-modal-content--open{transform:translateY(0)}.feedback-modal-content.feedback-modal-content--bottom-left{transform:translateY(20px)}.feedback-modal-content.feedback-modal-content--bottom-left.feedback-modal-content--open{transform:translateY(0)}.feedback-modal-content.feedback-modal-content--top-right{transform:translateY(-20px)}.feedback-modal-content.feedback-modal-content--top-right.feedback-modal-content--open{transform:translateY(0)}.feedback-modal-content.feedback-modal-content--top-left{transform:translateY(-20px)}.feedback-modal-content.feedback-modal-content--top-left.feedback-modal-content--open{transform:translateY(0)}}@keyframes feather-spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.feather-loader{animation:feather-spin 1s linear infinite;display:block}.screenshot-error-notification{position:fixed;top:20px;left:50%;transform:translateX(-50%);z-index:10001;max-width:500px;width:90%;animation:slideDown 0.3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.screenshot-error-content{background:#fee;border:1px solid #fcc;border-radius:8px;padding:12px 16px;display:flex;align-items:center;gap:12px;box-shadow:0 4px 12px rgba(0, 0, 0, 0.15);color:#c53030}.screenshot-error-content svg:first-child{color:#e53e3e;flex-shrink:0}.screenshot-error-content span{flex:1;font-size:14px;line-height:1.4;font-weight:500}.error-close-btn{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#c53030;flex-shrink:0;transition:background-color 0.2s ease}.error-close-btn:hover{background:rgba(197, 48, 48, 0.1)}";
4
5
 
5
- const FeedbackModal = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
6
+ const FeedbackModal = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
+ constructor() {
8
+ super();
9
+ this.__registerHost();
10
+ this.__attachShadow();
8
11
  this.feedbackSent = createEvent(this, "feedbackSent", 7);
9
12
  this.feedbackError = createEvent(this, "feedbackError", 7);
10
13
  this.onScrollDebounced = () => {
@@ -289,7 +292,94 @@ const FeedbackModal = class {
289
292
  });
290
293
  });
291
294
  }
292
- };
293
- FeedbackModal.style = feedbackModalCss;
295
+ static get style() { return feedbackModalCss; }
296
+ }, [1, "feedback-modal", {
297
+ "customFont": [4, "custom-font"],
298
+ "emailAddress": [1, "email-address"],
299
+ "hideEmail": [4, "hide-email"],
300
+ "isEmailRequired": [4, "is-email-required"],
301
+ "ratingMode": [1, "rating-mode"],
302
+ "hasSelectedElement": [1540, "has-selected-element"],
303
+ "hidePrivacyPolicy": [4, "hide-privacy-policy"],
304
+ "hideRating": [4, "hide-rating"],
305
+ "hideScreenshotButton": [4, "hide-screenshot-button"],
306
+ "project": [1],
307
+ "showScreenshotMode": [1540, "show-screenshot-mode"],
308
+ "showScreenshotTopBar": [1540, "show-screenshot-top-bar"],
309
+ "showModal": [1540, "show-modal"],
310
+ "rating": [2],
311
+ "metadata": [1],
312
+ "fetchData": [4, "fetch-data"],
313
+ "emailPlaceholder": [1, "email-placeholder"],
314
+ "errorMessage": [1, "error-message"],
315
+ "errorMessage403": [1, "error-message-4-0-3"],
316
+ "errorMessage404": [1, "error-message-4-0-4"],
317
+ "messagePlaceholder": [1, "message-placeholder"],
318
+ "footerText": [1, "footer-text"],
319
+ "modalPosition": [1, "modal-position"],
320
+ "modalTitle": [1, "modal-title"],
321
+ "modalTitleError": [1, "modal-title-error"],
322
+ "modalTitleSuccess": [1, "modal-title-success"],
323
+ "privacyPolicyText": [1, "privacy-policy-text"],
324
+ "ratingPlaceholder": [1, "rating-placeholder"],
325
+ "ratingStarsPlaceholder": [1, "rating-stars-placeholder"],
326
+ "sendButtonText": [1, "send-button-text"],
327
+ "screenshotAttachedText": [1, "screenshot-attached-text"],
328
+ "screenshotButtonText": [1, "screenshot-button-text"],
329
+ "screenshotTakingText": [1, "screenshot-taking-text"],
330
+ "screenshotTopbarText": [1, "screenshot-topbar-text"],
331
+ "successMessage": [1, "success-message"],
332
+ "canvasEditorTitle": [1, "canvas-editor-title"],
333
+ "canvasEditorCancelText": [1, "canvas-editor-cancel-text"],
334
+ "canvasEditorSaveText": [1, "canvas-editor-save-text"],
335
+ "editTextButtonText": [1, "edit-text-button-text"],
336
+ "sizeLabelText": [1, "size-label-text"],
337
+ "borderLabelText": [1, "border-label-text"],
338
+ "editTextPromptText": [1, "edit-text-prompt-text"],
339
+ "screenshotErrorGeneral": [1, "screenshot-error-general"],
340
+ "screenshotErrorPermission": [1, "screenshot-error-permission"],
341
+ "screenshotErrorNotSupported": [1, "screenshot-error-not-supported"],
342
+ "screenshotErrorNotFound": [1, "screenshot-error-not-found"],
343
+ "screenshotErrorCancelled": [1, "screenshot-error-cancelled"],
344
+ "screenshotErrorBrowserNotSupported": [1, "screenshot-error-browser-not-supported"],
345
+ "screenshotErrorUnexpected": [1, "screenshot-error-unexpected"],
346
+ "sending": [32],
347
+ "formMessage": [32],
348
+ "formEmail": [32],
349
+ "formSuccess": [32],
350
+ "formVerification": [32],
351
+ "formError": [32],
352
+ "formErrorStatus": [32],
353
+ "encodedScreenshot": [32],
354
+ "isPrivacyChecked": [32],
355
+ "whitelabel": [32],
356
+ "selectedRating": [32],
357
+ "overlayVisible": [32],
358
+ "isAnimating": [32],
359
+ "takingScreenshot": [32],
360
+ "showScreenshotError": [32],
361
+ "screenshotError": [32],
362
+ "showCanvasEditor": [32],
363
+ "autoStartCapture": [32],
364
+ "openModal": [64]
365
+ }]);
366
+ function defineCustomElement() {
367
+ if (typeof customElements === "undefined") {
368
+ return;
369
+ }
370
+ const components = ["feedback-modal", "canvas-editor"];
371
+ components.forEach(tagName => { switch (tagName) {
372
+ case "feedback-modal":
373
+ if (!customElements.get(tagName)) {
374
+ customElements.define(tagName, FeedbackModal);
375
+ }
376
+ break;
377
+ case "canvas-editor":
378
+ if (!customElements.get(tagName)) {
379
+ defineCustomElement$1();
380
+ }
381
+ break;
382
+ } });
383
+ }
294
384
 
295
- export { FeedbackModal as feedback_modal };
385
+ export { FeedbackModal as F, defineCustomElement as d };
@@ -0,0 +1,4 @@
1
+ export { setAssetPath, setNonce, setPlatformOptions } from '@stencil/core/internal/client';
2
+ export { CanvasEditor, defineCustomElement as defineCustomElementCanvasEditor } from './canvas-editor.js';
3
+ export { FeedbackButton, defineCustomElement as defineCustomElementFeedbackButton } from './feedback-button.js';
4
+ export { FeedbackModal, defineCustomElement as defineCustomElementFeedbackModal } from './feedback-modal.js';