legalesign-document-viewer 1.0.11 → 1.0.13

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 (81) hide show
  1. package/dist/cjs/loader.cjs.js +1 -1
  2. package/dist/cjs/ls-assignee-select_21.cjs.entry.js +3 -3
  3. package/dist/cjs/ls-compose-loader_7.cjs.entry.js +1 -1
  4. package/dist/cjs/ls-document-viewer.cjs.entry.js +1 -1
  5. package/dist/cjs/ls-document-viewer.cjs.js +1 -1
  6. package/dist/cjs/ls-field-alignment_3.cjs.entry.js +1 -1
  7. package/dist/cjs/{mouseHandlers-CwOyBBz6.js → mouseHandlers-Cc9PovyB.js} +3 -3
  8. package/dist/cjs/{mouseHandlers-CwOyBBz6.js.map → mouseHandlers-Cc9PovyB.js.map} +1 -1
  9. package/dist/collection/components/ls-document-viewer/mouseHandlers.js +1 -1
  10. package/dist/collection/components/ls-document-viewer/mouseHandlers.js.map +1 -1
  11. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js +3 -3
  12. package/dist/collection/components/ls-field-properties-advanced/ls-field-properties-advanced.js.map +1 -1
  13. package/dist/components/ls-document-viewer.js +15 -15
  14. package/dist/components/ls-field-distribute.js +1 -1
  15. package/dist/components/ls-field-properties-advanced.js +1 -1
  16. package/dist/components/ls-field-properties-autosign.js +1 -1
  17. package/dist/components/ls-field-properties-checkbox.js +1 -1
  18. package/dist/components/ls-field-properties-date.js +1 -1
  19. package/dist/components/ls-field-properties-dropdown.js +1 -1
  20. package/dist/components/ls-field-properties-email.js +1 -1
  21. package/dist/components/ls-field-properties-file.js +1 -1
  22. package/dist/components/ls-field-properties-general.js +1 -1
  23. package/dist/components/ls-field-properties-multiple.js +1 -1
  24. package/dist/components/ls-field-properties-number.js +1 -1
  25. package/dist/components/ls-field-properties-signature.js +1 -1
  26. package/dist/components/ls-field-properties-text.js +1 -1
  27. package/dist/components/ls-field-properties.js +1 -1
  28. package/dist/components/ls-left-bar.js +1 -1
  29. package/dist/components/ls-statusbar.js +1 -1
  30. package/dist/components/{p-BD_LQa4f.js → p-BDD6zFgO.js} +3 -3
  31. package/dist/components/{p-BD_LQa4f.js.map → p-BDD6zFgO.js.map} +1 -1
  32. package/dist/components/{p-nEeIgVD4.js → p-BTcdVmkv.js} +15 -9
  33. package/dist/components/p-BTcdVmkv.js.map +1 -0
  34. package/dist/components/{p-BcIQeY5m.js → p-BmpejMo_.js} +3 -3
  35. package/dist/components/{p-BcIQeY5m.js.map → p-BmpejMo_.js.map} +1 -1
  36. package/dist/components/{p-D2fyXA3F.js → p-ByN7GurE.js} +3 -3
  37. package/dist/components/{p-D2fyXA3F.js.map → p-ByN7GurE.js.map} +1 -1
  38. package/dist/components/{p-DKCAgr17.js → p-CHbV_3Pe.js} +3 -3
  39. package/dist/components/{p-DKCAgr17.js.map → p-CHbV_3Pe.js.map} +1 -1
  40. package/dist/components/{p-BRcbstSs.js → p-CowkeWsT.js} +3 -3
  41. package/dist/components/{p-BRcbstSs.js.map → p-CowkeWsT.js.map} +1 -1
  42. package/dist/components/{p-Bmm5vB3M.js → p-CyV8nu-T.js} +15 -15
  43. package/dist/components/{p-Bmm5vB3M.js.map → p-CyV8nu-T.js.map} +1 -1
  44. package/dist/components/{p-DjyJ7Vy7.js → p-D4pQIA1Z.js} +3 -3
  45. package/dist/components/{p-DjyJ7Vy7.js.map → p-D4pQIA1Z.js.map} +1 -1
  46. package/dist/components/{p-0gpJEkuE.js → p-D6grL59P.js} +18 -12
  47. package/dist/components/p-D6grL59P.js.map +1 -0
  48. package/dist/components/{p-BrzfHYNI.js → p-DAq2HFf_.js} +3 -3
  49. package/dist/components/{p-BrzfHYNI.js.map → p-DAq2HFf_.js.map} +1 -1
  50. package/dist/components/{p-m1DXrPv0.js → p-DpA4TE1Q.js} +3 -3
  51. package/dist/components/{p-m1DXrPv0.js.map → p-DpA4TE1Q.js.map} +1 -1
  52. package/dist/components/{p-CLsTvOMB.js → p-Dw48QFVg.js} +3 -3
  53. package/dist/components/{p-CLsTvOMB.js.map → p-Dw48QFVg.js.map} +1 -1
  54. package/dist/components/{p-ZKk3AJde.js → p-pAh5qPFg.js} +14 -14
  55. package/dist/components/{p-ZKk3AJde.js.map → p-pAh5qPFg.js.map} +1 -1
  56. package/dist/components/{p-sL-kvPiU.js → p-uST4uUr8.js} +3 -3
  57. package/dist/components/{p-sL-kvPiU.js.map → p-uST4uUr8.js.map} +1 -1
  58. package/dist/components/{p-BoxsygDA.js → p-x8FQ2VuC.js} +3 -3
  59. package/dist/components/{p-BoxsygDA.js.map → p-x8FQ2VuC.js.map} +1 -1
  60. package/dist/esm/loader.js +1 -1
  61. package/dist/esm/ls-assignee-select_21.entry.js +3 -3
  62. package/dist/esm/ls-compose-loader_7.entry.js +1 -1
  63. package/dist/esm/ls-document-viewer.entry.js +1 -1
  64. package/dist/esm/ls-document-viewer.js +1 -1
  65. package/dist/esm/ls-field-alignment_3.entry.js +1 -1
  66. package/dist/esm/{mouseHandlers-ZnSeG3Tw.js → mouseHandlers-CidXuxi3.js} +3 -3
  67. package/dist/esm/{mouseHandlers-ZnSeG3Tw.js.map → mouseHandlers-CidXuxi3.js.map} +1 -1
  68. package/dist/ls-document-viewer/ls-document-viewer.esm.js +1 -1
  69. package/dist/ls-document-viewer/{p-ddb4daf1.entry.js → p-5353749c.entry.js} +2 -2
  70. package/dist/ls-document-viewer/{p-ddb4daf1.entry.js.map → p-5353749c.entry.js.map} +1 -1
  71. package/dist/ls-document-viewer/{p-af926417.entry.js → p-89798744.entry.js} +2 -2
  72. package/dist/ls-document-viewer/{p-c7361f1c.entry.js → p-8d626c5c.entry.js} +2 -2
  73. package/dist/ls-document-viewer/{p-BnmDPEuZ.js → p-D6sbeDib.js} +2 -2
  74. package/dist/ls-document-viewer/{p-BnmDPEuZ.js.map → p-D6sbeDib.js.map} +1 -1
  75. package/dist/ls-document-viewer/{p-106a844a.entry.js → p-cbff9ae0.entry.js} +2 -2
  76. package/package.json +1 -1
  77. package/dist/components/p-0gpJEkuE.js.map +0 -1
  78. package/dist/components/p-nEeIgVD4.js.map +0 -1
  79. /package/dist/ls-document-viewer/{p-af926417.entry.js.map → p-89798744.entry.js.map} +0 -0
  80. /package/dist/ls-document-viewer/{p-c7361f1c.entry.js.map → p-8d626c5c.entry.js.map} +0 -0
  81. /package/dist/ls-document-viewer/{p-106a844a.entry.js.map → p-cbff9ae0.entry.js.map} +0 -0
@@ -1 +1 @@
1
- {"file":"p-D2fyXA3F.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-multiple/ls-field-properties-multiple.scss?tag=ls-field-properties-multiple&encapsulation=shadow","src/components/ls-field-properties-multiple/ls-field-properties-multiple.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.ls-dv-properties-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.ls-dv-field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n.ls-dv-field-properties-section {\n display: flex;\n position: relative;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.ls-dv-row {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n\n.ls-dv-field-properties-section-text {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n padding: 0.25rem;\n}\n\n.ls-dv-field-properties-section-title {\n color: $gray-90;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n}\n\n.ls-dv-field-properties-section-description {\n overflow: hidden;\n color: $gray-80;\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.ls-dv-field-type-wrapper {\n position: relative;\n border-radius: 0.875rem;\n padding: 0.25rem;\n}\n\n.ls-dv-field-type-inner {\n border-radius: 0.625rem;\n background: $white;\n display: flex;\n padding: 0.25rem 0.5rem 0.25rem 0.25rem;\n align-items: center;\n gap: 0.875rem;\n align-self: stretch;\n}\n\n.ls-dv-field-type-icon {\n display: flex;\n padding: 0.5rem;\n align-items: center;\n border-radius: 0.625rem;\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\n.ls-dv-field-type-name {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1.5rem; /* 150% */\n text-transform: capitalize;\n}\n\n.ls-dv-tabs-container {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n width: 100%;\n gap: 0.125rem;\n padding: 0.125rem;\n border: 1px solid $gray-30;\n border-radius: 0.75rem;\n background: $white;\n}\n\n.ls-dv-tab {\n all: unset;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n padding: 0.5rem;\n border-radius: 0.625rem;\n font-size: 0.875rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n color: $gray-80;\n}\n\n.ls-dv-tab.ls-dv-active {\n background: $primary-10;\n color: $primary-60;\n}\n\n.ls-dv-tab:not(.ls-dv-active):hover {\n background: $gray-10;\n}\n\n.ls-dv-button-footer {\n display: flex;\n padding-top: 1rem;\n border-top: 1px solid $gray-20;\n flex-direction: column;\n justify-content: flex-end;\n gap: 0.75rem;\n margin-top: auto;\n}\n\n.ls-dv-scrolling-container {\n overflow-y: auto;\n padding: 0 1rem;\n margin: 0 -1rem;\n height: calc(100% - 10.938rem);\n}\n\n/* Global Styles */\n\np {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n\n.ls-dv-input-wrapper {\n position: relative;\n}\n\n.ls-dv-full-width {\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: $gray-80;\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: $gray-80;\n}\n\n.ls-dv-has-leading-icon {\n padding-left: 2.5rem;\n}\n\ninput,\nselect,\ntextarea {\n border: 1px solid $gray-40;\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.625rem;\n color: $gray-100;\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: $gray-60;\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: $gray-50;\n background-color: $white;\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem $primary-40;\n border-color: $primary-60;\n background-color: $white;\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: $primary-50;\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: $gray-10;\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'].ls-dv-indeterminate {\n background-color: $primary-60;\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'].ls-dv-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'].ls-dv-indeterminate:hover {\n background-color: $primary-70;\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 $primary-20;\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.ls-dv-checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.ls-dv-checkbox-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.ls-dv-form-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.ls-dv-form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.ls-dv-loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: $primary-60;\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: $primary-60;\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.ls-dv-tertiary-grey {\n border: 1px solid $gray-40;\n background-color: white;\n color: $gray-80;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-secondary {\n border: 1px solid $gray-50;\n background: $white;\n color: $gray-90;\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.ls-dv-secondary:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-destructive {\n border: 1px solid $red-60;\n background-color: white;\n color: $red-60;\n}\n\nbutton.ls-dv-destructive:hover {\n border: 1px solid $red-70;\n background: $red-10;\n}\n\n\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n\n.ls-dv-input-error {\n border-color: $red-60;\n}\n\n.ls-dv-input-error:focus {\n box-shadow: 0 0 0 0.25rem $red-20;\n border-color: $red-60;\n}\n\n.ls-dv-error-text {\n color: $red-60;\n font-size: var(--text-xs);\n margin-top: 0.25rem;\n}\n\n.ls-dv-checkbox-toggle {\n display: flex;\n gap: 0.5rem;\n background: $gray-10;\n padding: 0.25rem;\n border-radius: 0.75rem;\n}\n\n.ls-dv-checkbox-toggle-btn {\n flex: 1;\n padding: 0.25rem;\n border-radius: 0.5rem;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.875rem;\n color: $gray-80;\n text-transform: capitalize;\n cursor: pointer;\n border: none;\n background: transparent;\n transition: background 0.15s, box-shadow 0.15s;\n\n &:focus-visible {\n outline: 2px solid $gray-40;\n outline-offset: 2px;\n }\n\n &.ls-dv-active {\n background: white;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n }\n\n &:disabled {\n cursor: default;\n opacity: 0.5;\n }\n}\n\n.ls-dv-mixed-hint {\n color: $gray-60;\n font-size: var(--text-xs);\n font-style: italic;\n}\n","import { Component, Host, Prop, h, Event, EventEmitter, State, Watch } from '@stencil/core';\nimport { LSApiElement, LSMutateEvent } from '../../components';\nimport { LSApiRole } from '../../types/LSApiRole';\nimport { dvI18n } from '../../i18n/i18n';\nimport { getDefaultValidationForType } from '../ls-field-type-select/fieldTypeUtils';\nimport { getFieldPlaceholder } from '../ls-document-viewer/defaultFieldLabels';\nimport { validationTypes } from '../ls-document-viewer/editorUtils';\nimport { validateFieldValue } from '../../utils/fieldValueValidator';\nimport { forceCloseDatePicker } from '../../utils/utils';\n\n\n@Component({\n tag: 'ls-field-properties-multiple',\n styleUrl: 'ls-field-properties-multiple.scss',\n shadow: true,\n})\nexport class LsFieldPropertiesMultiple {\n @Prop({ mutable: true }) dataItem: LSApiElement[];\n @Prop() roles: LSApiRole[] = [];\n @Prop() readonly: boolean = false;\n @Prop() filtertoolbox: string = null;\n @State() valueError: string | null = null;\n\n @Watch('dataItem')\n validateOnChange() {\n if (this.allFieldTypesSame().isSame && this.supportsValue() && this.allValuesSame().isSame) {\n this.valueError = validateFieldValue(\n this.allFieldTypesSame().fieldType,\n this.allValidationsSame().validation,\n this.allValuesSame().value,\n this.dataItem[0]?.options,\n );\n } else {\n this.valueError = null;\n }\n }\n\n componentWillLoad() {\n this.validateOnChange();\n }\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n mutate: EventEmitter<LSMutateEvent[]>;\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n update: EventEmitter<LSMutateEvent[]>;\n\n // Send one or more mutations up the chain\n // The source of the chain fires the mutation\n // NOTE this alter is debounced to account for typing\n alter(diff: object) {\n this.dataItem = this.dataItem.map(item => ({ ...item, ...diff }));\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.update.emit(evs);\n this.debounce(diff, 1500);\n }\n\n // Immediate alter for non-typing actions (toggles, selects)\n alterImmediate(diff: object) {\n this.dataItem = this.dataItem.map(item => ({ ...item, ...diff }));\n if (this.labeltimer) {\n clearTimeout(this.labeltimer);\n this.labeltimer = null;\n }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n private labeltimer;\n\n debounce(diff, delay) {\n if (this.labeltimer) clearTimeout(this.labeltimer);\n\n this.labeltimer = setTimeout(() => {\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: { ...item, ...diff } }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }, delay);\n }\n \n allSignersSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, signer: undefined };\n const firstSigner = this.dataItem[0].signer;\n const allSame = this.dataItem.every(item => item.signer === firstSigner);\n return { isSame: allSame, signer: allSame ? firstSigner : 13 };\n };\n\n allLabelsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, label: undefined };\n const firstLabel = this.dataItem[0].label;\n const allSame = this.dataItem.every(item => item.label === firstLabel);\n return { isSame: allSame, label: allSame ? firstLabel : undefined };\n };\n\n allElementsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, elementType: 'mixed' };\n const firstElementType = this.dataItem[0].elementType;\n const allSame = this.dataItem.every(item => item.elementType === firstElementType);\n return { isSame: allSame, elementType: allSame ? firstElementType : 'mixed' };\n };\n\n allFieldTypesSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, fieldType: 'text' };\n const firstType = this.dataItem[0].formElementType;\n const allSame = this.dataItem.every(item => item.formElementType === firstType);\n return { isSame: allSame, fieldType: allSame ? firstType : 'mixed' };\n };\n\n allValuesSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, value: '' };\n const firstValue = this.dataItem[0].value || '';\n const allSame = this.dataItem.every(item => (item.value || '') === firstValue);\n return { isSame: allSame, value: allSame ? firstValue : '' };\n };\n\n supportsValue = () => {\n const typesWithoutValue = ['signature', 'initials', 'file', 'signing', 'autosign', 'signing date', 'auto sign', 'dropdown', 'checkbox', 'drawn field', 'date'];\n const fieldType = this.allFieldTypesSame().fieldType;\n return !typesWithoutValue.includes(fieldType);\n };\n\n isAllCheckboxes = () => {\n return this.allFieldTypesSame().isSame && this.allFieldTypesSame().fieldType === 'checkbox';\n };\n\n private getCheckboxStates(): string[] {\n if (!this.dataItem || this.dataItem.length === 0) return [];\n const vType = validationTypes.find(v => v.id === this.dataItem[0].validation);\n if (!vType) return [];\n return vType.description.split('/').reverse();\n }\n\n isDateType = () => {\n return this.allFieldTypesSame().fieldType === 'date';\n };\n\n allValidationsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, validation: 0 };\n const firstValidation = this.dataItem[0].validation;\n const allSame = this.dataItem.every(item => item.validation === firstValidation);\n return { isSame: allSame, validation: allSame ? firstValidation : null };\n };\n\n showContentFormat = () => {\n const fieldType = this.allFieldTypesSame().fieldType;\n const excluded = ['drawn field', 'regular expression', 'initials', 'signature', 'mixed'];\n return this.allFieldTypesSame().isSame && !excluded.includes(fieldType);\n };\n\n private getDateFormatById(validation: number): string | null {\n const vType = validationTypes.find(v => v.id === validation);\n if (!vType || vType.inputType !== 'date') return null;\n return vType.description;\n }\n\n private convertDateValue(currentValue: string, oldValidation: number, newValidation: number): string {\n if (!currentValue) return '';\n const oldFormat = this.getDateFormatById(oldValidation);\n const newFormat = this.getDateFormatById(newValidation);\n if (!oldFormat || !newFormat) return currentValue;\n\n const sep = oldFormat.match(/[/.-]/)?.[0] || '/';\n const parts = oldFormat.split(/[/.-]/);\n const valueParts = currentValue.split(sep);\n if (valueParts.length < 2) return currentValue;\n\n let y = '', m = '', d = '';\n parts.forEach((p, i) => {\n const v = valueParts[i] || '';\n if (p.startsWith('y')) y = v;\n else if (p.startsWith('m')) m = v;\n else if (p.startsWith('d')) d = v;\n });\n\n if (y.length === 2) y = '20' + y;\n if (!d) d = '01';\n\n return newFormat\n .replace('yyyy', y.padStart(4, '0'))\n .replace('yy', y.slice(-2))\n .replace('mm', m.padStart(2, '0'))\n .replace('dd', d.padStart(2, '0'))\n .replace('d', String(parseInt(d)));\n }\n\n private formatISOToValidation(isoValue: string, validation: number): string {\n if (!isoValue) return '';\n const [y, m, d] = isoValue.split('-');\n const format = this.getDateFormatById(validation);\n if (!format) return isoValue;\n\n return format\n .replace('yyyy', y)\n .replace('yy', y.slice(-2))\n .replace('mm', m)\n .replace('dd', d)\n .replace('d', String(parseInt(d)));\n }\n\n private toISODate(value: string, validation: number): string {\n if (!value) return '';\n const format = this.getDateFormatById(validation);\n if (!format) return value;\n\n const sep = format.match(/[/.-]/)?.[0] || '/';\n const parts = format.split(/[/.-]/);\n const valueParts = value.split(sep);\n if (valueParts.length < 2) return value;\n\n let y = '', m = '', d = '';\n parts.forEach((p, i) => {\n const v = valueParts[i] || '';\n if (p.startsWith('y')) y = v;\n else if (p.startsWith('m')) m = v;\n else if (p.startsWith('d')) d = v;\n });\n\n if (y.length === 2) y = '20' + y;\n if (!d) d = '01';\n\n return `${y.padStart(4, '0')}-${m.padStart(2, '0')}-${d.padStart(2, '0')}`;\n }\n\n handleFormatChange(newValidation: number) {\n if (this.isDateType()) {\n // Convert each field's date value to the new format\n this.dataItem = this.dataItem.map(item => ({\n ...item,\n validation: newValidation,\n value: this.convertDateValue(item.value || '', item.validation, newValidation),\n }));\n } else {\n this.dataItem = this.dataItem.map(item => ({ ...item, validation: newValidation }));\n }\n if (this.labeltimer) {\n clearTimeout(this.labeltimer);\n this.labeltimer = null;\n }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n allFieldsOptional = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, optional: false };\n const firstElementOptional = this.dataItem[0].optional;\n const allSame = this.dataItem.every(item => item.optional === firstElementOptional);\n return { isSame: allSame, optional: allSame ? firstElementOptional : false };\n };\n\n private hasSignatureType(): boolean {\n return this.dataItem?.some(item => item.formElementType === 'signature' || (item.formElementType as string) === 'auto sign');\n }\n\n private getAllRoleTypes(): string[] {\n const types = new Set<string>();\n for (const item of this.dataItem || []) {\n if (item.signer === 0) {\n types.add('SENDER');\n } else {\n const role = this.roles?.find(r => r.signerIndex === item.signer);\n types.add(role?.roleType || 'SIGNER');\n }\n }\n return [...types];\n }\n\n private handleFieldTypeChange(newType: string) {\n const defaultValidation = getDefaultValidationForType(newType);\n const noValueTypes = ['signature', 'initials', 'file', 'signing date', 'auto sign', 'date', 'dropdown', 'checkbox', 'drawn field'];\n const dateTypes = ['date', 'signing date'];\n\n this.dataItem = this.dataItem.map(item => {\n const currentType = item.formElementType as string;\n const shouldClearValue = noValueTypes.includes(newType) || dateTypes.includes(currentType);\n const isSender = item.signer === 0;\n let elementType: string;\n if (isSender) {\n elementType = 'admin';\n } else if (newType === 'signature') {\n elementType = 'signature';\n } else if (newType === 'initials') {\n elementType = 'initials';\n } else {\n elementType = 'text';\n }\n return { ...item, formElementType: newType as any, elementType, validation: defaultValidation, ...(shouldClearValue ? { value: '' } : {}) };\n });\n\n // Emit immediately — field type change is a discrete action, not continuous input\n if (this.labeltimer) clearTimeout(this.labeltimer);\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n private getSenderDisabledReason(): string {\n const signerOnly = ['file', 'drawn', 'drawn field', 'initials'];\n const nameMap = {\n 'file': dvI18n.t('toolbox.file'),\n 'drawn': dvI18n.t('toolbox.drawn'),\n 'drawn field': dvI18n.t('toolbox.drawn'),\n 'initials': dvI18n.t('toolbox.initials'),\n };\n const disallowedTypes = [...new Set(\n this.dataItem\n ?.filter(item => signerOnly.includes(item.formElementType as string))\n .map(item => nameMap[item.formElementType as string] || item.formElementType)\n )];\n if (disallowedTypes.length === 0) return '';\n const fieldTypes = disallowedTypes.length === 1\n ? disallowedTypes[0]\n : disallowedTypes.slice(0, -1).join(', ') + ' and ' + disallowedTypes[disallowedTypes.length - 1];\n return dvI18n.t('fieldproperties.cannotreassignsender', { fieldTypes });\n }\n\n private handleReassign(newSigner: number) {\n this.dataItem = this.dataItem.map(item => {\n const fieldType = item.formElementType as string;\n // Auto Sign reassigned away from Sender → becomes Signature\n if (fieldType === 'auto sign' && newSigner !== 0) {\n return { ...item, signer: newSigner, formElementType: 'signature' as const, elementType: 'signature', validation: 0 };\n }\n // Signature reassigned to Sender → becomes Auto Sign\n if (fieldType === 'signature' && newSigner === 0) {\n return { ...item, signer: newSigner, formElementType: 'auto sign' as any, elementType: 'admin', validation: 3000 };\n }\n // Initials reassigned to Sender → becomes Text (sender can't have initials)\n if (fieldType === 'initials' && newSigner === 0) {\n return { ...item, signer: newSigner, formElementType: 'text' as any, elementType: 'admin', validation: 0 };\n }\n // Any field reassigned to Sender → elementType becomes 'admin'\n if (newSigner === 0) {\n return { ...item, signer: newSigner, elementType: 'admin' };\n }\n // Any field reassigned away from Sender → revert elementType\n if (item.signer === 0) {\n const elType = (fieldType === 'initials') ? 'initials' : 'text';\n return { ...item, signer: newSigner, elementType: elType };\n }\n return { ...item, signer: newSigner };\n });\n\n if (this.labeltimer) clearTimeout(this.labeltimer);\n this.labeltimer = setTimeout(() => {\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }, 500);\n }\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'ls-dv-field-set'} slot=\"content\">\n {this.roles?.length > 0 && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.assignee')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.assigneedescription')}</p>\n </div>\n <ls-assignee-select\n signer={this.allSignersSame().signer}\n roles={this.roles}\n disabled={this.readonly}\n disabledSenderReason={this.getSenderDisabledReason()}\n disabledApproverReason={this.hasSignatureType() ? dvI18n.t('fieldproperties.signaturecannotapprover') : ''}\n mixed={!this.allSignersSame().isSame}\n onAssigneeChange={ev => this.handleReassign(ev.detail)}\n />\n </div>\n )}\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.fieldtype')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.fieldtypedescriptionmultiple')}</p>\n </div>\n <ls-field-type-select\n fieldType={this.allFieldTypesSame().fieldType}\n assignee={this.allSignersSame().signer}\n roles={this.roles}\n roleTypes={this.getAllRoleTypes()}\n disabled={this.readonly}\n mixed={!this.allFieldTypesSame().isSame}\n filtertoolbox={this.filtertoolbox}\n onFieldTypeChange={ev => this.handleFieldTypeChange(ev.detail)}\n />\n </div>\n <div class={'ls-dv-field-properties-section ls-dv-row'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.requiredfield')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.requiredfielddescription')}</p>\n </div>\n <ls-toggle onValueChange={(ev) => !this.readonly && this.alterImmediate({ optional: !ev.detail })} checked={!this.allFieldsOptional().optional} indeterminate={this.allFieldsOptional().isSame === false} />\n </div>\n\n\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.fieldlabel')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.fieldlabeldescription')}</p>\n </div>\n <ls-formfield\n as=\"text\"\n name=\"field-label\"\n value={this.allLabelsSame().label}\n placeholder={this.allLabelsSame().isSame ? dvI18n.t('fieldproperties.placeholdersignhere') : dvI18n.t('fieldproperties.mixed')}\n disabled={this.readonly}\n onTextChange={e => this.alter({ label: e.detail.value })}\n />\n </div>\n\n {this.allFieldTypesSame().isSame && this.supportsValue() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.value')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.valuedescription')}</p>\n </div>\n <ls-formfield\n as=\"text\"\n name=\"field-value\"\n value={this.allValuesSame().value}\n placeholder={this.allValuesSame().isSame ? getFieldPlaceholder(this.allFieldTypesSame().fieldType) : dvI18n.t('fieldproperties.mixed')}\n valid={!this.valueError}\n dirty={!!this.allValuesSame().value}\n errorText={this.valueError}\n disabled={this.readonly}\n onTextChange={e => {\n const val = e.detail.value;\n this.valueError = validateFieldValue(\n this.allFieldTypesSame().fieldType,\n this.allValidationsSame().validation,\n val,\n this.dataItem[0]?.options,\n );\n this.alter({ value: val });\n }}\n />\n {this.valueError && <p class={'ls-dv-error-text'}>{this.valueError}</p>}\n </div>\n )}\n\n {this.isAllCheckboxes() && this.getCheckboxStates().length === 2 && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.displaystate')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.displaystatedescription')}</p>\n </div>\n <div class=\"ls-dv-checkbox-toggle\">\n {this.getCheckboxStates().map((state, idx) => (\n <button\n key={idx}\n class={{ 'ls-dv-checkbox-toggle-btn': true, 'ls-dv-active': this.allValuesSame().isSame && (idx === 0 ? this.allValuesSame().value !== 'true' : this.allValuesSame().value === 'true') }}\n onClick={() => !this.readonly && this.alterImmediate({ value: idx === 0 ? 'false' : 'true' })}\n disabled={this.readonly}\n >\n {state}\n </button>\n ))}\n </div>\n {!this.allValuesSame().isSame && <p class={'ls-dv-mixed-hint'}>{dvI18n.t('fieldproperties.mixed')}</p>}\n </div>\n )}\n\n {this.allFieldTypesSame().isSame && this.isDateType() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.value')}</p>\n </div>\n <input\n type=\"date\"\n value={this.allValuesSame().isSame ? this.toISODate(this.allValuesSame().value, this.dataItem[0].validation) : ''}\n onChange={(e) => {\n const input = e.target as HTMLInputElement;\n // Convert ISO to each field's configured format\n this.dataItem = this.dataItem.map(item => ({\n ...item,\n value: this.formatISOToValidation(input.value, item.validation),\n }));\n if (this.labeltimer) { clearTimeout(this.labeltimer); this.labeltimer = null; }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n forceCloseDatePicker(input);\n }}\n disabled={this.readonly}\n />\n </div>\n )}\n\n {this.showContentFormat() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.contentformat')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.contentformatdescription')}</p>\n </div>\n <ls-input-wrapper select>\n <select\n onChange={ev => !this.readonly && this.handleFormatChange(parseInt((ev.target as HTMLSelectElement).value))}\n disabled={this.readonly}\n >\n {!this.allValidationsSame().isSame && (\n <option disabled selected value=\"\">{dvI18n.t('fieldproperties.mixed')}</option>\n )}\n {validationTypes\n .filter(type => type.formType === this.allFieldTypesSame().fieldType)\n .map(type => (\n <option selected={this.allValidationsSame().validation === type.id} value={type.id}>\n {type.description}\n </option>\n ))}\n </select>\n </ls-input-wrapper>\n </div>\n )}\n </div>\n <div class={'ls-dv-field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-size dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"placement\">\n <ls-field-alignment dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-placement dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-distribute dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} readonly={this.readonly} />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-ByN7GurE.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-multiple/ls-field-properties-multiple.scss?tag=ls-field-properties-multiple&encapsulation=shadow","src/components/ls-field-properties-multiple/ls-field-properties-multiple.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.ls-dv-properties-container {\n display: flex;\n flex-direction: column;\n height: 100%;\n}\n\n.ls-dv-field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n.ls-dv-field-properties-section {\n display: flex;\n position: relative;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.ls-dv-row {\n flex-direction: row;\n align-items: center;\n justify-content: space-between;\n}\n\n.ls-dv-field-properties-section-text {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n padding: 0.25rem;\n}\n\n.ls-dv-field-properties-section-title {\n color: $gray-90;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n}\n\n.ls-dv-field-properties-section-description {\n overflow: hidden;\n color: $gray-80;\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.ls-dv-field-type-wrapper {\n position: relative;\n border-radius: 0.875rem;\n padding: 0.25rem;\n}\n\n.ls-dv-field-type-inner {\n border-radius: 0.625rem;\n background: $white;\n display: flex;\n padding: 0.25rem 0.5rem 0.25rem 0.25rem;\n align-items: center;\n gap: 0.875rem;\n align-self: stretch;\n}\n\n.ls-dv-field-type-icon {\n display: flex;\n padding: 0.5rem;\n align-items: center;\n border-radius: 0.625rem;\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\n.ls-dv-field-type-name {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1.5rem; /* 150% */\n text-transform: capitalize;\n}\n\n.ls-dv-tabs-container {\n display: grid;\n grid-template-columns: repeat(3, 1fr);\n width: 100%;\n gap: 0.125rem;\n padding: 0.125rem;\n border: 1px solid $gray-30;\n border-radius: 0.75rem;\n background: $white;\n}\n\n.ls-dv-tab {\n all: unset;\n display: flex;\n justify-content: center;\n align-items: center;\n cursor: pointer;\n padding: 0.5rem;\n border-radius: 0.625rem;\n font-size: 0.875rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.25rem; /* 142.857% */\n color: $gray-80;\n}\n\n.ls-dv-tab.ls-dv-active {\n background: $primary-10;\n color: $primary-60;\n}\n\n.ls-dv-tab:not(.ls-dv-active):hover {\n background: $gray-10;\n}\n\n.ls-dv-button-footer {\n display: flex;\n padding-top: 1rem;\n border-top: 1px solid $gray-20;\n flex-direction: column;\n justify-content: flex-end;\n gap: 0.75rem;\n margin-top: auto;\n}\n\n.ls-dv-scrolling-container {\n overflow-y: auto;\n padding: 0 1rem;\n margin: 0 -1rem;\n height: calc(100% - 10.938rem);\n}\n\n/* Global Styles */\n\np {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n\n.ls-dv-input-wrapper {\n position: relative;\n}\n\n.ls-dv-full-width {\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: $gray-80;\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: $gray-80;\n}\n\n.ls-dv-has-leading-icon {\n padding-left: 2.5rem;\n}\n\ninput,\nselect,\ntextarea {\n border: 1px solid $gray-40;\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.625rem;\n color: $gray-100;\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: $gray-60;\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: $gray-50;\n background-color: $white;\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem $primary-40;\n border-color: $primary-60;\n background-color: $white;\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: $primary-50;\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: $gray-10;\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'].ls-dv-indeterminate {\n background-color: $primary-60;\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'].ls-dv-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'].ls-dv-indeterminate:hover {\n background-color: $primary-70;\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 $primary-20;\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.ls-dv-checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.ls-dv-checkbox-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.ls-dv-form-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.ls-dv-form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.ls-dv-loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: $primary-60;\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: $primary-60;\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.ls-dv-tertiary-grey {\n border: 1px solid $gray-40;\n background-color: white;\n color: $gray-80;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-secondary {\n border: 1px solid $gray-50;\n background: $white;\n color: $gray-90;\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.ls-dv-secondary:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-destructive {\n border: 1px solid $red-60;\n background-color: white;\n color: $red-60;\n}\n\nbutton.ls-dv-destructive:hover {\n border: 1px solid $red-70;\n background: $red-10;\n}\n\n\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n\n.ls-dv-input-error {\n border-color: $red-60;\n}\n\n.ls-dv-input-error:focus {\n box-shadow: 0 0 0 0.25rem $red-20;\n border-color: $red-60;\n}\n\n.ls-dv-error-text {\n color: $red-60;\n font-size: var(--text-xs);\n margin-top: 0.25rem;\n}\n\n.ls-dv-checkbox-toggle {\n display: flex;\n gap: 0.5rem;\n background: $gray-10;\n padding: 0.25rem;\n border-radius: 0.75rem;\n}\n\n.ls-dv-checkbox-toggle-btn {\n flex: 1;\n padding: 0.25rem;\n border-radius: 0.5rem;\n display: flex;\n justify-content: center;\n align-items: center;\n font-size: 0.875rem;\n color: $gray-80;\n text-transform: capitalize;\n cursor: pointer;\n border: none;\n background: transparent;\n transition: background 0.15s, box-shadow 0.15s;\n\n &:focus-visible {\n outline: 2px solid $gray-40;\n outline-offset: 2px;\n }\n\n &.ls-dv-active {\n background: white;\n box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);\n }\n\n &:disabled {\n cursor: default;\n opacity: 0.5;\n }\n}\n\n.ls-dv-mixed-hint {\n color: $gray-60;\n font-size: var(--text-xs);\n font-style: italic;\n}\n","import { Component, Host, Prop, h, Event, EventEmitter, State, Watch } from '@stencil/core';\nimport { LSApiElement, LSMutateEvent } from '../../components';\nimport { LSApiRole } from '../../types/LSApiRole';\nimport { dvI18n } from '../../i18n/i18n';\nimport { getDefaultValidationForType } from '../ls-field-type-select/fieldTypeUtils';\nimport { getFieldPlaceholder } from '../ls-document-viewer/defaultFieldLabels';\nimport { validationTypes } from '../ls-document-viewer/editorUtils';\nimport { validateFieldValue } from '../../utils/fieldValueValidator';\nimport { forceCloseDatePicker } from '../../utils/utils';\n\n\n@Component({\n tag: 'ls-field-properties-multiple',\n styleUrl: 'ls-field-properties-multiple.scss',\n shadow: true,\n})\nexport class LsFieldPropertiesMultiple {\n @Prop({ mutable: true }) dataItem: LSApiElement[];\n @Prop() roles: LSApiRole[] = [];\n @Prop() readonly: boolean = false;\n @Prop() filtertoolbox: string = null;\n @State() valueError: string | null = null;\n\n @Watch('dataItem')\n validateOnChange() {\n if (this.allFieldTypesSame().isSame && this.supportsValue() && this.allValuesSame().isSame) {\n this.valueError = validateFieldValue(\n this.allFieldTypesSame().fieldType,\n this.allValidationsSame().validation,\n this.allValuesSame().value,\n this.dataItem[0]?.options,\n );\n } else {\n this.valueError = null;\n }\n }\n\n componentWillLoad() {\n this.validateOnChange();\n }\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n mutate: EventEmitter<LSMutateEvent[]>;\n\n @Event({\n bubbles: true,\n cancelable: true,\n composed: true,\n })\n update: EventEmitter<LSMutateEvent[]>;\n\n // Send one or more mutations up the chain\n // The source of the chain fires the mutation\n // NOTE this alter is debounced to account for typing\n alter(diff: object) {\n this.dataItem = this.dataItem.map(item => ({ ...item, ...diff }));\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.update.emit(evs);\n this.debounce(diff, 1500);\n }\n\n // Immediate alter for non-typing actions (toggles, selects)\n alterImmediate(diff: object) {\n this.dataItem = this.dataItem.map(item => ({ ...item, ...diff }));\n if (this.labeltimer) {\n clearTimeout(this.labeltimer);\n this.labeltimer = null;\n }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n private labeltimer;\n\n debounce(diff, delay) {\n if (this.labeltimer) clearTimeout(this.labeltimer);\n\n this.labeltimer = setTimeout(() => {\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: { ...item, ...diff } }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }, delay);\n }\n \n allSignersSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, signer: undefined };\n const firstSigner = this.dataItem[0].signer;\n const allSame = this.dataItem.every(item => item.signer === firstSigner);\n return { isSame: allSame, signer: allSame ? firstSigner : 13 };\n };\n\n allLabelsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, label: undefined };\n const firstLabel = this.dataItem[0].label;\n const allSame = this.dataItem.every(item => item.label === firstLabel);\n return { isSame: allSame, label: allSame ? firstLabel : undefined };\n };\n\n allElementsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, elementType: 'mixed' };\n const firstElementType = this.dataItem[0].elementType;\n const allSame = this.dataItem.every(item => item.elementType === firstElementType);\n return { isSame: allSame, elementType: allSame ? firstElementType : 'mixed' };\n };\n\n allFieldTypesSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, fieldType: 'text' };\n const firstType = this.dataItem[0].formElementType;\n const allSame = this.dataItem.every(item => item.formElementType === firstType);\n return { isSame: allSame, fieldType: allSame ? firstType : 'mixed' };\n };\n\n allValuesSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, value: '' };\n const firstValue = this.dataItem[0].value || '';\n const allSame = this.dataItem.every(item => (item.value || '') === firstValue);\n return { isSame: allSame, value: allSame ? firstValue : '' };\n };\n\n supportsValue = () => {\n const typesWithoutValue = ['signature', 'initials', 'file', 'signing', 'autosign', 'signing date', 'auto sign', 'dropdown', 'checkbox', 'drawn field', 'date'];\n const fieldType = this.allFieldTypesSame().fieldType;\n return !typesWithoutValue.includes(fieldType);\n };\n\n isAllCheckboxes = () => {\n return this.allFieldTypesSame().isSame && this.allFieldTypesSame().fieldType === 'checkbox';\n };\n\n private getCheckboxStates(): string[] {\n if (!this.dataItem || this.dataItem.length === 0) return [];\n const vType = validationTypes.find(v => v.id === this.dataItem[0].validation);\n if (!vType) return [];\n return vType.description.split('/').reverse();\n }\n\n isDateType = () => {\n return this.allFieldTypesSame().fieldType === 'date';\n };\n\n allValidationsSame = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, validation: 0 };\n const firstValidation = this.dataItem[0].validation;\n const allSame = this.dataItem.every(item => item.validation === firstValidation);\n return { isSame: allSame, validation: allSame ? firstValidation : null };\n };\n\n showContentFormat = () => {\n const fieldType = this.allFieldTypesSame().fieldType;\n const excluded = ['drawn field', 'regular expression', 'initials', 'signature', 'mixed'];\n return this.allFieldTypesSame().isSame && !excluded.includes(fieldType);\n };\n\n private getDateFormatById(validation: number): string | null {\n const vType = validationTypes.find(v => v.id === validation);\n if (!vType || vType.inputType !== 'date') return null;\n return vType.description;\n }\n\n private convertDateValue(currentValue: string, oldValidation: number, newValidation: number): string {\n if (!currentValue) return '';\n const oldFormat = this.getDateFormatById(oldValidation);\n const newFormat = this.getDateFormatById(newValidation);\n if (!oldFormat || !newFormat) return currentValue;\n\n const sep = oldFormat.match(/[/.-]/)?.[0] || '/';\n const parts = oldFormat.split(/[/.-]/);\n const valueParts = currentValue.split(sep);\n if (valueParts.length < 2) return currentValue;\n\n let y = '', m = '', d = '';\n parts.forEach((p, i) => {\n const v = valueParts[i] || '';\n if (p.startsWith('y')) y = v;\n else if (p.startsWith('m')) m = v;\n else if (p.startsWith('d')) d = v;\n });\n\n if (y.length === 2) y = '20' + y;\n if (!d) d = '01';\n\n return newFormat\n .replace('yyyy', y.padStart(4, '0'))\n .replace('yy', y.slice(-2))\n .replace('mm', m.padStart(2, '0'))\n .replace('dd', d.padStart(2, '0'))\n .replace('d', String(parseInt(d)));\n }\n\n private formatISOToValidation(isoValue: string, validation: number): string {\n if (!isoValue) return '';\n const [y, m, d] = isoValue.split('-');\n const format = this.getDateFormatById(validation);\n if (!format) return isoValue;\n\n return format\n .replace('yyyy', y)\n .replace('yy', y.slice(-2))\n .replace('mm', m)\n .replace('dd', d)\n .replace('d', String(parseInt(d)));\n }\n\n private toISODate(value: string, validation: number): string {\n if (!value) return '';\n const format = this.getDateFormatById(validation);\n if (!format) return value;\n\n const sep = format.match(/[/.-]/)?.[0] || '/';\n const parts = format.split(/[/.-]/);\n const valueParts = value.split(sep);\n if (valueParts.length < 2) return value;\n\n let y = '', m = '', d = '';\n parts.forEach((p, i) => {\n const v = valueParts[i] || '';\n if (p.startsWith('y')) y = v;\n else if (p.startsWith('m')) m = v;\n else if (p.startsWith('d')) d = v;\n });\n\n if (y.length === 2) y = '20' + y;\n if (!d) d = '01';\n\n return `${y.padStart(4, '0')}-${m.padStart(2, '0')}-${d.padStart(2, '0')}`;\n }\n\n handleFormatChange(newValidation: number) {\n if (this.isDateType()) {\n // Convert each field's date value to the new format\n this.dataItem = this.dataItem.map(item => ({\n ...item,\n validation: newValidation,\n value: this.convertDateValue(item.value || '', item.validation, newValidation),\n }));\n } else {\n this.dataItem = this.dataItem.map(item => ({ ...item, validation: newValidation }));\n }\n if (this.labeltimer) {\n clearTimeout(this.labeltimer);\n this.labeltimer = null;\n }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n allFieldsOptional = () => {\n if (!this.dataItem || this.dataItem.length === 0) return { isSame: true, optional: false };\n const firstElementOptional = this.dataItem[0].optional;\n const allSame = this.dataItem.every(item => item.optional === firstElementOptional);\n return { isSame: allSame, optional: allSame ? firstElementOptional : false };\n };\n\n private hasSignatureType(): boolean {\n return this.dataItem?.some(item => item.formElementType === 'signature' || (item.formElementType as string) === 'auto sign');\n }\n\n private getAllRoleTypes(): string[] {\n const types = new Set<string>();\n for (const item of this.dataItem || []) {\n if (item.signer === 0) {\n types.add('SENDER');\n } else {\n const role = this.roles?.find(r => r.signerIndex === item.signer);\n types.add(role?.roleType || 'SIGNER');\n }\n }\n return [...types];\n }\n\n private handleFieldTypeChange(newType: string) {\n const defaultValidation = getDefaultValidationForType(newType);\n const noValueTypes = ['signature', 'initials', 'file', 'signing date', 'auto sign', 'date', 'dropdown', 'checkbox', 'drawn field'];\n const dateTypes = ['date', 'signing date'];\n\n this.dataItem = this.dataItem.map(item => {\n const currentType = item.formElementType as string;\n const shouldClearValue = noValueTypes.includes(newType) || dateTypes.includes(currentType);\n const isSender = item.signer === 0;\n let elementType: string;\n if (isSender) {\n elementType = 'admin';\n } else if (newType === 'signature') {\n elementType = 'signature';\n } else if (newType === 'initials') {\n elementType = 'initials';\n } else {\n elementType = 'text';\n }\n return { ...item, formElementType: newType as any, elementType, validation: defaultValidation, ...(shouldClearValue ? { value: '' } : {}) };\n });\n\n // Emit immediately — field type change is a discrete action, not continuous input\n if (this.labeltimer) clearTimeout(this.labeltimer);\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }\n\n private getSenderDisabledReason(): string {\n const signerOnly = ['file', 'drawn', 'drawn field', 'initials'];\n const nameMap = {\n 'file': dvI18n.t('toolbox.file'),\n 'drawn': dvI18n.t('toolbox.drawn'),\n 'drawn field': dvI18n.t('toolbox.drawn'),\n 'initials': dvI18n.t('toolbox.initials'),\n };\n const disallowedTypes = [...new Set(\n this.dataItem\n ?.filter(item => signerOnly.includes(item.formElementType as string))\n .map(item => nameMap[item.formElementType as string] || item.formElementType)\n )];\n if (disallowedTypes.length === 0) return '';\n const fieldTypes = disallowedTypes.length === 1\n ? disallowedTypes[0]\n : disallowedTypes.slice(0, -1).join(', ') + ' and ' + disallowedTypes[disallowedTypes.length - 1];\n return dvI18n.t('fieldproperties.cannotreassignsender', { fieldTypes });\n }\n\n private handleReassign(newSigner: number) {\n this.dataItem = this.dataItem.map(item => {\n const fieldType = item.formElementType as string;\n // Auto Sign reassigned away from Sender → becomes Signature\n if (fieldType === 'auto sign' && newSigner !== 0) {\n return { ...item, signer: newSigner, formElementType: 'signature' as const, elementType: 'signature', validation: 0 };\n }\n // Signature reassigned to Sender → becomes Auto Sign\n if (fieldType === 'signature' && newSigner === 0) {\n return { ...item, signer: newSigner, formElementType: 'auto sign' as any, elementType: 'admin', validation: 3000 };\n }\n // Initials reassigned to Sender → becomes Text (sender can't have initials)\n if (fieldType === 'initials' && newSigner === 0) {\n return { ...item, signer: newSigner, formElementType: 'text' as any, elementType: 'admin', validation: 0 };\n }\n // Any field reassigned to Sender → elementType becomes 'admin'\n if (newSigner === 0) {\n return { ...item, signer: newSigner, elementType: 'admin' };\n }\n // Any field reassigned away from Sender → revert elementType\n if (item.signer === 0) {\n const elType = (fieldType === 'initials') ? 'initials' : 'text';\n return { ...item, signer: newSigner, elementType: elType };\n }\n return { ...item, signer: newSigner };\n });\n\n if (this.labeltimer) clearTimeout(this.labeltimer);\n this.labeltimer = setTimeout(() => {\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n }, 500);\n }\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'ls-dv-field-set'} slot=\"content\">\n {this.roles?.length > 0 && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.assignee')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.assigneedescription')}</p>\n </div>\n <ls-assignee-select\n signer={this.allSignersSame().signer}\n roles={this.roles}\n disabled={this.readonly}\n disabledSenderReason={this.getSenderDisabledReason()}\n disabledApproverReason={this.hasSignatureType() ? dvI18n.t('fieldproperties.signaturecannotapprover') : ''}\n mixed={!this.allSignersSame().isSame}\n onAssigneeChange={ev => this.handleReassign(ev.detail)}\n />\n </div>\n )}\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.fieldtype')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.fieldtypedescriptionmultiple')}</p>\n </div>\n <ls-field-type-select\n fieldType={this.allFieldTypesSame().fieldType}\n assignee={this.allSignersSame().signer}\n roles={this.roles}\n roleTypes={this.getAllRoleTypes()}\n disabled={this.readonly}\n mixed={!this.allFieldTypesSame().isSame}\n filtertoolbox={this.filtertoolbox}\n onFieldTypeChange={ev => this.handleFieldTypeChange(ev.detail)}\n />\n </div>\n <div class={'ls-dv-field-properties-section ls-dv-row'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.requiredfield')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.requiredfielddescription')}</p>\n </div>\n <ls-toggle onValueChange={(ev) => !this.readonly && this.alterImmediate({ optional: !ev.detail })} checked={!this.allFieldsOptional().optional} indeterminate={this.allFieldsOptional().isSame === false} />\n </div>\n\n\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.fieldlabel')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.fieldlabeldescription')}</p>\n </div>\n <ls-formfield\n as=\"text\"\n name=\"field-label\"\n value={this.allLabelsSame().label}\n placeholder={this.allLabelsSame().isSame ? dvI18n.t('fieldproperties.placeholdersignhere') : dvI18n.t('fieldproperties.mixed')}\n disabled={this.readonly}\n onTextChange={e => this.alter({ label: e.detail.value })}\n />\n </div>\n\n {this.allFieldTypesSame().isSame && this.supportsValue() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.value')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.valuedescription')}</p>\n </div>\n <ls-formfield\n as=\"text\"\n name=\"field-value\"\n value={this.allValuesSame().value}\n placeholder={this.allValuesSame().isSame ? getFieldPlaceholder(this.allFieldTypesSame().fieldType) : dvI18n.t('fieldproperties.mixed')}\n valid={!this.valueError}\n dirty={!!this.allValuesSame().value}\n errorText={this.valueError}\n disabled={this.readonly}\n onTextChange={e => {\n const val = e.detail.value;\n this.valueError = validateFieldValue(\n this.allFieldTypesSame().fieldType,\n this.allValidationsSame().validation,\n val,\n this.dataItem[0]?.options,\n );\n this.alter({ value: val });\n }}\n />\n {this.valueError && <p class={'ls-dv-error-text'}>{this.valueError}</p>}\n </div>\n )}\n\n {this.isAllCheckboxes() && this.getCheckboxStates().length === 2 && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.displaystate')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.displaystatedescription')}</p>\n </div>\n <div class=\"ls-dv-checkbox-toggle\">\n {this.getCheckboxStates().map((state, idx) => (\n <button\n key={idx}\n class={{ 'ls-dv-checkbox-toggle-btn': true, 'ls-dv-active': this.allValuesSame().isSame && (idx === 0 ? this.allValuesSame().value !== 'true' : this.allValuesSame().value === 'true') }}\n onClick={() => !this.readonly && this.alterImmediate({ value: idx === 0 ? 'false' : 'true' })}\n disabled={this.readonly}\n >\n {state}\n </button>\n ))}\n </div>\n {!this.allValuesSame().isSame && <p class={'ls-dv-mixed-hint'}>{dvI18n.t('fieldproperties.mixed')}</p>}\n </div>\n )}\n\n {this.allFieldTypesSame().isSame && this.isDateType() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.value')}</p>\n </div>\n <input\n type=\"date\"\n value={this.allValuesSame().isSame ? this.toISODate(this.allValuesSame().value, this.dataItem[0].validation) : ''}\n onChange={(e) => {\n const input = e.target as HTMLInputElement;\n // Convert ISO to each field's configured format\n this.dataItem = this.dataItem.map(item => ({\n ...item,\n value: this.formatISOToValidation(input.value, item.validation),\n }));\n if (this.labeltimer) { clearTimeout(this.labeltimer); this.labeltimer = null; }\n const evs: LSMutateEvent[] = this.dataItem.map(item => ({ action: 'update', data: item }));\n this.mutate.emit(evs);\n this.update.emit(evs);\n forceCloseDatePicker(input);\n }}\n disabled={this.readonly}\n />\n </div>\n )}\n\n {this.showContentFormat() && (\n <div class={'ls-dv-field-properties-section'}>\n <div class={'ls-dv-field-properties-section-text'}>\n <p class={'ls-dv-field-properties-section-title'}>{dvI18n.t('fieldproperties.contentformat')}</p>\n <p class={'ls-dv-field-properties-section-description'}>{dvI18n.t('fieldproperties.contentformatdescription')}</p>\n </div>\n <ls-input-wrapper select>\n <select\n onChange={ev => !this.readonly && this.handleFormatChange(parseInt((ev.target as HTMLSelectElement).value))}\n disabled={this.readonly}\n >\n {!this.allValidationsSame().isSame && (\n <option disabled selected value=\"\">{dvI18n.t('fieldproperties.mixed')}</option>\n )}\n {validationTypes\n .filter(type => type.formType === this.allFieldTypesSame().fieldType)\n .map(type => (\n <option selected={this.allValidationsSame().validation === type.id} value={type.id}>\n {type.description}\n </option>\n ))}\n </select>\n </ls-input-wrapper>\n </div>\n )}\n </div>\n <div class={'ls-dv-field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-size dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"placement\">\n <ls-field-alignment dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-placement dataItem={this.dataItem} readonly={this.readonly} />\n <ls-field-distribute dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} readonly={this.readonly} />\n <slot></slot>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -6,7 +6,7 @@ import { d as defineCustomElement$k } from './p-CTMHCecN.js';
6
6
  import { d as defineCustomElement$j } from './p-C-vCe5Wm.js';
7
7
  import { d as defineCustomElement$i } from './p-gvdT4if6.js';
8
8
  import { d as defineCustomElement$h } from './p-DGQDJCUG.js';
9
- import { d as defineCustomElement$g } from './p-nEeIgVD4.js';
9
+ import { d as defineCustomElement$g } from './p-BTcdVmkv.js';
10
10
  import { d as defineCustomElement$f } from './p-CyHkY6Ep.js';
11
11
  import { d as defineCustomElement$e } from './p-eWb3jk9k.js';
12
12
  import { d as defineCustomElement$d } from './p-CzkJGTTH.js';
@@ -178,6 +178,6 @@ function defineCustomElement() {
178
178
  defineCustomElement();
179
179
 
180
180
  export { LsFieldPropertiesGeneral as L, defineCustomElement as d };
181
- //# sourceMappingURL=p-DKCAgr17.js.map
181
+ //# sourceMappingURL=p-CHbV_3Pe.js.map
182
182
 
183
- //# sourceMappingURL=p-DKCAgr17.js.map
183
+ //# sourceMappingURL=p-CHbV_3Pe.js.map
@@ -1 +1 @@
1
- {"file":"p-DKCAgr17.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,2BAA2B,GAAG,MAAM,CAAC,u2JAAu2J,CAAC;;MCSt4J,wBAAwB,iBAAAA,kBAAA,CAAA,MAAA,wBAAA,SAAAC,CAAA,CAAA;;;;;;;;AAC3B,IAAA,QAAQ;IACR,KAAK,GAAgB,EAAE;IACvB,QAAQ,GAAY,KAAK;IACzB,aAAa,GAAW,IAAI;IAEpC,MAAM,GAAA;QACJ,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,iBAAiB,EAAE,IAAI,EAAC,SAAS,EAAA,EAC3C,CAAkB,CAAA,kBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAI,CAAA,EAC5H,CAAA,CAAA,8BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAA8B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CAC9E,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAC,YAAY,EAAA,EAC9C,CAAA,CAAA,qBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAqB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CACrE,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAC,WAAW,EAAA,EAC7C,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAoB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CACpE,CACwB,EAChC,CAAA,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAiB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,CAChE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-general/ls-field-properties-general.scss?tag=ls-field-properties-general&encapsulation=shadow","src/components/ls-field-properties-general/ls-field-properties-general.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.ls-dv-field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n/* Global Styles */\n\np {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n.ls-dv-has-leading-icon {\n padding-left: 2.5rem;\n}\n\n\ninput,\nselect,\ntextarea {\n border: 1px solid $gray-40;\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.625rem;\n color: $gray-100;\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: $gray-60;\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: $gray-50;\n background-color: $white;\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem $primary-40;\n border-color: $primary-60;\n background-color: $white;\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: $primary-50;\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: $gray-10;\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'].ls-dv-indeterminate {\n background-color: $primary-60;\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'].ls-dv-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'].ls-dv-indeterminate:hover {\n background-color: $primary-70;\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 $primary-20;\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.ls-dv-checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.ls-dv-checkbox-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.ls-dv-form-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.ls-dv-form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.ls-dv-loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: $primary-60;\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: $primary-60;\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.ls-dv-tertiary-grey {\n border: 1px solid $gray-40;\n background-color: white;\n color: $gray-80;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-secondary {\n border: 1px solid $gray-50;\n background: $white;\n color: $gray-90;\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.ls-dv-secondary:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-destructive {\n border: 1px solid $red-60;\n background-color: white;\n color: $red-60;\n}\n\nbutton.ls-dv-destructive:hover {\n border: 1px solid $red-70;\n background: $red-10;\n}\n\n\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { LSApiElement } from '../../components';\nimport { LSApiRole } from '../../types/LSApiRole';\n\n@Component({\n tag: 'ls-field-properties-general',\n styleUrl: 'ls-field-properties-general.scss',\n shadow: true,\n})\nexport class LsFieldPropertiesGeneral {\n @Prop() dataItem: LSApiElement;\n @Prop() roles: LSApiRole[] = [];\n @Prop() readonly: boolean = false;\n @Prop() filtertoolbox: string = null;\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'ls-dv-field-set'} slot=\"content\">\n <ls-field-content dataItem={this.dataItem} roles={this.roles} readonly={this.readonly} filtertoolbox={this.filtertoolbox} />\n <ls-field-properties-advanced dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"placement\">\n <ls-field-placement dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} readonly={this.readonly} />\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CHbV_3Pe.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,MAAM,2BAA2B,GAAG,MAAM,CAAC,u2JAAu2J,CAAC;;MCSt4J,wBAAwB,iBAAAA,kBAAA,CAAA,MAAA,wBAAA,SAAAC,CAAA,CAAA;;;;;;;;AAC3B,IAAA,QAAQ;IACR,KAAK,GAAgB,EAAE;IACvB,QAAQ,GAAY,KAAK;IACzB,aAAa,GAAW,IAAI;IAEpC,MAAM,GAAA;QACJ,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,iBAAiB,EAAE,IAAI,EAAC,SAAS,EAAA,EAC3C,CAAkB,CAAA,kBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAI,CAAA,EAC5H,CAAA,CAAA,8BAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAA8B,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CAC9E,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAC,YAAY,EAAA,EAC9C,CAAA,CAAA,qBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAqB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CACrE,EACN,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,iBAAiB,EAAE,IAAI,EAAC,WAAW,EAAA,EAC7C,CAAA,CAAA,oBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAoB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAA,CAAI,CACpE,CACwB,EAChC,CAAA,CAAA,iBAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAiB,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAI,CAAA,CAChE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-field-properties-general/ls-field-properties-general.scss?tag=ls-field-properties-general&encapsulation=shadow","src/components/ls-field-properties-general/ls-field-properties-general.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.ls-dv-field-set {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n width: 100%;\n}\n\n/* Global Styles */\n\np {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n width: 100%;\n}\n.ls-dv-has-leading-icon {\n padding-left: 2.5rem;\n}\n\n\ninput,\nselect,\ntextarea {\n border: 1px solid $gray-40;\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.625rem;\n color: $gray-100;\n font-weight: 400;\n}\n\ninput::placeholder,\nselect::placeholder,\ntextarea::placeholder {\n color: $gray-60;\n}\n\ninput:hover,\nselect:hover,\ntextarea:hover {\n border-color: $gray-50;\n background-color: $white;\n}\n\ninput:focus,\nselect:focus,\ntextarea:focus {\n outline: none;\n box-shadow: 0 0 0 0.25rem $primary-40;\n border-color: $primary-60;\n background-color: $white;\n}\n\ninput:active,\nselect:active,\ntextarea:active {\n border-color: $primary-50;\n}\n\ninput:disabled,\nselect:disabled,\ntextarea:disabled {\n cursor: not-allowed;\n background-color: $gray-10;\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'].ls-dv-indeterminate {\n background-color: $primary-60;\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'].ls-dv-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'].ls-dv-indeterminate:hover {\n background-color: $primary-70;\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 $primary-20;\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.ls-dv-checkbox-container {\n display: flex;\n gap: 0.5rem;\n width: 100%;\n}\n\n.ls-dv-checkbox-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 400;\n line-height: 1rem;\n}\n\n.ls-dv-form-label {\n color: $gray-100;\n font-size: 1rem;\n font-style: normal;\n font-weight: 500;\n line-height: 1.5rem;\n}\n\n.ls-dv-form-field {\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n width: 100%;\n}\n\n.ls-dv-loading-box {\n display: flex;\n justify-content: center;\n align-items: center;\n width: 100%;\n height: 100vh;\n color: $primary-60;\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: $primary-60;\n color: white;\n font-weight: 500;\n text-transform: capitalize;\n min-height: 2.25rem;\n min-width: 2.25rem;\n}\n\nbutton.ls-dv-tertiary-grey {\n border: 1px solid $gray-40;\n background-color: white;\n color: $gray-80;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-secondary {\n border: 1px solid $gray-50;\n background: $white;\n color: $gray-90;\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.ls-dv-secondary:hover {\n border: 1px solid $gray-50;\n background: $gray-10;\n}\n\nbutton.ls-dv-destructive {\n border: 1px solid $red-60;\n background-color: white;\n color: $red-60;\n}\n\nbutton.ls-dv-destructive:hover {\n border: 1px solid $red-70;\n background: $red-10;\n}\n\n\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n","import { Component, Host, Prop, h } from '@stencil/core';\nimport { LSApiElement } from '../../components';\nimport { LSApiRole } from '../../types/LSApiRole';\n\n@Component({\n tag: 'ls-field-properties-general',\n styleUrl: 'ls-field-properties-general.scss',\n shadow: true,\n})\nexport class LsFieldPropertiesGeneral {\n @Prop() dataItem: LSApiElement;\n @Prop() roles: LSApiRole[] = [];\n @Prop() readonly: boolean = false;\n @Prop() filtertoolbox: string = null;\n\n render() {\n return (\n <Host>\n <ls-field-properties-container tabs={['content', 'placement', 'dimensions']}>\n <div class={'ls-dv-field-set'} slot=\"content\">\n <ls-field-content dataItem={this.dataItem} roles={this.roles} readonly={this.readonly} filtertoolbox={this.filtertoolbox} />\n <ls-field-properties-advanced dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"dimensions\">\n <ls-field-dimensions dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n <div class={'ls-dv-field-set'} slot=\"placement\">\n <ls-field-placement dataItem={this.dataItem} readonly={this.readonly} />\n </div>\n </ls-field-properties-container>\n <ls-field-footer dataItem={this.dataItem} readonly={this.readonly} />\n </Host>\n );\n }\n}\n"],"version":3}
@@ -7,7 +7,7 @@ import { d as defineCustomElement$3 } from './p-BHeJScTh.js';
7
7
  import { d as defineCustomElement$2 } from './p-C2JalniE.js';
8
8
  import { d as defineCustomElement$1 } from './p-XnnsjcVC.js';
9
9
 
10
- const version = "1.0.11";
10
+ const version = "1.0.13";
11
11
 
12
12
  const lsStatusbarCss = () => `:host{position:absolute;z-index:1000;left:23.625rem;right:0.5rem;bottom:1rem;display:flex;flex-direction:row;gap:0.5rem;align-items:end;justify-content:space-between;height:2.25rem;overflow:visible}:host(.ls-dv-statusbar-preview){left:0;right:0;justify-content:center}.ls-dv-status-bar-group{display:flex;flex-direction:row;gap:0.5rem;align-items:end}.ls-dv-controls-bar{display:flex;flex-direction:row;background-color:white;border:1px solid var(--gray-30, #e0e2e5);box-shadow:0px 4px 16px rgba(0, 0, 0, 0.1);border-radius:1.125rem;height:fit-content}.ls-dv-page-nav{margin-left:-6rem;position:relative}:host(.ls-dv-statusbar-preview) .ls-dv-page-nav{margin-left:0}*{margin:0;padding:0;box-sizing:border-box}.ls-dv-status-bar-section{display:flex;flex-direction:row;align-items:center;gap:0.625rem;padding:0 0.625rem;height:2.25rem}.ls-dv-controls-bar>:not(:nth-child(1)){border-left:1px solid var(--gray-30, #e0e2e5)}button{border:0}button:hover{color:var(--gray-100, #45484d);border-radius:0.625rem}button:disabled{color:var(--gray-40, #d8d9dc);cursor:not-allowed}input[type=range]{-webkit-appearance:none;width:100%;height:0.5rem;background:var(--gray-20, #edeff2);border-radius:0.25rem;outline:none}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:0.5rem;height:0.5rem;background:var(--gray-70, #939599);border-radius:50%;cursor:pointer}input[type=range]::-moz-range-thumb{width:0.5rem;height:0.5rem;background:var(--gray-70, #939599);border:none;border-radius:50%;cursor:pointer}input[type=range]::-moz-range-track{background:var(--gray-20, #edeff2);height:0.5rem;border-radius:0.25rem}input[type=range]::-webkit-slider-runnable-track{background:var(--gray-20, #edeff2);height:0.5rem;border-radius:0.25rem}p{color:var(--gray-80, #6f7176);font-family:var(--font-family);font-size:var(--text-sm);font-style:normal;font-weight:400;line-height:var(--text-sm-line-height)}span{color:var(--gray-80, #6f7176);font-family:var(--font-family);font-size:var(--text-sm);font-style:normal;font-weight:400;line-height:var(--text-sm-line-height)}a{color:var(--primary-60, #4456f6);font-size:var(--text-sm);font-style:normal;font-weight:400;line-height:var(--text-sm-line-height);cursor:pointer}a:hover{text-decoration:underline;color:var(--primary-70, #2134dc)}.ls-dv-button-link,.ls-dv-button-link:hover{all:unset}select{appearance:none;height:2.25rem}.ls-dv-input-wrapper{position:relative;width:fit-content}#selectorIcon{position:absolute;top:50%;right:0.675rem;transform:translateY(-50%);pointer-events:none;color:var(--gray-80, #6f7176)}#selectLeadingIcon{position:absolute;top:50%;left:0.675rem;transform:translateY(-50%);pointer-events:none;color:var(--gray-80, #6f7176)}.ls-dv-has-leading-icon{padding-left:2.5rem}button{all:unset;border:0;appearance:button;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:var(--gray-80, #6f7176);text-transform:capitalize}button.ls-dv-tertiary-grey:hover{background:var(--gray-10, #f7f8fa)}.ls-dv-button-group{display:flex;border-radius:0.625rem;border:1px solid var(--gray-30, #e0e2e5);background:var(--white, #ffffff);overflow:clip}.ls-dv-button-group button{display:flex;background:transparent;border-radius:unset;padding:0.25rem 0.75rem;min-width:2.156rem;min-height:unset;color:var(--gray-80, #6f7176)}.ls-dv-button-group button:hover{background:var(--gray-10, #f7f8fa)}.ls-dv-button-group>:first-child{border-radius:0.625rem 0 0 0.625rem}.ls-dv-button-group>:last-child{border-radius:0 0.5rem 0.5rem 0}.ls-dv-button-group>:not(:first-child){border-left:1px solid var(--gray-30, #e0e2e5)}.ls-dv-zoom-level-btn{font-family:var(--font-family);font-size:var(--text-sm);font-weight:400;color:var(--gray-80, #6f7176);padding:0.25rem 0.375rem;border-radius:0.25rem;margin:0 -0.25rem}.ls-dv-zoom-level-btn:hover{background:var(--gray-10, #f7f8fa)}.ls-dv-zoom-menu{position:absolute;width:6rem;bottom:3rem;left:1rem;background:white;border:1px solid var(--gray-30, #e0e2e5);border-radius:1rem;box-shadow:0px 4px 24px rgba(0, 0, 0, 0.12);padding:0.25rem;z-index:1001;display:flex;flex-direction:column;gap:0.25rem}.ls-dv-page-menu{left:auto;max-height:60cqh;overflow-y:auto}.ls-dv-zoom-menu-item{position:relative;font-family:var(--font-family);font-size:var(--text-sm);font-weight:400;color:var(--gray-80, #6f7176);padding:0.375rem 0.625rem;border-radius:0.825rem;display:flex;align-items:center;justify-content:space-between}.ls-dv-zoom-menu-item:hover{background:var(--gray-10, #f7f8fa)}.ls-dv-zoom-menu-item.active{font-weight:500;color:var(--primary-70, #2134dc);background:var(--primary-10, #eff4ff)}.ls-dv-thumbnail-popover{position:absolute;bottom:3rem;right:-3rem;background:white;border:1px solid var(--gray-30, #e0e2e5);border-radius:1.75rem;box-shadow:0px 8px 24px rgba(0, 0, 0, 0.15);padding:0.75rem;z-index:1001;max-height:80cqh;overflow:hidden;display:flex;flex-direction:column}.ls-dv-thumbnail-grid{background:var(--gray-10, #f7f8fa);padding:0.75rem;border-radius:1rem;border:1px solid var(--gray-30, #e0e2e5);display:grid;grid-template-columns:repeat(auto-fill, minmax(100px, 1fr));gap:1rem;overflow-y:auto;max-height:100%}.ls-dv-thumbnail-wrapper{display:flex;flex-direction:column;align-items:center;gap:0.25rem;cursor:pointer}.ls-dv-thumbnail-wrapper>span:last-child{font-size:var(--text-xs, 0.75rem);color:var(--gray-80, #6f7176);font-weight:500}.ls-dv-thumbnail{border:1px solid var(--gray-30, #e0e2e5);border-radius:0.5rem;cursor:pointer;transition:border-color 0.15s}.ls-dv-thumbnail:hover{border-color:var(--primary-40, #79adfc);box-shadow:0 0 0 2px rgba(163, 180, 249, 0.3)}.ls-dv-thumbnail.active{border-color:var(--primary-60, #4456f6);outline:0.25rem solid var(--primary-30, #9dc3fc);box-shadow:var(--shadow-md)}.ls-dv-thumbnail-dots{display:flex;gap:3px;justify-content:center;flex-wrap:wrap;margin-top:0.25rem}.ls-dv-thumbnail-dot{width:0.5rem;height:0.5rem;border-radius:50%;display:inline-block;border:2px solid var(--dot-color-60);background-color:var(--dot-color-40);cursor:pointer;transition:background-color 0.15s, border-color 0.15s}.ls-dv-thumbnail-dot:hover{background-color:var(--dot-color-60);border-color:var(--dot-color-70)}.ls-dv-version{position:absolute;bottom:100%;right:0;color:var(--gray-50, #afb0b2);font-size:0.625rem;padding-bottom:0.25rem;display:block}:host(.ls-dv-statusbar-preview) .ls-dv-version{bottom:-1.25rem;margin-right:0.5rem}`;
13
13
 
@@ -343,6 +343,6 @@ function defineCustomElement() {
343
343
  defineCustomElement();
344
344
 
345
345
  export { LsStatusbar as L, defineCustomElement as d };
346
- //# sourceMappingURL=p-BRcbstSs.js.map
346
+ //# sourceMappingURL=p-CowkeWsT.js.map
347
347
 
348
- //# sourceMappingURL=p-BRcbstSs.js.map
348
+ //# sourceMappingURL=p-CowkeWsT.js.map
@@ -1 +1 @@
1
- {"file":"p-BRcbstSs.js","mappings":";;;;;;;;;;;AAAA,MAAM,cAAc,GAAG,MAAM,CAAC,wvMAAwvM,CAAC;;MCY1wM,WAAW,iBAAAA,kBAAA,CAAA,MAAA,WAAA,SAAAC,CAAA,CAAA;;;;;;;;;AAEtB;;;AAGG;AACsB,IAAA,IAAI;AACJ,IAAA,IAAI;AACJ,IAAA,SAAS;IAEzB,cAAc,GAAY,KAAK;IAC/B,YAAY,GAAY,KAAK;IAC7B,YAAY,GAAY,KAAK;AAEtC;;;AAGG;AACK,IAAA,MAAM;IACN,OAAO,GAAY,KAAK;IACxB,OAAO,GAAY,KAAK;AAEhC;;;AAGG;IACK,IAAI,GAAqC,QAAQ;AAEzD,IAAA,OAAO,CAAC,KAAa,EAAA;AACnB,QAAA,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;AAC1B,QAAA,IAAI,CAAC,IAAI,GAAG,KAAK;;IAGnB,QAAQ,GAAA;AACN,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,wBAAwB,CAAC;QACzF,MAAM,KAAK,GAAG,CAAC,OAAO,CAAC,WAAW,GAAG,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,KAAK;AACrG,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AAC3C,QAAA,qBAAqB,CAAC,MAAM,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;IAGrD,SAAS,GAAA;AACP,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,aAAa,CAAC;AAC9E,QAAA,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,wBAAwB,CAAC;AACzF,QAAA,MAAM,YAAY,GAAG,gBAAgB,CAAC,OAAO,CAAC;AAC9C,QAAA,MAAM,QAAQ,GAAG,UAAU,CAAC,YAAY,CAAC,UAAU,CAAC,GAAG,UAAU,CAAC,YAAY,CAAC,aAAa,CAAC;AAC7F,QAAA,MAAM,eAAe,GAAG,OAAO,CAAC,YAAY,GAAG,QAAQ;QACvD,MAAM,KAAK,GAAG,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,MAAM;AAC1F,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;;AAG7C,IAAA,QAAQ,CAAC,OAAe,EAAA;QACtB,MAAM,IAAI,GAAG,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO;AAC1C,QAAA,IAAI,IAAI,GAAG,CAAC,EAAE;YACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE;AAAE,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;;aAChD;AACL,YAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE;AAAE,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;;AAEjE,QAAA,IAAI,CAAC,IAAI,GAAG,OAAO;QACnB,IAAI,CAAC,gBAAgB,EAAE;;AAGzB,IAAA,kBAAkB,CAAC,OAAe,EAAA;AAChC,QAAA,MAAM,QAAQ,GAAI,IAAI,CAAC,MAAc,CAAC,SAAS;AAC/C,QAAA,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB;AAAE,YAAA,OAAO,EAAE;QAC7D,MAAM,MAAM,GAAG,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC;AAC5F,QAAA,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB;AAC9C,QAAA,MAAM,CAAC,OAAO,CAAC,EAAE,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACzF,OAAO,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE;aACrC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,KAAI;AACjB,YAAA,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG;AACrB,YAAA,MAAM,KAAK,GAAG,CAAC,GAAG,GAAG;YACrB,IAAI,KAAK,KAAK,KAAK;gBAAE,OAAO,KAAK,GAAG,KAAK;YACzC,OAAO,CAAC,GAAG,CAAC;AACd,SAAC;aACA,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,KAAI;AAClB,YAAA,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,WAAW,KAAK,CAAC,CAAC;AAC3D,YAAA,MAAM,UAAU,GAAG,CAAC,GAAG,GAAG;YAC1B,OAAO;AACL,gBAAA,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG;AACrE,gBAAA,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG;AACrE,gBAAA,GAAG,EAAE,kBAAkB,CAAC,UAAU,CAAC,EAAE,GAAG,IAAI,kBAAkB,CAAC,CAAC,CAAC,CAAC,GAAG;AACrE,gBAAA,IAAI,EAAE,IAAI,EAAE,IAAI,IAAI,CAAA,YAAA,EAAe,CAAC,CAAE,CAAA;gBACtC,KAAK;aACN;AACH,SAAC,CAAC;;AAGN,IAAA,aAAa,CAAC,OAAe,EAAA;AAC3B,QAAA,MAAM,QAAQ,GAAI,IAAI,CAAC,MAAc,CAAC,SAAS;AAC/C,QAAA,IAAI,CAAC,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB;AAAE,YAAA,OAAO,EAAE;AAC7D,QAAA,OAAO,QAAQ,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC;;AAGtF,IAAA,oBAAoB,CAAC,GAA6B,EAAE,OAAe,EAAE,QAA2C,EAAA;QAC9G,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;AAC1C,QAAA,MAAM,CAAC,OAAO,CAAC,KAAK,IAAG;AACrB,YAAA,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,GAAG,GAAG;YACrC,MAAM,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC;YACvE,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,KAAK;YACnC,MAAM,CAAC,GAAG,KAAK,CAAC,EAAE,GAAG,QAAQ,CAAC,MAAM;AACpC,YAAA,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,KAAK;AAChD,YAAA,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,EAAE,IAAI,QAAQ,CAAC,MAAM;YAEjD,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,GAAG,IAAI;YAClC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACxB,YAAA,GAAG,CAAC,WAAW,GAAG,OAAO,CAAC,GAAG;AAC7B,YAAA,GAAG,CAAC,SAAS,GAAG,CAAC;AACjB,YAAA,IAAI,KAAK,CAAC,MAAM,IAAI,GAAG,EAAE;gBACvB,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;;YAEzB,GAAG,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AAC1B,YAAA,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;AACrB,SAAC,CAAC;;IAGJ,gBAAgB,GAAA;AACd,QAAA,MAAM,MAAM,GAAI,IAAI,CAAC,MAAc,CAAC,WAAW;AAC/C,QAAA,IAAI,CAAC,MAAM;YAAE;AACb,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,wBAAwB,CAAC;AACpF,QAAA,IAAI,CAAC,SAAS;YAAE;AAChB,QAAA,SAAS,CAAC,SAAS,GAAG,EAAE;AAExB,QAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE;YACxC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAG;AAC5B,gBAAA,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;gBACjD,MAAM,MAAM,GAAG,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC;AAC/C,gBAAA,MAAM,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK;AAC7B,gBAAA,MAAM,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;AAC/B,gBAAA,MAAM,CAAC,SAAS,GAAG,CAAC,KAAK,IAAI,CAAC,IAAI,GAAG,wBAAwB,GAAG,iBAAiB;AACjF,gBAAA,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAExD,MAAM,OAAO,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC7C,gBAAA,OAAO,CAAC,SAAS,GAAG,yBAAyB;AAC7C,gBAAA,OAAO,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAEzD,MAAM,IAAI,GAAG,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC;AAC1C,gBAAA,IAAI,CAAC,SAAS,GAAG,sBAAsB;gBACvC,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,IAAG;oBACzC,MAAM,GAAG,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;AAC1C,oBAAA,GAAG,CAAC,SAAS,GAAG,qBAAqB;AACrC,oBAAA,GAAG,CAAC,YAAY,CAAC,iBAAiB,EAAE,eAAe,CAAC;AACpD,oBAAA,GAAG,CAAC,YAAY,CAAC,sBAAsB,EAAE,CAAA,EAAG,KAAK,CAAC,IAAI,CAAA,EAAA,EAAK,KAAK,CAAC,KAAK,CAAA,MAAA,EAAS,KAAK,CAAC,KAAK,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,CAAA,CAAE,CAAC;oBAC9G,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC;oBAClD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC;oBAClD,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,gBAAgB,EAAE,KAAK,CAAC,GAAG,CAAC;AAClD,oBAAA,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;AACvB,iBAAC,CAAC;gBAEF,MAAM,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC;AAC5C,gBAAA,KAAK,CAAC,WAAW,GAAG,CAAG,EAAA,CAAC,EAAE;AAC1B,gBAAA,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC;AAC3B,gBAAA,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC;AACzB,gBAAA,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC;AAC1B,gBAAA,SAAS,CAAC,WAAW,CAAC,OAAO,CAAC;;;gBAI9B,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;AACnC,gBAAA,IAAI,CAAC,MAAM,CAAC,EAAE,aAAa,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,MAAK;oBAC9D,IAAI,CAAC,oBAAoB,CAAC,GAAG,EAAE,CAAC,EAAE,QAAQ,CAAC;;AAE3C,oBAAA,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,MAAM;oBAC7B,qBAAqB,CAAC,MAAK;AACzB,wBAAA,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG;AAC5B,qBAAC,CAAC;AACJ,iBAAC,CAAC;AACJ,aAAC,CAAC;;;AAIE,IAAA,mBAAmB,GAAG,CAAC,CAAa,KAAI;AAC9C,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE;QAC7B,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AAClC,YAAA,IAAI,CAAC,cAAc,GAAG,KAAK;AAC3B,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;AACzB,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;YACzB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC;;AAEnE,KAAC;AAEO,IAAA,oBAAoB,GAAG,CAAC,CAAa,KAAI;AAC/C,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC;AACrE,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,CAAC;AACtE,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC/C,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;YACzB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;;AAE1E,KAAC;AAEO,IAAA,oBAAoB,GAAG,CAAC,CAAa,KAAI;AAC/C,QAAA,MAAM,IAAI,GAAG,CAAC,CAAC,YAAY,EAAE;AAC7B,QAAA,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,CAAC;AACrE,QAAA,MAAM,GAAG,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,gBAAgB,CAAC;AACtE,QAAA,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE;AAC/C,YAAA,IAAI,CAAC,YAAY,GAAG,KAAK;YACzB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;;AAE1E,KAAC;IAEO,SAAS,GAAA;AACf,QAAA,MAAM,SAAS,GAAG,IAAI,EAAE;AACxB,QAAA,IAAI,CAAC,SAAS;YAAE;AAChB,QAAA,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI;AAC/B,QAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;;IAGrE,SAAS,GAAA;AACf,QAAA,MAAM,SAAS,GAAG,IAAI,EAAE;AACxB,QAAA,IAAI,CAAC,SAAS;YAAE;AAChB,QAAA,IAAI,CAAC,MAAM,CAAC,YAAY,GAAG,IAAI;AAC/B,QAAA,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;;IAG7E,iBAAiB,GAAA;QACf,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI;;IAI9B,YAAY,GAAA;AACV,QAAA,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,gBAAgB,EAAE;YACvB,qBAAqB,CAAC,MAAK;AACzB,gBAAA,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,wBAAwB,CAAC;AACpF,gBAAA,MAAM,OAAO,GAAG,SAAS,EAAE,aAAa,CAAC,yBAAyB,CAAC,EAAE,OAAO,CAAC,0BAA0B,CAAgB;AACvH,gBAAA,IAAI,OAAO,IAAI,SAAS,EAAE;AACxB,oBAAA,MAAM,GAAG,GAAG,EAAE,CAAC;oBACf,MAAM,UAAU,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,CAAC,SAAS;AAC1D,oBAAA,MAAM,aAAa,GAAG,UAAU,GAAG,OAAO,CAAC,YAAY;AACvD,oBAAA,MAAM,SAAS,GAAG,SAAS,CAAC,SAAS;AACrC,oBAAA,MAAM,UAAU,GAAG,SAAS,CAAC,YAAY;AAEzC,oBAAA,IAAI,UAAU,GAAG,GAAG,GAAG,SAAS,EAAE;AAChC,wBAAA,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,UAAU,GAAG,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;;yBAC5D,IAAI,aAAa,GAAG,GAAG,GAAG,SAAS,GAAG,UAAU,EAAE;AACvD,wBAAA,SAAS,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,aAAa,GAAG,GAAG,GAAG,UAAU,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;;;AAGvF,aAAC,CAAC;;;IAIN,MAAM,GAAA;AACJ,QAAA,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS;AACzC,QAAA,QACE,CAAC,CAAA,IAAI,EAAC,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,EAAE,yBAAyB,EAAE,SAAS,EAAE,EAAA,EAClD,CAAC,SAAS,KACT,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,oBAAoB,EAAA,EAC9B,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,0BAA0B,EAAA,EACpC,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAC,UAAU,EAAiB,iBAAA,EAAA,eAAe,EAAuB,sBAAA,EAAA,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAA,EAC9J,CAAS,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,WAAW,EAAC,IAAI,EAAE,EAAE,GAAI,CAC/B,EACT,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,EAAC,UAAU,EAAiB,iBAAA,EAAA,eAAe,EAAuB,sBAAA,EAAA,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,EAAA,EAC9J,CAAS,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAC,WAAW,EAAC,KAAK,EAAE,EAAC,SAAS,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,EAAC,EAAE,IAAI,EAAE,EAAE,EAAI,CAAA,CAC1F,CACL,CACF,CACP,EACD,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,EAAC,oBAAoB,EAAE,IAAI,EAAE,gBAAgB,EAAE,IAAI,EAAC,EAAA,EAC9D,CAAA,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAK,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAA,EACxF,CACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;AACxB,aAAC,EACD,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,EACzB,EAAE,EAAC,eAAe,EAAA,iBAAA,EACF,eAAe,EAAA,sBAAA,EACT,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,wBAAwB,CAAC,EAAA,EAEjH,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,mBAAmB,EAAA,CAAG,CAC7B,EACT,CACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,gBAAgB,EACnB,KAAK,EAAC,sBAAsB,EAC5B,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY;AACtC,gBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,oBAAA,qBAAqB,CAAC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;;qBAC3F;oBACL,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;;AAE1E,aAAC,EAAA,EAEA,IAAI,CAAC,IAAI,SAAK,IAAI,CAAC,SAAS,CACtB,EACR,IAAI,CAAC,YAAY,KAChB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,cAAc,EAAC,KAAK,EAAC,iCAAiC,IAC3D,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAC5D,CACE,CAAA,QAAA,EAAA,EAAA,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE,EAClE,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;AAChB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;gBACzB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;AACxE,aAAC,EAAA,EAEA,CAAC,EACD,IAAI,CAAC,IAAI,KAAK,CAAC,IAAI,CAAA,CAAA,SAAA,EAAA,EAAS,IAAI,EAAC,YAAY,EAAC,IAAI,EAAE,EAAE,EAAA,CAAI,CACpD,CACV,CAAC,CACE,CACP,EACD,CACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE;aACvB,EACD,QAAQ,EAAE,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,EACtC,EAAE,EAAC,eAAe,qBACF,eAAe,EAAA,sBAAA,EACT,IAAI,CAAC,IAAI,KAAK,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAA,EAEtH,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,oBAAoB,EAAG,CAAA,CAC9B,CACL,CACF,EACN,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,wBAAwB,EAAA,EAClC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAC,QAAQ,EAAE,UAAU,EAAC,EAAA,EAG7D,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,0BAA0B,EAAA,EACpC,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,EAAC,cAAc,EAAA,iBAAA,EAAiB,eAAe,EAAA,sBAAA,EAAuB,MAAM,CAAC,CAAC,CAAC,mBAAmB,CAAC,EAAA,EAChK,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,eAAe,EAAA,CAAG,CACzB,EACT,CACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,gBAAgB,EACnB,KAAK,EAAC,sBAAsB,EAC5B,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY;AACtC,gBAAA,IAAI,IAAI,CAAC,YAAY,EAAE;AACrB,oBAAA,qBAAqB,CAAC,MAAM,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAC;;qBAC3F;oBACL,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;;aAEzE,EAAA,EAEA,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,EACrB,GAAA,CAAA,EACR,IAAI,CAAC,YAAY,KAChB,4DAAK,EAAE,EAAC,cAAc,EAAC,KAAK,EAAC,iBAAiB,EAC3C,EAAA,CAAC,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,KACjD,CACE,CAAA,QAAA,EAAA,EAAA,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,EAAE,EAC1G,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC;AACnB,gBAAA,IAAI,CAAC,YAAY,GAAG,KAAK;gBACzB,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC;AACxE,aAAC,EAAA,EAEA,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,OAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC,IAAI,CAAA,CAAA,SAAA,EAAA,EAAS,IAAI,EAAC,YAAY,EAAC,IAAI,EAAE,EAAE,EAAI,CAAA,CACtH,CACV,CAAC,CACE,CACP,EACD,CAAA,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAQ,OAAO,EAAE,MAAM,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,EAAE,EAAC,aAAa,EAAA,iBAAA,EAAiB,eAAe,EAAA,sBAAA,EAAuB,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,EAAA,EAC9J,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,cAAc,EAAA,CAAG,CACxB,CACL,EACL,CAAC,SAAS,KACT,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,0BAA0B,EAAA,EACpC,CAAQ,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,MAAM,IAAI,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAC,eAAe,qBAAiB,eAAe,EAAA,sBAAA,EAAuB,MAAM,CAAC,CAAC,CAAC,oBAAoB,CAAC,EAAA,EAC7I,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,gBAAgB,EAAA,CAAG,CAC1B,EACT,CAAQ,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,MAAM,IAAI,CAAC,SAAS,EAAE,EAAE,EAAE,EAAC,gBAAgB,qBAAiB,eAAe,EAAA,sBAAA,EAAuB,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,EAAA,EAChJ,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,iBAAiB,EAAG,CAAA,CAC3B,CACL,CACP,EAED,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,0BAA0B,EAAE,KAAK,EAAE,IAAI,CAAC,SAAS,KAAK,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,EAAA,EAC5F,CACE,CAAA,QAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,OAAO,EAAE,MAAK;AACZ,gBAAA,IAAI,CAAC,cAAc,GAAG,CAAC,IAAI,CAAC,cAAc;AAC1C,gBAAA,IAAI,IAAI,CAAC,cAAc,EAAE;oBACvB,qBAAqB,CAAC,MAAK;wBACzB,qBAAqB,CAAC,MAAK;4BACzB,IAAI,CAAC,gBAAgB,EAAE;4BACvB,QAAQ,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC;AAC9D,yBAAC,CAAC;AACJ,qBAAC,CAAC;;qBACG;oBACL,QAAQ,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC;;AAEnE,aAAC,EACD,EAAE,EAAC,qBAAqB,EACR,iBAAA,EAAA,eAAe,EACT,sBAAA,EAAA,MAAM,CAAC,CAAC,CAAC,0BAA0B,CAAC,EAAA,EAE1D,CAAS,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,IAAI,EAAE,CAAC,IAAI,CAAC,cAAc,GAAG,4BAA4B,GAAG,6BAA6B,EAAE,IAAI,EAAE,EAAE,EAAA,CAAI,CACzG,CACL,EACL,IAAI,CAAC,cAAc,KAClB,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,yBAAyB,EAAA,EAClC,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,EAAE,EAAC,wBAAwB,EAAC,KAAK,EAAC,sBAAsB,EAAA,CAAO,CAChE,CACP,CACG,EACL,CAAC,SAAS,IAAI,CAAiB,CAAA,eAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,EAChC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,eAAe,EAAA,OAAG,OAAO,CAAQ,EAC7C,CAAY,CAAA,YAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,SAAS,EAAC,eAAe,EAAG,CAAA,EACxC,CAAa,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,CAAA,CACT,CACD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-statusbar/ls-statusbar.scss?tag=ls-statusbar&encapsulation=shadow","src/components/ls-statusbar/ls-statusbar.tsx"],"sourcesContent":[":host {\n position: absolute;\n z-index: 1000;\n left: 23.625rem;\n right: 0.5rem;\n bottom: 1rem;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n justify-content: space-between;\n height: 2.25rem;\n overflow: visible;\n}\n\n:host(.ls-dv-statusbar-preview) {\n left: 0;\n right: 0;\n justify-content: center;\n}\n\n.ls-dv-status-bar-group {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n}\n\n.ls-dv-controls-bar {\n display: flex;\n flex-direction: row;\n background-color: white;\n border: 1px solid $gray-30;\n box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);\n border-radius: 1.125rem;\n height: fit-content;\n}\n\n.ls-dv-page-nav {\n margin-left: -6rem;\n position: relative;\n}\n\n:host(.ls-dv-statusbar-preview) .ls-dv-page-nav {\n margin-left: 0;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n.ls-dv-status-bar-section {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.625rem;\n padding: 0 0.625rem;\n height: 2.25rem;\n}\n\n.ls-dv-controls-bar > :not(:nth-child(1)) {\n border-left: 1px solid $gray-30;\n}\n\nbutton {\n border: 0;\n}\n\nbutton:hover {\n color: $gray-100;\n border-radius: 0.625rem;\n}\n\nbutton:disabled {\n color: $gray-40;\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: $gray-20;\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: $gray-70; /* 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: $gray-70; /* 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: $gray-20;\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: $gray-20;\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n\n\n/* Global Styles */\n\np {\n color: $gray-80;\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\nspan {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: $gray-80;\n}\n\n.ls-dv-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: $gray-80;\n text-transform: capitalize;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n\n\n.ls-dv-zoom-level-btn {\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-weight: 400;\n color: $gray-80;\n padding: 0.25rem 0.375rem;\n border-radius: 0.25rem;\n margin: 0 -0.25rem;\n\n &:hover {\n background: $gray-10;\n }\n}\n\n.ls-dv-zoom-menu {\n position: absolute;\n width: 6rem;\n bottom: 3rem;\n left: 1rem;\n background: white;\n border: 1px solid $gray-30;\n border-radius: 1rem;\n box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.12);\n padding: 0.25rem;\n z-index: 1001;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n\n}\n\n.ls-dv-page-menu {\n left: auto;\n max-height: 60cqh;\n overflow-y: auto;\n}\n\n.ls-dv-zoom-menu-item {\n position: relative;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-weight: 400;\n color: $gray-80;\n padding: 0.375rem 0.625rem;\n border-radius: 0.825rem;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n &:hover {\n background: $gray-10;\n }\n\n &.active {\n font-weight: 500;\n color: $primary-70;\n background: $primary-10;\n }\n}\n\n.ls-dv-thumbnail-popover {\n position: absolute;\n bottom: 3rem;\n right: -3rem;\n background: white;\n border: 1px solid $gray-30;\n border-radius: 1.75rem;\n box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.15);\n padding: 0.75rem;\n z-index: 1001;\n max-height: 80cqh;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.ls-dv-thumbnail-grid {\n background: $gray-10;\n padding: 0.75rem;\n border-radius: 1rem;\n border: 1px solid $gray-30;\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));\n gap: 1rem;\n overflow-y: auto;\n max-height: 100%;\n}\n\n.ls-dv-thumbnail-wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0.25rem;\n cursor: pointer;\n}\n\n.ls-dv-thumbnail-wrapper > span:last-child {\n font-size: var(--text-xs, 0.75rem);\n color: $gray-80;\n font-weight: 500;\n}\n\n.ls-dv-thumbnail {\n border: 1px solid $gray-30;\n border-radius: 0.5rem;\n cursor: pointer;\n transition: border-color 0.15s;\n}\n\n.ls-dv-thumbnail:hover {\n border-color: $primary-40;\n box-shadow: 0 0 0 2px rgba(163, 180, 249, 0.3);\n}\n\n.ls-dv-thumbnail.active {\n border-color: $primary-60;\n outline: 0.25rem solid $primary-30;\n box-shadow: var(--shadow-md);\n}\n\n.ls-dv-thumbnail-dots {\n display: flex;\n gap: 3px;\n justify-content: center;\n flex-wrap: wrap;\n margin-top: 0.25rem;\n}\n\n.ls-dv-thumbnail-dot {\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 50%;\n display: inline-block;\n border: 2px solid var(--dot-color-60);\n background-color: var(--dot-color-40);\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n\n &:hover {\n background-color: var(--dot-color-60);\n border-color: var(--dot-color-70);\n }\n}\n\n.ls-dv-version {\n position: absolute;\n bottom: 100%;\n right: 0;\n color: var(--gray-50, #afb0b2);\n font-size: 0.625rem;\n padding-bottom: 0.25rem;\n display: block;\n}\n\n:host(.ls-dv-statusbar-preview) .ls-dv-version {\n bottom: -1.25rem;\n margin-right: 0.5rem;\n}\n","import { Component, Host, Prop, State, Watch, h, Element } from '@stencil/core';\nimport { dvI18n } from '../../i18n/i18n';\nimport { LsDocumentViewer } from '../ls-document-viewer/ls-document-viewer';\nimport { defaultRolePalette } from '../ls-document-viewer/defaultPalette';\nimport { version } from '../../../package.json';\nimport { undo, redo } from '../ls-document-viewer/history';\n\n@Component({\n tag: 'ls-statusbar',\n styleUrl: 'ls-statusbar.scss',\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 @State() showThumbnails: boolean = false;\n @State() showZoomMenu: boolean = false;\n @State() showPageMenu: boolean = false;\n\n /**\n * The parent editor control.\n * {LsDocumentViewer}\n */\n @Prop() editor: LsDocumentViewer;\n @Prop() canUndo: boolean = false;\n @Prop() canRedo: boolean = false;\n\n /**\n * The viewer mode.\n * {'preview' | 'editor' | 'compose'}\n */\n @Prop() mode: 'preview' | 'editor' | 'compose' = 'editor';\n\n setZoom(value: number) {\n this.editor.setZoom(value);\n this.zoom = value;\n }\n\n fitWidth() {\n const wrapper = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const scale = (wrapper.clientWidth - 396) / this.editor.pageDimensions[this.editor.pageNum - 1].width;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n requestAnimationFrame(() => wrapper.scrollTo(0, 0));\n }\n\n fitHeight() {\n const midArea = this.editor.component.shadowRoot.getElementById('ls-mid-area');\n const wrapper = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const wrapperStyle = getComputedStyle(wrapper);\n const paddingY = parseFloat(wrapperStyle.paddingTop) + parseFloat(wrapperStyle.paddingBottom);\n const availableHeight = midArea.clientHeight - paddingY;\n const scale = availableHeight / this.editor.pageDimensions[this.editor.pageNum - 1].height;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n goToPage(pageNum: number) {\n const diff = pageNum - this.editor.pageNum;\n if (diff > 0) {\n for (let i = 0; i < diff; i++) this.editor.pageNext();\n } else {\n for (let i = 0; i < Math.abs(diff); i++) this.editor.pagePrev();\n }\n this.page = pageNum;\n this.renderThumbnails();\n }\n\n getPageFieldColors(pageNum: number): { s40: string; s60: string; s70: string; name: string; count: number }[] {\n const template = (this.editor as any)._template;\n if (!template?.elementConnection?.templateElements) return [];\n const fields = template.elementConnection.templateElements.filter(el => el.page === pageNum);\n const signerCounts = new Map<number, number>();\n fields.forEach(el => signerCounts.set(el.signer, (signerCounts.get(el.signer) || 0) + 1));\n return Array.from(signerCounts.entries())\n .sort(([a], [b]) => {\n const baseA = a % 100;\n const baseB = b % 100;\n if (baseA !== baseB) return baseA - baseB;\n return a - b;\n })\n .map(([s, count]) => {\n const role = template.roles?.find(r => r.signerIndex === s);\n const colorIndex = s % 100;\n return {\n s40: defaultRolePalette[colorIndex]?.s40 || defaultRolePalette[0].s40,\n s60: defaultRolePalette[colorIndex]?.s60 || defaultRolePalette[0].s60,\n s70: defaultRolePalette[colorIndex]?.s70 || defaultRolePalette[0].s70,\n name: role?.name || `Participant ${s}`,\n count,\n };\n });\n }\n\n getPageFields(pageNum: number) {\n const template = (this.editor as any)._template;\n if (!template?.elementConnection?.templateElements) return [];\n return template.elementConnection.templateElements.filter(el => el.page === pageNum);\n }\n\n renderFieldsOnCanvas(ctx: CanvasRenderingContext2D, pageNum: number, viewport: { width: number; height: number }) {\n const fields = this.getPageFields(pageNum);\n fields.forEach(field => {\n const colorIndex = field.signer % 100;\n const palette = defaultRolePalette[colorIndex] || defaultRolePalette[0];\n const x = field.ax * viewport.width;\n const y = field.ay * viewport.height;\n const w = (field.bx - field.ax) * viewport.width;\n const h = (field.by - field.ay) * viewport.height;\n\n ctx.fillStyle = palette.s40 + '1a';\n ctx.fillRect(x, y, w, h);\n ctx.strokeStyle = palette.s60;\n ctx.lineWidth = 1;\n if (field.signer >= 100) {\n ctx.setLineDash([2, 2]);\n }\n ctx.strokeRect(x, y, w, h);\n ctx.setLineDash([]);\n });\n }\n\n renderThumbnails() {\n const pdfDoc = (this.editor as any).pdfDocument;\n if (!pdfDoc) return;\n const container = this.component.shadowRoot.getElementById('ls-thumbnail-container');\n if (!container) return;\n container.innerHTML = '';\n\n for (let i = 1; i <= this.pageCount; i++) {\n pdfDoc.getPage(i).then(page => {\n const viewport = page.getViewport({ scale: 0.2 });\n const canvas = document.createElement('canvas');\n canvas.width = viewport.width;\n canvas.height = viewport.height;\n canvas.className = i === this.page ? 'ls-dv-thumbnail active' : 'ls-dv-thumbnail';\n canvas.addEventListener('click', () => this.goToPage(i));\n\n const wrapper = document.createElement('div');\n wrapper.className = 'ls-dv-thumbnail-wrapper';\n wrapper.addEventListener('click', () => this.goToPage(i));\n\n const dots = document.createElement('div');\n dots.className = 'ls-dv-thumbnail-dots';\n this.getPageFieldColors(i).forEach(color => {\n const dot = document.createElement('span');\n dot.className = 'ls-dv-thumbnail-dot';\n dot.setAttribute('data-tooltip-id', 'ls-dv-tooltip');\n dot.setAttribute('data-tooltip-content', `${color.name}, ${color.count} Field${color.count !== 1 ? 's' : ''}`);\n dot.style.setProperty('--dot-color-40', color.s40);\n dot.style.setProperty('--dot-color-60', color.s60);\n dot.style.setProperty('--dot-color-70', color.s70);\n dots.appendChild(dot);\n });\n\n const label = document.createElement('span');\n label.textContent = `${i}`;\n wrapper.appendChild(canvas);\n wrapper.appendChild(dots);\n wrapper.appendChild(label);\n container.appendChild(wrapper);\n\n // Render after appending to DOM — Safari requires the canvas to be\n // in the visible tree before getContext/render produces output.\n const ctx = canvas.getContext('2d');\n page.render({ canvasContext: ctx, viewport }).promise.then(() => {\n this.renderFieldsOnCanvas(ctx, i, viewport);\n // Force Safari to composit the canvas by toggling a style property\n canvas.style.opacity = '0.99';\n requestAnimationFrame(() => {\n canvas.style.opacity = '1';\n });\n });\n });\n }\n }\n\n private outsideClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n if (!path.includes(this.component)) {\n this.showThumbnails = false;\n this.showZoomMenu = false;\n this.showPageMenu = false;\n document.removeEventListener('click', this.outsideClickHandler);\n }\n };\n\n private zoomMenuClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n const menu = this.component.shadowRoot.getElementById('ls-zoom-menu');\n const btn = this.component.shadowRoot.getElementById('zoom-level-btn');\n if (!path.includes(menu) && !path.includes(btn)) {\n this.showZoomMenu = false;\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }\n };\n\n private pageMenuClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n const menu = this.component.shadowRoot.getElementById('ls-page-menu');\n const btn = this.component.shadowRoot.getElementById('page-level-btn');\n if (!path.includes(menu) && !path.includes(btn)) {\n this.showPageMenu = false;\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }\n };\n\n private applyUndo() {\n const mutations = undo();\n if (!mutations) return;\n this.editor._skipHistory = true;\n this.editor.mutateHandler(new CustomEvent('mutate', { detail: mutations }));\n }\n\n private applyRedo() {\n const mutations = redo();\n if (!mutations) return;\n this.editor._skipHistory = true;\n this.editor.mutateHandler(new CustomEvent('mutate', { detail: mutations }));\n }\n\n componentWillLoad() {\n this.zoom = this.editor.zoom;\n }\n\n @Watch('page')\n onPageChange() {\n if (this.showThumbnails) {\n this.renderThumbnails();\n requestAnimationFrame(() => {\n const container = this.component.shadowRoot.getElementById('ls-thumbnail-container');\n const wrapper = container?.querySelector('.ls-dv-thumbnail.active')?.closest('.ls-dv-thumbnail-wrapper') as HTMLElement;\n if (wrapper && container) {\n const gap = 12; // 0.75rem\n const wrapperTop = wrapper.offsetTop - container.offsetTop;\n const wrapperBottom = wrapperTop + wrapper.offsetHeight;\n const scrollTop = container.scrollTop;\n const viewHeight = container.clientHeight;\n\n if (wrapperTop - gap < scrollTop) {\n container.scrollTo({ top: wrapperTop - gap, behavior: 'smooth' });\n } else if (wrapperBottom + gap > scrollTop + viewHeight) {\n container.scrollTo({ top: wrapperBottom + gap - viewHeight, behavior: 'smooth' });\n }\n }\n });\n }\n }\n\n render() {\n const isPreview = this.mode === 'preview';\n return (\n <Host class={{ 'ls-dv-statusbar-preview': isPreview }}>\n {!isPreview && (\n <div class={'ls-dv-controls-bar'}>\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.applyUndo()} disabled={!this.canUndo} id=\"undo-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.undo')} >\n <ls-icon name=\"undo-icon\" size={18} />\n </button>\n <button onClick={() => this.applyRedo()} disabled={!this.canRedo} id=\"redo-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.redo')} >\n <ls-icon name=\"redo-icon\" style={{transform: \"scale(-1, 1)\", marginLeft: '0.25rem'}} size={18} />\n </button>\n </div>\n </div>\n )}\n <div class={{'ls-dv-controls-bar': true, 'ls-dv-page-nav': true}}>\n <div class={'ls-dv-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-id=\"ls-dv-tooltip\"\n data-tooltip-content={this.page === 1 ? dvI18n.t('statusbar.nopreviouspage') : dvI18n.t('statusbar.previouspage')}\n >\n <ls-icon name=\"chevron-left-icon\" />\n </button>\n <button\n id=\"page-level-btn\"\n class=\"ls-dv-zoom-level-btn\"\n onClick={() => {\n this.showPageMenu = !this.showPageMenu;\n if (this.showPageMenu) {\n requestAnimationFrame(() => document.addEventListener('click', this.pageMenuClickHandler, true));\n } else {\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }\n }}\n >\n {this.page} / {this.pageCount}\n </button>\n {this.showPageMenu && (\n <div id=\"ls-page-menu\" class=\"ls-dv-zoom-menu ls-dv-page-menu\" >\n {Array.from({ length: this.pageCount }, (_, i) => i + 1).map(p => (\n <button\n class={{ 'ls-dv-zoom-menu-item': true, 'active': this.page === p }}\n onClick={() => {\n this.goToPage(p);\n this.showPageMenu = false;\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }}\n >\n {p}\n {this.page === p && <ls-icon name=\"check-icon\" size={14} />}\n </button>\n ))}\n </div>\n )}\n <button\n onClick={() => {\n this.editor.pageNext();\n }}\n disabled={this.page === this.pageCount}\n id=\"next-page-btn\"\n data-tooltip-id=\"ls-dv-tooltip\"\n data-tooltip-content={this.page === this.pageCount ? dvI18n.t('statusbar.nonextpage') : dvI18n.t('statusbar.nextpage')}\n >\n <ls-icon name=\"chevron-right-icon\" />\n </button>\n </div>\n </div>\n <div class={'ls-dv-status-bar-group'}>\n <div class={'ls-dv-controls-bar'} style={{position: 'relative'}}>\n {/* <button onClick={() => this.editor.displayTable = true}><ls-icon name=\"table-icon\" /></button>\n <button onClick={() => this.editor.displayTable = false}><ls-icon name=\"template-icon\" /></button> */}\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.setZoom(this.editor.zoom * 0.8)} id=\"zoom-out-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.zoomout')}>\n <ls-icon name=\"zoom-out-icon\" />\n </button>\n <button\n id=\"zoom-level-btn\"\n class=\"ls-dv-zoom-level-btn\"\n onClick={() => {\n this.showZoomMenu = !this.showZoomMenu;\n if (this.showZoomMenu) {\n requestAnimationFrame(() => document.addEventListener('click', this.zoomMenuClickHandler, true));\n } else {\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }\n }}\n >\n {Math.round(this.zoom * 100)}%\n </button>\n {this.showZoomMenu && (\n <div id=\"ls-zoom-menu\" class=\"ls-dv-zoom-menu\">\n {[2, 1.75, 1.5, 1.25, 1, 0.75, 0.5, 0.25].map(level => (\n <button\n class={{ 'ls-dv-zoom-menu-item': true, 'active': Math.round(this.zoom * 100) === Math.round(level * 100) }}\n onClick={() => {\n this.setZoom(level);\n this.showZoomMenu = false;\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }}\n >\n {Math.round(level * 100)}%{Math.round(this.zoom * 100) === Math.round(level * 100) && <ls-icon name=\"check-icon\" size={14} />}\n </button>\n ))}\n </div>\n )}\n <button onClick={() => this.setZoom(this.editor.zoom / 0.8)} id=\"zoom-in-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.zoomin')}>\n <ls-icon name=\"zoom-in-icon\" />\n </button>\n </div>\n {!isPreview && (\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.fitWidth()} id=\"fit-width-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.fitwidth')}>\n <ls-icon name=\"fit-width-icon\" />\n </button>\n <button onClick={() => this.fitHeight()} id=\"fit-height-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.fitheight')}>\n <ls-icon name=\"fit-height-icon\" />\n </button>\n </div>\n )}\n\n <div class={'ls-dv-status-bar-section'} style={this.pageCount === 1 ? { display: 'none' } : {}}>\n <button\n onClick={() => {\n this.showThumbnails = !this.showThumbnails;\n if (this.showThumbnails) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n this.renderThumbnails();\n document.addEventListener('click', this.outsideClickHandler);\n });\n });\n } else {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n }}\n id=\"page-thumbnails-btn\"\n data-tooltip-id=\"ls-dv-tooltip\"\n data-tooltip-content={dvI18n.t('statusbar.pagethumbnails')}\n >\n <ls-icon name={!this.showThumbnails ? 'side-panel-open-right-icon' : 'side-panel-close-right-icon'} size={18} />\n </button>\n </div>\n {this.showThumbnails && (\n <div class=\"ls-dv-thumbnail-popover\">\n <div id=\"ls-thumbnail-container\" class=\"ls-dv-thumbnail-grid\"></div>\n </div>\n )}\n </div>\n {!isPreview && <ls-helper-bar />}\n <span class=\"ls-dv-version\">v{version}</span>\n <ls-tooltip tooltipId=\"ls-dv-tooltip\" />\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"p-CowkeWsT.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/ls-statusbar/ls-statusbar.scss?tag=ls-statusbar&encapsulation=shadow","src/components/ls-statusbar/ls-statusbar.tsx"],"sourcesContent":[":host {\n position: absolute;\n z-index: 1000;\n left: 23.625rem;\n right: 0.5rem;\n bottom: 1rem;\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n justify-content: space-between;\n height: 2.25rem;\n overflow: visible;\n}\n\n:host(.ls-dv-statusbar-preview) {\n left: 0;\n right: 0;\n justify-content: center;\n}\n\n.ls-dv-status-bar-group {\n display: flex;\n flex-direction: row;\n gap: 0.5rem;\n align-items: end;\n}\n\n.ls-dv-controls-bar {\n display: flex;\n flex-direction: row;\n background-color: white;\n border: 1px solid $gray-30;\n box-shadow: 0px 4px 16px rgba(0, 0, 0, 0.1);\n border-radius: 1.125rem;\n height: fit-content;\n}\n\n.ls-dv-page-nav {\n margin-left: -6rem;\n position: relative;\n}\n\n:host(.ls-dv-statusbar-preview) .ls-dv-page-nav {\n margin-left: 0;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\n.ls-dv-status-bar-section {\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: 0.625rem;\n padding: 0 0.625rem;\n height: 2.25rem;\n}\n\n.ls-dv-controls-bar > :not(:nth-child(1)) {\n border-left: 1px solid $gray-30;\n}\n\nbutton {\n border: 0;\n}\n\nbutton:hover {\n color: $gray-100;\n border-radius: 0.625rem;\n}\n\nbutton:disabled {\n color: $gray-40;\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: $gray-20;\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: $gray-70; /* 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: $gray-70; /* 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: $gray-20;\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: $gray-20;\n height: 0.5rem;\n border-radius: 0.25rem;\n}\n\n\n\n/* Global Styles */\n\np {\n color: $gray-80;\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\nspan {\n color: $gray-80;\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: $primary-60;\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: $primary-70;\n}\n\n.ls-dv-button-link,\n.ls-dv-button-link:hover {\n all: unset;\n}\n\nselect {\n appearance: none;\n height: 2.25rem;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n#selectLeadingIcon {\n position: absolute;\n top: 50%;\n left: 0.675rem;\n transform: translateY(-50%);\n pointer-events: none;\n color: $gray-80;\n}\n\n.ls-dv-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: $gray-80;\n text-transform: capitalize;\n}\n\nbutton.ls-dv-tertiary-grey:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group {\n display: flex;\n border-radius: 0.625rem;\n border: 1px solid $gray-30;\n background: $white;\n overflow: clip;\n}\n\n.ls-dv-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: $gray-80;\n}\n\n.ls-dv-button-group button:hover {\n background: $gray-10;\n}\n\n.ls-dv-button-group > :first-child {\n border-radius: 0.625rem 0 0 0.625rem;\n}\n\n.ls-dv-button-group > :last-child {\n border-radius: 0 0.5rem 0.5rem 0;\n}\n\n.ls-dv-button-group > :not(:first-child) {\n border-left: 1px solid $gray-30;\n}\n\n\n.ls-dv-zoom-level-btn {\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-weight: 400;\n color: $gray-80;\n padding: 0.25rem 0.375rem;\n border-radius: 0.25rem;\n margin: 0 -0.25rem;\n\n &:hover {\n background: $gray-10;\n }\n}\n\n.ls-dv-zoom-menu {\n position: absolute;\n width: 6rem;\n bottom: 3rem;\n left: 1rem;\n background: white;\n border: 1px solid $gray-30;\n border-radius: 1rem;\n box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.12);\n padding: 0.25rem;\n z-index: 1001;\n display: flex;\n flex-direction: column;\n gap: 0.25rem;\n\n}\n\n.ls-dv-page-menu {\n left: auto;\n max-height: 60cqh;\n overflow-y: auto;\n}\n\n.ls-dv-zoom-menu-item {\n position: relative;\n font-family: var(--font-family);\n font-size: var(--text-sm);\n font-weight: 400;\n color: $gray-80;\n padding: 0.375rem 0.625rem;\n border-radius: 0.825rem;\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n &:hover {\n background: $gray-10;\n }\n\n &.active {\n font-weight: 500;\n color: $primary-70;\n background: $primary-10;\n }\n}\n\n.ls-dv-thumbnail-popover {\n position: absolute;\n bottom: 3rem;\n right: -3rem;\n background: white;\n border: 1px solid $gray-30;\n border-radius: 1.75rem;\n box-shadow: 0px 8px 24px rgba(0, 0, 0, 0.15);\n padding: 0.75rem;\n z-index: 1001;\n max-height: 80cqh;\n overflow: hidden;\n display: flex;\n flex-direction: column;\n}\n\n.ls-dv-thumbnail-grid {\n background: $gray-10;\n padding: 0.75rem;\n border-radius: 1rem;\n border: 1px solid $gray-30;\n display: grid;\n grid-template-columns: repeat(auto-fill, minmax(100px, 1fr));\n gap: 1rem;\n overflow-y: auto;\n max-height: 100%;\n}\n\n.ls-dv-thumbnail-wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 0.25rem;\n cursor: pointer;\n}\n\n.ls-dv-thumbnail-wrapper > span:last-child {\n font-size: var(--text-xs, 0.75rem);\n color: $gray-80;\n font-weight: 500;\n}\n\n.ls-dv-thumbnail {\n border: 1px solid $gray-30;\n border-radius: 0.5rem;\n cursor: pointer;\n transition: border-color 0.15s;\n}\n\n.ls-dv-thumbnail:hover {\n border-color: $primary-40;\n box-shadow: 0 0 0 2px rgba(163, 180, 249, 0.3);\n}\n\n.ls-dv-thumbnail.active {\n border-color: $primary-60;\n outline: 0.25rem solid $primary-30;\n box-shadow: var(--shadow-md);\n}\n\n.ls-dv-thumbnail-dots {\n display: flex;\n gap: 3px;\n justify-content: center;\n flex-wrap: wrap;\n margin-top: 0.25rem;\n}\n\n.ls-dv-thumbnail-dot {\n width: 0.5rem;\n height: 0.5rem;\n border-radius: 50%;\n display: inline-block;\n border: 2px solid var(--dot-color-60);\n background-color: var(--dot-color-40);\n cursor: pointer;\n transition: background-color 0.15s, border-color 0.15s;\n\n &:hover {\n background-color: var(--dot-color-60);\n border-color: var(--dot-color-70);\n }\n}\n\n.ls-dv-version {\n position: absolute;\n bottom: 100%;\n right: 0;\n color: var(--gray-50, #afb0b2);\n font-size: 0.625rem;\n padding-bottom: 0.25rem;\n display: block;\n}\n\n:host(.ls-dv-statusbar-preview) .ls-dv-version {\n bottom: -1.25rem;\n margin-right: 0.5rem;\n}\n","import { Component, Host, Prop, State, Watch, h, Element } from '@stencil/core';\nimport { dvI18n } from '../../i18n/i18n';\nimport { LsDocumentViewer } from '../ls-document-viewer/ls-document-viewer';\nimport { defaultRolePalette } from '../ls-document-viewer/defaultPalette';\nimport { version } from '../../../package.json';\nimport { undo, redo } from '../ls-document-viewer/history';\n\n@Component({\n tag: 'ls-statusbar',\n styleUrl: 'ls-statusbar.scss',\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 @State() showThumbnails: boolean = false;\n @State() showZoomMenu: boolean = false;\n @State() showPageMenu: boolean = false;\n\n /**\n * The parent editor control.\n * {LsDocumentViewer}\n */\n @Prop() editor: LsDocumentViewer;\n @Prop() canUndo: boolean = false;\n @Prop() canRedo: boolean = false;\n\n /**\n * The viewer mode.\n * {'preview' | 'editor' | 'compose'}\n */\n @Prop() mode: 'preview' | 'editor' | 'compose' = 'editor';\n\n setZoom(value: number) {\n this.editor.setZoom(value);\n this.zoom = value;\n }\n\n fitWidth() {\n const wrapper = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const scale = (wrapper.clientWidth - 396) / this.editor.pageDimensions[this.editor.pageNum - 1].width;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n requestAnimationFrame(() => wrapper.scrollTo(0, 0));\n }\n\n fitHeight() {\n const midArea = this.editor.component.shadowRoot.getElementById('ls-mid-area');\n const wrapper = this.editor.component.shadowRoot.getElementById('document-frame-wrapper');\n const wrapperStyle = getComputedStyle(wrapper);\n const paddingY = parseFloat(wrapperStyle.paddingTop) + parseFloat(wrapperStyle.paddingBottom);\n const availableHeight = midArea.clientHeight - paddingY;\n const scale = availableHeight / this.editor.pageDimensions[this.editor.pageNum - 1].height;\n this.setZoom(Math.round(scale * 1e2) / 1e2);\n }\n\n goToPage(pageNum: number) {\n const diff = pageNum - this.editor.pageNum;\n if (diff > 0) {\n for (let i = 0; i < diff; i++) this.editor.pageNext();\n } else {\n for (let i = 0; i < Math.abs(diff); i++) this.editor.pagePrev();\n }\n this.page = pageNum;\n this.renderThumbnails();\n }\n\n getPageFieldColors(pageNum: number): { s40: string; s60: string; s70: string; name: string; count: number }[] {\n const template = (this.editor as any)._template;\n if (!template?.elementConnection?.templateElements) return [];\n const fields = template.elementConnection.templateElements.filter(el => el.page === pageNum);\n const signerCounts = new Map<number, number>();\n fields.forEach(el => signerCounts.set(el.signer, (signerCounts.get(el.signer) || 0) + 1));\n return Array.from(signerCounts.entries())\n .sort(([a], [b]) => {\n const baseA = a % 100;\n const baseB = b % 100;\n if (baseA !== baseB) return baseA - baseB;\n return a - b;\n })\n .map(([s, count]) => {\n const role = template.roles?.find(r => r.signerIndex === s);\n const colorIndex = s % 100;\n return {\n s40: defaultRolePalette[colorIndex]?.s40 || defaultRolePalette[0].s40,\n s60: defaultRolePalette[colorIndex]?.s60 || defaultRolePalette[0].s60,\n s70: defaultRolePalette[colorIndex]?.s70 || defaultRolePalette[0].s70,\n name: role?.name || `Participant ${s}`,\n count,\n };\n });\n }\n\n getPageFields(pageNum: number) {\n const template = (this.editor as any)._template;\n if (!template?.elementConnection?.templateElements) return [];\n return template.elementConnection.templateElements.filter(el => el.page === pageNum);\n }\n\n renderFieldsOnCanvas(ctx: CanvasRenderingContext2D, pageNum: number, viewport: { width: number; height: number }) {\n const fields = this.getPageFields(pageNum);\n fields.forEach(field => {\n const colorIndex = field.signer % 100;\n const palette = defaultRolePalette[colorIndex] || defaultRolePalette[0];\n const x = field.ax * viewport.width;\n const y = field.ay * viewport.height;\n const w = (field.bx - field.ax) * viewport.width;\n const h = (field.by - field.ay) * viewport.height;\n\n ctx.fillStyle = palette.s40 + '1a';\n ctx.fillRect(x, y, w, h);\n ctx.strokeStyle = palette.s60;\n ctx.lineWidth = 1;\n if (field.signer >= 100) {\n ctx.setLineDash([2, 2]);\n }\n ctx.strokeRect(x, y, w, h);\n ctx.setLineDash([]);\n });\n }\n\n renderThumbnails() {\n const pdfDoc = (this.editor as any).pdfDocument;\n if (!pdfDoc) return;\n const container = this.component.shadowRoot.getElementById('ls-thumbnail-container');\n if (!container) return;\n container.innerHTML = '';\n\n for (let i = 1; i <= this.pageCount; i++) {\n pdfDoc.getPage(i).then(page => {\n const viewport = page.getViewport({ scale: 0.2 });\n const canvas = document.createElement('canvas');\n canvas.width = viewport.width;\n canvas.height = viewport.height;\n canvas.className = i === this.page ? 'ls-dv-thumbnail active' : 'ls-dv-thumbnail';\n canvas.addEventListener('click', () => this.goToPage(i));\n\n const wrapper = document.createElement('div');\n wrapper.className = 'ls-dv-thumbnail-wrapper';\n wrapper.addEventListener('click', () => this.goToPage(i));\n\n const dots = document.createElement('div');\n dots.className = 'ls-dv-thumbnail-dots';\n this.getPageFieldColors(i).forEach(color => {\n const dot = document.createElement('span');\n dot.className = 'ls-dv-thumbnail-dot';\n dot.setAttribute('data-tooltip-id', 'ls-dv-tooltip');\n dot.setAttribute('data-tooltip-content', `${color.name}, ${color.count} Field${color.count !== 1 ? 's' : ''}`);\n dot.style.setProperty('--dot-color-40', color.s40);\n dot.style.setProperty('--dot-color-60', color.s60);\n dot.style.setProperty('--dot-color-70', color.s70);\n dots.appendChild(dot);\n });\n\n const label = document.createElement('span');\n label.textContent = `${i}`;\n wrapper.appendChild(canvas);\n wrapper.appendChild(dots);\n wrapper.appendChild(label);\n container.appendChild(wrapper);\n\n // Render after appending to DOM — Safari requires the canvas to be\n // in the visible tree before getContext/render produces output.\n const ctx = canvas.getContext('2d');\n page.render({ canvasContext: ctx, viewport }).promise.then(() => {\n this.renderFieldsOnCanvas(ctx, i, viewport);\n // Force Safari to composit the canvas by toggling a style property\n canvas.style.opacity = '0.99';\n requestAnimationFrame(() => {\n canvas.style.opacity = '1';\n });\n });\n });\n }\n }\n\n private outsideClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n if (!path.includes(this.component)) {\n this.showThumbnails = false;\n this.showZoomMenu = false;\n this.showPageMenu = false;\n document.removeEventListener('click', this.outsideClickHandler);\n }\n };\n\n private zoomMenuClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n const menu = this.component.shadowRoot.getElementById('ls-zoom-menu');\n const btn = this.component.shadowRoot.getElementById('zoom-level-btn');\n if (!path.includes(menu) && !path.includes(btn)) {\n this.showZoomMenu = false;\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }\n };\n\n private pageMenuClickHandler = (e: MouseEvent) => {\n const path = e.composedPath();\n const menu = this.component.shadowRoot.getElementById('ls-page-menu');\n const btn = this.component.shadowRoot.getElementById('page-level-btn');\n if (!path.includes(menu) && !path.includes(btn)) {\n this.showPageMenu = false;\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }\n };\n\n private applyUndo() {\n const mutations = undo();\n if (!mutations) return;\n this.editor._skipHistory = true;\n this.editor.mutateHandler(new CustomEvent('mutate', { detail: mutations }));\n }\n\n private applyRedo() {\n const mutations = redo();\n if (!mutations) return;\n this.editor._skipHistory = true;\n this.editor.mutateHandler(new CustomEvent('mutate', { detail: mutations }));\n }\n\n componentWillLoad() {\n this.zoom = this.editor.zoom;\n }\n\n @Watch('page')\n onPageChange() {\n if (this.showThumbnails) {\n this.renderThumbnails();\n requestAnimationFrame(() => {\n const container = this.component.shadowRoot.getElementById('ls-thumbnail-container');\n const wrapper = container?.querySelector('.ls-dv-thumbnail.active')?.closest('.ls-dv-thumbnail-wrapper') as HTMLElement;\n if (wrapper && container) {\n const gap = 12; // 0.75rem\n const wrapperTop = wrapper.offsetTop - container.offsetTop;\n const wrapperBottom = wrapperTop + wrapper.offsetHeight;\n const scrollTop = container.scrollTop;\n const viewHeight = container.clientHeight;\n\n if (wrapperTop - gap < scrollTop) {\n container.scrollTo({ top: wrapperTop - gap, behavior: 'smooth' });\n } else if (wrapperBottom + gap > scrollTop + viewHeight) {\n container.scrollTo({ top: wrapperBottom + gap - viewHeight, behavior: 'smooth' });\n }\n }\n });\n }\n }\n\n render() {\n const isPreview = this.mode === 'preview';\n return (\n <Host class={{ 'ls-dv-statusbar-preview': isPreview }}>\n {!isPreview && (\n <div class={'ls-dv-controls-bar'}>\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.applyUndo()} disabled={!this.canUndo} id=\"undo-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.undo')} >\n <ls-icon name=\"undo-icon\" size={18} />\n </button>\n <button onClick={() => this.applyRedo()} disabled={!this.canRedo} id=\"redo-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.redo')} >\n <ls-icon name=\"redo-icon\" style={{transform: \"scale(-1, 1)\", marginLeft: '0.25rem'}} size={18} />\n </button>\n </div>\n </div>\n )}\n <div class={{'ls-dv-controls-bar': true, 'ls-dv-page-nav': true}}>\n <div class={'ls-dv-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-id=\"ls-dv-tooltip\"\n data-tooltip-content={this.page === 1 ? dvI18n.t('statusbar.nopreviouspage') : dvI18n.t('statusbar.previouspage')}\n >\n <ls-icon name=\"chevron-left-icon\" />\n </button>\n <button\n id=\"page-level-btn\"\n class=\"ls-dv-zoom-level-btn\"\n onClick={() => {\n this.showPageMenu = !this.showPageMenu;\n if (this.showPageMenu) {\n requestAnimationFrame(() => document.addEventListener('click', this.pageMenuClickHandler, true));\n } else {\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }\n }}\n >\n {this.page} / {this.pageCount}\n </button>\n {this.showPageMenu && (\n <div id=\"ls-page-menu\" class=\"ls-dv-zoom-menu ls-dv-page-menu\" >\n {Array.from({ length: this.pageCount }, (_, i) => i + 1).map(p => (\n <button\n class={{ 'ls-dv-zoom-menu-item': true, 'active': this.page === p }}\n onClick={() => {\n this.goToPage(p);\n this.showPageMenu = false;\n document.removeEventListener('click', this.pageMenuClickHandler, true);\n }}\n >\n {p}\n {this.page === p && <ls-icon name=\"check-icon\" size={14} />}\n </button>\n ))}\n </div>\n )}\n <button\n onClick={() => {\n this.editor.pageNext();\n }}\n disabled={this.page === this.pageCount}\n id=\"next-page-btn\"\n data-tooltip-id=\"ls-dv-tooltip\"\n data-tooltip-content={this.page === this.pageCount ? dvI18n.t('statusbar.nonextpage') : dvI18n.t('statusbar.nextpage')}\n >\n <ls-icon name=\"chevron-right-icon\" />\n </button>\n </div>\n </div>\n <div class={'ls-dv-status-bar-group'}>\n <div class={'ls-dv-controls-bar'} style={{position: 'relative'}}>\n {/* <button onClick={() => this.editor.displayTable = true}><ls-icon name=\"table-icon\" /></button>\n <button onClick={() => this.editor.displayTable = false}><ls-icon name=\"template-icon\" /></button> */}\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.setZoom(this.editor.zoom * 0.8)} id=\"zoom-out-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.zoomout')}>\n <ls-icon name=\"zoom-out-icon\" />\n </button>\n <button\n id=\"zoom-level-btn\"\n class=\"ls-dv-zoom-level-btn\"\n onClick={() => {\n this.showZoomMenu = !this.showZoomMenu;\n if (this.showZoomMenu) {\n requestAnimationFrame(() => document.addEventListener('click', this.zoomMenuClickHandler, true));\n } else {\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }\n }}\n >\n {Math.round(this.zoom * 100)}%\n </button>\n {this.showZoomMenu && (\n <div id=\"ls-zoom-menu\" class=\"ls-dv-zoom-menu\">\n {[2, 1.75, 1.5, 1.25, 1, 0.75, 0.5, 0.25].map(level => (\n <button\n class={{ 'ls-dv-zoom-menu-item': true, 'active': Math.round(this.zoom * 100) === Math.round(level * 100) }}\n onClick={() => {\n this.setZoom(level);\n this.showZoomMenu = false;\n document.removeEventListener('click', this.zoomMenuClickHandler, true);\n }}\n >\n {Math.round(level * 100)}%{Math.round(this.zoom * 100) === Math.round(level * 100) && <ls-icon name=\"check-icon\" size={14} />}\n </button>\n ))}\n </div>\n )}\n <button onClick={() => this.setZoom(this.editor.zoom / 0.8)} id=\"zoom-in-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.zoomin')}>\n <ls-icon name=\"zoom-in-icon\" />\n </button>\n </div>\n {!isPreview && (\n <div class={'ls-dv-status-bar-section'}>\n <button onClick={() => this.fitWidth()} id=\"fit-width-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.fitwidth')}>\n <ls-icon name=\"fit-width-icon\" />\n </button>\n <button onClick={() => this.fitHeight()} id=\"fit-height-btn\" data-tooltip-id=\"ls-dv-tooltip\" data-tooltip-content={dvI18n.t('statusbar.fitheight')}>\n <ls-icon name=\"fit-height-icon\" />\n </button>\n </div>\n )}\n\n <div class={'ls-dv-status-bar-section'} style={this.pageCount === 1 ? { display: 'none' } : {}}>\n <button\n onClick={() => {\n this.showThumbnails = !this.showThumbnails;\n if (this.showThumbnails) {\n requestAnimationFrame(() => {\n requestAnimationFrame(() => {\n this.renderThumbnails();\n document.addEventListener('click', this.outsideClickHandler);\n });\n });\n } else {\n document.removeEventListener('click', this.outsideClickHandler);\n }\n }}\n id=\"page-thumbnails-btn\"\n data-tooltip-id=\"ls-dv-tooltip\"\n data-tooltip-content={dvI18n.t('statusbar.pagethumbnails')}\n >\n <ls-icon name={!this.showThumbnails ? 'side-panel-open-right-icon' : 'side-panel-close-right-icon'} size={18} />\n </button>\n </div>\n {this.showThumbnails && (\n <div class=\"ls-dv-thumbnail-popover\">\n <div id=\"ls-thumbnail-container\" class=\"ls-dv-thumbnail-grid\"></div>\n </div>\n )}\n </div>\n {!isPreview && <ls-helper-bar />}\n <span class=\"ls-dv-version\">v{version}</span>\n <ls-tooltip tooltipId=\"ls-dv-tooltip\" />\n <slot></slot>\n </div>\n </Host>\n );\n }\n}\n"],"version":3}