legalesign-document-viewer 0.5.3 → 0.5.5

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 (62) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/ls-document-options_46.cjs.entry.js +4 -12
  3. package/dist/cjs/ls-document-viewer.cjs.js +1 -1
  4. package/dist/collection/components/ls-document-viewer/editorUtils.js +1 -4
  5. package/dist/collection/components/ls-document-viewer/editorUtils.js.map +1 -1
  6. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js +2 -9
  7. package/dist/collection/components/ls-document-viewer/ls-document-viewer.js.map +1 -1
  8. package/dist/components/ls-document-viewer.js +18 -24
  9. package/dist/components/ls-document-viewer.js.map +1 -1
  10. package/dist/components/ls-editor-field.js +1 -1
  11. package/dist/components/ls-field-content.js +1 -1
  12. package/dist/components/ls-field-distribute.js +1 -1
  13. package/dist/components/ls-field-properties-date.js +1 -1
  14. package/dist/components/ls-field-properties-dropdown.js +2 -2
  15. package/dist/components/ls-field-properties-email.js +1 -1
  16. package/dist/components/ls-field-properties-file.js +1 -1
  17. package/dist/components/ls-field-properties-general.js +1 -1
  18. package/dist/components/ls-field-properties-image.js +1 -1
  19. package/dist/components/ls-field-properties-multiple.js +1 -1
  20. package/dist/components/ls-field-properties-number.js +1 -1
  21. package/dist/components/ls-field-properties-signature.js +1 -1
  22. package/dist/components/ls-field-properties-text.js +1 -1
  23. package/dist/components/ls-field-properties.js +1 -1
  24. package/dist/components/ls-statusbar.js +1 -1
  25. package/dist/components/{p-HEbpRrFf.js → p-BFG8JpzV.js} +3 -3
  26. package/dist/components/{p-HEbpRrFf.js.map → p-BFG8JpzV.js.map} +1 -1
  27. package/dist/components/{p-DuBVnCOV.js → p-BiM_YBSZ.js} +3 -3
  28. package/dist/components/{p-DuBVnCOV.js.map → p-BiM_YBSZ.js.map} +1 -1
  29. package/dist/components/{p-oKVPuvMD.js → p-BzQdcCkp.js} +4 -4
  30. package/dist/components/{p-oKVPuvMD.js.map → p-BzQdcCkp.js.map} +1 -1
  31. package/dist/components/{p-CKIZjm3Z.js → p-CQKJInA5.js} +4 -4
  32. package/dist/components/{p-CKIZjm3Z.js.map → p-CQKJInA5.js.map} +1 -1
  33. package/dist/components/{p-S5Jtv-hj.js → p-CYy4PjdR.js} +4 -4
  34. package/dist/components/{p-S5Jtv-hj.js.map → p-CYy4PjdR.js.map} +1 -1
  35. package/dist/components/{p-C6yjqlFz.js → p-CseWUQoS.js} +3 -6
  36. package/dist/components/p-CseWUQoS.js.map +1 -0
  37. package/dist/components/{p-DRrXZ5S9.js → p-D0uPLDRC.js} +4 -4
  38. package/dist/components/{p-DRrXZ5S9.js.map → p-D0uPLDRC.js.map} +1 -1
  39. package/dist/components/{p-v_YkO2H4.js → p-DGK5uB4y.js} +4 -4
  40. package/dist/components/{p-v_YkO2H4.js.map → p-DGK5uB4y.js.map} +1 -1
  41. package/dist/components/{p-DlijCSWG.js → p-DL4sm65V.js} +4 -4
  42. package/dist/components/{p-DlijCSWG.js.map → p-DL4sm65V.js.map} +1 -1
  43. package/dist/components/{p-CJI8wNmf.js → p-DQBpORyi.js} +4 -4
  44. package/dist/components/{p-CJI8wNmf.js.map → p-DQBpORyi.js.map} +1 -1
  45. package/dist/components/{p-BzurxUA8.js → p-DRfjT0f6.js} +14 -14
  46. package/dist/components/{p-BzurxUA8.js.map → p-DRfjT0f6.js.map} +1 -1
  47. package/dist/components/{p-DFhLcGLq.js → p-DlvflCgm.js} +3 -3
  48. package/dist/components/{p-DFhLcGLq.js.map → p-DlvflCgm.js.map} +1 -1
  49. package/dist/components/{p-Df-ba2rA.js → p-G1oKNLws.js} +4 -4
  50. package/dist/components/{p-Df-ba2rA.js.map → p-G1oKNLws.js.map} +1 -1
  51. package/dist/components/{p-DoMJiNCc.js → p-vBWz6obu.js} +4 -4
  52. package/dist/components/{p-DoMJiNCc.js.map → p-vBWz6obu.js.map} +1 -1
  53. package/dist/esm/loader.js +1 -1
  54. package/dist/esm/ls-document-options_46.entry.js +4 -12
  55. package/dist/esm/ls-document-viewer.js +1 -1
  56. package/dist/ls-document-viewer/ls-document-viewer.esm.js +1 -1
  57. package/dist/ls-document-viewer/{p-9fb2a229.entry.js → p-0d1396e1.entry.js} +3 -3
  58. package/dist/ls-document-viewer/p-0d1396e1.entry.js.map +1 -0
  59. package/dist/types/components/ls-document-viewer/ls-document-viewer.d.ts +0 -1
  60. package/package.json +1 -1
  61. package/dist/components/p-C6yjqlFz.js.map +0 -1
  62. package/dist/ls-document-viewer/p-9fb2a229.entry.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { L as LsEditorField$1, d as defineCustomElement$1 } from './p-C6yjqlFz.js';
1
+ import { L as LsEditorField$1, d as defineCustomElement$1 } from './p-CseWUQoS.js';
2
2
 
3
3
  const LsEditorField = LsEditorField$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldContent$1, d as defineCustomElement$1 } from './p-DFhLcGLq.js';
1
+ import { L as LsFieldContent$1, d as defineCustomElement$1 } from './p-DlvflCgm.js';
2
2
 
3
3
  const LsFieldContent = LsFieldContent$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldDistribute$1, d as defineCustomElement$1 } from './p-HEbpRrFf.js';
1
+ import { L as LsFieldDistribute$1, d as defineCustomElement$1 } from './p-BFG8JpzV.js';
2
2
 
3
3
  const LsFieldDistribute = LsFieldDistribute$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesDate$1, d as defineCustomElement$1 } from './p-DRrXZ5S9.js';
1
+ import { L as LsFieldPropertiesDate$1, d as defineCustomElement$1 } from './p-D0uPLDRC.js';
2
2
 
3
3
  const LsFieldPropertiesDate = LsFieldPropertiesDate$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,6 +1,6 @@
1
1
  import { t as transformTag, p as proxyCustomElement, H, h, c as Host } from './p-BhZ5Udbm.js';
2
- import { d as defineCustomElement$e } from './p-C6yjqlFz.js';
3
- import { d as defineCustomElement$d } from './p-DFhLcGLq.js';
2
+ import { d as defineCustomElement$e } from './p-CseWUQoS.js';
3
+ import { d as defineCustomElement$d } from './p-DlvflCgm.js';
4
4
  import { d as defineCustomElement$c } from './p-DeiaBmYM.js';
5
5
  import { d as defineCustomElement$b } from './p-CGQK3l8F.js';
6
6
  import { d as defineCustomElement$a } from './p-DCiK4Zkr.js';
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesEmail$1, d as defineCustomElement$1 } from './p-CKIZjm3Z.js';
1
+ import { L as LsFieldPropertiesEmail$1, d as defineCustomElement$1 } from './p-CQKJInA5.js';
2
2
 
3
3
  const LsFieldPropertiesEmail = LsFieldPropertiesEmail$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesFile$1, d as defineCustomElement$1 } from './p-oKVPuvMD.js';
1
+ import { L as LsFieldPropertiesFile$1, d as defineCustomElement$1 } from './p-BzQdcCkp.js';
2
2
 
3
3
  const LsFieldPropertiesFile = LsFieldPropertiesFile$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesGeneral$1, d as defineCustomElement$1 } from './p-S5Jtv-hj.js';
1
+ import { L as LsFieldPropertiesGeneral$1, d as defineCustomElement$1 } from './p-CYy4PjdR.js';
2
2
 
3
3
  const LsFieldPropertiesGeneral = LsFieldPropertiesGeneral$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesImage$1, d as defineCustomElement$1 } from './p-Df-ba2rA.js';
1
+ import { L as LsFieldPropertiesImage$1, d as defineCustomElement$1 } from './p-G1oKNLws.js';
2
2
 
3
3
  const LsFieldPropertiesImage = LsFieldPropertiesImage$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesMultiple$1, d as defineCustomElement$1 } from './p-DoMJiNCc.js';
1
+ import { L as LsFieldPropertiesMultiple$1, d as defineCustomElement$1 } from './p-vBWz6obu.js';
2
2
 
3
3
  const LsFieldPropertiesMultiple = LsFieldPropertiesMultiple$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesNumber$1, d as defineCustomElement$1 } from './p-CJI8wNmf.js';
1
+ import { L as LsFieldPropertiesNumber$1, d as defineCustomElement$1 } from './p-DQBpORyi.js';
2
2
 
3
3
  const LsFieldPropertiesNumber = LsFieldPropertiesNumber$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesSignature$1, d as defineCustomElement$1 } from './p-v_YkO2H4.js';
1
+ import { L as LsFieldPropertiesSignature$1, d as defineCustomElement$1 } from './p-DGK5uB4y.js';
2
2
 
3
3
  const LsFieldPropertiesSignature = LsFieldPropertiesSignature$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldPropertiesText$1, d as defineCustomElement$1 } from './p-DlijCSWG.js';
1
+ import { L as LsFieldPropertiesText$1, d as defineCustomElement$1 } from './p-DL4sm65V.js';
2
2
 
3
3
  const LsFieldPropertiesText = LsFieldPropertiesText$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsFieldProperties$1, d as defineCustomElement$1 } from './p-BzurxUA8.js';
1
+ import { L as LsFieldProperties$1, d as defineCustomElement$1 } from './p-DRfjT0f6.js';
2
2
 
3
3
  const LsFieldProperties = LsFieldProperties$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,4 +1,4 @@
1
- import { L as LsStatusbar$1, d as defineCustomElement$1 } from './p-DuBVnCOV.js';
1
+ import { L as LsStatusbar$1, d as defineCustomElement$1 } from './p-BiM_YBSZ.js';
2
2
 
3
3
  const LsStatusbar = LsStatusbar$1;
4
4
  const defineCustomElement = defineCustomElement$1;
@@ -1,5 +1,5 @@
1
1
  import { t as transformTag, p as proxyCustomElement, H, d as createEvent, h, c as Host } from './p-BhZ5Udbm.js';
2
- import { f as findDimensions, r as recalculateCoordinates, h as findIn, d as defineCustomElement$3, o as oob } from './p-C6yjqlFz.js';
2
+ import { f as findDimensions, r as recalculateCoordinates, h as findIn, d as defineCustomElement$3, o as oob } from './p-CseWUQoS.js';
3
3
  import { a as attachAllTooltips } from './p-Cb8nDMs-.js';
4
4
  import { d as defineCustomElement$2 } from './p-D95fiMAP.js';
5
5
  import { d as defineCustomElement$1 } from './p-B3DQQkl0.js';
@@ -563,6 +563,6 @@ function defineCustomElement() {
563
563
  defineCustomElement();
564
564
 
565
565
  export { LsFieldDistribute as L, mouseDown as a, mouseMove as b, mouseUp as c, defineCustomElement as d, mouseDoubleClick as e, mouseDrop as f, mouseClick as m };
566
- //# sourceMappingURL=p-HEbpRrFf.js.map
566
+ //# sourceMappingURL=p-BFG8JpzV.js.map
567
567
 
568
- //# sourceMappingURL=p-HEbpRrFf.js.map
568
+ //# sourceMappingURL=p-BFG8JpzV.js.map
@@ -1 +1 @@
1
- {"file":"p-HEbpRrFf.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-document-viewer/mouseHandlers.ts","src/components/ls-field-distribute/ls-field-distribute.css?tag=ls-field-distribute&encapsulation=shadow","src/components/ls-field-distribute/ls-field-distribute.tsx"],"sourcesContent":["import { LSApiElement } from '../../types/LSApiElement';\nimport { LSMutateEvent } from '../../types/LSMutateEvent';\nimport { findDimensions, findIn, recalculateCoordinates } from './editorCalculator';\nimport { IToolboxField } from '../interfaces/IToolboxField';\n\nlet mousetimer = null;\n\nexport function debounce(data, delay) {\n if (mousetimer) clearTimeout(mousetimer);\n\n mousetimer = setTimeout(() => {\n this.mutate.emit([data]);\n }, delay);\n}\n\nexport function mouseDown(e) {\n if (e.offsetX < 0 || e.offsetY < 0) return;\n // console.log('mousedown', e);\n\n // Find if this was\n // - a hit on a field edge RESIZE\n // - a hit on the middle of a field MOVE\n // - a hit on the background document SELECTMULTIPLE with a box\n this.hitField = null;\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');\n\n fields.forEach(f => {\n const { left, top, height, width, bottom, right } = f.getBoundingClientRect();\n const fdims = { left: f.offsetLeft, top: f.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n // west edge\n if (Math.abs(e.clientX - left) < 5 && e.clientY >= top && e.clientY <= bottom) {\n this.edgeSide = 'w';\n this.hitField = f;\n // right / east edge\n } else if (Math.abs(e.clientX - right) < 5 && e.clientY >= top && e.clientY <= bottom) {\n this.edgeSide = 'e';\n this.hitField = f;\n // north edge\n } else if (Math.abs(e.clientY - top) < 5 && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = 'n';\n this.hitField = f;\n // south edge\n } else if (Math.abs(e.clientY - bottom) < 5 && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = 's';\n this.hitField = f;\n } else if (e.clientY <= bottom && e.clientY >= top && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = null;\n this.hitField = f;\n }\n });\n\n if (this.hitField && e.shiftKey === false) {\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // mouse down on a field, select it and note the start location\n if (this.hitField.selected === false) {\n // unselect all other fields\n fields.forEach(fu => {\n fu.selected = false;\n });\n this.selected = [this.hitField];\n this.selectFields.emit([this.hitField.dataItem]);\n }\n\n const { height, width } = this.hitField.getBoundingClientRect();\n const fdims = { left: this.hitField.offsetLeft, top: this.hitField.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n\n this.startLocations = this.selected.map(f => {\n const { height, width } = f.getBoundingClientRect();\n const beHtml = f as HTMLElement;\n return { top: beHtml.offsetTop, left: beHtml.offsetLeft, height, width };\n });\n this.selectionBox = null;\n } else if (this.hitField && e.shiftKey === true) {\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // mouse down on a field, select it and note the start location\n if (this.hitField.selected === false) {\n // unselect all other fields\n fields.forEach(fu => {\n fu.selected = false;\n });\n this.selected = [...this.selected, this.hitField];\n this.selectFields.emit([...this.selected.map(si => si.dataItem), this.hitField.dataItem]);\n }\n\n const { height, width } = this.hitField.getBoundingClientRect();\n const fdims = { left: this.hitField.offsetLeft, top: this.hitField.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n\n this.startLocations = this.selected.map(f => {\n const { height, width } = f.getBoundingClientRect();\n const beHtml = f as HTMLElement;\n return { top: beHtml.offsetTop, left: beHtml.offsetLeft, height, width };\n });\n this.selectionBox = null;\n } else {\n // move down on empty space, start a selection box\n this.startLocations = null;\n this.startMouse = null;\n this.selectionBox = { x: e.clientX, y: e.clientY };\n // console.log('empty space reset selected', this.selectionBox);\n this.unselect();\n\n this.selectFields.emit([]);\n this.selected = [];\n this.component.style.cursor = 'crosshair';\n }\n}\n\nexport function outOfBounds(futureField) {\n return (\n futureField.height <= 5 ||\n futureField.left < 0 ||\n futureField.top < 0 ||\n futureField.left + futureField.width >= futureField.pageDimensions.width ||\n futureField.top + futureField.height >= futureField.pageDimensions.height\n );\n}\nexport function mouseMove(event) {\n event.preventDefault();\n\n // We have the mouse held down on a field edge to resize it.\n if (this.hitField && this.edgeSide && this.startMouse && event.buttons === 1) {\n const movedX = event.screenX - this.startMouse.x;\n const movedY = event.screenY - this.startMouse.y;\n var width = this.hitField.dataItem.width;\n var height = this.hitField.dataItem.height;\n var scale = this.hitField.dataItem.formElementType === 'signature' && this._template.fixSignatureScale;\n\n switch (this.edgeSide) {\n case 'n':\n if (outOfBounds({ ...this.hitField.dataItem, top: (this.startMouse.top + movedY) / this.zoom, height: (this.startMouse.height - movedY) / this.zoom })) break;\n this.hitField.style.top = this.startMouse.top + movedY + 'px';\n this.hitField.style.height = this.startMouse.height - movedY + 'px';\n\n if (scale) {\n width = (this.startMouse.height - movedY) * 3.8;\n this.hitField.style.width = width + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, top: this.startMouse.top + movedY, height: this.startMouse.height - movedY, width };\n break;\n case 's':\n if (outOfBounds({ ...this.hitField.dataItem, height: (this.startMouse.height + movedY) / this.zoom })) break;\n\n this.hitField.style.height = this.startMouse.height + movedY + 'px';\n if (scale) {\n width = (this.startMouse.height + movedY) * 3.8;\n this.hitField.style.width = width + 'px';\n }\n\n this.hitField.dataItem = { ...this.hitField.dataItem, height: this.startMouse.height + movedY, width };\n break;\n case 'e':\n if (outOfBounds({ ...this.hitField.dataItem, width: (this.startMouse.width + movedX) / this.zoom })) break;\n\n this.hitField.style.width = this.startMouse.width + movedX + 'px';\n if (scale) {\n height = Math.round((this.startMouse.width + movedX) / 3.8);\n this.hitField.style.height = height + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, width: (this.startMouse.width + movedX) / this.zoom, height };\n\n break;\n case 'w':\n if (outOfBounds({ ...this.hitField.dataItem, left: (this.startMouse.left + movedX) / this.zoom, width: (this.startMouse.width - movedX) / this.zoom })) break;\n this.hitField.style.left = this.startMouse.left + movedX + 'px';\n this.hitField.style.width = this.startMouse.width - movedX + 'px';\n\n if (scale) {\n height = Math.round((this.startMouse.width - movedX) / 3.8);\n this.hitField.style.height = height + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, left: this.startMouse.left + movedX, width: this.startMouse.width - movedX, height };\n break;\n }\n\n debounce.bind(this)({ action: 'update', data: recalculateCoordinates(this.hitField.dataItem) }, 700);\n } else if (this.selectionBox && event.buttons === 1) {\n this.isBoxing = true;\n // draw the multiple selection box\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n var leftOffset = frame.getBoundingClientRect().left;\n var topOffset = frame.getBoundingClientRect().top;\n\n const movedX = event.clientX - this.selectionBox.x;\n const movedY = event.clientY - this.selectionBox.y;\n\n // allow for the frame to be scrolled\n box.style.visibility = 'visible';\n box.style.left = (this.selectionBox.x > event.clientX ? event.clientX : this.selectionBox.x) - leftOffset + frame.scrollLeft + 'px';\n box.style.top = (this.selectionBox.y > event.clientY ? event.clientY : this.selectionBox.y) - topOffset + frame.scrollTop + 'px';\n box.style.width = Math.abs(movedX) + 'px';\n box.style.height = Math.abs(movedY) + 'px';\n\n // Move one or more selected items\n } else if (this.startLocations && !this.edgeSide && this.startMouse && event.buttons === 1) {\n this.isMoving = true;\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // Move one or more selected items\n const movedX = event.screenX - this.startMouse.x;\n const movedY = event.screenY - this.startMouse.y;\n if (this.selected?.length) {\n for (let i = 0; i < this.selected.length; i++) {\n if (\n this.startLocations[i].left + movedX >= 0 &&\n this.startLocations[i].top + movedY >= 0 &&\n this.startLocations[i].left + movedX <= (this.pageDimensions[this.pageNum - 1].width - this.selected[i].dataItem.width) * this.zoom &&\n this.startLocations[i].top + movedY <= (this.pageDimensions[this.pageNum - 1].height - this.selected[i].dataItem.height) * this.zoom\n ) {\n this.selected[i].style.left = Math.round(this.startLocations[i].left + movedX) + 'px';\n this.selected[i].style.top = Math.round(this.startLocations[i].top + movedY) + 'px';\n }\n }\n }\n }\n}\n\nexport function mouseUp(event) {\n this.edgeSide = null;\n this.startMouse = null;\n this.component.style.cursor = 'auto';\n\n // console.log('mouse up');\n // find what was inside the selection box emit the select event and change their style\n if (this.selectionBox && this.isBoxing) {\n this.isBoxing = false;\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n var fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');\n box.style.visibility = 'hidden';\n this.selectionBox = null;\n const found = findIn(fields, box, true, event.shiftKey);\n this.selected = Array.from(found);\n this.selectFields.emit(found.map(fx => fx.dataItem));\n }\n}\n\nexport function mouseClick(e) {\n // check we're not moving fields\n if (this.isMoving) {\n // End dragging fields\n this.isMoving = false;\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n const divFrame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLDivElement;\n const selected = Array.from(fields).filter(fx => fx.selected);\n \n this.mutate.emit(\n Array.from(fields)\n .filter(fx => fx.selected)\n .map(fx => {\n // Calculate new positions and update the dataItem on the control\n const delta = {\n ...fx.dataItem,\n ...findDimensions(divFrame, fx, fx.dataItem.pageDimensions.height, fx.dataItem.pageDimensions.width, this.zoom),\n };\n // TODO:: out of bounds handler (UNDO)\n // update the data in the html element\n fx.dataItem = delta;\n // send an update event to be processed\n return { action: 'update', data: delta };\n }),\n );\n this.selectFields.emit(selected.map(fx => fx.dataItem));\n } else {\n // reset the selection box location\n this.selectionBox = { x: e.clientX, y: e.clientY };\n\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n fields.forEach(f => {\n const { left, top, bottom, right } = f.getBoundingClientRect();\n if (e.clientY <= bottom && e.clientY >= top && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = null;\n this.hitField = f;\n // check if this is a shift click to add to the current selection\n if (!e.shiftKey) fields.forEach(ft => (ft.selected = false));\n f.selected = true;\n }\n });\n\n this.selected = Array.from(fields).filter(fx => fx.selected);\n this.selectFields.emit(this.selected.map(fx => fx.dataItem));\n }\n}\n\nexport function mouseDrop(event) {\n event.preventDefault();\n try {\n const data: IToolboxField = JSON.parse(event.dataTransfer.getData('application/json')) as any as IToolboxField;\n // Unselect all current selected items\n this.component.shadowRoot.querySelectorAll('ls-editor-field').forEach(f => (f.selected = false));\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n // Make a new API compatible id for a template element (prefix 'ele')\n const id = btoa('ele' + crypto.randomUUID());\n const top = event.offsetY / this.zoom + frame.scrollTop;\n const left = event.offsetX / this.zoom + frame.scrollLeft;\n\n // TODO: Put these defaults somewhere sensible\n const newData: LSMutateEvent = {\n action: 'create',\n data: {\n id,\n value: '',\n formElementType: data.formElementType,\n elementType: data.elementType,\n validation: data.validation,\n substantive: false,\n top,\n left,\n hideBorder: false,\n height: data.defaultHeight,\n width: data.defaultWidth,\n pageDimensions: this.pageDimensions[this.pageNum - 1],\n fontName: this.fontFamily,\n fontSize: this.fontSize,\n align: 'left',\n signer: this.signer,\n page: this.pageNum,\n mapTo: null,\n label: '',\n helpText: null,\n logicGroup: null,\n optional: false,\n options: null,\n logicAction: null,\n labelExtra: null,\n fieldOrder: null,\n ax: left > 0 ? left / this.pageDimensions[this.pageNum - 1].width : 0,\n ay: top > 0 ? top / this.pageDimensions[this.pageNum - 1].height : 0,\n bx: (left + data.defaultWidth) / this.pageDimensions[this.pageNum - 1].width,\n by: (top + data.defaultHeight) / this.pageDimensions[this.pageNum - 1].height,\n templateId: this._template.id,\n } as LSApiElement,\n };\n\n this.mutate.emit([newData]);\n } catch (e) {\n console.error(e);\n }\n}\n\nexport function mouseDoubleClick(event) {\n console.log('double click');\n try {\n const data: IToolboxField = this.fieldTypeSelected as IToolboxField;\n\n // Unselect all current selected items\n this.component.shadowRoot.querySelectorAll('ls-editor-field').forEach(f => (f.selected = false));\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n // Make a new API compatible id for a template element (prefix 'ele')\n const id = btoa('ele' + crypto.randomUUID());\n const top = event.offsetY / this.zoom + frame.scrollTop;\n const left = event.offsetX / this.zoom + frame.scrollLeft;\n\n // TODO: Put these defaults somewhere sensible\n const newData: LSMutateEvent = {\n action: 'create',\n data: {\n id,\n value: '',\n formElementType: data.formElementType,\n elementType: data.elementType,\n validation: data.validation,\n substantive: false,\n top,\n left,\n hideBorder: false,\n height: data.defaultHeight,\n width: data.defaultWidth,\n pageDimensions: this.pageDimensions[this.pageNum - 1],\n fontName: 'arial',\n fontSize: 10,\n align: 'left',\n signer: this.signer,\n page: this.pageNum,\n mapTo: null,\n label: '',\n helpText: null,\n logicGroup: null,\n optional: false,\n options: null,\n logicAction: null,\n labelExtra: null,\n fieldOrder: null,\n ax: left > 0 ? left / this.pageDimensions[this.pageNum - 1].width : 0,\n ay: top > 0 ? top / this.pageDimensions[this.pageNum - 1].height : 0,\n bx: (left + data.defaultWidth) / this.pageDimensions[this.pageNum - 1].width,\n by: (top + data.defaultHeight) / this.pageDimensions[this.pageNum - 1].height,\n templateId: this._template.id,\n } as LSApiElement,\n };\n this.mutate.emit([newData]);\n\n } catch (e) {\n console.error(e);\n }\n}\n",":host {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n position: relative;\n}\n\n.ls-toolbar-numeric {\n width: 2.813rem;\n max-height: 1.125rem;\n margin: 0px;\n padding: 0px;\n}\n\n* {\n margin: 0;\n box-sizing: border-box;\n}\n\n.field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n.ls-field-properties-section {\n display: flex;\n position: relative;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.row {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n\n.multi-button-group-row {\n display: flex;\n gap: 0.5rem;\n}\n\n.ls-field-properties-section-text {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n padding: 0.25rem;\n}\n\n.ls-field-properties-section-title {\n color: var(--gray-90, #5e6066);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n}\n\n.ls-field-properties-section-description {\n overflow: hidden;\n color: var(--gray-80, #6c6e73);\n text-overflow: ellipsis;\n font-size: 0.75rem;\n font-style: normal;\n font-weight: 400;\n line-height: 0.75rem; /* 120% */\n}\n\n.input-row {\n display: flex;\n gap: 0.5rem;\n}\n\n.input-row .input-wrapper input {\n width: 9.313rem;\n max-width: 9.313rem;\n}\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 36px;\n}\n\n.input-wrapper {\n position: relative;\n width: 100%;\n}\n\n#selectorIcon {\n position: absolute;\n top: 50%;\n right: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIconDisabled {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-50, #d8d9dc);\n}\n\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\ninput,\nselect,\ntextarea {\n border: 1px solid var(--gray-40, #d8d9dc);\n box-shadow: 0 1px 0.125rem rgba(0, 0, 0, 0.05);\n padding: 0.5rem 0.75rem;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n border-radius: 0.5rem;\n color: var(--gray-100, #45484d);\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: var(--gray-60, #afb0b2);\n}\n\ninput:hover:not(:disabled),\nselect:hover:not(:disabled),\ntextarea:hover:not(:disabled) {\n border-color: var(--gray-50, #c8c9cc);\n background-color: var(--white, #fff);\n}\n\ninput:focus:not(:disabled),\nselect:focus:not(:disabled),\ntextarea:focus:not(:disabled) {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-40, #79adfc);\n border-color: var(--primary-60, #4456f6);\n background-color: var(--white, #fff);\n}\n\ninput:active:not(:disabled),\nselect:active:not(:disabled),\ntextarea:active:not(:disabled) {\n border-color: var(--primary-50, #5185ff);\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: var(--gray-10, #f7f8fa);\n color: var(--gray-50, #d8d9dc);\n box-shadow: none;\n}\n\ninput[type='checkbox'] {\n appearance: none;\n position: relative;\n height: 1rem;\n width: 1rem;\n padding: 0.25rem;\n border-radius: var(--radius-sm);\n border: 1px solid #d1d5db;\n background-color: #ffffff;\n cursor: pointer;\n}\n\ninput[type='checkbox']:checked,\ninput[type='checkbox'].indeterminate {\n background-color: var(--primary-60, #4456f6);\n border: none;\n}\n\ninput[type='checkbox']:checked::after {\n content: '';\n position: absolute;\n top: 45%;\n left: 50%;\n transform: translate(-50%, -50%) rotate(-45deg) scale(-1, 1);\n width: 0.5rem;\n height: 0.25rem;\n border-bottom: 0.125rem solid white;\n border-right: 0.125rem solid white;\n}\n\ninput[type='checkbox'].indeterminate::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 0.5rem;\n height: 0.125rem;\n background-color: white;\n}\n\ninput[type='checkbox']:checked:hover,\ninput[type='checkbox'].indeterminate:hover {\n background-color: var(--primary-70, #2134dc);\n border: none;\n}\n\ninput[type='checkbox']:hover {\n border: 1px solid #9ca3af;\n}\n\ninput[type='checkbox']:focus,\ninput[type='checkbox']:active {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-20, #c7ddff);\n background-color: #f0f4f8;\n}\n\ninput[type='checkbox']:disabled {\n background-color: #f3f4f6;\n outline: none;\n cursor: not-allowed;\n}\n\ninput[type='checkbox']:disabled:checked {\n background-color: #e5e7eb;\n border: none;\n outline: none;\n cursor: not-allowed;\n}\n\n.checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.checkbox-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.form-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: var(--primary-60, #0c7cba);\n}\n\nbutton {\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-lg);\n background-color: var(--primary-60, #4456f6);\n color: white;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.tertiaryGrey {\n border: 1px solid var(--gray-40, #d8d9dc);\n background-color: white;\n color: var(--gray-80, #787a80);\n}\n\nbutton.tertiaryGrey:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n width: 100%;\n}\n\n.button-group button {\n display: flex;\n width: 100%;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:disabled {\n background: var(--gray-10, #f7f8fa);\n cursor: not-allowed;\n color: var(--gray-50, #d8d9dc);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n","import { Component, Host, Prop, h, Event, EventEmitter, Element } from '@stencil/core';\nimport { LSApiElement, LSMutateEvent } from '../../components';\nimport { oob } from '../ls-document-viewer/editorUtils';\nimport { attachAllTooltips } from '../../utils/tooltip';\nimport { outOfBounds } from '../ls-document-viewer/mouseHandlers';\n\n@Component({\n tag: 'ls-field-distribute',\n styleUrl: 'ls-field-distribute.css',\n shadow: true,\n})\nexport class LsFieldDistribute {\n @Prop({\n mutable: true,\n })\n dataItem: LSApiElement[];\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n mutate: EventEmitter<LSMutateEvent[]>;\n\n @Element() component: HTMLElement;\n\n // Send one or more mutations up the chain\n // The source of the chain fires the mutation\n alter(diff: object) {\n console.log(diff);\n\n const diffs: LSMutateEvent[] = this.dataItem.map(c => {\n return { action: 'update', data: { ...c, ...diff } as LSApiElement };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n distributeHorizontal() {\n var spacing = this.component.shadowRoot.getElementById('ls-fix-horizontal-space') as HTMLInputElement;\n const sorted = this.dataItem.sort((a, b) => a.left - b.left);\n if (sorted.length < 3) return;\n\n\n var avgspace = 0;\n const leftmost = sorted[0].left + sorted[0].width / 2;\n const rightmost = sorted.reduce((acc, cur) => {\n return cur.left + (cur.width / 2) > acc ? cur.left + (cur.width / 2) : acc;\n }, leftmost);\n // find total width between centre first and centre last\n const totalWidth: number = rightmost - leftmost;\n\n if (spacing.value !== '') {\n avgspace = parseInt(spacing.value);\n } else {\n avgspace = Math.floor(totalWidth / (sorted.length - 1));\n }\n\n const filtered = sorted.filter((c, index) => {\n return outOfBounds({ ...c, left: (Math.floor(leftmost - (c.width / 2) + avgspace * index)) }) === false\n && index !== 0\n && index !== sorted.length - 1\n });\n\n const diffs: LSMutateEvent[] = filtered.map((c, index) => {\n\n return {\n action: 'update',\n data: {\n ...c,\n left: Math.floor(leftmost - (c.width / 2) + (avgspace * (index + 1))),\n } as LSApiElement,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n gapVertical(spacing: number) {\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n var buffer = sorted[0].top;\n\n const diffs: LSMutateEvent[] = sorted.map(c => {\n const newTop = buffer;\n buffer = buffer + c.height + spacing;\n const target = {\n ...c,\n top: newTop,\n } as LSApiElement;\n\n return {\n action: 'update',\n data: oob(target)\n ? ({\n ...c,\n left: c.pageDimensions.height - c.height - 1,\n } as LSApiElement)\n : target,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n gapHorizontal(spacing: number) {\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n var buffer = sorted[0].left;\n\n const diffs: LSMutateEvent[] = sorted.map(c => {\n const newLeft = buffer;\n buffer = buffer + c.width + spacing;\n const target = {\n ...c,\n left: newLeft,\n } as LSApiElement;\n\n console.log(target, oob(target));\n\n return {\n action: 'update',\n data: oob(target)\n ? ({\n ...c,\n left: c.pageDimensions.width - c.width - 1,\n } as LSApiElement)\n : target,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n distributeVertical() {\n var spacing = this.component.shadowRoot.getElementById('ls-fix-vertical-space') as HTMLInputElement;\n var avgspace = 0;\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n const topmost = sorted[0].top + sorted[0].height / 2;\n const bottommost = sorted.reduce((acc, cur) => {\n return cur.top + (cur.height / 2) > acc ? cur.top + (cur.height / 2) : acc;\n }, topmost);\n // find total width between centre first and centre last\n const totalHeight: number = bottommost - topmost;\n\n if (spacing.value !== '') {\n avgspace = parseInt(spacing.value);\n } else {\n avgspace = Math.floor(totalHeight / (sorted.length - 1));\n }\n\n const filtered = sorted.filter((c, index) => {\n return outOfBounds({ ...c, left: Math.floor(topmost - (c.height / 2) + avgspace * index) }) === false\n && index !== 0\n && index !== sorted.length - 1\n });\n\n const diffs: LSMutateEvent[] = filtered.map((c, index) => {\n\n return {\n action: 'update',\n data: {\n ...c,\n top: Math.floor(topmost - (c.height / 2) + (avgspace * (index + 1))),\n } as LSApiElement,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n componentDidLoad() {\n attachAllTooltips(this.component.shadowRoot);\n }\n\n render() {\n return (\n <Host>\n <div class={'ls-field-properties-section'}>\n <div class={'ls-field-properties-section-text'}>\n <p class={'ls-field-properties-section-title'}>Distribution</p>\n <p class={'ls-field-properties-section-description'}>Multi-select fields and evenly space them out</p>\n </div>\n <div class={'button-group'}>\n <button\n onClick={() => {\n this.distributeVertical();\n }}\n aria-label=\"Distribute selected fields vertically.\"\n data-tooltip=\"Distribute selected fields vertically\"\n >\n <ls-icon name=\"field-distribute-vertically\"></ls-icon>\n </button>\n <button\n onClick={() => {\n this.distributeHorizontal();\n }}\n aria-label=\"Distribute selected fields horizontally.\"\n data-tooltip=\"Distribute selected fields horizontally\"\n >\n <ls-icon name=\"field-distribute-horizontally\"></ls-icon>\n </button>\n </div>\n </div>\n <div class={'ls-field-properties-section'}>\n <div class={'ls-field-properties-section-text'}>\n <p class={'ls-field-properties-section-title'}>Gap</p>\n <p class={'ls-field-properties-section-description'}>Define the exact gap between multi-select fields.</p>\n </div>\n <div class={'input-row'}>\n <div class={'input-wrapper'} data-tooltip=\"Set vertical gap between selected fields\">\n <ls-icon id=\"selectLeadingIcon\" name=\"field-distribute-vertically\"></ls-icon>\n <input\n type=\"number\"\n class={'has-leading-icon'}\n id=\"ls-fix-vertical-space\"\n onChange={e => {\n this.gapVertical(parseInt((e.target as HTMLInputElement).value));\n }}\n min={0}\n max={9999}\n value={''}\n size={4}\n />\n </div>\n <div class={'input-wrapper'} data-tooltip=\"Set horizontal gap between selected fields\">\n <ls-icon id=\"selectLeadingIcon\" name=\"field-distribute-horizontally\"></ls-icon>\n <input\n type=\"number\"\n class={'has-leading-icon'}\n id=\"ls-fix-horizontal-space\"\n onChange={e => {\n this.gapHorizontal(parseInt((e.target as HTMLInputElement).value));\n }}\n min={0}\n max={9999}\n value={''}\n size={4}\n />\n </div>\n </div>\n </div>\n <ls-tooltip id=\"ls-tooltip-master\" />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-BFG8JpzV.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-document-viewer/mouseHandlers.ts","src/components/ls-field-distribute/ls-field-distribute.css?tag=ls-field-distribute&encapsulation=shadow","src/components/ls-field-distribute/ls-field-distribute.tsx"],"sourcesContent":["import { LSApiElement } from '../../types/LSApiElement';\nimport { LSMutateEvent } from '../../types/LSMutateEvent';\nimport { findDimensions, findIn, recalculateCoordinates } from './editorCalculator';\nimport { IToolboxField } from '../interfaces/IToolboxField';\n\nlet mousetimer = null;\n\nexport function debounce(data, delay) {\n if (mousetimer) clearTimeout(mousetimer);\n\n mousetimer = setTimeout(() => {\n this.mutate.emit([data]);\n }, delay);\n}\n\nexport function mouseDown(e) {\n if (e.offsetX < 0 || e.offsetY < 0) return;\n // console.log('mousedown', e);\n\n // Find if this was\n // - a hit on a field edge RESIZE\n // - a hit on the middle of a field MOVE\n // - a hit on the background document SELECTMULTIPLE with a box\n this.hitField = null;\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');\n\n fields.forEach(f => {\n const { left, top, height, width, bottom, right } = f.getBoundingClientRect();\n const fdims = { left: f.offsetLeft, top: f.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n // west edge\n if (Math.abs(e.clientX - left) < 5 && e.clientY >= top && e.clientY <= bottom) {\n this.edgeSide = 'w';\n this.hitField = f;\n // right / east edge\n } else if (Math.abs(e.clientX - right) < 5 && e.clientY >= top && e.clientY <= bottom) {\n this.edgeSide = 'e';\n this.hitField = f;\n // north edge\n } else if (Math.abs(e.clientY - top) < 5 && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = 'n';\n this.hitField = f;\n // south edge\n } else if (Math.abs(e.clientY - bottom) < 5 && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = 's';\n this.hitField = f;\n } else if (e.clientY <= bottom && e.clientY >= top && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = null;\n this.hitField = f;\n }\n });\n\n if (this.hitField && e.shiftKey === false) {\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // mouse down on a field, select it and note the start location\n if (this.hitField.selected === false) {\n // unselect all other fields\n fields.forEach(fu => {\n fu.selected = false;\n });\n this.selected = [this.hitField];\n this.selectFields.emit([this.hitField.dataItem]);\n }\n\n const { height, width } = this.hitField.getBoundingClientRect();\n const fdims = { left: this.hitField.offsetLeft, top: this.hitField.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n\n this.startLocations = this.selected.map(f => {\n const { height, width } = f.getBoundingClientRect();\n const beHtml = f as HTMLElement;\n return { top: beHtml.offsetTop, left: beHtml.offsetLeft, height, width };\n });\n this.selectionBox = null;\n } else if (this.hitField && e.shiftKey === true) {\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // mouse down on a field, select it and note the start location\n if (this.hitField.selected === false) {\n // unselect all other fields\n fields.forEach(fu => {\n fu.selected = false;\n });\n this.selected = [...this.selected, this.hitField];\n this.selectFields.emit([...this.selected.map(si => si.dataItem), this.hitField.dataItem]);\n }\n\n const { height, width } = this.hitField.getBoundingClientRect();\n const fdims = { left: this.hitField.offsetLeft, top: this.hitField.offsetTop, height, width, x: e.screenX, y: e.screenY };\n this.startMouse = fdims;\n\n this.startLocations = this.selected.map(f => {\n const { height, width } = f.getBoundingClientRect();\n const beHtml = f as HTMLElement;\n return { top: beHtml.offsetTop, left: beHtml.offsetLeft, height, width };\n });\n this.selectionBox = null;\n } else {\n // move down on empty space, start a selection box\n this.startLocations = null;\n this.startMouse = null;\n this.selectionBox = { x: e.clientX, y: e.clientY };\n // console.log('empty space reset selected', this.selectionBox);\n this.unselect();\n\n this.selectFields.emit([]);\n this.selected = [];\n this.component.style.cursor = 'crosshair';\n }\n}\n\nexport function outOfBounds(futureField) {\n return (\n futureField.height <= 5 ||\n futureField.left < 0 ||\n futureField.top < 0 ||\n futureField.left + futureField.width >= futureField.pageDimensions.width ||\n futureField.top + futureField.height >= futureField.pageDimensions.height\n );\n}\nexport function mouseMove(event) {\n event.preventDefault();\n\n // We have the mouse held down on a field edge to resize it.\n if (this.hitField && this.edgeSide && this.startMouse && event.buttons === 1) {\n const movedX = event.screenX - this.startMouse.x;\n const movedY = event.screenY - this.startMouse.y;\n var width = this.hitField.dataItem.width;\n var height = this.hitField.dataItem.height;\n var scale = this.hitField.dataItem.formElementType === 'signature' && this._template.fixSignatureScale;\n\n switch (this.edgeSide) {\n case 'n':\n if (outOfBounds({ ...this.hitField.dataItem, top: (this.startMouse.top + movedY) / this.zoom, height: (this.startMouse.height - movedY) / this.zoom })) break;\n this.hitField.style.top = this.startMouse.top + movedY + 'px';\n this.hitField.style.height = this.startMouse.height - movedY + 'px';\n\n if (scale) {\n width = (this.startMouse.height - movedY) * 3.8;\n this.hitField.style.width = width + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, top: this.startMouse.top + movedY, height: this.startMouse.height - movedY, width };\n break;\n case 's':\n if (outOfBounds({ ...this.hitField.dataItem, height: (this.startMouse.height + movedY) / this.zoom })) break;\n\n this.hitField.style.height = this.startMouse.height + movedY + 'px';\n if (scale) {\n width = (this.startMouse.height + movedY) * 3.8;\n this.hitField.style.width = width + 'px';\n }\n\n this.hitField.dataItem = { ...this.hitField.dataItem, height: this.startMouse.height + movedY, width };\n break;\n case 'e':\n if (outOfBounds({ ...this.hitField.dataItem, width: (this.startMouse.width + movedX) / this.zoom })) break;\n\n this.hitField.style.width = this.startMouse.width + movedX + 'px';\n if (scale) {\n height = Math.round((this.startMouse.width + movedX) / 3.8);\n this.hitField.style.height = height + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, width: (this.startMouse.width + movedX) / this.zoom, height };\n\n break;\n case 'w':\n if (outOfBounds({ ...this.hitField.dataItem, left: (this.startMouse.left + movedX) / this.zoom, width: (this.startMouse.width - movedX) / this.zoom })) break;\n this.hitField.style.left = this.startMouse.left + movedX + 'px';\n this.hitField.style.width = this.startMouse.width - movedX + 'px';\n\n if (scale) {\n height = Math.round((this.startMouse.width - movedX) / 3.8);\n this.hitField.style.height = height + 'px';\n }\n this.hitField.dataItem = { ...this.hitField.dataItem, left: this.startMouse.left + movedX, width: this.startMouse.width - movedX, height };\n break;\n }\n\n debounce.bind(this)({ action: 'update', data: recalculateCoordinates(this.hitField.dataItem) }, 700);\n } else if (this.selectionBox && event.buttons === 1) {\n this.isBoxing = true;\n // draw the multiple selection box\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n var leftOffset = frame.getBoundingClientRect().left;\n var topOffset = frame.getBoundingClientRect().top;\n\n const movedX = event.clientX - this.selectionBox.x;\n const movedY = event.clientY - this.selectionBox.y;\n\n // allow for the frame to be scrolled\n box.style.visibility = 'visible';\n box.style.left = (this.selectionBox.x > event.clientX ? event.clientX : this.selectionBox.x) - leftOffset + frame.scrollLeft + 'px';\n box.style.top = (this.selectionBox.y > event.clientY ? event.clientY : this.selectionBox.y) - topOffset + frame.scrollTop + 'px';\n box.style.width = Math.abs(movedX) + 'px';\n box.style.height = Math.abs(movedY) + 'px';\n\n // Move one or more selected items\n } else if (this.startLocations && !this.edgeSide && this.startMouse && event.buttons === 1) {\n this.isMoving = true;\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n box.style.visibility = 'hidden';\n\n // Move one or more selected items\n const movedX = event.screenX - this.startMouse.x;\n const movedY = event.screenY - this.startMouse.y;\n if (this.selected?.length) {\n for (let i = 0; i < this.selected.length; i++) {\n if (\n this.startLocations[i].left + movedX >= 0 &&\n this.startLocations[i].top + movedY >= 0 &&\n this.startLocations[i].left + movedX <= (this.pageDimensions[this.pageNum - 1].width - this.selected[i].dataItem.width) * this.zoom &&\n this.startLocations[i].top + movedY <= (this.pageDimensions[this.pageNum - 1].height - this.selected[i].dataItem.height) * this.zoom\n ) {\n this.selected[i].style.left = Math.round(this.startLocations[i].left + movedX) + 'px';\n this.selected[i].style.top = Math.round(this.startLocations[i].top + movedY) + 'px';\n }\n }\n }\n }\n}\n\nexport function mouseUp(event) {\n this.edgeSide = null;\n this.startMouse = null;\n this.component.style.cursor = 'auto';\n\n // console.log('mouse up');\n // find what was inside the selection box emit the select event and change their style\n if (this.selectionBox && this.isBoxing) {\n this.isBoxing = false;\n var box = this.component.shadowRoot.getElementById('ls-box-selector') as HTMLElement;\n var fields = this.component.shadowRoot.querySelectorAll('ls-editor-field');\n box.style.visibility = 'hidden';\n this.selectionBox = null;\n const found = findIn(fields, box, true, event.shiftKey);\n this.selected = Array.from(found);\n this.selectFields.emit(found.map(fx => fx.dataItem));\n }\n}\n\nexport function mouseClick(e) {\n // check we're not moving fields\n if (this.isMoving) {\n // End dragging fields\n this.isMoving = false;\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n const divFrame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLDivElement;\n const selected = Array.from(fields).filter(fx => fx.selected);\n \n this.mutate.emit(\n Array.from(fields)\n .filter(fx => fx.selected)\n .map(fx => {\n // Calculate new positions and update the dataItem on the control\n const delta = {\n ...fx.dataItem,\n ...findDimensions(divFrame, fx, fx.dataItem.pageDimensions.height, fx.dataItem.pageDimensions.width, this.zoom),\n };\n // TODO:: out of bounds handler (UNDO)\n // update the data in the html element\n fx.dataItem = delta;\n // send an update event to be processed\n return { action: 'update', data: delta };\n }),\n );\n this.selectFields.emit(selected.map(fx => fx.dataItem));\n } else {\n // reset the selection box location\n this.selectionBox = { x: e.clientX, y: e.clientY };\n\n const fields = this.component.shadowRoot.querySelectorAll('ls-editor-field') as HTMLLsEditorFieldElement[];\n fields.forEach(f => {\n const { left, top, bottom, right } = f.getBoundingClientRect();\n if (e.clientY <= bottom && e.clientY >= top && e.clientX >= left && e.clientX <= right) {\n this.edgeSide = null;\n this.hitField = f;\n // check if this is a shift click to add to the current selection\n if (!e.shiftKey) fields.forEach(ft => (ft.selected = false));\n f.selected = true;\n }\n });\n\n this.selected = Array.from(fields).filter(fx => fx.selected);\n this.selectFields.emit(this.selected.map(fx => fx.dataItem));\n }\n}\n\nexport function mouseDrop(event) {\n event.preventDefault();\n try {\n const data: IToolboxField = JSON.parse(event.dataTransfer.getData('application/json')) as any as IToolboxField;\n // Unselect all current selected items\n this.component.shadowRoot.querySelectorAll('ls-editor-field').forEach(f => (f.selected = false));\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n // Make a new API compatible id for a template element (prefix 'ele')\n const id = btoa('ele' + crypto.randomUUID());\n const top = event.offsetY / this.zoom + frame.scrollTop;\n const left = event.offsetX / this.zoom + frame.scrollLeft;\n\n // TODO: Put these defaults somewhere sensible\n const newData: LSMutateEvent = {\n action: 'create',\n data: {\n id,\n value: '',\n formElementType: data.formElementType,\n elementType: data.elementType,\n validation: data.validation,\n substantive: false,\n top,\n left,\n hideBorder: false,\n height: data.defaultHeight,\n width: data.defaultWidth,\n pageDimensions: this.pageDimensions[this.pageNum - 1],\n fontName: this.fontFamily,\n fontSize: this.fontSize,\n align: 'left',\n signer: this.signer,\n page: this.pageNum,\n mapTo: null,\n label: '',\n helpText: null,\n logicGroup: null,\n optional: false,\n options: null,\n logicAction: null,\n labelExtra: null,\n fieldOrder: null,\n ax: left > 0 ? left / this.pageDimensions[this.pageNum - 1].width : 0,\n ay: top > 0 ? top / this.pageDimensions[this.pageNum - 1].height : 0,\n bx: (left + data.defaultWidth) / this.pageDimensions[this.pageNum - 1].width,\n by: (top + data.defaultHeight) / this.pageDimensions[this.pageNum - 1].height,\n templateId: this._template.id,\n } as LSApiElement,\n };\n\n this.mutate.emit([newData]);\n } catch (e) {\n console.error(e);\n }\n}\n\nexport function mouseDoubleClick(event) {\n console.log('double click');\n try {\n const data: IToolboxField = this.fieldTypeSelected as IToolboxField;\n\n // Unselect all current selected items\n this.component.shadowRoot.querySelectorAll('ls-editor-field').forEach(f => (f.selected = false));\n var frame = this.component.shadowRoot.getElementById('ls-document-frame') as HTMLElement;\n // Make a new API compatible id for a template element (prefix 'ele')\n const id = btoa('ele' + crypto.randomUUID());\n const top = event.offsetY / this.zoom + frame.scrollTop;\n const left = event.offsetX / this.zoom + frame.scrollLeft;\n\n // TODO: Put these defaults somewhere sensible\n const newData: LSMutateEvent = {\n action: 'create',\n data: {\n id,\n value: '',\n formElementType: data.formElementType,\n elementType: data.elementType,\n validation: data.validation,\n substantive: false,\n top,\n left,\n hideBorder: false,\n height: data.defaultHeight,\n width: data.defaultWidth,\n pageDimensions: this.pageDimensions[this.pageNum - 1],\n fontName: 'arial',\n fontSize: 10,\n align: 'left',\n signer: this.signer,\n page: this.pageNum,\n mapTo: null,\n label: '',\n helpText: null,\n logicGroup: null,\n optional: false,\n options: null,\n logicAction: null,\n labelExtra: null,\n fieldOrder: null,\n ax: left > 0 ? left / this.pageDimensions[this.pageNum - 1].width : 0,\n ay: top > 0 ? top / this.pageDimensions[this.pageNum - 1].height : 0,\n bx: (left + data.defaultWidth) / this.pageDimensions[this.pageNum - 1].width,\n by: (top + data.defaultHeight) / this.pageDimensions[this.pageNum - 1].height,\n templateId: this._template.id,\n } as LSApiElement,\n };\n this.mutate.emit([newData]);\n\n } catch (e) {\n console.error(e);\n }\n}\n",":host {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n position: relative;\n}\n\n.ls-toolbar-numeric {\n width: 2.813rem;\n max-height: 1.125rem;\n margin: 0px;\n padding: 0px;\n}\n\n* {\n margin: 0;\n box-sizing: border-box;\n}\n\n.field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n.ls-field-properties-section {\n display: flex;\n position: relative;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.row {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n\n.multi-button-group-row {\n display: flex;\n gap: 0.5rem;\n}\n\n.ls-field-properties-section-text {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n padding: 0.25rem;\n}\n\n.ls-field-properties-section-title {\n color: var(--gray-90, #5e6066);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n}\n\n.ls-field-properties-section-description {\n overflow: hidden;\n color: var(--gray-80, #6c6e73);\n text-overflow: ellipsis;\n font-size: 0.75rem;\n font-style: normal;\n font-weight: 400;\n line-height: 0.75rem; /* 120% */\n}\n\n.input-row {\n display: flex;\n gap: 0.5rem;\n}\n\n.input-row .input-wrapper input {\n width: 9.313rem;\n max-width: 9.313rem;\n}\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 36px;\n}\n\n.input-wrapper {\n position: relative;\n width: 100%;\n}\n\n#selectorIcon {\n position: absolute;\n top: 50%;\n right: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIconDisabled {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-50, #d8d9dc);\n}\n\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\ninput,\nselect,\ntextarea {\n border: 1px solid var(--gray-40, #d8d9dc);\n box-shadow: 0 1px 0.125rem rgba(0, 0, 0, 0.05);\n padding: 0.5rem 0.75rem;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n border-radius: 0.5rem;\n color: var(--gray-100, #45484d);\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: var(--gray-60, #afb0b2);\n}\n\ninput:hover:not(:disabled),\nselect:hover:not(:disabled),\ntextarea:hover:not(:disabled) {\n border-color: var(--gray-50, #c8c9cc);\n background-color: var(--white, #fff);\n}\n\ninput:focus:not(:disabled),\nselect:focus:not(:disabled),\ntextarea:focus:not(:disabled) {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-40, #79adfc);\n border-color: var(--primary-60, #4456f6);\n background-color: var(--white, #fff);\n}\n\ninput:active:not(:disabled),\nselect:active:not(:disabled),\ntextarea:active:not(:disabled) {\n border-color: var(--primary-50, #5185ff);\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: var(--gray-10, #f7f8fa);\n color: var(--gray-50, #d8d9dc);\n box-shadow: none;\n}\n\ninput[type='checkbox'] {\n appearance: none;\n position: relative;\n height: 1rem;\n width: 1rem;\n padding: 0.25rem;\n border-radius: var(--radius-sm);\n border: 1px solid #d1d5db;\n background-color: #ffffff;\n cursor: pointer;\n}\n\ninput[type='checkbox']:checked,\ninput[type='checkbox'].indeterminate {\n background-color: var(--primary-60, #4456f6);\n border: none;\n}\n\ninput[type='checkbox']:checked::after {\n content: '';\n position: absolute;\n top: 45%;\n left: 50%;\n transform: translate(-50%, -50%) rotate(-45deg) scale(-1, 1);\n width: 0.5rem;\n height: 0.25rem;\n border-bottom: 0.125rem solid white;\n border-right: 0.125rem solid white;\n}\n\ninput[type='checkbox'].indeterminate::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 0.5rem;\n height: 0.125rem;\n background-color: white;\n}\n\ninput[type='checkbox']:checked:hover,\ninput[type='checkbox'].indeterminate:hover {\n background-color: var(--primary-70, #2134dc);\n border: none;\n}\n\ninput[type='checkbox']:hover {\n border: 1px solid #9ca3af;\n}\n\ninput[type='checkbox']:focus,\ninput[type='checkbox']:active {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-20, #c7ddff);\n background-color: #f0f4f8;\n}\n\ninput[type='checkbox']:disabled {\n background-color: #f3f4f6;\n outline: none;\n cursor: not-allowed;\n}\n\ninput[type='checkbox']:disabled:checked {\n background-color: #e5e7eb;\n border: none;\n outline: none;\n cursor: not-allowed;\n}\n\n.checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.checkbox-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.form-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: var(--primary-60, #0c7cba);\n}\n\nbutton {\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-lg);\n background-color: var(--primary-60, #4456f6);\n color: white;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.tertiaryGrey {\n border: 1px solid var(--gray-40, #d8d9dc);\n background-color: white;\n color: var(--gray-80, #787a80);\n}\n\nbutton.tertiaryGrey:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n width: 100%;\n}\n\n.button-group button {\n display: flex;\n width: 100%;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:disabled {\n background: var(--gray-10, #f7f8fa);\n cursor: not-allowed;\n color: var(--gray-50, #d8d9dc);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n","import { Component, Host, Prop, h, Event, EventEmitter, Element } from '@stencil/core';\nimport { LSApiElement, LSMutateEvent } from '../../components';\nimport { oob } from '../ls-document-viewer/editorUtils';\nimport { attachAllTooltips } from '../../utils/tooltip';\nimport { outOfBounds } from '../ls-document-viewer/mouseHandlers';\n\n@Component({\n tag: 'ls-field-distribute',\n styleUrl: 'ls-field-distribute.css',\n shadow: true,\n})\nexport class LsFieldDistribute {\n @Prop({\n mutable: true,\n })\n dataItem: LSApiElement[];\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n mutate: EventEmitter<LSMutateEvent[]>;\n\n @Element() component: HTMLElement;\n\n // Send one or more mutations up the chain\n // The source of the chain fires the mutation\n alter(diff: object) {\n console.log(diff);\n\n const diffs: LSMutateEvent[] = this.dataItem.map(c => {\n return { action: 'update', data: { ...c, ...diff } as LSApiElement };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n distributeHorizontal() {\n var spacing = this.component.shadowRoot.getElementById('ls-fix-horizontal-space') as HTMLInputElement;\n const sorted = this.dataItem.sort((a, b) => a.left - b.left);\n if (sorted.length < 3) return;\n\n\n var avgspace = 0;\n const leftmost = sorted[0].left + sorted[0].width / 2;\n const rightmost = sorted.reduce((acc, cur) => {\n return cur.left + (cur.width / 2) > acc ? cur.left + (cur.width / 2) : acc;\n }, leftmost);\n // find total width between centre first and centre last\n const totalWidth: number = rightmost - leftmost;\n\n if (spacing.value !== '') {\n avgspace = parseInt(spacing.value);\n } else {\n avgspace = Math.floor(totalWidth / (sorted.length - 1));\n }\n\n const filtered = sorted.filter((c, index) => {\n return outOfBounds({ ...c, left: (Math.floor(leftmost - (c.width / 2) + avgspace * index)) }) === false\n && index !== 0\n && index !== sorted.length - 1\n });\n\n const diffs: LSMutateEvent[] = filtered.map((c, index) => {\n\n return {\n action: 'update',\n data: {\n ...c,\n left: Math.floor(leftmost - (c.width / 2) + (avgspace * (index + 1))),\n } as LSApiElement,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n gapVertical(spacing: number) {\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n var buffer = sorted[0].top;\n\n const diffs: LSMutateEvent[] = sorted.map(c => {\n const newTop = buffer;\n buffer = buffer + c.height + spacing;\n const target = {\n ...c,\n top: newTop,\n } as LSApiElement;\n\n return {\n action: 'update',\n data: oob(target)\n ? ({\n ...c,\n left: c.pageDimensions.height - c.height - 1,\n } as LSApiElement)\n : target,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n gapHorizontal(spacing: number) {\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n var buffer = sorted[0].left;\n\n const diffs: LSMutateEvent[] = sorted.map(c => {\n const newLeft = buffer;\n buffer = buffer + c.width + spacing;\n const target = {\n ...c,\n left: newLeft,\n } as LSApiElement;\n\n console.log(target, oob(target));\n\n return {\n action: 'update',\n data: oob(target)\n ? ({\n ...c,\n left: c.pageDimensions.width - c.width - 1,\n } as LSApiElement)\n : target,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n distributeVertical() {\n var spacing = this.component.shadowRoot.getElementById('ls-fix-vertical-space') as HTMLInputElement;\n var avgspace = 0;\n const sorted = this.dataItem.sort((a, b) => a.top - b.top);\n\n const topmost = sorted[0].top + sorted[0].height / 2;\n const bottommost = sorted.reduce((acc, cur) => {\n return cur.top + (cur.height / 2) > acc ? cur.top + (cur.height / 2) : acc;\n }, topmost);\n // find total width between centre first and centre last\n const totalHeight: number = bottommost - topmost;\n\n if (spacing.value !== '') {\n avgspace = parseInt(spacing.value);\n } else {\n avgspace = Math.floor(totalHeight / (sorted.length - 1));\n }\n\n const filtered = sorted.filter((c, index) => {\n return outOfBounds({ ...c, left: Math.floor(topmost - (c.height / 2) + avgspace * index) }) === false\n && index !== 0\n && index !== sorted.length - 1\n });\n\n const diffs: LSMutateEvent[] = filtered.map((c, index) => {\n\n return {\n action: 'update',\n data: {\n ...c,\n top: Math.floor(topmost - (c.height / 2) + (avgspace * (index + 1))),\n } as LSApiElement,\n };\n });\n\n this.dataItem = diffs.map(d => d.data as LSApiElement);\n this.mutate.emit(diffs);\n }\n\n componentDidLoad() {\n attachAllTooltips(this.component.shadowRoot);\n }\n\n render() {\n return (\n <Host>\n <div class={'ls-field-properties-section'}>\n <div class={'ls-field-properties-section-text'}>\n <p class={'ls-field-properties-section-title'}>Distribution</p>\n <p class={'ls-field-properties-section-description'}>Multi-select fields and evenly space them out</p>\n </div>\n <div class={'button-group'}>\n <button\n onClick={() => {\n this.distributeVertical();\n }}\n aria-label=\"Distribute selected fields vertically.\"\n data-tooltip=\"Distribute selected fields vertically\"\n >\n <ls-icon name=\"field-distribute-vertically\"></ls-icon>\n </button>\n <button\n onClick={() => {\n this.distributeHorizontal();\n }}\n aria-label=\"Distribute selected fields horizontally.\"\n data-tooltip=\"Distribute selected fields horizontally\"\n >\n <ls-icon name=\"field-distribute-horizontally\"></ls-icon>\n </button>\n </div>\n </div>\n <div class={'ls-field-properties-section'}>\n <div class={'ls-field-properties-section-text'}>\n <p class={'ls-field-properties-section-title'}>Gap</p>\n <p class={'ls-field-properties-section-description'}>Define the exact gap between multi-select fields.</p>\n </div>\n <div class={'input-row'}>\n <div class={'input-wrapper'} data-tooltip=\"Set vertical gap between selected fields\">\n <ls-icon id=\"selectLeadingIcon\" name=\"field-distribute-vertically\"></ls-icon>\n <input\n type=\"number\"\n class={'has-leading-icon'}\n id=\"ls-fix-vertical-space\"\n onChange={e => {\n this.gapVertical(parseInt((e.target as HTMLInputElement).value));\n }}\n min={0}\n max={9999}\n value={''}\n size={4}\n />\n </div>\n <div class={'input-wrapper'} data-tooltip=\"Set horizontal gap between selected fields\">\n <ls-icon id=\"selectLeadingIcon\" name=\"field-distribute-horizontally\"></ls-icon>\n <input\n type=\"number\"\n class={'has-leading-icon'}\n id=\"ls-fix-horizontal-space\"\n onChange={e => {\n this.gapHorizontal(parseInt((e.target as HTMLInputElement).value));\n }}\n min={0}\n max={9999}\n value={''}\n size={4}\n />\n </div>\n </div>\n </div>\n <ls-tooltip id=\"ls-tooltip-master\" />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { t as transformTag, p as proxyCustomElement, H, h, c as Host } from './p-BhZ5Udbm.js';
2
- import { d as defineCustomElement$5, j as debounce } from './p-C6yjqlFz.js';
2
+ import { d as defineCustomElement$5, j as debounce } from './p-CseWUQoS.js';
3
3
  import { a as attachAllTooltips } from './p-Cb8nDMs-.js';
4
4
  import { d as defineCustomElement$4 } from './p-6JLudxC8.js';
5
5
  import { d as defineCustomElement$3 } from './p-D95fiMAP.js';
@@ -109,6 +109,6 @@ function defineCustomElement() {
109
109
  defineCustomElement();
110
110
 
111
111
  export { LsStatusbar as L, defineCustomElement as d };
112
- //# sourceMappingURL=p-DuBVnCOV.js.map
112
+ //# sourceMappingURL=p-BiM_YBSZ.js.map
113
113
 
114
- //# sourceMappingURL=p-DuBVnCOV.js.map
114
+ //# sourceMappingURL=p-BiM_YBSZ.js.map
@@ -1 +1 @@
1
- {"file":"p-DuBVnCOV.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-statusbar/ls-statusbar.css?tag=ls-statusbar&encapsulation=shadow","src/components/ls-statusbar/ls-statusbar.tsx"],"sourcesContent":[":host {\n position: fixed;\n z-index: 1000;\n right: 1rem;\n bottom: 1rem;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n height: 2.25rem;\n overflow: visible;\n}\n\n.controls-bar {\n display: flex;\n flex-direction: row;\n background-color: white;\n border: 1px solid var(--gray-30, #e0e2e5);\n box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);\n border-radius: 1rem;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n.status-bar-section {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.75rem;\n padding: 0.5rem 0.75rem;\n}\n\n.controls-bar > :not(:nth-child(1)) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n\nbutton {\n border: 0;\n}\n\nbutton:hover {\n color: var(--gray-100, #45484d);\n border-radius: 0.5rem;\n}\n\nbutton:disabled {\n color: var(--gray-40, #c1c4c8);\n cursor: not-allowed;\n}\n\ninput[type=\"range\"] {\n -webkit-appearance: none; /* Remove default styling */\n width: 100%;\n height: 0.5rem;\n background: var(--gray-20, #EDEFF2);\n border-radius: 0.25rem;\n outline: none;\n}\n\n/* Chrome, Safari, Edge */\ninput[type=\"range\"]::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 0.5rem;\n height: 0.5rem;\n background: var(--gray-70, #4a4c51); /* Custom thumb color */\n border-radius: 50%;\n cursor: pointer;\n}\n\n/* Firefox */\ninput[type=\"range\"]::-moz-range-thumb {\n width: 0.5rem;\n height: 0.5rem;\n background: var(--gray-70, #4a4c51); /* Custom thumb color */\n border: none;\n border-radius: 50%;\n cursor: pointer;\n}\n\n/* Track color for Firefox */\ninput[type=\"range\"]::-moz-range-track {\n background: var(--gray-20, #EDEFF2);\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n/* Track color for Chrome, Safari, Edge */\ninput[type=\"range\"]::-webkit-slider-runnable-track {\n background: var(--gray-20, #EDEFF2);\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n}\n\n.input-wrapper {\n position: relative;\n width: fit-content;\n}\n\n#selectorIcon {\n position: absolute;\n top: 50%;\n right: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\nbutton {\n all: unset;\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--gray-80, #6c6e73);\n text-transform: capitalize;\n}\n\nbutton.tertiaryGrey:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n}\n\n.button-group button {\n display: flex;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n min-height: unset;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n\n","import { Component, Host, Prop, h, Element } from '@stencil/core';\nimport { LsDocumentViewer } from '../ls-document-viewer/ls-document-viewer';\nimport { debounce } from '../ls-document-viewer/editorUtils';\nimport { attachAllTooltips } from '../../utils/tooltip';\n\n@Component({\n tag: 'ls-statusbar',\n styleUrl: 'ls-statusbar.css',\n shadow: true,\n})\nexport class LsStatusbar {\n @Element() component: HTMLElement;\n /**\n * The zoom or scale level 100 === 100%.\n * {number}\n */\n @Prop({ mutable: true }) zoom: number;\n @Prop({ mutable: true }) page: number;\n @Prop({ mutable: true }) pageCount: number;\n\n /**\n * The parent editor control.\n * {LsDocumentViewer}\n */\n @Prop() editor: LsDocumentViewer;\n\n setZoom(value: number) {\n this.editor.setZoom(value);\n this.zoom = value;\n }\n\n handleZoomInput() {\n const zoomInput = this.component.shadowRoot.getElementById('zoomRange') as HTMLInputElement;\n\n debounce(this.setZoom(parseInt(zoomInput.value) / 100), 700);\n }\n\n fitWidth() {\n const leftBox = this.editor.component.shadowRoot.getElementById('ls-left-box');\n const midBox = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const space = midBox.clientWidth - leftBox.clientWidth - 60; // 60 for padding/margin\n\n \n console.log('Space width:', space, 'Page width:', this.editor.pageDimensions[0].width);\n const scale: number = space / this.editor.pageDimensions[0].width;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n fitHeight() {\n const space = window.screen.height - 40; // 40 for padding/margin\n const scale: number = space / this.editor.pageDimensions[0].height;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n componentDidLoad() {\n attachAllTooltips(this.component.shadowRoot);\n this.zoom = this.editor.zoom;\n }\n\n render() {\n return (\n <Host>\n <div class={'controls-bar'}>\n {/* <button onClick={() => this.editor.displayTable = true}><ls-icon name=\"table\" /></button>\n <button onClick={() => this.editor.displayTable = false}><ls-icon name=\"template\" /></button> */}\n <div class={'status-bar-section'}>\n <button onClick={() => this.setZoom(this.editor.zoom * 0.8)} id=\"zoom-out-btn\" data-tooltip=\"Zoom Out\">\n <ls-icon name=\"zoom-out\" />\n </button>\n <div>\n <input type=\"range\" min=\"1\" max=\"300\" value={this.zoom * 100} class=\"slider\" id=\"zoomRange\" onInput={() => this.handleZoomInput()} />\n </div>\n <button onClick={() => this.setZoom(this.editor.zoom / 0.8)} id=\"zoom-in-btn\" data-tooltip=\"Zoom In\">\n <ls-icon name=\"zoom-in\" />\n </button>\n </div>\n <div class={'status-bar-section'}>\n <button onClick={() => this.fitWidth()} id=\"fit-width-btn\" data-tooltip=\"Fit Width\">\n <ls-icon name=\"fit-width\" />\n </button>\n <button onClick={() => this.fitHeight()} id=\"fit-height-btn\" data-tooltip=\"Fit Height\">\n <ls-icon name=\"fit-height\" />\n </button>\n </div>\n <div class={'status-bar-section'} style={this.pageCount === 1 && { display: 'none' }}>\n <button\n onClick={() => {\n this.editor.pagePrev();\n }}\n disabled={this.page === 1}\n id=\"prev-page-btn\"\n data-tooltip={this.page === 1 ? 'No Previous Page' : 'Previous Page'}\n >\n <ls-icon name=\"chevron-left\" />\n </button>\n <p>\n {this.page} / {this.pageCount}\n </p>\n <button\n onClick={() => {\n this.editor.pageNext();\n }}\n disabled={this.page === this.pageCount}\n id=\"next-page-btn\"\n data-tooltip={this.page === this.pageCount ? 'No Next Page' : 'Next Page'}\n >\n <ls-icon name=\"chevron-right\" />\n </button>\n </div>\n </div>\n <ls-helper-bar />\n <ls-tooltip id=\"ls-tooltip-master\" />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-BiM_YBSZ.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-statusbar/ls-statusbar.css?tag=ls-statusbar&encapsulation=shadow","src/components/ls-statusbar/ls-statusbar.tsx"],"sourcesContent":[":host {\n position: fixed;\n z-index: 1000;\n right: 1rem;\n bottom: 1rem;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n height: 2.25rem;\n overflow: visible;\n}\n\n.controls-bar {\n display: flex;\n flex-direction: row;\n background-color: white;\n border: 1px solid var(--gray-30, #e0e2e5);\n box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);\n border-radius: 1rem;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n.status-bar-section {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.75rem;\n padding: 0.5rem 0.75rem;\n}\n\n.controls-bar > :not(:nth-child(1)) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n\nbutton {\n border: 0;\n}\n\nbutton:hover {\n color: var(--gray-100, #45484d);\n border-radius: 0.5rem;\n}\n\nbutton:disabled {\n color: var(--gray-40, #c1c4c8);\n cursor: not-allowed;\n}\n\ninput[type=\"range\"] {\n -webkit-appearance: none; /* Remove default styling */\n width: 100%;\n height: 0.5rem;\n background: var(--gray-20, #EDEFF2);\n border-radius: 0.25rem;\n outline: none;\n}\n\n/* Chrome, Safari, Edge */\ninput[type=\"range\"]::-webkit-slider-thumb {\n -webkit-appearance: none;\n appearance: none;\n width: 0.5rem;\n height: 0.5rem;\n background: var(--gray-70, #4a4c51); /* Custom thumb color */\n border-radius: 50%;\n cursor: pointer;\n}\n\n/* Firefox */\ninput[type=\"range\"]::-moz-range-thumb {\n width: 0.5rem;\n height: 0.5rem;\n background: var(--gray-70, #4a4c51); /* Custom thumb color */\n border: none;\n border-radius: 50%;\n cursor: pointer;\n}\n\n/* Track color for Firefox */\ninput[type=\"range\"]::-moz-range-track {\n background: var(--gray-20, #EDEFF2);\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n/* Track color for Chrome, Safari, Edge */\ninput[type=\"range\"]::-webkit-slider-runnable-track {\n background: var(--gray-20, #EDEFF2);\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n}\n\n.input-wrapper {\n position: relative;\n width: fit-content;\n}\n\n#selectorIcon {\n position: absolute;\n top: 50%;\n right: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: var(--gray-80, #6c6e73);\n}\n\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\nbutton {\n all: unset;\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n color: var(--gray-80, #6c6e73);\n text-transform: capitalize;\n}\n\nbutton.tertiaryGrey:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n}\n\n.button-group button {\n display: flex;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n min-height: unset;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n\n","import { Component, Host, Prop, h, Element } from '@stencil/core';\nimport { LsDocumentViewer } from '../ls-document-viewer/ls-document-viewer';\nimport { debounce } from '../ls-document-viewer/editorUtils';\nimport { attachAllTooltips } from '../../utils/tooltip';\n\n@Component({\n tag: 'ls-statusbar',\n styleUrl: 'ls-statusbar.css',\n shadow: true,\n})\nexport class LsStatusbar {\n @Element() component: HTMLElement;\n /**\n * The zoom or scale level 100 === 100%.\n * {number}\n */\n @Prop({ mutable: true }) zoom: number;\n @Prop({ mutable: true }) page: number;\n @Prop({ mutable: true }) pageCount: number;\n\n /**\n * The parent editor control.\n * {LsDocumentViewer}\n */\n @Prop() editor: LsDocumentViewer;\n\n setZoom(value: number) {\n this.editor.setZoom(value);\n this.zoom = value;\n }\n\n handleZoomInput() {\n const zoomInput = this.component.shadowRoot.getElementById('zoomRange') as HTMLInputElement;\n\n debounce(this.setZoom(parseInt(zoomInput.value) / 100), 700);\n }\n\n fitWidth() {\n const leftBox = this.editor.component.shadowRoot.getElementById('ls-left-box');\n const midBox = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const space = midBox.clientWidth - leftBox.clientWidth - 60; // 60 for padding/margin\n\n \n console.log('Space width:', space, 'Page width:', this.editor.pageDimensions[0].width);\n const scale: number = space / this.editor.pageDimensions[0].width;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n fitHeight() {\n const space = window.screen.height - 40; // 40 for padding/margin\n const scale: number = space / this.editor.pageDimensions[0].height;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n componentDidLoad() {\n attachAllTooltips(this.component.shadowRoot);\n this.zoom = this.editor.zoom;\n }\n\n render() {\n return (\n <Host>\n <div class={'controls-bar'}>\n {/* <button onClick={() => this.editor.displayTable = true}><ls-icon name=\"table\" /></button>\n <button onClick={() => this.editor.displayTable = false}><ls-icon name=\"template\" /></button> */}\n <div class={'status-bar-section'}>\n <button onClick={() => this.setZoom(this.editor.zoom * 0.8)} id=\"zoom-out-btn\" data-tooltip=\"Zoom Out\">\n <ls-icon name=\"zoom-out\" />\n </button>\n <div>\n <input type=\"range\" min=\"1\" max=\"300\" value={this.zoom * 100} class=\"slider\" id=\"zoomRange\" onInput={() => this.handleZoomInput()} />\n </div>\n <button onClick={() => this.setZoom(this.editor.zoom / 0.8)} id=\"zoom-in-btn\" data-tooltip=\"Zoom In\">\n <ls-icon name=\"zoom-in\" />\n </button>\n </div>\n <div class={'status-bar-section'}>\n <button onClick={() => this.fitWidth()} id=\"fit-width-btn\" data-tooltip=\"Fit Width\">\n <ls-icon name=\"fit-width\" />\n </button>\n <button onClick={() => this.fitHeight()} id=\"fit-height-btn\" data-tooltip=\"Fit Height\">\n <ls-icon name=\"fit-height\" />\n </button>\n </div>\n <div class={'status-bar-section'} style={this.pageCount === 1 && { display: 'none' }}>\n <button\n onClick={() => {\n this.editor.pagePrev();\n }}\n disabled={this.page === 1}\n id=\"prev-page-btn\"\n data-tooltip={this.page === 1 ? 'No Previous Page' : 'Previous Page'}\n >\n <ls-icon name=\"chevron-left\" />\n </button>\n <p>\n {this.page} / {this.pageCount}\n </p>\n <button\n onClick={() => {\n this.editor.pageNext();\n }}\n disabled={this.page === this.pageCount}\n id=\"next-page-btn\"\n data-tooltip={this.page === this.pageCount ? 'No Next Page' : 'Next Page'}\n >\n <ls-icon name=\"chevron-right\" />\n </button>\n </div>\n </div>\n <ls-helper-bar />\n <ls-tooltip id=\"ls-tooltip-master\" />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { t as transformTag, p as proxyCustomElement, H, h, c as Host } from './p-BhZ5Udbm.js';
2
- import { d as defineCustomElement$d } from './p-C6yjqlFz.js';
3
- import { d as defineCustomElement$c } from './p-DFhLcGLq.js';
2
+ import { d as defineCustomElement$d } from './p-CseWUQoS.js';
3
+ import { d as defineCustomElement$c } from './p-DlvflCgm.js';
4
4
  import { d as defineCustomElement$b } from './p-DeiaBmYM.js';
5
5
  import { d as defineCustomElement$a } from './p-CGQK3l8F.js';
6
6
  import { d as defineCustomElement$9 } from './p-DCiK4Zkr.js';
@@ -112,6 +112,6 @@ function defineCustomElement() {
112
112
  defineCustomElement();
113
113
 
114
114
  export { LsFieldPropertiesFile as L, defineCustomElement as d };
115
- //# sourceMappingURL=p-oKVPuvMD.js.map
115
+ //# sourceMappingURL=p-BzQdcCkp.js.map
116
116
 
117
- //# sourceMappingURL=p-oKVPuvMD.js.map
117
+ //# sourceMappingURL=p-BzQdcCkp.js.map
@@ -1 +1 @@
1
- {"file":"p-oKVPuvMD.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,wBAAwB,GAAG,MAAM,CAAC,mtJAAmtJ,CAAC;;MCQ/uJ,qBAAqB,iBAAAA,kBAAA,CAAA,MAAA,qBAAA,SAAAC,CAAA,CAAA;;;;;;;;AACxB,IAAA,QAAQ;IAEhB,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAA+B,CAAA,+BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,EAAA,EACzE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,SAAS,EAAA,EACrC,CAAA,CAAA,kBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAkB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,EAC7C,CAAA,CAAA,8BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAA8B,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CACrD,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,YAAY,EAAA,EACxC,CAAA,CAAA,qBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAqB,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CAC5C,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,WAAW,EAAA,EACvC,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAoB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CAC3C,CACwB,EAChC,CAAiB,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,CACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-file/ls-field-properties-file.css?tag=ls-field-properties-file&encapsulation=shadow","src/components/ls-field-properties-file/ls-field-properties-file.tsx"],"sourcesContent":[":host {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n height: 100%;\n position: relative;\n}\n\n* {\n margin: 0;\n}\n\n.field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\n\ninput,\nselect,\ntextarea {\n border: 1px solid var(--gray-40, #d8d9dc);\n box-shadow: 0 1px 0.125rem rgba(0, 0, 0, 0.05);\n padding: 0.5rem 0.75rem;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n border-radius: 0.5rem;\n color: var(--gray-100, #45484d);\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: var(--gray-60, #afb0b2);\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: var(--gray-50, #c8c9cc);\n background-color: var(--white, #fff);\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-40, #79adfc);\n border-color: var(--primary-60, #4456f6);\n background-color: var(--white, #fff);\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: var(--primary-50, #5185ff);\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: var(--gray-10, #f7f8fa);\n}\n\ninput[type='checkbox'] {\n appearance: none;\n position: relative;\n height: 1rem;\n width: 1rem;\n padding: 0.25rem;\n border-radius: var(--radius-sm);\n border: 1px solid #d1d5db;\n background-color: #ffffff;\n cursor: pointer;\n}\n\ninput[type='checkbox']:checked,\ninput[type='checkbox'].indeterminate {\n background-color: var(--primary-60, #4456f6);\n border: none;\n}\n\ninput[type='checkbox']:checked::after {\n content: '';\n position: absolute;\n top: 45%;\n left: 50%;\n transform: translate(-50%, -50%) rotate(-45deg) scale(-1, 1);\n width: 0.5rem;\n height: 0.25rem;\n border-bottom: 0.125rem solid white;\n border-right: 0.125rem solid white;\n}\n\ninput[type='checkbox'].indeterminate::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 0.5rem;\n height: 0.125rem;\n background-color: white;\n}\n\ninput[type='checkbox']:checked:hover,\ninput[type='checkbox'].indeterminate:hover {\n background-color: var(--primary-70, #2134dc);\n border: none;\n}\n\ninput[type='checkbox']:hover {\n border: 1px solid #9ca3af;\n}\n\ninput[type='checkbox']:focus,\ninput[type='checkbox']:active {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-20, #c7ddff);\n background-color: #f0f4f8;\n}\n\ninput[type='checkbox']:disabled {\n background-color: #f3f4f6;\n outline: none;\n cursor: not-allowed;\n}\n\ninput[type='checkbox']:disabled:checked {\n background-color: #e5e7eb;\n border: none;\n outline: none;\n cursor: not-allowed;\n}\n\n.checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.checkbox-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.form-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: var(--primary-60, #0c7cba);\n}\n\nbutton {\n display: flex;\n gap: 0.5rem;\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-lg);\n background-color: var(--primary-60, #4456f6);\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.tertiaryGrey {\n border: 1px solid var(--gray-40, #d8d9dc);\n background-color: white;\n color: var(--gray-80, #787a80);\n}\n\nbutton.tertiaryGrey:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\nbutton.secondary {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--white, #fff);\n color: var(--gray-90, #5e6066);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.06), 0 1px 3px 0 rgba(0, 0, 0, 0.1);\n}\n\nbutton.secondary:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\nbutton.destructive {\n border: 1px solid var(--red-60, #f04438);\n background-color: white;\n color: var(--red-60);\n}\n\nbutton.destructive:hover {\n border: 1px solid var(--red-70, #d92d20);\n background: var(--red-10, #fff1f0);\n}\n\n\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n}\n\n.button-group button {\n display: flex;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n min-height: unset;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { LSApiElement } from '../../components';\n\n@Component({\n tag: 'ls-field-properties-file',\n styleUrl: 'ls-field-properties-file.css',\n shadow: true,\n})\nexport class LsFieldPropertiesFile {\n @Prop() dataItem: LSApiElement;\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'field-set'} slot=\"content\">\n <ls-field-content dataItem={this.dataItem} />\n <ls-field-properties-advanced dataItem={this.dataItem} />\n </div>\n <div class={'field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} />\n </div>\n <div class={'field-set'} slot=\"placement\">\n <ls-field-placement dataItem={this.dataItem} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} />\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-BzQdcCkp.js","mappings":";;;;;;;;;;;;;;;AAAA,MAAM,wBAAwB,GAAG,MAAM,CAAC,mtJAAmtJ,CAAC;;MCQ/uJ,qBAAqB,iBAAAA,kBAAA,CAAA,MAAA,qBAAA,SAAAC,CAAA,CAAA;;;;;;;;AACxB,IAAA,QAAQ;IAEhB,MAAM,GAAA;AACJ,QAAA,QACE,EAAC,IAAI,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EACH,CAA+B,CAAA,+BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,CAAC,SAAS,EAAE,WAAW,EAAE,YAAY,CAAC,EAAA,EACzE,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,SAAS,EAAA,EACrC,CAAA,CAAA,kBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAkB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,EAC7C,CAAA,CAAA,8BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAA8B,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CACrD,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,YAAY,EAAA,EACxC,CAAA,CAAA,qBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAqB,QAAQ,EAAE,IAAI,CAAC,QAAQ,GAAI,CAC5C,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,WAAW,EAAE,IAAI,EAAC,WAAW,EAAA,EACvC,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAoB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CAC3C,CACwB,EAChC,CAAiB,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,CACvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-file/ls-field-properties-file.css?tag=ls-field-properties-file&encapsulation=shadow","src/components/ls-field-properties-file/ls-field-properties-file.tsx"],"sourcesContent":[":host {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n height: 100%;\n position: relative;\n}\n\n* {\n margin: 0;\n}\n\n.field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n/* Global Styles */\n\np {\n color: var(--gray-80, #6c6e73);\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n}\n\na {\n color: var(--primary-60, #4456f6);\n font-size: var(--text-sm);\n font-style: normal;\n font-weight: 400;\n line-height: var(--text-sm-line-height);\n cursor: pointer;\n}\n\na:hover {\n text-decoration: underline;\n color: var(--primary-70, #2134dc);\n}\n\n.button-link,\n.button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n.has-leading-icon {\n padding-left: 2.5rem;\n}\n\n\ninput,\nselect,\ntextarea {\n border: 1px solid var(--gray-40, #d8d9dc);\n box-shadow: 0 1px 0.125rem rgba(0, 0, 0, 0.05);\n padding: 0.5rem 0.75rem;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n border-radius: 0.5rem;\n color: var(--gray-100, #45484d);\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: var(--gray-60, #afb0b2);\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: var(--gray-50, #c8c9cc);\n background-color: var(--white, #fff);\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-40, #79adfc);\n border-color: var(--primary-60, #4456f6);\n background-color: var(--white, #fff);\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: var(--primary-50, #5185ff);\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: var(--gray-10, #f7f8fa);\n}\n\ninput[type='checkbox'] {\n appearance: none;\n position: relative;\n height: 1rem;\n width: 1rem;\n padding: 0.25rem;\n border-radius: var(--radius-sm);\n border: 1px solid #d1d5db;\n background-color: #ffffff;\n cursor: pointer;\n}\n\ninput[type='checkbox']:checked,\ninput[type='checkbox'].indeterminate {\n background-color: var(--primary-60, #4456f6);\n border: none;\n}\n\ninput[type='checkbox']:checked::after {\n content: '';\n position: absolute;\n top: 45%;\n left: 50%;\n transform: translate(-50%, -50%) rotate(-45deg) scale(-1, 1);\n width: 0.5rem;\n height: 0.25rem;\n border-bottom: 0.125rem solid white;\n border-right: 0.125rem solid white;\n}\n\ninput[type='checkbox'].indeterminate::after {\n content: '';\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n width: 0.5rem;\n height: 0.125rem;\n background-color: white;\n}\n\ninput[type='checkbox']:checked:hover,\ninput[type='checkbox'].indeterminate:hover {\n background-color: var(--primary-70, #2134dc);\n border: none;\n}\n\ninput[type='checkbox']:hover {\n border: 1px solid #9ca3af;\n}\n\ninput[type='checkbox']:focus,\ninput[type='checkbox']:active {\n outline: none;\n box-shadow: 0 0 0 0.25rem var(--primary-20, #c7ddff);\n background-color: #f0f4f8;\n}\n\ninput[type='checkbox']:disabled {\n background-color: #f3f4f6;\n outline: none;\n cursor: not-allowed;\n}\n\ninput[type='checkbox']:disabled:checked {\n background-color: #e5e7eb;\n border: none;\n outline: none;\n cursor: not-allowed;\n}\n\n.checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.checkbox-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.form-label {\n color: var(--gray-100, #45484d);\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: var(--primary-60, #0c7cba);\n}\n\nbutton {\n display: flex;\n gap: 0.5rem;\n border: 0;\n appearance: button;\n cursor: pointer;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-radius: var(--radius-lg);\n background-color: var(--primary-60, #4456f6);\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.tertiaryGrey {\n border: 1px solid var(--gray-40, #d8d9dc);\n background-color: white;\n color: var(--gray-80, #787a80);\n}\n\nbutton.tertiaryGrey:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\nbutton.secondary {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--white, #fff);\n color: var(--gray-90, #5e6066);\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.06), 0 1px 3px 0 rgba(0, 0, 0, 0.1);\n}\n\nbutton.secondary:hover {\n border: 1px solid var(--gray-50, #c8c9cc);\n background: var(--gray-10, #f7f8fa);\n}\n\nbutton.destructive {\n border: 1px solid var(--red-60, #f04438);\n background-color: white;\n color: var(--red-60);\n}\n\nbutton.destructive:hover {\n border: 1px solid var(--red-70, #d92d20);\n background: var(--red-10, #fff1f0);\n}\n\n\n\n.button-group {\n display: flex;\n border-radius: 0.5rem;\n border: 1px solid var(--gray-30, #e0e2e5);\n background: var(--white, #ffffff);\n overflow: clip;\n}\n\n.button-group button {\n display: flex;\n background: transparent;\n border-radius: unset;\n padding: 0.25rem 0.75rem;\n min-width: 2.156rem;\n min-height: unset;\n color: var(--gray-80, #6c6e73);\n}\n\n.button-group button:hover {\n background: var(--gray-10, #f7f8fa);\n}\n\n.button-group > :first-child {\n border-radius: 0.5rem 0 0 0.5rem;\n}\n\n.button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.button-group > :not(:first-child) {\n border-left: 1px solid var(--gray-30, #e0e2e5);\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { LSApiElement } from '../../components';\n\n@Component({\n tag: 'ls-field-properties-file',\n styleUrl: 'ls-field-properties-file.css',\n shadow: true,\n})\nexport class LsFieldPropertiesFile {\n @Prop() dataItem: LSApiElement;\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'field-set'} slot=\"content\">\n <ls-field-content dataItem={this.dataItem} />\n <ls-field-properties-advanced dataItem={this.dataItem} />\n </div>\n <div class={'field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} />\n </div>\n <div class={'field-set'} slot=\"placement\">\n <ls-field-placement dataItem={this.dataItem} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} />\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,6 +1,6 @@
1
1
  import { t as transformTag, p as proxyCustomElement, H, h, c as Host } from './p-BhZ5Udbm.js';
2
- import { d as defineCustomElement$d } from './p-C6yjqlFz.js';
3
- import { d as defineCustomElement$c } from './p-DFhLcGLq.js';
2
+ import { d as defineCustomElement$d } from './p-CseWUQoS.js';
3
+ import { d as defineCustomElement$c } from './p-DlvflCgm.js';
4
4
  import { d as defineCustomElement$b } from './p-DeiaBmYM.js';
5
5
  import { d as defineCustomElement$a } from './p-CGQK3l8F.js';
6
6
  import { d as defineCustomElement$9 } from './p-DCiK4Zkr.js';
@@ -112,6 +112,6 @@ function defineCustomElement() {
112
112
  defineCustomElement();
113
113
 
114
114
  export { LsFieldPropertiesEmail as L, defineCustomElement as d };
115
- //# sourceMappingURL=p-CKIZjm3Z.js.map
115
+ //# sourceMappingURL=p-CQKJInA5.js.map
116
116
 
117
- //# sourceMappingURL=p-CKIZjm3Z.js.map
117
+ //# sourceMappingURL=p-CQKJInA5.js.map