@ostendis/grapesjs-preset-ostendis-simple 1.3.2 → 1.3.3

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.
@@ -1 +1 @@
1
- .gjs-one-bg{background-color:#fff}.gjs-two-color{color:#657390}.gjs-blocks-c{background-color:#f2f2f2}.gjs-pn-commands,.gjs-pn-views-container{box-shadow:none}.gjs-four-color{color:#ff8200}.gjs-color-warn{color:#ff8200;fill:#ff8200;text-decoration:line-through}.gjs-radio-item input:checked+.gjs-radio-item-label{color:#fff;background-color:#3b5998}.gjs-field-checkbox input:checked+.gjs-chk-icon{border-color:#3b5998}.gjs-field-arrow-d{border-top:4px solid #3b5998}.gjs-field-arrow-u{border-bottom:4px solid #3b5998}.gjs-clm-tags #gjs-clm-new{color:#657390}.gjs-pn-commands,.gjs-cv-canvas{width:80%}.gjs-pn-views,.gjs-pn-views-container{width:20%;transition:all .2s ease-in}.gjs-pn-options{right:20%}.gjs-field-arrows{z-index:9}.gjs-block.fa::before,.gjs-block.fa-solid::before,.gjs-block.fa-regular::before,.gjs-block.fa-brands::before{display:block;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:48px}.gjs-block.fa-regular::before,.gjs-block.fa-brands::before{font-weight:400}.gjs-block.fa-solid::before{font-weight:900}.gjs-drag-helper{background-color:#3b5998 !important}.gjs-selected{outline:2px solid #3b5998 !important}.gjs-highlighter{outline:1px solid #3b5998 !important}*.gjs-hover,div.gjs-hover{outline:1px solid #3b5998}.gjs-badge,.gjs-badge{background-color:#3b5998}.gjs-toolbar{background-color:#3b5998}.gjs-toolbar-items{display:flex;justify-content:center;align-items:center;text-align:center}.gjs-toolbar-items>.gjs-toolbar-item{height:26px;display:flex;justify-content:center;align-items:center}.gjs-resizer-h{border:2px solid #3b5998}.gjs-clm-tags .gjs-sm-title,.gjs-sm-sector .gjs-sm-title{border-top:none;background-color:#fff}.gjs-clm-tags .gjs-clm-tag{background-color:#3b5998;border:none;box-shadow:none;padding:5px 8px;text-shadow:none;color:#fff}.gjs-field{color:#657390;background-color:rgba(0,0,0,.1);box-shadow:none}.gjs-btnt.gjs-pn-active,.gjs-pn-btn.gjs-pn-active{box-shadow:none}.gjs-pn-btn:hover{color:#3b5998}.gjs-btnt.gjs-pn-active,.gjs-color-active,.gjs-pn-btn.gjs-pn-active,.gjs-pn-btn:active,.gjs-block:hover{color:#3b5998}#gjs-rte-toolbar .gjs-rte-btn,.gjs-btn-prim,.gjs-btnt,.gjs-clm-tags .gjs-sm-composite.gjs-clm-field,.gjs-clm-tags .gjs-sm-field.gjs-sm-composite,.gjs-clm-tags .gjs-sm-stack #gjs-sm-add,.gjs-color-main,.gjs-mdl-dialog,.gjs-off-prv,.gjs-pn-btn,.gjs-pn-panel,.gjs-sm-sector .gjs-sm-composite.gjs-clm-field,.gjs-sm-sector .gjs-sm-field.gjs-sm-composite,.gjs-sm-sector .gjs-sm-stack #gjs-sm-add{color:#657390}#gjs-rte-toolbar,.gjs-bg-main,.gjs-clm-select option,.gjs-clm-tags .gjs-sm-colorp-c,.gjs-editor,.gjs-mdl-dialog,.gjs-nv-item .gjs-nv-title-c,.gjs-off-prv,.gjs-pn-panel,.gjs-block,.gjs-select option,.gjs-field-select option,.gjs-sm-sector .gjs-sm-colorp-c,.gjs-sm-select option,.gjs-sm-unit option,.sp-container .sp-container button{color:#657390;background-color:#fff}.gjs-ost-toolbar{display:none;position:absolute;background-color:#3b5998;white-space:nowrap;color:#fff;z-index:11;bottom:-26px;right:0}.gjs-ost-toolbar.show{display:block;pointer-events:all}.gjs-ost-toolbar .gjs-ost-toolbar-item{cursor:pointer;display:inline-block;width:26px;height:26px;padding:5px}.gjs-ost-toolbar .gjs-ost-toolbar-item.disable{color:hsla(0,0%,100%,.3);cursor:inherit}.gjs-sm-sector .gjs-sm-field input,.gjs-clm-tags .gjs-sm-field input,.gjs-sm-sector .gjs-clm-field input,.gjs-clm-tags .gjs-clm-field input,.gjs-sm-sector .gjs-clm-select input,.gjs-clm-tags .gjs-clm-select input,.gjs-sm-sector .gjs-sm-field select,.gjs-clm-tags .gjs-sm-field select,.gjs-sm-sector .gjs-clm-field select,.gjs-clm-tags .gjs-clm-field select,.gjs-sm-sector .gjs-clm-select select,.gjs-clm-tags .gjs-clm-select select{color:#657390;background-color:#fff}.gjs-import-label,.gjs-export-label{margin-bottom:10px;font-size:13px}.gjs-mdl-dialog .gjs-btn-import{margin-top:10px;background-color:#3b5998;color:#fff;padding-inline:15px;margin-left:auto}.CodeMirror{border-radius:3px;height:450px;font-family:sans-serif,monospace;letter-spacing:.3px;font-size:12px}.gjs-block{border:1px solid rgba(0,0,0,.2);border-radius:3px;margin:5px 2.5% 5px;box-shadow:0 1px 0 0 rgba(0,0,0,.15);transition:box-shadow,color .2s ease 0s}.gjs-block:hover{box-shadow:0 3px 4px 0 rgba(0,0,0,.15)}#gjs-pn-views-container.gjs-pn-panel{padding:39px 0 0}#gjs-pn-views.gjs-pn-panel{padding:0;border:none}#gjs-pn-views .gjs-pn-btn{margin:0;height:40px;padding:10px;width:25%;border-bottom:2px solid rgba(0,0,0,.3)}#gjs-pn-views .gjs-pn-active{color:hsla(0,0%,100%,.9);border-bottom:2px solid #3b5998;border-radius:0}#gjs-pn-devices-c{padding-left:30px}#gjs-pn-options{padding-right:30px}.gjs-pn-options{z-index:4}.gjs-sm-composite .gjs-sm-properties{display:flex;flex-flow:row wrap;justify-content:space-between}#gjs-sm-border-top-left-radius,#gjs-sm-border-top-right-radius,#gjs-sm-border-bottom-left-radius,#gjs-sm-border-bottom-right-radius,#gjs-sm-margin-top,#gjs-sm-margin-bottom,#gjs-sm-margin-right,#gjs-sm-margin-left,#gjs-sm-padding-top,#gjs-sm-padding-bottom,#gjs-sm-padding-right,#gjs-sm-padding-left{flex:999 1 60px}#gjs-sm-border-width,#gjs-sm-border-style,#gjs-sm-border-color{flex:999 1 80px}#gjs-sm-margin-left,#gjs-sm-padding-left{order:2}#gjs-sm-margin-right,#gjs-sm-padding-right{order:3}#gjs-sm-margin-bottom,#gjs-sm-padding-bottom{order:4}.gjs-field-radio{width:100%}.gjs-field-radio #gjs-sm-input-holder{display:flex}.gjs-radio-item{flex:1 0 auto;text-align:center}.gjs-sm-sector .gjs-sm-property.gjs-sm-list{width:50%}.gjs-mdl-content{border-top:none}.gjs-sm-sector .gjs-sm-property .gjs-sm-layer.gjs-sm-active{background-color:hsla(0,0%,100%,.09)}.gjs-f-button::before{content:"B"}.gjs-f-divider::before{content:"D"}.gjs-mdl-dialog-sm{width:300px}.gjs-mdl-dialog form .gjs-sm-property{font-size:12px;margin-bottom:15px}.gjs-mdl-dialog form .gjs-sm-label{margin-bottom:5px}#gjs-clm-status-c{display:none}.anim-spin{animation:.5s linear 0s normal none infinite running spin}.form-status{float:right;font-size:14px}.text-danger{color:#f92929}#alert-msg-overlay{position:absolute;top:0;left:0;width:100%;height:401px;z-index:990}.alert-msg{position:absolute;background-color:#fff;top:50px;left:20%;width:60%;min-width:300px;z-index:999;border-radius:5px;box-shadow:0 0 11px rgba(0,0,0,.5)}.alert-msg .header{background-color:#ff8200;color:#fff;padding:15px;border-top-left-radius:5px;border-top-right-radius:5px;height:50px;box-sizing:border-box}.alert-msg .header h3{margin:0}.alert-msg .header h3 span{margin-right:10px}.alert-msg .content{padding:20px;box-sizing:border-box}.alert-msg .content .files{overflow-y:auto;margin:15px 0}.alert-msg .content .files ul{margin:5px;padding:0 0 0 15px}.alert-msg .content .files ul ::marker{content:"×"}.alert-msg .content .files ul li{padding-left:5px}.alert-msg .content strong{font-weight:bold}.alert-msg .content button.ok{margin:15px auto;display:flex;background-color:#fff;padding:5px 15px;text-transform:uppercase;color:currentColor;border:none;font-weight:normal;font-size:1.1rem;cursor:pointer}.alert-msg .content button.ok:hover{background-color:#dfdfdf}.gjs-mdl-header{display:flex;padding:10px 15px;line-height:25px}.gjs-mdl-btn-close{position:inherit;right:inherit;top:inherit;margin-left:auto;border-color:rgba(59,89,152,.2);line-height:25px;font-size:2rem}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-dialog{width:500px;max-width:100%;border-radius:5px}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-header{background-color:#ff8200;color:#fff;border:none;border-top-left-radius:5px;border-top-right-radius:5px;font-weight:bold}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-btn-close{color:#fff}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-content{padding:20px}.gjs-mdl-container.alertModalOstBlocks button.ok{margin:15px auto;display:flex;background-color:#fff;padding:5px 15px;text-transform:uppercase;color:currentColor;border:none;font-weight:normal;font-size:1.1rem;cursor:pointer}.gjs-mdl-container.alertModalOstBlocks button.ok:hover{background-color:#dfdfdf}.gjs-editor-cont .sp-container .sp-choose{background:#3b5998;border-color:#3b5998;color:#fff;border-radius:0}.gjs-editor-cont .sp-container .sp-choose:hover,.gjs-editor-cont .sp-container .sp-choose:active{background:#3b5998;border-color:#3b5998;color:#657390}.gjs-trt-trait{padding:10px;flex-wrap:wrap}.gjs-trt-trait .gjs-label-wrp{width:100%}.gjs-select-option-ok,.gjs-select-option-ok:checked{background-color:#b9ffb2;color:#006400}.gjs-select-option-nok,.gjs-select-option-nok:checked{background-color:#ffb3b3;color:#680000}.gjs-trt-traits .sp-container{top:30px !important;left:-200px !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}#paste-from-word-text{margin-bottom:15px;color:#657390;font-size:14px}#paste-from-word-content{box-sizing:border-box;width:100%;height:300px;padding:10px;border:1px solid #ddd;border-radius:4px;color:#657390;font-size:14px;line-height:1.4;resize:vertical}#paste-from-word-content:focus{outline:1px solid #3b5998}#paste-from-word-footer{margin-top:20px;display:flex;justify-content:flex-end;gap:10px}#paste-from-word-apply{padding:10px 20px;background:#3b5998;color:#fff;border:none;border-radius:4px;cursor:pointer;font-size:14px}#paste-from-word-apply:focus{outline:1px solid #2e4576}
1
+ .gjs-one-bg{background-color:#fff}.gjs-two-color{color:#657390}.gjs-blocks-c{background-color:#f2f2f2}.gjs-pn-commands,.gjs-pn-views-container{box-shadow:none}.gjs-four-color{color:#ff8200}.gjs-color-warn{color:#ff8200;fill:#ff8200;text-decoration:line-through}.gjs-radio-item input:checked+.gjs-radio-item-label{color:#fff;background-color:#3b5998}.gjs-field-checkbox input:checked+.gjs-chk-icon{border-color:#3b5998}.gjs-field-arrow-d{border-top:4px solid #3b5998}.gjs-field-arrow-u{border-bottom:4px solid #3b5998}.gjs-clm-tags #gjs-clm-new{color:#657390}.gjs-pn-commands,.gjs-cv-canvas{width:80%}.gjs-pn-views,.gjs-pn-views-container{width:20%;transition:all .2s ease-in}.gjs-pn-options{right:20%}.gjs-field-arrows{z-index:9}.gjs-block.fa::before,.gjs-block.fa-solid::before,.gjs-block.fa-regular::before,.gjs-block.fa-brands::before{display:block;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:48px}.gjs-block.fa-regular::before,.gjs-block.fa-brands::before{font-weight:400}.gjs-block.fa-solid::before{font-weight:900}.gjs-drag-helper{background-color:#3b5998 !important}.gjs-selected{outline:2px solid #3b5998 !important}.gjs-highlighter{outline:1px solid #3b5998 !important}*.gjs-hover,div.gjs-hover{outline:1px solid #3b5998}.gjs-badge,.gjs-badge{background-color:#3b5998}.gjs-toolbar{background-color:#3b5998}.gjs-toolbar-items{display:flex;justify-content:center;align-items:center;text-align:center}.gjs-toolbar-items>.gjs-toolbar-item{height:26px;display:flex;justify-content:center;align-items:center}.gjs-resizer-h{border:2px solid #3b5998}.gjs-clm-tags .gjs-sm-title,.gjs-sm-sector .gjs-sm-title{border-top:none;background-color:#fff}.gjs-clm-tags .gjs-clm-tag{background-color:#3b5998;border:none;box-shadow:none;padding:5px 8px;text-shadow:none;color:#fff}.gjs-field{color:#657390;background-color:rgba(0,0,0,.1);box-shadow:none}.gjs-btnt.gjs-pn-active,.gjs-pn-btn.gjs-pn-active{box-shadow:none}.gjs-pn-btn:hover{color:#3b5998}.gjs-btnt.gjs-pn-active,.gjs-color-active,.gjs-pn-btn.gjs-pn-active,.gjs-pn-btn:active,.gjs-block:hover{color:#3b5998}#gjs-rte-toolbar .gjs-rte-btn,.gjs-btn-prim,.gjs-btnt,.gjs-clm-tags .gjs-sm-composite.gjs-clm-field,.gjs-clm-tags .gjs-sm-field.gjs-sm-composite,.gjs-clm-tags .gjs-sm-stack #gjs-sm-add,.gjs-color-main,.gjs-mdl-dialog,.gjs-off-prv,.gjs-pn-btn,.gjs-pn-panel,.gjs-sm-sector .gjs-sm-composite.gjs-clm-field,.gjs-sm-sector .gjs-sm-field.gjs-sm-composite,.gjs-sm-sector .gjs-sm-stack #gjs-sm-add{color:#657390}#gjs-rte-toolbar,.gjs-bg-main,.gjs-clm-select option,.gjs-clm-tags .gjs-sm-colorp-c,.gjs-editor,.gjs-mdl-dialog,.gjs-nv-item .gjs-nv-title-c,.gjs-off-prv,.gjs-pn-panel,.gjs-block,.gjs-select option,.gjs-field-select option,.gjs-sm-sector .gjs-sm-colorp-c,.gjs-sm-select option,.gjs-sm-unit option,.sp-container .sp-container button{color:#657390;background-color:#fff}.gjs-ost-toolbar{display:none;position:absolute;background-color:#3b5998;white-space:nowrap;color:#fff;z-index:11;bottom:-26px;right:0}.gjs-ost-toolbar.show{display:block;pointer-events:all}.gjs-ost-toolbar .gjs-ost-toolbar-item{cursor:pointer;display:inline-block;width:26px;height:26px;padding:5px}.gjs-ost-toolbar .gjs-ost-toolbar-item.disable{color:hsla(0,0%,100%,.3);cursor:inherit}.gjs-sm-sector .gjs-sm-field input,.gjs-clm-tags .gjs-sm-field input,.gjs-sm-sector .gjs-clm-field input,.gjs-clm-tags .gjs-clm-field input,.gjs-sm-sector .gjs-clm-select input,.gjs-clm-tags .gjs-clm-select input,.gjs-sm-sector .gjs-sm-field select,.gjs-clm-tags .gjs-sm-field select,.gjs-sm-sector .gjs-clm-field select,.gjs-clm-tags .gjs-clm-field select,.gjs-sm-sector .gjs-clm-select select,.gjs-clm-tags .gjs-clm-select select{color:#657390;background-color:#fff}.gjs-import-label,.gjs-export-label{margin-bottom:10px;font-size:13px}.gjs-mdl-dialog .gjs-btn-import{margin-top:10px;background-color:#3b5998;color:#fff;padding-inline:15px;margin-left:auto}.CodeMirror{border-radius:3px;height:450px;font-family:sans-serif,monospace;letter-spacing:.3px;font-size:12px}.gjs-block{border:1px solid rgba(0,0,0,.2);border-radius:3px;margin:5px 2.5% 5px;box-shadow:0 1px 0 0 rgba(0,0,0,.15);transition:box-shadow,color .2s ease 0s}.gjs-block:hover{box-shadow:0 3px 4px 0 rgba(0,0,0,.15)}#gjs-pn-views-container.gjs-pn-panel{padding:39px 0 0}#gjs-pn-views.gjs-pn-panel{padding:0;border:none}#gjs-pn-views .gjs-pn-btn{margin:0;height:40px;padding:10px;width:25%;border-bottom:2px solid rgba(0,0,0,.3)}#gjs-pn-views .gjs-pn-active{color:hsla(0,0%,100%,.9);border-bottom:2px solid #3b5998;border-radius:0}#gjs-pn-devices-c{padding-left:30px}#gjs-pn-options{padding-right:30px}.gjs-pn-options{z-index:4}.gjs-sm-composite .gjs-sm-properties{display:flex;flex-flow:row wrap;justify-content:space-between}#gjs-sm-border-top-left-radius,#gjs-sm-border-top-right-radius,#gjs-sm-border-bottom-left-radius,#gjs-sm-border-bottom-right-radius,#gjs-sm-margin-top,#gjs-sm-margin-bottom,#gjs-sm-margin-right,#gjs-sm-margin-left,#gjs-sm-padding-top,#gjs-sm-padding-bottom,#gjs-sm-padding-right,#gjs-sm-padding-left{flex:999 1 60px}#gjs-sm-border-width,#gjs-sm-border-style,#gjs-sm-border-color{flex:999 1 80px}#gjs-sm-margin-left,#gjs-sm-padding-left{order:2}#gjs-sm-margin-right,#gjs-sm-padding-right{order:3}#gjs-sm-margin-bottom,#gjs-sm-padding-bottom{order:4}.gjs-field-radio{width:100%}.gjs-field-radio #gjs-sm-input-holder{display:flex}.gjs-radio-item{flex:1 0 auto;text-align:center}.gjs-sm-sector .gjs-sm-property.gjs-sm-list{width:50%}.gjs-mdl-content{border-top:none}.gjs-sm-sector .gjs-sm-property .gjs-sm-layer.gjs-sm-active{background-color:hsla(0,0%,100%,.09)}.gjs-f-button::before{content:"B"}.gjs-f-divider::before{content:"D"}.gjs-mdl-dialog-sm{width:300px}.gjs-mdl-dialog form .gjs-sm-property{font-size:12px;margin-bottom:15px}.gjs-mdl-dialog form .gjs-sm-label{margin-bottom:5px}#gjs-clm-status-c{display:none}.anim-spin{animation:.5s linear 0s normal none infinite running spin}.form-status{float:right;font-size:14px}.text-danger{color:#f92929}#alert-msg-overlay{position:absolute;top:0;left:0;width:100%;height:401px;z-index:990}.alert-msg{position:absolute;background-color:#fff;top:50px;left:20%;width:60%;min-width:300px;z-index:999;border-radius:5px;box-shadow:0 0 11px rgba(0,0,0,.5)}.alert-msg .header{background-color:#ff8200;color:#fff;padding:15px;border-top-left-radius:5px;border-top-right-radius:5px;height:50px;box-sizing:border-box}.alert-msg .header h3{margin:0}.alert-msg .header h3 span{margin-right:10px}.alert-msg .content{padding:20px;box-sizing:border-box}.alert-msg .content .files{overflow-y:auto;margin:15px 0}.alert-msg .content .files ul{margin:5px;padding:0 0 0 15px}.alert-msg .content .files ul ::marker{content:"×"}.alert-msg .content .files ul li{padding-left:5px}.alert-msg .content strong{font-weight:bold}.alert-msg .content button.ok{margin:15px auto;display:flex;background-color:#fff;padding:5px 15px;text-transform:uppercase;color:currentColor;border:none;font-weight:normal;font-size:1.1rem;cursor:pointer}.alert-msg .content button.ok:hover{background-color:#dfdfdf}.gjs-mdl-header{display:flex;padding:10px 15px;line-height:25px}.gjs-mdl-btn-close{position:inherit;right:inherit;top:inherit;margin-left:auto;border-color:rgba(59,89,152,.2);line-height:25px;font-size:2rem}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-dialog{width:500px;max-width:100%;border-radius:5px}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-header{background-color:#ff8200;color:#fff;border:none;border-top-left-radius:5px;border-top-right-radius:5px;font-weight:bold}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-btn-close{color:#fff}.gjs-mdl-container.alertModalOstBlocks .gjs-mdl-content{padding:20px}.gjs-mdl-container.alertModalOstBlocks button.ok{margin:15px auto;display:flex;background-color:#fff;padding:5px 15px;text-transform:uppercase;color:currentColor;border:none;font-weight:normal;font-size:1.1rem;cursor:pointer}.gjs-mdl-container.alertModalOstBlocks button.ok:hover{background-color:#dfdfdf}.gjs-editor-cont .sp-container .sp-choose{background:#3b5998;border-color:#3b5998;color:#fff;border-radius:0}.gjs-editor-cont .sp-container .sp-choose:hover,.gjs-editor-cont .sp-container .sp-choose:active{background:#3b5998;border-color:#3b5998;color:#657390}.gjs-trt-trait{padding:10px;flex-wrap:wrap}.gjs-trt-trait .gjs-label-wrp{width:100%}.gjs-select-option-ok,.gjs-select-option-ok:checked{background-color:#b9ffb2;color:#006400}.gjs-select-option-nok,.gjs-select-option-nok:checked{background-color:#ffb3b3;color:#680000}.gjs-trt-traits .sp-container{top:30px !important;left:-200px !important}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}#paste-from-word-text{margin-bottom:15px;color:#657390;font-size:14px}#paste-from-word-content{box-sizing:border-box;width:100%;height:300px;padding:10px;border:1px solid #ddd;border-radius:4px;color:#657390;font-size:14px;line-height:1.4;resize:vertical}#paste-from-word-content:focus{outline:1px solid #3b5998}#paste-from-word-footer{display:flex;justify-content:flex-end;gap:10px}#paste-from-word-apply{margin-top:10px;background-color:#3b5998;color:#fff;padding-inline:15px;margin-left:auto}
@@ -59,15 +59,18 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
59
59
  const { Commands } = editor;
60
60
  Commands.add(_consts__WEBPACK_IMPORTED_MODULE_0__.cmdDeviceDesktop, {
61
61
  run: (ed) => ed.setDevice("Desktop"),
62
- stop: () => { },
62
+ stop: () => {
63
+ },
63
64
  });
64
65
  Commands.add(_consts__WEBPACK_IMPORTED_MODULE_0__.cmdDeviceTablet, {
65
66
  run: (ed) => ed.setDevice("Tablet"),
66
- stop: () => { },
67
+ stop: () => {
68
+ },
67
69
  });
68
70
  Commands.add(_consts__WEBPACK_IMPORTED_MODULE_0__.cmdDeviceMobile, {
69
71
  run: (ed) => ed.setDevice("Mobile portrait"),
70
- stop: () => { },
72
+ stop: () => {
73
+ },
71
74
  });
72
75
  // Helper function to check if a line is a bullet point
73
76
  function isBulletPoint(line) {
@@ -171,7 +174,7 @@ var __awaiter = (undefined && undefined.__awaiter) || function (thisArg, _argume
171
174
  <p id="paste-from-word-text">${opts.t9n.labelPasteFromWordText}</p>
172
175
  <textarea id="paste-from-word-content" placeholder="${opts.t9n.labelPasteFromWordPlaceholder}"></textarea>
173
176
  <div id="paste-from-word-footer">
174
- <button id="paste-from-word-apply">${opts.t9n.labelPasteFromWordButton}</button>
177
+ <button id="paste-from-word-apply" class="gjs-btn-prim">${opts.t9n.labelPasteFromWordButton}</button>
175
178
  </div>
176
179
  </div>
177
180
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"grapesjs-preset-ostendis-simple.min.js","mappings":"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","sources":["webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/universalModuleDefinition","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/blocks.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/commands.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/components.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/consts.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/ostTranslations.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/panels.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/rte.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/traits.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/bootstrap","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/define property getters","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/hasOwnProperty shorthand","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/make namespace object","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@ostendis/grapesjs-preset-ostendis-simple\"] = factory();\n\telse\n\t\troot[\"@ostendis/grapesjs-preset-ostendis-simple\"] = factory();\n})(typeof globalThis !== 'undefined' ? globalThis : (typeof window !== 'undefined' ? window : this), () => {\nreturn ","import type { Editor, BlockProperties } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default function (editor: Editor, opts: Required<PluginOptions>) {\r\n const { Blocks } = editor;\r\n\r\n const addBlock = (id: string, blockDef: BlockProperties) => {\r\n opts.blocks.indexOf(id)! >= 0 &&\r\n editor.Blocks.add(id, {\r\n select: true,\r\n ...blockDef,\r\n ...opts.block(id),\r\n });\r\n };\r\n\r\n Blocks.getAll().reset();\r\n}\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport { BULLET_PATTERNS, cmdDeviceDesktop, cmdDeviceMobile, cmdDeviceTablet } from \"./consts\";\r\n\r\nexport default async (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { Commands } = editor;\r\n\r\n Commands.add(cmdDeviceDesktop, {\r\n run: (ed) => ed.setDevice(\"Desktop\"),\r\n stop: () => {},\r\n });\r\n\r\n Commands.add(cmdDeviceTablet, {\r\n run: (ed) => ed.setDevice(\"Tablet\"),\r\n stop: () => {},\r\n });\r\n\r\n Commands.add(cmdDeviceMobile, {\r\n run: (ed) => ed.setDevice(\"Mobile portrait\"),\r\n stop: () => {},\r\n });\r\n\r\n // Helper function to check if a line is a bullet point\r\n function isBulletPoint(line: string): boolean {\r\n const trimmedLine = line.trim();\r\n return BULLET_PATTERNS.some(pattern => pattern.test(trimmedLine));\r\n }\r\n\r\n // Helper function to remove bullet point markers\r\n function removeBulletPoint(line: string): string {\r\n let trimmedLine = line.trim();\r\n\r\n for (const pattern of BULLET_PATTERNS) {\r\n trimmedLine = trimmedLine.replace(pattern, '');\r\n }\r\n\r\n return trimmedLine.trim() || 'Text';\r\n }\r\n\r\n // Helper function to clean individual item content\r\n function cleanItemContent(content: string): string {\r\n content = content.replace(/<br\\s*\\/?>/gi, ' ');\r\n content = content.replace(/<[^>]+>/g, '');\r\n\r\n const entityMap: { [key: string]: string } = {\r\n '&amp;': '&',\r\n '&lt;': '<',\r\n '&gt;': '>',\r\n '&quot;': '\"',\r\n '&apos;': \"'\",\r\n '&nbsp;': ' ',\r\n '&#8226;': '•',\r\n '&#8227;': '‣',\r\n '&#8259;': '⁃',\r\n '&bull;': '•',\r\n '&middot;': '·'\r\n };\r\n\r\n for (const [entity, char] of Object.entries(entityMap)) {\r\n content = content.replace(new RegExp(entity, 'g'), char);\r\n }\r\n\r\n content = content.replace(/\\s+/g, ' ').trim();\r\n\r\n if (!content || /^[•·▪▫‣⁃◦‧⦿⦾\\-*+.()]+$/.test(content)) {\r\n content = 'Text';\r\n }\r\n\r\n return content;\r\n }\r\n\r\n // Helper function to clean Word content and convert to list items\r\n function cleanWordContentToListItems(content: string): string[] {\r\n content = content.replace(/<!--[\\s\\S]*?-->/g, '');\r\n content = content.replace(/<o:p\\s*\\/?>|<\\/o:p>/gi, '');\r\n content = content.replace(/<w:[\\s\\S]*?>/gi, '');\r\n content = content.replace(/\\s*mso-[^:]+:[^;\"]*;?/gi, '');\r\n content = content.replace(/\\s*class=\"[^\"]*Mso[^\"]*\"/gi, '');\r\n content = content.replace(/<span[^>]*>\\s*<\\/span>/gi, '');\r\n content = content.replace(/<p[^>]*>/gi, '\\n').replace(/<\\/p>/gi, '');\r\n content = content.replace(/[ \\t]+/g, ' ');\r\n content = content.replace(/\\n\\s+/g, '\\n');\r\n content = content.trim();\r\n\r\n let items: string[] = [];\r\n\r\n if (content.includes('<li>') || content.includes('<LI>')) {\r\n const liMatches = content.match(/<li[^>]*>(.*?)<\\/li>/gi);\r\n if (liMatches) {\r\n items = liMatches.map(li => {\r\n const itemContent = li.replace(/<li[^>]*>|<\\/li>/gi, '').trim();\r\n return cleanItemContent(itemContent);\r\n });\r\n }\r\n } else {\r\n const lines = content.split(/\\r?\\n/).map(line => line.trim()).filter(line => line.length > 0);\r\n\r\n for (const line of lines) {\r\n if (isBulletPoint(line)) {\r\n const itemContent = removeBulletPoint(line);\r\n const cleaned = cleanItemContent(itemContent);\r\n if (cleaned.trim().length > 0) {\r\n items.push(cleaned);\r\n }\r\n } else if (line.trim().length > 0) {\r\n const cleaned = cleanItemContent(line);\r\n if (cleaned.trim().length > 0) {\r\n items.push(cleaned);\r\n }\r\n }\r\n }\r\n }\r\n\r\n items = items.filter(item => item.trim().length > 0);\r\n if (items.length === 0) {\r\n items = ['Text'];\r\n }\r\n\r\n return items;\r\n }\r\n\r\n // Add Word paste command\r\n Commands.add(\"paste-from-word\", {\r\n run(editor) {\r\n const selected = editor.getSelected();\r\n if (!selected) return;\r\n\r\n if (selected.getEl()?.tagName !== \"UL\") {\r\n console.warn(\"Paste from Word is only available for UL elements\");\r\n return;\r\n }\r\n\r\n const modal = editor.Modal;\r\n const modalContent = `\r\n <div>\r\n <p id=\"paste-from-word-text\">${opts.t9n.labelPasteFromWordText}</p>\r\n <textarea id=\"paste-from-word-content\" placeholder=\"${opts.t9n.labelPasteFromWordPlaceholder}\"></textarea>\r\n <div id=\"paste-from-word-footer\">\r\n <button id=\"paste-from-word-apply\">${opts.t9n.labelPasteFromWordButton}</button>\r\n </div>\r\n </div>\r\n `;\r\n\r\n modal.setTitle(opts.t9n.labelPasteFromWord);\r\n modal.setContent(modalContent);\r\n modal.open();\r\n\r\n setTimeout(() => {\r\n const textarea = document.getElementById('paste-from-word-content') as HTMLTextAreaElement;\r\n const applyBtn = document.getElementById('paste-from-word-apply');\r\n\r\n if (textarea) {\r\n textarea.focus();\r\n }\r\n\r\n if (applyBtn) {\r\n applyBtn.addEventListener('click', () => {\r\n if (textarea && selected) {\r\n const content = textarea.value;\r\n const listItems = cleanWordContentToListItems(content);\r\n\r\n selected.components().reset();\r\n\r\n selected.addAttributes({\r\n 'class': 'ulist fa-ul',\r\n 'style': 'padding: 0.2em 0; margin-left: 2em; line-height: 1.4em;'\r\n });\r\n\r\n listItems.forEach(itemContent => {\r\n const liHtml = `<li class=\"ulistitem\" style=\"text-align: left;\"><span class=\"fa-li\" style=\"left: -2em; width: 2em;\"><i class=\"fas fa-circle\" style=\"font-size: 0.4em; line-height: inherit; display: block;\"></i></span><p style=\"margin: 0; padding: 0; text-align: left;\">${itemContent}</p></li>`;\r\n selected.append(liHtml);\r\n });\r\n\r\n modal.close();\r\n editor.trigger('component:update', selected);\r\n }\r\n });\r\n }\r\n\r\n if (textarea) {\r\n textarea.addEventListener('keydown', (e) => {\r\n if (e.ctrlKey && e.key === 'Enter') {\r\n applyBtn?.click();\r\n } else if (e.key === 'Escape') {\r\n modal.close();\r\n }\r\n });\r\n }\r\n }, 100);\r\n },\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport {\r\n uListItemContent,\r\n ulListItem,\r\n ostTypeTextTrait,\r\n ostTypeImageTrait,\r\n ostTypeHideInSimpleHtmlTrait,\r\n iconTrait,\r\n nameTrait,\r\n valueTrait,\r\n} from \"./consts\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { DomComponents } = editor;\r\n\r\n // Add ostendis block trait to video components\r\n var dType = DomComponents.getType(\"video\");\r\n var dModel = dType?.model;\r\n var dView = dType?.view;\r\n const yt = \"yt\";\r\n const vi = \"vi\";\r\n const ytnc = \"ytnc\";\r\n\r\n DomComponents.addType(\"video\", {\r\n model: dModel.extend({\r\n updateTraits() {\r\n const { em } = this;\r\n const prov = this.get(\"provider\");\r\n let tagName = \"iframe\";\r\n let traits;\r\n\r\n switch (prov) {\r\n case yt:\r\n case ytnc:\r\n traits = this.getYoutubeTraits();\r\n break;\r\n case vi:\r\n traits = this.getVimeoTraits();\r\n break;\r\n default:\r\n tagName = \"video\";\r\n traits = this.getSourceTraits();\r\n }\r\n\r\n traits.push({\r\n type: \"select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"videoURL\", name: opts.t9n.traitOstVideoURL },\r\n ],\r\n });\r\n\r\n this.set({ tagName }, { silent: true }); // avoid break in view\r\n this.set({ traits });\r\n em.get(\"ready\") && em.trigger(\"component:toggled\");\r\n },\r\n }),\r\n view: dView,\r\n });\r\n\r\n // Scale the new range\r\n DomComponents.addType(\"scale\", {\r\n isComponent: (el) => {\r\n return (\r\n el.tagName === \"DIV\" &&\r\n (el.getAttribute(\"data-scale\") === \"true\" ||\r\n el.classList.contains(\"scale\"))\r\n );\r\n },\r\n\r\n model: {\r\n defaults: {\r\n tagName: \"div\",\r\n attributes: {\r\n \"data-scale\": \"true\",\r\n \"data-percent\": \"66\",\r\n \"data-fcolor\": \"#3b5998\",\r\n \"data-bgcolor\": \"#CCCCCC\",\r\n \"aria-label\": \"66 %\",\r\n role: \"img\",\r\n },\r\n style: {\r\n \"box-sizing\": \"border-box\",\r\n padding: \"0\",\r\n height: \"20px\",\r\n \"max-width\": \"100%\",\r\n border: \"0px solid #666666\",\r\n background: \"linear-gradient(to right, #3b5998 66%, #CCCCCC 66%)\",\r\n },\r\n traits: [\r\n {\r\n name: \"percent\",\r\n type: \"number\",\r\n min: 0,\r\n max: 100,\r\n label: opts.t9n.labelScalePercent,\r\n changeProp: true,\r\n },\r\n {\r\n name: \"fcolor\",\r\n type: \"color\",\r\n label: opts.t9n.labelScaleBarColor,\r\n placeholder: \"#222222\",\r\n changeProp: true,\r\n },\r\n {\r\n name: \"bgcolor\",\r\n type: \"color\",\r\n label: opts.t9n.labelScaleBgColor,\r\n placeholder: \"#cccccc\",\r\n changeProp: true,\r\n },\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n\r\n init() {\r\n const attr = this.getAttributes();\r\n const el = this.view?.el;\r\n\r\n let p = parseInt(attr[\"data-percent\"]);\r\n let f = attr[\"data-fcolor\"];\r\n let b = attr[\"data-bgcolor\"];\r\n\r\n if (isNaN(p)) p = 66;\r\n if (!f) f = \"#3b5998\";\r\n if (!b) b = \"#CCCCCC\";\r\n\r\n this.set(\"percent\", Math.max(0, Math.min(100, p)));\r\n this.set(\"bgcolor\", b);\r\n this.set(\"fcolor\", f);\r\n\r\n this.on(\"change:percent\", this.updateScale);\r\n this.on(\"change:bgcolor\", this.updateScale);\r\n this.on(\"change:fcolor\", this.updateScale);\r\n },\r\n\r\n updateScale() {\r\n let p = parseInt(this.get(\"percent\"));\r\n const f = this.get(\"fcolor\") || \"#3b5998\";\r\n const b = this.get(\"bgcolor\") || \"#CCCCCC\";\r\n\r\n if (isNaN(p)) p = 0;\r\n p = Math.max(0, Math.min(100, p));\r\n\r\n this.set(\"attributes\", {\r\n \"data-scale\": \"true\",\r\n \"data-percent\": p,\r\n \"data-fcolor\": f,\r\n \"data-bgcolor\": b,\r\n \"aria-label\": `${p} %`,\r\n });\r\n\r\n this.addStyle({\r\n background: `linear-gradient(to right, ${f} ${p}%, ${b} ${p}%)`,\r\n });\r\n },\r\n },\r\n });\r\n\r\n // INPUT\r\n DomComponents.addType(\"range\", {\r\n isComponent: (el) => el.tagName == \"INPUT\",\r\n model: {\r\n defaults: {\r\n tagName: \"input\",\r\n droppable: true,\r\n highlightable: true,\r\n traits: [nameTrait, valueTrait],\r\n attributes: { type: \"range\", disabled: true },\r\n },\r\n },\r\n extendFnView: [\"updateAttributes\"],\r\n view: {\r\n updateAttributes() {\r\n this.el.setAttribute(\"autocomplete\", \"on\");\r\n },\r\n },\r\n });\r\n\r\n // Unsorted list item component\r\n DomComponents.addType(\"ulistitem\", {\r\n isComponent: (el) => {\r\n if (el.tagName === \"LI\" && el.classList.contains(\"ulistitem\")) {\r\n return { type: \"ulistitem\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"li\",\r\n draggable: \"ul\",\r\n attributes: { class: \"ulistitem\" },\r\n style: { \"text-align\": \"left\" },\r\n components: uListItemContent,\r\n traits: [\"id\", \"title\", ostTypeTextTrait(opts)],\r\n },\r\n },\r\n });\r\n\r\n // Unsorted list component with fontawesome\r\n DomComponents.addType(\"ulist\", {\r\n isComponent: (el) => {\r\n if (el.tagName === \"UL\" && el.classList.contains(\"ulist\")) {\r\n return { type: \"ulist\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"ul\",\r\n attributes: { class: \"ulist fa-ul\" },\r\n style: {\r\n padding: \"0.2em 0\",\r\n \"margin-left\": \"2em\",\r\n \"line-height\": \"1.4em\",\r\n },\r\n components: ulListItem + ulListItem + ulListItem,\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Header component\r\n DomComponents.addType(\"header\", {\r\n isComponent: (el) => {\r\n const headings = [\"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\"];\r\n if (el.tagName && headings.includes(el.tagName.toLowerCase())) {\r\n return { type: \"header\" };\r\n }\r\n },\r\n extend: \"text\",\r\n model: {\r\n defaults: {\r\n tagName: \"h1\", //Default\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Icon component\r\n DomComponents.addType(\"icon\", {\r\n isComponent: (el) => {\r\n var classNames = [\r\n \"fa\",\r\n \"fas\",\r\n \"far\",\r\n \"fab\",\r\n \"fa-solid\",\r\n \"fa-regular\",\r\n \"fa-brands\",\r\n ];\r\n if (\r\n el.tagName === \"I\" &&\r\n classNames.some((className) => el.classList.contains(className))\r\n ) {\r\n return { type: \"icon\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"i\",\r\n attributes: { class: \"fas fa-star\" },\r\n draggable: false,\r\n droppable: false,\r\n removable: false,\r\n copyable: false,\r\n traits: [iconTrait(opts), ostTypeHideInSimpleHtmlTrait(opts)],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to table components\r\n DomComponents.addType(\"table\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to link components\r\n DomComponents.addType(\"link\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n \"href\",\r\n \"target\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to image components\r\n DomComponents.addType(\"image\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n \"alt\",\r\n ostTypeImageTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to text components\r\n DomComponents.addType(\"textnode\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to text components\r\n DomComponents.addType(\"text\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to default components\r\n DomComponents.addType(\"default\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n};\r\n","import PluginOptions from \"./pluginOptions\";\r\nimport { ostTrans } from \"./ostTranslations\";\r\n\r\nexport const cmdDeviceDesktop = \"set-device-desktop\";\r\nexport const cmdDeviceTablet = \"set-device-tablet\";\r\nexport const cmdDeviceMobile = \"set-device-mobile\";\r\n\r\nexport const nameTrait = {\r\n name: \"name\",\r\n};\r\n\r\nexport const valueTrait = {\r\n name: \"value\",\r\n label: ostTrans.traitBlkValue,\r\n};\r\n\r\nexport const uListItemContent = `\r\n <span class=\"fa-li\" style=\"left:-2em;width:2em;\" draggable=\"false\" removable=\"false\" editable=\"false\" copyable=\"false\">\r\n <i class=\"fas fa-circle\" data-gjs-type=\"icon\" style=\"font-size:0.4em;line-height:inherit;display:block;\" draggable=\"false\" removable=\"false\" editable=\"false\" copyable=\"false\"></i>\r\n </span>\r\n <p style=\"margin:0;padding:0;text-align:left;\" draggable=\"false\" removable=\"false\" copyable=\"false\">Text</p>`;\r\n\r\nexport const ulListItem =\r\n `<li style=\"text-align:left\" data-gjs-type=\"ulistitem\">` +\r\n uListItemContent +\r\n `</li>`;\r\n\r\n// Comprehensive bullet point patterns for detection and removal\r\nexport const BULLET_PATTERNS: readonly RegExp[] = [\r\n // Parenthesized numeric/alphabetic markers: (1), (a), (A)\r\n /^\\(\\d+\\)\\s+/,\r\n /^\\([a-zA-Z]\\)\\s+/,\r\n\r\n // Hierarchical numbering: 1. / 1) / 1.2. / 2.3.4)\r\n /^\\d+(?:\\.\\d+)*[.)]\\s+/,\r\n\r\n // Single alphabetic list markers: a) a. A) A.\r\n /^[a-zA-Z][.)]\\s+/,\r\n\r\n // Roman numerals (bounded, followed by . or ) and space)\r\n /^[IVXLCDM]{1,12}[.)]\\s+/i,\r\n\r\n // Word style lowercase o bullet (kept broad per request)\r\n /^o\\s+/i,\r\n\r\n // Basic ASCII bullets (hyphen, asterisk, plus)\r\n /^[-*+]\\s+/,\r\n\r\n // Dashes often used as bullets (en/em)\r\n /^[–—]\\s+/,\r\n\r\n // Common Unicode bullets & similar symbols\r\n /^[•·▪▫‣⁃◦‧⦿⦾⚬]/u,\r\n\r\n // Private use (Word/Wingdings)\r\n /^[\\uF0A7\\uF0B6\\uF0FC\\uF0A8\\uF076\\uF0D8\\uF0E0]/u,\r\n\r\n // Section sign\r\n /^§\\s+/u,\r\n\r\n // Circles and dots\r\n /^[○●◘◙]/u,\r\n\r\n // Squares\r\n /^[■□]/u,\r\n\r\n // Diamonds\r\n /^[◆◇⬥❖]/u,\r\n\r\n // Arrows (incl. guillemets)\r\n /^[►➔➢➤→⇒▸▹⏵⮚›»]/u,\r\n\r\n // Checkmarks\r\n /^[✓✗]/u,\r\n\r\n // Stars and similar asterisks\r\n /^[⭐✦✧✱✲✳✴]/u,\r\n\r\n // Circled numbers ①-⑳\r\n /^[\\u2460-\\u2473]/u,\r\n\r\n // Circled zero variants\r\n /^[⓪⓿]/u,\r\n\r\n // Circled lowercase letters ⓐ-ⓩ\r\n /^[\\u24D0-\\u24E9]/u,\r\n\r\n // Circled uppercase letters Ⓐ-Ⓩ\r\n /^[\\u24B6-\\u24CF]/u,\r\n\r\n // HTML named entities\r\n /^&bull;\\s+/,\r\n /^&middot;\\s+/,\r\n\r\n // HTML decimal entities (selected)\r\n /^&#8226;\\s+/, // •\r\n /^&#8227;\\s+/, // ‣\r\n /^&#8259;\\s+/, // ⁃\r\n /^&#8594;\\s+/, // →\r\n /^&#8658;\\s+/, // ⇒\r\n /^&#9632;\\s+/, // ■\r\n /^&#9633;\\s+/, // □\r\n /^&#9670;\\s+/, // ◆\r\n /^&#9671;\\s+/, // ◇\r\n /^&#9675;\\s+/, // ○\r\n /^&#9679;\\s+/, // ●\r\n /^&#10148;\\s+/, // ➤\r\n] as const;\r\n\r\n// Define ostendis type trait for text and default components\r\nexport function ostTypeTextTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"ost-blocks-select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.traitBlkOstendisTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"organizationHeading\", name: opts.t9n.traitOstOrganizationHeading },\r\n { id: \"organization\", name: opts.t9n.traitOstOrganization },\r\n { id: \"introductionHeading\", name: opts.t9n.traitOstIntroductionHeading },\r\n { id: \"introduction\", name: opts.t9n.traitOstIntroduction },\r\n { id: \"descriptionHeading\", name: opts.t9n.traitOstDescriptionHeading },\r\n { id: \"description\", name: opts.t9n.traitOstDescription },\r\n { id: \"tasksHeading\", name: opts.t9n.traitOstTasksHeading },\r\n { id: \"tasks\", name: opts.t9n.traitOstTasks },\r\n { id: \"requirementsHeading\", name: opts.t9n.traitOstRequirementsHeading },\r\n { id: \"requirements\", name: opts.t9n.traitOstRequirements },\r\n { id: \"benefitsHeading\", name: opts.t9n.traitOstBenefitsHeading },\r\n { id: \"benefits\", name: opts.t9n.traitOstBenefits },\r\n { id: \"contactHeading\", name: opts.t9n.traitOstContactHeading },\r\n { id: \"contact\", name: opts.t9n.traitOstContact },\r\n { id: \"calltoaction\", name: opts.t9n.traitOstCallToAction },\r\n ],\r\n };\r\n}\r\n// Define ostendis type trait for images\r\nexport function ostTypeImageTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"ost-blocks-select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.traitBlkOstendisTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"logoPicURL\", name: opts.t9n.traitOstLogoPicURL },\r\n { id: \"headerPic1URL\", name: opts.t9n.traitOstHeaderPic1URL },\r\n { id: \"headerPic2URL\", name: opts.t9n.traitOstHeaderPic2URL },\r\n { id: \"headerPic3URL\", name: opts.t9n.traitOstHeaderPic3URL },\r\n { id: \"footerPic1URL\", name: opts.t9n.traitOstFooterPic1URL },\r\n { id: \"footerPic2URL\", name: opts.t9n.traitOstFooterPic2URL },\r\n { id: \"footerPic3URL\", name: opts.t9n.traitOstFooterPic3URL },\r\n { id: \"additionalPic1URL\", name: opts.t9n.traitOstAdditionalPic1URL },\r\n { id: \"additionalPic2URL\", name: opts.t9n.traitOstAdditionalPic2URL },\r\n { id: \"additionalPic3URL\", name: opts.t9n.traitOstAdditionalPic3URL },\r\n ],\r\n };\r\n}\r\n// Define ostendis type \"hide in simple html\"\r\nexport function ostTypeHideInSimpleHtmlTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"checkbox\",\r\n label: opts.t9n.hideInSimpleHtmlLabel,\r\n name: \"data-ost-simple-hide\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.hideInSimpleHtmlTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n valueTrue: \"1\",\r\n valueFalse: \"\",\r\n };\r\n}\r\n// Define ostendis type trait for icons\r\nexport function iconTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"select\",\r\n label: \"Icon\",\r\n name: \"class\",\r\n attributes: {\r\n id: \"select-fontawesome\",\r\n \"data-tooltip\": opts.t9n.labelIconTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"fas fa-minus\", name: opts.t9n.labelIconSelectMinus },\r\n { id: \"fas fa-circle\", name: opts.t9n.labelIconSelectCircleSolid },\r\n { id: \"far fa-circle\", name: opts.t9n.labelIconSelectCircle },\r\n { id: \"fas fa-check\", name: opts.t9n.labelIconSelectCheck },\r\n { id: \"fas fa-square\", name: opts.t9n.labelIconSelectSquare },\r\n { id: \"fas fa-arrow-right\", name: opts.t9n.labelIconSelectArrowRight },\r\n { id: \"fas fa-check-circle\", name: opts.t9n.labelIconSelectCheckCircle },\r\n { id: \"far fa-clock\", name: opts.t9n.labelIconSelectClock },\r\n { id: \"fas fa-percent\", name: opts.t9n.labelIconSelectPercent },\r\n { id: \"far fa-building\", name: opts.t9n.labelIconSelectBuilding },\r\n { id: \"fas fa-home\", name: opts.t9n.labelIconSelectHome },\r\n { id: \"fas fa-globe\", name: opts.t9n.labelIconSelectGlobe },\r\n { id: \"far fa-file\", name: opts.t9n.labelIconSelectFile },\r\n { id: \"fas fa-utensils\", name: opts.t9n.labelIconSelectUtensils },\r\n { id: \"far fa-calendar-alt\", name: opts.t9n.labelIconSelectCalendar },\r\n { id: \"far fa-hourglass\", name: opts.t9n.labelIconSelectHourglass },\r\n { id: \"fas fa-map-marker-alt\", name: opts.t9n.labelIconSelectMapMarker },\r\n { id: \"fas fa-road\", name: opts.t9n.labelIconSelectRoad },\r\n { id: \"fas fa-coffee\", name: opts.t9n.labelIconSelectCoffee },\r\n { id: \"fas fa-phone\", name: opts.t9n.labelIconSelectPhone },\r\n { id: \"fas fa-envelope\", name: opts.t9n.labelIconSelectEnvelope },\r\n { id: \"fas fa-star\", name: opts.t9n.labelIconSelectStar },\r\n ],\r\n };\r\n}\r\n","import type { OstTranslations } from \"./pluginOptions\";\r\n\r\nexport const ostTrans: OstTranslations = {\r\n cmdBtnDesktopLabel: \"Desktop\",\r\n cmdBtnTabletLabel: \"Tablet\",\r\n cmdBtnMobileLabel: \"Mobile\",\r\n\r\n cmdBtnViewCompLabel: \"View components\",\r\n cmdBtnUndoLabel: \"Undo\",\r\n cmdBtnRedoLabel: \"Redo\",\r\n\r\n openTraits: \"Open Parameter\",\r\n\r\n categoryLabel: \"Basic\",\r\n smSitesCategoryLabel: \"Social media sites\",\r\n smSharesCategoryLabel: \"Social media shares\",\r\n sharesCategoryLabel: \"Shares\",\r\n\r\n traitBlkValue: \"Value\",\r\n\r\n traitHeaderLabel: \"Header Level\",\r\n traitHeaderSelectH1: \"H1 (highest)\",\r\n traitHeaderSelectH2: \"H2\",\r\n traitHeaderSelectH3: \"H3\",\r\n traitHeaderSelectH4: \"H4\",\r\n traitHeaderSelectH5: \"H5\",\r\n traitHeaderSelectH6: \"H6 (lowest)\",\r\n\r\n traitBlkOstendisTooltip: \"Define Ostendis block.\",\r\n traitOstNone: \"None\",\r\n traitOstOrganizationHeading: \"Organization Heading\",\r\n traitOstOrganization: \"Organization\",\r\n traitOstIntroductionHeading: \"Introduction Heading\",\r\n traitOstIntroduction: \"Introduction\",\r\n traitOstDescriptionHeading: \"Description Heading\",\r\n traitOstDescription: \"Description\",\r\n traitOstTasksHeading: \"Tasks Heading\",\r\n traitOstTasks: \"Tasks\",\r\n traitOstRequirementsHeading: \"Requirements Heading\",\r\n traitOstRequirements: \"Requirements\",\r\n traitOstBenefitsHeading: \"Benefits Heading\",\r\n traitOstBenefits: \"Benefits\",\r\n traitOstContactHeading: \"Contact Heading\",\r\n traitOstContact: \"Contact\",\r\n traitOstCallToAction: \"Call to action\",\r\n\r\n traitOstLogoPicURL: \"Logo Image\",\r\n traitOstHeaderPic1URL: \"Header Image 1\",\r\n traitOstHeaderPic2URL: \"Header Image 2\",\r\n traitOstHeaderPic3URL: \"Header Image 3\",\r\n traitOstFooterPic1URL: \"Footer Image 1\",\r\n traitOstFooterPic2URL: \"Footer Image 2\",\r\n traitOstFooterPic3URL: \"Footer Image 3\",\r\n traitOstAdditionalPic1URL: \"Additional Image 1\",\r\n traitOstAdditionalPic2URL: \"Additional Image 2\",\r\n traitOstAdditionalPic3URL: \"Additional Image 3\",\r\n traitOstVideoURL: \"Video\",\r\n\r\n hideInSimpleHtmlLabel: \"Hide\",\r\n hideInSimpleHtmlTooltip: \"Hide element in simple HTML (jobs.ch)\",\r\n\r\n labelIconTooltip: \"For more icons: change class name in style manager.\",\r\n labelIconSelectMinus: \"minus\",\r\n labelIconSelectCircleSolid: \"circle solid\",\r\n labelIconSelectCircle: \"circle\",\r\n labelIconSelectCheck: \"check\",\r\n labelIconSelectSquare: \"square\",\r\n labelIconSelectArrowRight: \"arrow right\",\r\n labelIconSelectCheckCircle: \"check circle\",\r\n labelIconSelectClock: \"clock\",\r\n labelIconSelectPercent: \"percent\",\r\n labelIconSelectBuilding: \"building\",\r\n labelIconSelectHome: \"home\",\r\n labelIconSelectGlobe: \"globe\",\r\n labelIconSelectFile: \"file\",\r\n labelIconSelectUtensils: \"utensils\",\r\n labelIconSelectCalendar: \"calendar\",\r\n labelIconSelectHourglass: \"hourglass\",\r\n labelIconSelectMapMarker: \"map marker\",\r\n labelIconSelectRoad: \"road\",\r\n labelIconSelectCoffee: \"coffee\",\r\n labelIconSelectPhone: \"phone\",\r\n labelIconSelectEnvelope: \"envelope\",\r\n labelIconSelectStar: \"star\",\r\n\r\n labelScalePercent: \"Percent\",\r\n labelScaleBarColor: \"Color 1\",\r\n labelScaleBgColor: \"Color 2\",\r\n\r\n labelPasteFromWord: \"Paste from Word\",\r\n labelPasteFromWordButton: \"Replace List Content\",\r\n labelPasteFromWordPlaceholder: \"Paste your Word list content here...\",\r\n labelPasteFromWordText: \"Paste your list content from Word text editor below.</br>The formatting will be cleaned and converted to list items. This will replace all existing content in the list.\",\r\n ostToolbarPasteFromWord: \"Paste from Word\",\r\n\r\n ostToolbarClone: \"Clone list element\",\r\n ostToolbarDelete: \"Delete list element\",\r\n ostToolbarUp: \"Move list element up\",\r\n ostToolbarDown: \"Move list element down\",\r\n cmdRteRemoveFormat: \"Remove format\"\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport { cmdDeviceDesktop, cmdDeviceMobile, cmdDeviceTablet } from \"./consts\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { Panels } = editor;\r\n const openTraits = \"open-tm\";\r\n const activateOutline = \"sw-visibility\";\r\n\r\n // Turn off default devices select and create new one\r\n editor.getConfig().showDevices = false;\r\n\r\n Panels.getPanels().reset([\r\n {\r\n id: \"commands\",\r\n buttons: [{}],\r\n },\r\n {\r\n id: \"devices-c\",\r\n buttons: [\r\n {\r\n id: cmdDeviceDesktop,\r\n command: cmdDeviceDesktop,\r\n className: \"fa-solid fa-desktop\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnDesktopLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n active: true,\r\n },\r\n {\r\n id: cmdDeviceTablet,\r\n command: cmdDeviceTablet,\r\n className: \"fa-solid fa-tablet-screen-button\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnTabletLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: cmdDeviceMobile,\r\n command: cmdDeviceMobile,\r\n className: \"fa-solid fa-mobile-screen-button\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnMobileLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n id: \"options\",\r\n buttons: [\r\n {\r\n id: activateOutline,\r\n command: activateOutline,\r\n context: activateOutline,\r\n className: \"fa-solid fa-border-none\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnViewCompLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: \"undo\",\r\n command: \"core:undo\",\r\n className: \"fa-solid fa-rotate-left\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnUndoLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: \"redo\",\r\n command: \"core:redo\",\r\n className: \"fa-solid fa-rotate-right\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnRedoLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n id: \"views\",\r\n buttons: [\r\n {\r\n id: openTraits,\r\n command: openTraits,\r\n togglable: false,\r\n className: \"fa-solid fa-gear\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.openTraits,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n ]);\r\n\r\n // Do stuff on load\r\n editor.onReady(() => {\r\n if (opts.showOutlineOnLoad) {\r\n const btn = Panels.getButton(\"options\", activateOutline);\r\n btn?.set(\"active\", true);\r\n }\r\n\r\n if (opts.showTraitsOnLoad) {\r\n const btn = Panels.getButton(\"views\", openTraits);\r\n btn?.set(\"active\", true);\r\n }\r\n //Beautify tooltips\r\n document.querySelectorAll(\"*[data-tooltip-pos]\").forEach((el) => {\r\n const title = el.getAttribute(\"title\")?.trim();\r\n if (title) {\r\n el.setAttribute(\"data-tooltip\", title);\r\n el.removeAttribute(\"title\");\r\n }\r\n });\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default async (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { RichTextEditor } = editor;\r\n\r\n RichTextEditor.add(\"removeFormat\", {\r\n icon: '<i class=\"fa-solid fa-text-slash\"></i>',\r\n attributes: { title: opts.t9n.cmdRteRemoveFormat },\r\n\r\n result: (rte) => rte.exec(\"removeFormat\"),\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { TraitManager } = editor;\r\n\r\n // Ostendis-Blocks trait\r\n TraitManager.addType(\"ost-blocks-select\", {\r\n createInput({ trait }) {\r\n const traitOpts = trait.get(\"options\") || [];\r\n const traitName = trait.get(\"name\") || \"ost-block-select\";\r\n const options = traitOpts.length\r\n ? traitOpts\r\n : [{ id: \"\", name: \"None\", disabled: \"disabled\" }];\r\n\r\n const el = document.createElement(\"div\");\r\n el.innerHTML = `\r\n <select class=\"ost-blocks-select\" id=\"${traitName}\">\r\n ${options\r\n .map(\r\n (opt) =>\r\n `<option value=\"${opt.id}\" ${opt.disabled}>${opt.name}</option>`\r\n )\r\n .join(\"\")}\r\n </select>\r\n <div class=\"gjs-sel-arrow\">\r\n <div class=\"gjs-d-s-arrow\"></div>\r\n </div>`;\r\n return el;\r\n },\r\n onEvent({ elInput, component, trait }) {\r\n const traitName = trait.get(\"name\") || \"ost-block-select-default\";\r\n let element = elInput.querySelector(\r\n \"#\" + [traitName]\r\n ) as HTMLSelectElement;\r\n const dataOstType = element.value;\r\n\r\n if (dataOstType == \"\") {\r\n component.removeAttributes(traitName);\r\n } else {\r\n component.addAttributes({ [traitName]: dataOstType });\r\n }\r\n updateTrait(element);\r\n },\r\n onUpdate({ elInput, component, trait }) {\r\n const traitName = trait.get(\"name\") || \"ost-block-select-default\";\r\n\r\n if (elInput !== null) {\r\n let element = elInput.querySelector(\r\n \"#\" + [traitName]\r\n ) as HTMLSelectElement;\r\n updateTrait(element);\r\n\r\n // Set select\r\n const dataOstType = component.getAttributes()[traitName] || \"\";\r\n element = elInput.querySelector(\"#\" + [traitName]) as HTMLSelectElement;\r\n element.value = dataOstType;\r\n }\r\n },\r\n });\r\n\r\n // Range trait\r\n TraitManager.addType(\"value\", {\r\n label: opts.t9n.traitBlkValue,\r\n min: 0, // Minimum number value\r\n max: 100, // Maximum number value\r\n events: {\r\n keyup: \"onChange\",\r\n },\r\n\r\n onValueChange() {\r\n const { model, target } = this;\r\n const optionsStr = model.get(\"value\").trim();\r\n const options = optionsStr.split(\"\\n\");\r\n const optComps = [];\r\n\r\n for (let i = 0; i < options.length; i++) {\r\n const optionStr = options[i];\r\n const option = optionStr.split(\"::\");\r\n optComps.push({\r\n type: \"range\",\r\n components: option[1] || option[0],\r\n attributes: { value: option[0] },\r\n });\r\n }\r\n\r\n target.components().reset(optComps);\r\n target?.view?.render();\r\n },\r\n });\r\n\r\n function updateTrait(element: HTMLSelectElement) {\r\n // Set Array to 0\r\n opts.usedOstBlocks.forEach((el) => {\r\n el.count = 0;\r\n });\r\n\r\n var wrapper = editor.DomComponents.getWrapper();\r\n var elements = wrapper?.view?.$el.find(\"[data-ost-type]\").get();\r\n\r\n // List all data-ost-type\r\n elements?.forEach((element) => {\r\n var type = element.getAttribute(\"data-ost-type\") || \"\";\r\n let index = opts.usedOstBlocks.findIndex((item) => item.name === type);\r\n if (index === -1) {\r\n opts.usedOstBlocks.push({ name: type, count: 1 });\r\n } else {\r\n opts.usedOstBlocks[index].count++;\r\n }\r\n });\r\n\r\n // Display update select input\r\n Array.from(element.options).forEach(function (optionElement, optionIndex) {\r\n if (optionElement.value != \"\") {\r\n const usedOstBlockIndex = opts.usedOstBlocks.findIndex(\r\n (e) => e.name === optionElement.value\r\n );\r\n\r\n // Reset\r\n var optionEl = element.options[optionIndex];\r\n optionEl.text = optionEl.text.replace(/^\\(.*\\)\\s*/g, \"\");\r\n optionEl.removeAttribute(\"class\");\r\n optionEl.removeAttribute(\"disabled\");\r\n\r\n if (usedOstBlockIndex > -1) {\r\n if (opts.usedOstBlocks[usedOstBlockIndex].count == 1) {\r\n optionEl.innerHTML = \"(&#10003;) \" + optionEl.text;\r\n optionEl.classList.add(\"gjs-select-option-ok\");\r\n optionEl.disabled = true;\r\n } else if (opts.usedOstBlocks[usedOstBlockIndex].count > 1) {\r\n optionEl.innerHTML =\r\n \"(! \" +\r\n opts.usedOstBlocks[usedOstBlockIndex].count +\r\n \"&times;) \" +\r\n optionEl.text;\r\n optionEl.classList.add(\"gjs-select-option-nok\");\r\n optionEl.disabled = true;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n};\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import type {Component, Plugin} from \"grapesjs\";\r\nimport loadBlocks from \"./blocks\";\r\nimport loadCommands from \"./commands\";\r\nimport loadPanels from \"./panels\";\r\nimport loadTraits from \"./traits\";\r\nimport loadComponents from \"./components\";\r\nimport loadRte from \"./rte\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport {ostTrans} from \"./ostTranslations\";\r\n\r\nexport type RequiredPluginOptions = Required<PluginOptions>;\r\n\r\ntype ToolbarButton = {\r\n attributes?: {\r\n class?: string;\r\n \"data-tooltip\"?: string;\r\n \"data-tooltip-pos\"?: \"bottom\",\r\n };\r\n label?: string;\r\n command: string;\r\n};\r\n\r\nconst plugin: Plugin<PluginOptions> = async (\r\n editor,\r\n opts: Partial<PluginOptions> = {}\r\n) => {\r\n let config = editor.getConfig();\r\n\r\n const options: RequiredPluginOptions = {\r\n blocks: [],\r\n block: () => ({}),\r\n usedOstBlocks: [],\r\n cmdOpenImport: \"gjs-open-import-template\",\r\n codeViewerTheme: \"hopscotch\",\r\n inlineCss: true,\r\n showStylesOnChange: true,\r\n showTraitsOnLoad: true,\r\n showOutlineOnLoad: true,\r\n t9n: ostTrans,\r\n ...opts,\r\n };\r\n\r\n // Change some config\r\n config.devicePreviewMode = true;\r\n\r\n loadComponents(editor, options);\r\n loadTraits(editor, options);\r\n await loadCommands(editor, options);\r\n loadBlocks(editor, options);\r\n loadPanels(editor, options);\r\n await loadRte(editor, options);\r\n\r\n // On load\r\n editor.on(\"load\", () => {\r\n // Create ostendis toolbar\r\n const tools = document.getElementById(\"gjs-tools\");\r\n const ostTools = document.createElement(\"div\");\r\n ostTools.classList.add(\"gjs-ost-toolbar\");\r\n tools?.append(ostTools);\r\n });\r\n\r\n // On selected components\r\n editor.on(\"component:selected\", () => {\r\n let selected = editor.getSelected();\r\n\r\n if (selected != undefined) {\r\n // Disable all actions for all components\r\n selected.set({\r\n draggable: false,\r\n removable: false,\r\n copyable: false,\r\n });\r\n\r\n if (selected.is(\"ulistitem\")) {\r\n // LI itself - show only select-parent\r\n selected.set({\r\n toolbar: [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ],\r\n });\r\n showOstToolbar(selected);\r\n } else if (selected.isChildOf(\"ulistitem\")) {\r\n // Content inside LI - show only select-parent\r\n const liContentToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ];\r\n selected.set({\r\n toolbar: liContentToolbar,\r\n });\r\n showOstToolbar(selected.closestType(\"ulistitem\"));\r\n } else if (selected.getEl()?.tagName === \"LI\") {\r\n // Regular LI - show only select-parent\r\n selected.set({\r\n toolbar: [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ],\r\n });\r\n //If list element is empty replace with placeholder text (M&E case:)\r\n if (selected.components().length === 0 && !selected.get(\"content\")) {\r\n const selectedPosition = selected.index();\r\n const newComponent = selected\r\n .parent()\r\n ?.append(\"<li>Text</li>\", {at: selectedPosition});\r\n selected.remove();\r\n editor.select(newComponent);\r\n selected = editor.getSelected();\r\n }\r\n showOstToolbar(selected);\r\n } else if (isChildOfElement(selected.getEl(), \"LI\")) {\r\n // Content inside regular LI - show only select-parent\r\n const liContentToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ];\r\n selected.set({\r\n toolbar: liContentToolbar,\r\n });\r\n showOstToolbar(selected.closest(\"li\"));\r\n } else if (selected.getEl()?.tagName === \"UL\") {\r\n // UL is selected - show paste button first, select-parent at the end\r\n const ulToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {\r\n class: \"fa-solid fa-file-word\",\r\n \"data-tooltip\": options.t9n.ostToolbarPasteFromWord,\r\n \"data-tooltip-pos\": \"bottom\"\r\n },\r\n command: \"paste-from-word\",\r\n },\r\n {\r\n label: '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z\"></path></svg>',\r\n command: \"select-parent\",\r\n },\r\n ];\r\n\r\n selected.set({\r\n toolbar: ulToolbar,\r\n });\r\n\r\n // Hide OST toolbar for UL elements\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n } else {\r\n // For other elements, show default toolbar with only select-parent\r\n const defaultToolbar: ToolbarButton[] = [\r\n {\r\n label: '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z\"></path></svg>',\r\n command: \"select-parent\",\r\n },\r\n ];\r\n\r\n selected.set({\r\n toolbar: defaultToolbar,\r\n });\r\n\r\n // Hide OST toolbar for other elements\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n }\r\n }\r\n });\r\n\r\n // On deselected components\r\n editor.on(\"component:deselected\", () => {\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n });\r\n\r\n function isChildOfElement(element: HTMLElement | undefined, tag: string) {\r\n while (element?.parentNode) {\r\n element = element.parentNode as HTMLElement;\r\n if (element.tagName === tag) return element;\r\n }\r\n return false;\r\n }\r\n\r\n function showOstToolbar(listItem: Component | undefined) {\r\n const elPos = listItem?.index() || 0;\r\n const elLast = listItem?.parent()?.getLastChild().index();\r\n\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\") as HTMLElement;\r\n if (ostToolbar != undefined) {\r\n ostToolbar.innerHTML = \"\";\r\n\r\n // Add clone button\r\n const cBtn = document.createElement(\"div\");\r\n cBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 3a9 9 0 0 0 0 18 9 9 0 0 0 0-18zm-1.3 3.88h2.6v3.82h3.82v2.6H13.3v3.82h-2.6V13.3H6.88v-2.6h3.82z\"/></svg>';\r\n cBtn.classList.add(\"gjs-ost-toolbar-item\", \"clone\");\r\n cBtn.title = options.t9n.ostToolbarClone;\r\n cBtn.addEventListener(\"click\", () => {\r\n listItem?.parent()?.append(listItem?.clone(), {at: elPos + 1});\r\n });\r\n ostToolbar.appendChild(cBtn);\r\n\r\n //Add delete button\r\n const dBtn = document.createElement(\"div\");\r\n dBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18zm5.12 7.7v2.6H6.88v-2.6z\"/></svg>';\r\n dBtn.title = options.t9n.ostToolbarDelete;\r\n dBtn.classList.add(\"gjs-ost-toolbar-item\", \"del\");\r\n if (elLast != 0) {\r\n dBtn.addEventListener(\"click\", () => {\r\n listItem?.remove();\r\n ostToolbar?.classList.remove(\"show\");\r\n });\r\n } else {\r\n dBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(dBtn);\r\n\r\n // Add move up button\r\n const upBtn = document.createElement(\"div\");\r\n upBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M1.9 20.75 12 3.25l10.1 17.5Z\"/></svg>';\r\n upBtn.title = options.t9n.ostToolbarUp;\r\n upBtn.classList.add(\"gjs-ost-toolbar-item\", \"up\");\r\n if (elPos > 0) {\r\n upBtn.addEventListener(\"click\", () => {\r\n if (elPos && listItem?.parent() != undefined) {\r\n let parent = listItem.parent();\r\n if (parent) {\r\n listItem?.move(parent, {at: elPos - 1});\r\n }\r\n editor.selectRemove(listItem);\r\n editor.select(listItem);\r\n }\r\n });\r\n } else {\r\n upBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(upBtn);\r\n\r\n // Add move down button\r\n const dwnBtn = document.createElement(\"div\");\r\n dwnBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M22.4 3.25 12 20.75 1.6 3.25Z\"/></svg>';\r\n dwnBtn.title = options.t9n.ostToolbarDown;\r\n dwnBtn.classList.add(\"gjs-ost-toolbar-item\", \"down\");\r\n if (elPos != elLast) {\r\n let toPos = elPos + 2;\r\n if (elPos == elLast) {\r\n toPos = 0;\r\n }\r\n dwnBtn.addEventListener(\"click\", () => {\r\n if (toPos && listItem?.parent() != undefined) {\r\n let parent = listItem.parent();\r\n if (parent) {\r\n listItem.move(parent, {at: toPos});\r\n }\r\n editor.selectRemove(listItem);\r\n editor.select(listItem);\r\n }\r\n });\r\n } else {\r\n dwnBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(dwnBtn);\r\n\r\n // Add show\r\n ostToolbar.classList.add(\"show\");\r\n }\r\n }\r\n};\r\n\r\nexport default plugin;\r\n"],"names":[],"sourceRoot":""}
1
+ {"version":3,"file":"grapesjs-preset-ostendis-simple.min.js","mappings":"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","sources":["webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/universalModuleDefinition","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/blocks.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/commands.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/components.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/consts.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/ostTranslations.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/panels.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/rte.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/traits.ts","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/bootstrap","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/define property getters","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/hasOwnProperty shorthand","webpack://@ostendis/grapesjs-preset-ostendis-simple/webpack/runtime/make namespace object","webpack://@ostendis/grapesjs-preset-ostendis-simple/./src/index.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"@ostendis/grapesjs-preset-ostendis-simple\"] = factory();\n\telse\n\t\troot[\"@ostendis/grapesjs-preset-ostendis-simple\"] = factory();\n})(typeof globalThis !== 'undefined' ? globalThis : (typeof window !== 'undefined' ? window : this), () => {\nreturn ","import type { Editor, BlockProperties } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default function (editor: Editor, opts: Required<PluginOptions>) {\r\n const { Blocks } = editor;\r\n\r\n const addBlock = (id: string, blockDef: BlockProperties) => {\r\n opts.blocks.indexOf(id)! >= 0 &&\r\n editor.Blocks.add(id, {\r\n select: true,\r\n ...blockDef,\r\n ...opts.block(id),\r\n });\r\n };\r\n\r\n Blocks.getAll().reset();\r\n}\r\n","import type {Editor} from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport {BULLET_PATTERNS, cmdDeviceDesktop, cmdDeviceMobile, cmdDeviceTablet} from \"./consts\";\r\n\r\nexport default async (editor: Editor, opts: Required<PluginOptions>) => {\r\n const {Commands} = editor;\r\n\r\n Commands.add(cmdDeviceDesktop, {\r\n run: (ed) => ed.setDevice(\"Desktop\"),\r\n stop: () => {\r\n },\r\n });\r\n\r\n Commands.add(cmdDeviceTablet, {\r\n run: (ed) => ed.setDevice(\"Tablet\"),\r\n stop: () => {\r\n },\r\n });\r\n\r\n Commands.add(cmdDeviceMobile, {\r\n run: (ed) => ed.setDevice(\"Mobile portrait\"),\r\n stop: () => {\r\n },\r\n });\r\n\r\n // Helper function to check if a line is a bullet point\r\n function isBulletPoint(line: string): boolean {\r\n const trimmedLine = line.trim();\r\n return BULLET_PATTERNS.some(pattern => pattern.test(trimmedLine));\r\n }\r\n\r\n // Helper function to remove bullet point markers\r\n function removeBulletPoint(line: string): string {\r\n let trimmedLine = line.trim();\r\n\r\n for (const pattern of BULLET_PATTERNS) {\r\n trimmedLine = trimmedLine.replace(pattern, '');\r\n }\r\n\r\n return trimmedLine.trim() || 'Text';\r\n }\r\n\r\n // Helper function to clean individual item content\r\n function cleanItemContent(content: string): string {\r\n content = content.replace(/<br\\s*\\/?>/gi, ' ');\r\n content = content.replace(/<[^>]+>/g, '');\r\n\r\n const entityMap: { [key: string]: string } = {\r\n '&amp;': '&',\r\n '&lt;': '<',\r\n '&gt;': '>',\r\n '&quot;': '\"',\r\n '&apos;': \"'\",\r\n '&nbsp;': ' ',\r\n '&#8226;': '•',\r\n '&#8227;': '‣',\r\n '&#8259;': '⁃',\r\n '&bull;': '•',\r\n '&middot;': '·'\r\n };\r\n\r\n for (const [entity, char] of Object.entries(entityMap)) {\r\n content = content.replace(new RegExp(entity, 'g'), char);\r\n }\r\n\r\n content = content.replace(/\\s+/g, ' ').trim();\r\n\r\n if (!content || /^[•·▪▫‣⁃◦‧⦿⦾\\-*+.()]+$/.test(content)) {\r\n content = 'Text';\r\n }\r\n\r\n return content;\r\n }\r\n\r\n // Helper function to clean Word content and convert to list items\r\n function cleanWordContentToListItems(content: string): string[] {\r\n content = content.replace(/<!--[\\s\\S]*?-->/g, '');\r\n content = content.replace(/<o:p\\s*\\/?>|<\\/o:p>/gi, '');\r\n content = content.replace(/<w:[\\s\\S]*?>/gi, '');\r\n content = content.replace(/\\s*mso-[^:]+:[^;\"]*;?/gi, '');\r\n content = content.replace(/\\s*class=\"[^\"]*Mso[^\"]*\"/gi, '');\r\n content = content.replace(/<span[^>]*>\\s*<\\/span>/gi, '');\r\n content = content.replace(/<p[^>]*>/gi, '\\n').replace(/<\\/p>/gi, '');\r\n content = content.replace(/[ \\t]+/g, ' ');\r\n content = content.replace(/\\n\\s+/g, '\\n');\r\n content = content.trim();\r\n\r\n let items: string[] = [];\r\n\r\n if (content.includes('<li>') || content.includes('<LI>')) {\r\n const liMatches = content.match(/<li[^>]*>(.*?)<\\/li>/gi);\r\n if (liMatches) {\r\n items = liMatches.map(li => {\r\n const itemContent = li.replace(/<li[^>]*>|<\\/li>/gi, '').trim();\r\n return cleanItemContent(itemContent);\r\n });\r\n }\r\n } else {\r\n const lines = content.split(/\\r?\\n/).map(line => line.trim()).filter(line => line.length > 0);\r\n\r\n for (const line of lines) {\r\n if (isBulletPoint(line)) {\r\n const itemContent = removeBulletPoint(line);\r\n const cleaned = cleanItemContent(itemContent);\r\n if (cleaned.trim().length > 0) {\r\n items.push(cleaned);\r\n }\r\n } else if (line.trim().length > 0) {\r\n const cleaned = cleanItemContent(line);\r\n if (cleaned.trim().length > 0) {\r\n items.push(cleaned);\r\n }\r\n }\r\n }\r\n }\r\n\r\n items = items.filter(item => item.trim().length > 0);\r\n if (items.length === 0) {\r\n items = ['Text'];\r\n }\r\n\r\n return items;\r\n }\r\n\r\n // Add Word paste command\r\n Commands.add(\"paste-from-word\", {\r\n run(editor) {\r\n const selected = editor.getSelected();\r\n if (!selected) return;\r\n\r\n if (selected.getEl()?.tagName !== \"UL\") {\r\n console.warn(\"Paste from Word is only available for UL elements\");\r\n return;\r\n }\r\n\r\n const modal = editor.Modal;\r\n const modalContent = `\r\n <div>\r\n <p id=\"paste-from-word-text\">${opts.t9n.labelPasteFromWordText}</p>\r\n <textarea id=\"paste-from-word-content\" placeholder=\"${opts.t9n.labelPasteFromWordPlaceholder}\"></textarea>\r\n <div id=\"paste-from-word-footer\">\r\n <button id=\"paste-from-word-apply\" class=\"gjs-btn-prim\">${opts.t9n.labelPasteFromWordButton}</button>\r\n </div>\r\n </div>\r\n `;\r\n\r\n modal.setTitle(opts.t9n.labelPasteFromWord);\r\n modal.setContent(modalContent);\r\n modal.open();\r\n\r\n setTimeout(() => {\r\n const textarea = document.getElementById('paste-from-word-content') as HTMLTextAreaElement;\r\n const applyBtn = document.getElementById('paste-from-word-apply');\r\n\r\n if (textarea) {\r\n textarea.focus();\r\n }\r\n\r\n if (applyBtn) {\r\n applyBtn.addEventListener('click', () => {\r\n if (textarea && selected) {\r\n const content = textarea.value;\r\n const listItems = cleanWordContentToListItems(content);\r\n\r\n selected.components().reset();\r\n\r\n selected.addAttributes({\r\n 'class': 'ulist fa-ul',\r\n 'style': 'padding: 0.2em 0; margin-left: 2em; line-height: 1.4em;'\r\n });\r\n\r\n listItems.forEach(itemContent => {\r\n const liHtml = `<li class=\"ulistitem\" style=\"text-align: left;\"><span class=\"fa-li\" style=\"left: -2em; width: 2em;\"><i class=\"fas fa-circle\" style=\"font-size: 0.4em; line-height: inherit; display: block;\"></i></span><p style=\"margin: 0; padding: 0; text-align: left;\">${itemContent}</p></li>`;\r\n selected.append(liHtml);\r\n });\r\n\r\n modal.close();\r\n editor.trigger('component:update', selected);\r\n }\r\n });\r\n }\r\n\r\n if (textarea) {\r\n textarea.addEventListener('keydown', (e) => {\r\n if (e.ctrlKey && e.key === 'Enter') {\r\n applyBtn?.click();\r\n } else if (e.key === 'Escape') {\r\n modal.close();\r\n }\r\n });\r\n }\r\n }, 100);\r\n },\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport {\r\n uListItemContent,\r\n ulListItem,\r\n ostTypeTextTrait,\r\n ostTypeImageTrait,\r\n ostTypeHideInSimpleHtmlTrait,\r\n iconTrait,\r\n nameTrait,\r\n valueTrait,\r\n} from \"./consts\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { DomComponents } = editor;\r\n\r\n // Add ostendis block trait to video components\r\n var dType = DomComponents.getType(\"video\");\r\n var dModel = dType?.model;\r\n var dView = dType?.view;\r\n const yt = \"yt\";\r\n const vi = \"vi\";\r\n const ytnc = \"ytnc\";\r\n\r\n DomComponents.addType(\"video\", {\r\n model: dModel.extend({\r\n updateTraits() {\r\n const { em } = this;\r\n const prov = this.get(\"provider\");\r\n let tagName = \"iframe\";\r\n let traits;\r\n\r\n switch (prov) {\r\n case yt:\r\n case ytnc:\r\n traits = this.getYoutubeTraits();\r\n break;\r\n case vi:\r\n traits = this.getVimeoTraits();\r\n break;\r\n default:\r\n tagName = \"video\";\r\n traits = this.getSourceTraits();\r\n }\r\n\r\n traits.push({\r\n type: \"select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"videoURL\", name: opts.t9n.traitOstVideoURL },\r\n ],\r\n });\r\n\r\n this.set({ tagName }, { silent: true }); // avoid break in view\r\n this.set({ traits });\r\n em.get(\"ready\") && em.trigger(\"component:toggled\");\r\n },\r\n }),\r\n view: dView,\r\n });\r\n\r\n // Scale the new range\r\n DomComponents.addType(\"scale\", {\r\n isComponent: (el) => {\r\n return (\r\n el.tagName === \"DIV\" &&\r\n (el.getAttribute(\"data-scale\") === \"true\" ||\r\n el.classList.contains(\"scale\"))\r\n );\r\n },\r\n\r\n model: {\r\n defaults: {\r\n tagName: \"div\",\r\n attributes: {\r\n \"data-scale\": \"true\",\r\n \"data-percent\": \"66\",\r\n \"data-fcolor\": \"#3b5998\",\r\n \"data-bgcolor\": \"#CCCCCC\",\r\n \"aria-label\": \"66 %\",\r\n role: \"img\",\r\n },\r\n style: {\r\n \"box-sizing\": \"border-box\",\r\n padding: \"0\",\r\n height: \"20px\",\r\n \"max-width\": \"100%\",\r\n border: \"0px solid #666666\",\r\n background: \"linear-gradient(to right, #3b5998 66%, #CCCCCC 66%)\",\r\n },\r\n traits: [\r\n {\r\n name: \"percent\",\r\n type: \"number\",\r\n min: 0,\r\n max: 100,\r\n label: opts.t9n.labelScalePercent,\r\n changeProp: true,\r\n },\r\n {\r\n name: \"fcolor\",\r\n type: \"color\",\r\n label: opts.t9n.labelScaleBarColor,\r\n placeholder: \"#222222\",\r\n changeProp: true,\r\n },\r\n {\r\n name: \"bgcolor\",\r\n type: \"color\",\r\n label: opts.t9n.labelScaleBgColor,\r\n placeholder: \"#cccccc\",\r\n changeProp: true,\r\n },\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n\r\n init() {\r\n const attr = this.getAttributes();\r\n const el = this.view?.el;\r\n\r\n let p = parseInt(attr[\"data-percent\"]);\r\n let f = attr[\"data-fcolor\"];\r\n let b = attr[\"data-bgcolor\"];\r\n\r\n if (isNaN(p)) p = 66;\r\n if (!f) f = \"#3b5998\";\r\n if (!b) b = \"#CCCCCC\";\r\n\r\n this.set(\"percent\", Math.max(0, Math.min(100, p)));\r\n this.set(\"bgcolor\", b);\r\n this.set(\"fcolor\", f);\r\n\r\n this.on(\"change:percent\", this.updateScale);\r\n this.on(\"change:bgcolor\", this.updateScale);\r\n this.on(\"change:fcolor\", this.updateScale);\r\n },\r\n\r\n updateScale() {\r\n let p = parseInt(this.get(\"percent\"));\r\n const f = this.get(\"fcolor\") || \"#3b5998\";\r\n const b = this.get(\"bgcolor\") || \"#CCCCCC\";\r\n\r\n if (isNaN(p)) p = 0;\r\n p = Math.max(0, Math.min(100, p));\r\n\r\n this.set(\"attributes\", {\r\n \"data-scale\": \"true\",\r\n \"data-percent\": p,\r\n \"data-fcolor\": f,\r\n \"data-bgcolor\": b,\r\n \"aria-label\": `${p} %`,\r\n });\r\n\r\n this.addStyle({\r\n background: `linear-gradient(to right, ${f} ${p}%, ${b} ${p}%)`,\r\n });\r\n },\r\n },\r\n });\r\n\r\n // INPUT\r\n DomComponents.addType(\"range\", {\r\n isComponent: (el) => el.tagName == \"INPUT\",\r\n model: {\r\n defaults: {\r\n tagName: \"input\",\r\n droppable: true,\r\n highlightable: true,\r\n traits: [nameTrait, valueTrait],\r\n attributes: { type: \"range\", disabled: true },\r\n },\r\n },\r\n extendFnView: [\"updateAttributes\"],\r\n view: {\r\n updateAttributes() {\r\n this.el.setAttribute(\"autocomplete\", \"on\");\r\n },\r\n },\r\n });\r\n\r\n // Unsorted list item component\r\n DomComponents.addType(\"ulistitem\", {\r\n isComponent: (el) => {\r\n if (el.tagName === \"LI\" && el.classList.contains(\"ulistitem\")) {\r\n return { type: \"ulistitem\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"li\",\r\n draggable: \"ul\",\r\n attributes: { class: \"ulistitem\" },\r\n style: { \"text-align\": \"left\" },\r\n components: uListItemContent,\r\n traits: [\"id\", \"title\", ostTypeTextTrait(opts)],\r\n },\r\n },\r\n });\r\n\r\n // Unsorted list component with fontawesome\r\n DomComponents.addType(\"ulist\", {\r\n isComponent: (el) => {\r\n if (el.tagName === \"UL\" && el.classList.contains(\"ulist\")) {\r\n return { type: \"ulist\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"ul\",\r\n attributes: { class: \"ulist fa-ul\" },\r\n style: {\r\n padding: \"0.2em 0\",\r\n \"margin-left\": \"2em\",\r\n \"line-height\": \"1.4em\",\r\n },\r\n components: ulListItem + ulListItem + ulListItem,\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Header component\r\n DomComponents.addType(\"header\", {\r\n isComponent: (el) => {\r\n const headings = [\"h1\", \"h2\", \"h3\", \"h4\", \"h5\", \"h6\"];\r\n if (el.tagName && headings.includes(el.tagName.toLowerCase())) {\r\n return { type: \"header\" };\r\n }\r\n },\r\n extend: \"text\",\r\n model: {\r\n defaults: {\r\n tagName: \"h1\", //Default\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Icon component\r\n DomComponents.addType(\"icon\", {\r\n isComponent: (el) => {\r\n var classNames = [\r\n \"fa\",\r\n \"fas\",\r\n \"far\",\r\n \"fab\",\r\n \"fa-solid\",\r\n \"fa-regular\",\r\n \"fa-brands\",\r\n ];\r\n if (\r\n el.tagName === \"I\" &&\r\n classNames.some((className) => el.classList.contains(className))\r\n ) {\r\n return { type: \"icon\" };\r\n }\r\n },\r\n model: {\r\n defaults: {\r\n tagName: \"i\",\r\n attributes: { class: \"fas fa-star\" },\r\n draggable: false,\r\n droppable: false,\r\n removable: false,\r\n copyable: false,\r\n traits: [iconTrait(opts), ostTypeHideInSimpleHtmlTrait(opts)],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to table components\r\n DomComponents.addType(\"table\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to link components\r\n DomComponents.addType(\"link\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n \"href\",\r\n \"target\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to image components\r\n DomComponents.addType(\"image\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n \"alt\",\r\n ostTypeImageTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to text components\r\n DomComponents.addType(\"textnode\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to text components\r\n DomComponents.addType(\"text\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n\r\n // Add ostendis type trait to default components\r\n DomComponents.addType(\"default\", {\r\n model: {\r\n defaults: {\r\n traits: [\r\n \"id\",\r\n ostTypeTextTrait(opts),\r\n ostTypeHideInSimpleHtmlTrait(opts),\r\n ],\r\n },\r\n },\r\n });\r\n};\r\n","import PluginOptions from \"./pluginOptions\";\r\nimport { ostTrans } from \"./ostTranslations\";\r\n\r\nexport const cmdDeviceDesktop = \"set-device-desktop\";\r\nexport const cmdDeviceTablet = \"set-device-tablet\";\r\nexport const cmdDeviceMobile = \"set-device-mobile\";\r\n\r\nexport const nameTrait = {\r\n name: \"name\",\r\n};\r\n\r\nexport const valueTrait = {\r\n name: \"value\",\r\n label: ostTrans.traitBlkValue,\r\n};\r\n\r\nexport const uListItemContent = `\r\n <span class=\"fa-li\" style=\"left:-2em;width:2em;\" draggable=\"false\" removable=\"false\" editable=\"false\" copyable=\"false\">\r\n <i class=\"fas fa-circle\" data-gjs-type=\"icon\" style=\"font-size:0.4em;line-height:inherit;display:block;\" draggable=\"false\" removable=\"false\" editable=\"false\" copyable=\"false\"></i>\r\n </span>\r\n <p style=\"margin:0;padding:0;text-align:left;\" draggable=\"false\" removable=\"false\" copyable=\"false\">Text</p>`;\r\n\r\nexport const ulListItem =\r\n `<li style=\"text-align:left\" data-gjs-type=\"ulistitem\">` +\r\n uListItemContent +\r\n `</li>`;\r\n\r\n// Comprehensive bullet point patterns for detection and removal\r\nexport const BULLET_PATTERNS: readonly RegExp[] = [\r\n // Parenthesized numeric/alphabetic markers: (1), (a), (A)\r\n /^\\(\\d+\\)\\s+/,\r\n /^\\([a-zA-Z]\\)\\s+/,\r\n\r\n // Hierarchical numbering: 1. / 1) / 1.2. / 2.3.4)\r\n /^\\d+(?:\\.\\d+)*[.)]\\s+/,\r\n\r\n // Single alphabetic list markers: a) a. A) A.\r\n /^[a-zA-Z][.)]\\s+/,\r\n\r\n // Roman numerals (bounded, followed by . or ) and space)\r\n /^[IVXLCDM]{1,12}[.)]\\s+/i,\r\n\r\n // Word style lowercase o bullet (kept broad per request)\r\n /^o\\s+/i,\r\n\r\n // Basic ASCII bullets (hyphen, asterisk, plus)\r\n /^[-*+]\\s+/,\r\n\r\n // Dashes often used as bullets (en/em)\r\n /^[–—]\\s+/,\r\n\r\n // Common Unicode bullets & similar symbols\r\n /^[•·▪▫‣⁃◦‧⦿⦾⚬]/u,\r\n\r\n // Private use (Word/Wingdings)\r\n /^[\\uF0A7\\uF0B6\\uF0FC\\uF0A8\\uF076\\uF0D8\\uF0E0]/u,\r\n\r\n // Section sign\r\n /^§\\s+/u,\r\n\r\n // Circles and dots\r\n /^[○●◘◙]/u,\r\n\r\n // Squares\r\n /^[■□]/u,\r\n\r\n // Diamonds\r\n /^[◆◇⬥❖]/u,\r\n\r\n // Arrows (incl. guillemets)\r\n /^[►➔➢➤→⇒▸▹⏵⮚›»]/u,\r\n\r\n // Checkmarks\r\n /^[✓✗]/u,\r\n\r\n // Stars and similar asterisks\r\n /^[⭐✦✧✱✲✳✴]/u,\r\n\r\n // Circled numbers ①-⑳\r\n /^[\\u2460-\\u2473]/u,\r\n\r\n // Circled zero variants\r\n /^[⓪⓿]/u,\r\n\r\n // Circled lowercase letters ⓐ-ⓩ\r\n /^[\\u24D0-\\u24E9]/u,\r\n\r\n // Circled uppercase letters Ⓐ-Ⓩ\r\n /^[\\u24B6-\\u24CF]/u,\r\n\r\n // HTML named entities\r\n /^&bull;\\s+/,\r\n /^&middot;\\s+/,\r\n\r\n // HTML decimal entities (selected)\r\n /^&#8226;\\s+/, // •\r\n /^&#8227;\\s+/, // ‣\r\n /^&#8259;\\s+/, // ⁃\r\n /^&#8594;\\s+/, // →\r\n /^&#8658;\\s+/, // ⇒\r\n /^&#9632;\\s+/, // ■\r\n /^&#9633;\\s+/, // □\r\n /^&#9670;\\s+/, // ◆\r\n /^&#9671;\\s+/, // ◇\r\n /^&#9675;\\s+/, // ○\r\n /^&#9679;\\s+/, // ●\r\n /^&#10148;\\s+/, // ➤\r\n] as const;\r\n\r\n// Define ostendis type trait for text and default components\r\nexport function ostTypeTextTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"ost-blocks-select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.traitBlkOstendisTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"organizationHeading\", name: opts.t9n.traitOstOrganizationHeading },\r\n { id: \"organization\", name: opts.t9n.traitOstOrganization },\r\n { id: \"introductionHeading\", name: opts.t9n.traitOstIntroductionHeading },\r\n { id: \"introduction\", name: opts.t9n.traitOstIntroduction },\r\n { id: \"descriptionHeading\", name: opts.t9n.traitOstDescriptionHeading },\r\n { id: \"description\", name: opts.t9n.traitOstDescription },\r\n { id: \"tasksHeading\", name: opts.t9n.traitOstTasksHeading },\r\n { id: \"tasks\", name: opts.t9n.traitOstTasks },\r\n { id: \"requirementsHeading\", name: opts.t9n.traitOstRequirementsHeading },\r\n { id: \"requirements\", name: opts.t9n.traitOstRequirements },\r\n { id: \"benefitsHeading\", name: opts.t9n.traitOstBenefitsHeading },\r\n { id: \"benefits\", name: opts.t9n.traitOstBenefits },\r\n { id: \"contactHeading\", name: opts.t9n.traitOstContactHeading },\r\n { id: \"contact\", name: opts.t9n.traitOstContact },\r\n { id: \"calltoaction\", name: opts.t9n.traitOstCallToAction },\r\n ],\r\n };\r\n}\r\n// Define ostendis type trait for images\r\nexport function ostTypeImageTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"ost-blocks-select\",\r\n label: \"Ostendis Blocks\",\r\n name: \"data-ost-type\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.traitBlkOstendisTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"\", name: opts.t9n.traitOstNone },\r\n { id: \"logoPicURL\", name: opts.t9n.traitOstLogoPicURL },\r\n { id: \"headerPic1URL\", name: opts.t9n.traitOstHeaderPic1URL },\r\n { id: \"headerPic2URL\", name: opts.t9n.traitOstHeaderPic2URL },\r\n { id: \"headerPic3URL\", name: opts.t9n.traitOstHeaderPic3URL },\r\n { id: \"footerPic1URL\", name: opts.t9n.traitOstFooterPic1URL },\r\n { id: \"footerPic2URL\", name: opts.t9n.traitOstFooterPic2URL },\r\n { id: \"footerPic3URL\", name: opts.t9n.traitOstFooterPic3URL },\r\n { id: \"additionalPic1URL\", name: opts.t9n.traitOstAdditionalPic1URL },\r\n { id: \"additionalPic2URL\", name: opts.t9n.traitOstAdditionalPic2URL },\r\n { id: \"additionalPic3URL\", name: opts.t9n.traitOstAdditionalPic3URL },\r\n ],\r\n };\r\n}\r\n// Define ostendis type \"hide in simple html\"\r\nexport function ostTypeHideInSimpleHtmlTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"checkbox\",\r\n label: opts.t9n.hideInSimpleHtmlLabel,\r\n name: \"data-ost-simple-hide\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.hideInSimpleHtmlTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n valueTrue: \"1\",\r\n valueFalse: \"\",\r\n };\r\n}\r\n// Define ostendis type trait for icons\r\nexport function iconTrait(opts: Required<PluginOptions>) {\r\n return {\r\n type: \"select\",\r\n label: \"Icon\",\r\n name: \"class\",\r\n attributes: {\r\n id: \"select-fontawesome\",\r\n \"data-tooltip\": opts.t9n.labelIconTooltip,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n options: [\r\n { id: \"fas fa-minus\", name: opts.t9n.labelIconSelectMinus },\r\n { id: \"fas fa-circle\", name: opts.t9n.labelIconSelectCircleSolid },\r\n { id: \"far fa-circle\", name: opts.t9n.labelIconSelectCircle },\r\n { id: \"fas fa-check\", name: opts.t9n.labelIconSelectCheck },\r\n { id: \"fas fa-square\", name: opts.t9n.labelIconSelectSquare },\r\n { id: \"fas fa-arrow-right\", name: opts.t9n.labelIconSelectArrowRight },\r\n { id: \"fas fa-check-circle\", name: opts.t9n.labelIconSelectCheckCircle },\r\n { id: \"far fa-clock\", name: opts.t9n.labelIconSelectClock },\r\n { id: \"fas fa-percent\", name: opts.t9n.labelIconSelectPercent },\r\n { id: \"far fa-building\", name: opts.t9n.labelIconSelectBuilding },\r\n { id: \"fas fa-home\", name: opts.t9n.labelIconSelectHome },\r\n { id: \"fas fa-globe\", name: opts.t9n.labelIconSelectGlobe },\r\n { id: \"far fa-file\", name: opts.t9n.labelIconSelectFile },\r\n { id: \"fas fa-utensils\", name: opts.t9n.labelIconSelectUtensils },\r\n { id: \"far fa-calendar-alt\", name: opts.t9n.labelIconSelectCalendar },\r\n { id: \"far fa-hourglass\", name: opts.t9n.labelIconSelectHourglass },\r\n { id: \"fas fa-map-marker-alt\", name: opts.t9n.labelIconSelectMapMarker },\r\n { id: \"fas fa-road\", name: opts.t9n.labelIconSelectRoad },\r\n { id: \"fas fa-coffee\", name: opts.t9n.labelIconSelectCoffee },\r\n { id: \"fas fa-phone\", name: opts.t9n.labelIconSelectPhone },\r\n { id: \"fas fa-envelope\", name: opts.t9n.labelIconSelectEnvelope },\r\n { id: \"fas fa-star\", name: opts.t9n.labelIconSelectStar },\r\n ],\r\n };\r\n}\r\n","import type { OstTranslations } from \"./pluginOptions\";\r\n\r\nexport const ostTrans: OstTranslations = {\r\n cmdBtnDesktopLabel: \"Desktop\",\r\n cmdBtnTabletLabel: \"Tablet\",\r\n cmdBtnMobileLabel: \"Mobile\",\r\n\r\n cmdBtnViewCompLabel: \"View components\",\r\n cmdBtnUndoLabel: \"Undo\",\r\n cmdBtnRedoLabel: \"Redo\",\r\n\r\n openTraits: \"Open Parameter\",\r\n\r\n categoryLabel: \"Basic\",\r\n smSitesCategoryLabel: \"Social media sites\",\r\n smSharesCategoryLabel: \"Social media shares\",\r\n sharesCategoryLabel: \"Shares\",\r\n\r\n traitBlkValue: \"Value\",\r\n\r\n traitHeaderLabel: \"Header Level\",\r\n traitHeaderSelectH1: \"H1 (highest)\",\r\n traitHeaderSelectH2: \"H2\",\r\n traitHeaderSelectH3: \"H3\",\r\n traitHeaderSelectH4: \"H4\",\r\n traitHeaderSelectH5: \"H5\",\r\n traitHeaderSelectH6: \"H6 (lowest)\",\r\n\r\n traitBlkOstendisTooltip: \"Define Ostendis block.\",\r\n traitOstNone: \"None\",\r\n traitOstOrganizationHeading: \"Organization Heading\",\r\n traitOstOrganization: \"Organization\",\r\n traitOstIntroductionHeading: \"Introduction Heading\",\r\n traitOstIntroduction: \"Introduction\",\r\n traitOstDescriptionHeading: \"Description Heading\",\r\n traitOstDescription: \"Description\",\r\n traitOstTasksHeading: \"Tasks Heading\",\r\n traitOstTasks: \"Tasks\",\r\n traitOstRequirementsHeading: \"Requirements Heading\",\r\n traitOstRequirements: \"Requirements\",\r\n traitOstBenefitsHeading: \"Benefits Heading\",\r\n traitOstBenefits: \"Benefits\",\r\n traitOstContactHeading: \"Contact Heading\",\r\n traitOstContact: \"Contact\",\r\n traitOstCallToAction: \"Call to action\",\r\n\r\n traitOstLogoPicURL: \"Logo Image\",\r\n traitOstHeaderPic1URL: \"Header Image 1\",\r\n traitOstHeaderPic2URL: \"Header Image 2\",\r\n traitOstHeaderPic3URL: \"Header Image 3\",\r\n traitOstFooterPic1URL: \"Footer Image 1\",\r\n traitOstFooterPic2URL: \"Footer Image 2\",\r\n traitOstFooterPic3URL: \"Footer Image 3\",\r\n traitOstAdditionalPic1URL: \"Additional Image 1\",\r\n traitOstAdditionalPic2URL: \"Additional Image 2\",\r\n traitOstAdditionalPic3URL: \"Additional Image 3\",\r\n traitOstVideoURL: \"Video\",\r\n\r\n hideInSimpleHtmlLabel: \"Hide\",\r\n hideInSimpleHtmlTooltip: \"Hide element in simple HTML (jobs.ch)\",\r\n\r\n labelIconTooltip: \"For more icons: change class name in style manager.\",\r\n labelIconSelectMinus: \"minus\",\r\n labelIconSelectCircleSolid: \"circle solid\",\r\n labelIconSelectCircle: \"circle\",\r\n labelIconSelectCheck: \"check\",\r\n labelIconSelectSquare: \"square\",\r\n labelIconSelectArrowRight: \"arrow right\",\r\n labelIconSelectCheckCircle: \"check circle\",\r\n labelIconSelectClock: \"clock\",\r\n labelIconSelectPercent: \"percent\",\r\n labelIconSelectBuilding: \"building\",\r\n labelIconSelectHome: \"home\",\r\n labelIconSelectGlobe: \"globe\",\r\n labelIconSelectFile: \"file\",\r\n labelIconSelectUtensils: \"utensils\",\r\n labelIconSelectCalendar: \"calendar\",\r\n labelIconSelectHourglass: \"hourglass\",\r\n labelIconSelectMapMarker: \"map marker\",\r\n labelIconSelectRoad: \"road\",\r\n labelIconSelectCoffee: \"coffee\",\r\n labelIconSelectPhone: \"phone\",\r\n labelIconSelectEnvelope: \"envelope\",\r\n labelIconSelectStar: \"star\",\r\n\r\n labelScalePercent: \"Percent\",\r\n labelScaleBarColor: \"Color 1\",\r\n labelScaleBgColor: \"Color 2\",\r\n\r\n labelPasteFromWord: \"Paste from Word\",\r\n labelPasteFromWordButton: \"Replace List Content\",\r\n labelPasteFromWordPlaceholder: \"Paste your Word list content here...\",\r\n labelPasteFromWordText: \"Paste your list content from Word text editor below.</br>The formatting will be cleaned and converted to list items. This will replace all existing content in the list.\",\r\n ostToolbarPasteFromWord: \"Paste from Word\",\r\n\r\n ostToolbarClone: \"Clone list element\",\r\n ostToolbarDelete: \"Delete list element\",\r\n ostToolbarUp: \"Move list element up\",\r\n ostToolbarDown: \"Move list element down\",\r\n cmdRteRemoveFormat: \"Remove format\"\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport { cmdDeviceDesktop, cmdDeviceMobile, cmdDeviceTablet } from \"./consts\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { Panels } = editor;\r\n const openTraits = \"open-tm\";\r\n const activateOutline = \"sw-visibility\";\r\n\r\n // Turn off default devices select and create new one\r\n editor.getConfig().showDevices = false;\r\n\r\n Panels.getPanels().reset([\r\n {\r\n id: \"commands\",\r\n buttons: [{}],\r\n },\r\n {\r\n id: \"devices-c\",\r\n buttons: [\r\n {\r\n id: cmdDeviceDesktop,\r\n command: cmdDeviceDesktop,\r\n className: \"fa-solid fa-desktop\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnDesktopLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n active: true,\r\n },\r\n {\r\n id: cmdDeviceTablet,\r\n command: cmdDeviceTablet,\r\n className: \"fa-solid fa-tablet-screen-button\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnTabletLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: cmdDeviceMobile,\r\n command: cmdDeviceMobile,\r\n className: \"fa-solid fa-mobile-screen-button\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnMobileLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n id: \"options\",\r\n buttons: [\r\n {\r\n id: activateOutline,\r\n command: activateOutline,\r\n context: activateOutline,\r\n className: \"fa-solid fa-border-none\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnViewCompLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: \"undo\",\r\n command: \"core:undo\",\r\n className: \"fa-solid fa-rotate-left\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnUndoLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n {\r\n id: \"redo\",\r\n command: \"core:redo\",\r\n className: \"fa-solid fa-rotate-right\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.cmdBtnRedoLabel,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n {\r\n id: \"views\",\r\n buttons: [\r\n {\r\n id: openTraits,\r\n command: openTraits,\r\n togglable: false,\r\n className: \"fa-solid fa-gear\",\r\n attributes: {\r\n \"data-tooltip\": opts.t9n.openTraits,\r\n \"data-tooltip-pos\": \"bottom\",\r\n },\r\n },\r\n ],\r\n },\r\n ]);\r\n\r\n // Do stuff on load\r\n editor.onReady(() => {\r\n if (opts.showOutlineOnLoad) {\r\n const btn = Panels.getButton(\"options\", activateOutline);\r\n btn?.set(\"active\", true);\r\n }\r\n\r\n if (opts.showTraitsOnLoad) {\r\n const btn = Panels.getButton(\"views\", openTraits);\r\n btn?.set(\"active\", true);\r\n }\r\n //Beautify tooltips\r\n document.querySelectorAll(\"*[data-tooltip-pos]\").forEach((el) => {\r\n const title = el.getAttribute(\"title\")?.trim();\r\n if (title) {\r\n el.setAttribute(\"data-tooltip\", title);\r\n el.removeAttribute(\"title\");\r\n }\r\n });\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default async (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { RichTextEditor } = editor;\r\n\r\n RichTextEditor.add(\"removeFormat\", {\r\n icon: '<i class=\"fa-solid fa-text-slash\"></i>',\r\n attributes: { title: opts.t9n.cmdRteRemoveFormat },\r\n\r\n result: (rte) => rte.exec(\"removeFormat\"),\r\n });\r\n};\r\n","import type { Editor } from \"grapesjs\";\r\nimport PluginOptions from \"./pluginOptions\";\r\n\r\nexport default (editor: Editor, opts: Required<PluginOptions>) => {\r\n const { TraitManager } = editor;\r\n\r\n // Ostendis-Blocks trait\r\n TraitManager.addType(\"ost-blocks-select\", {\r\n createInput({ trait }) {\r\n const traitOpts = trait.get(\"options\") || [];\r\n const traitName = trait.get(\"name\") || \"ost-block-select\";\r\n const options = traitOpts.length\r\n ? traitOpts\r\n : [{ id: \"\", name: \"None\", disabled: \"disabled\" }];\r\n\r\n const el = document.createElement(\"div\");\r\n el.innerHTML = `\r\n <select class=\"ost-blocks-select\" id=\"${traitName}\">\r\n ${options\r\n .map(\r\n (opt) =>\r\n `<option value=\"${opt.id}\" ${opt.disabled}>${opt.name}</option>`\r\n )\r\n .join(\"\")}\r\n </select>\r\n <div class=\"gjs-sel-arrow\">\r\n <div class=\"gjs-d-s-arrow\"></div>\r\n </div>`;\r\n return el;\r\n },\r\n onEvent({ elInput, component, trait }) {\r\n const traitName = trait.get(\"name\") || \"ost-block-select-default\";\r\n let element = elInput.querySelector(\r\n \"#\" + [traitName]\r\n ) as HTMLSelectElement;\r\n const dataOstType = element.value;\r\n\r\n if (dataOstType == \"\") {\r\n component.removeAttributes(traitName);\r\n } else {\r\n component.addAttributes({ [traitName]: dataOstType });\r\n }\r\n updateTrait(element);\r\n },\r\n onUpdate({ elInput, component, trait }) {\r\n const traitName = trait.get(\"name\") || \"ost-block-select-default\";\r\n\r\n if (elInput !== null) {\r\n let element = elInput.querySelector(\r\n \"#\" + [traitName]\r\n ) as HTMLSelectElement;\r\n updateTrait(element);\r\n\r\n // Set select\r\n const dataOstType = component.getAttributes()[traitName] || \"\";\r\n element = elInput.querySelector(\"#\" + [traitName]) as HTMLSelectElement;\r\n element.value = dataOstType;\r\n }\r\n },\r\n });\r\n\r\n // Range trait\r\n TraitManager.addType(\"value\", {\r\n label: opts.t9n.traitBlkValue,\r\n min: 0, // Minimum number value\r\n max: 100, // Maximum number value\r\n events: {\r\n keyup: \"onChange\",\r\n },\r\n\r\n onValueChange() {\r\n const { model, target } = this;\r\n const optionsStr = model.get(\"value\").trim();\r\n const options = optionsStr.split(\"\\n\");\r\n const optComps = [];\r\n\r\n for (let i = 0; i < options.length; i++) {\r\n const optionStr = options[i];\r\n const option = optionStr.split(\"::\");\r\n optComps.push({\r\n type: \"range\",\r\n components: option[1] || option[0],\r\n attributes: { value: option[0] },\r\n });\r\n }\r\n\r\n target.components().reset(optComps);\r\n target?.view?.render();\r\n },\r\n });\r\n\r\n function updateTrait(element: HTMLSelectElement) {\r\n // Set Array to 0\r\n opts.usedOstBlocks.forEach((el) => {\r\n el.count = 0;\r\n });\r\n\r\n var wrapper = editor.DomComponents.getWrapper();\r\n var elements = wrapper?.view?.$el.find(\"[data-ost-type]\").get();\r\n\r\n // List all data-ost-type\r\n elements?.forEach((element) => {\r\n var type = element.getAttribute(\"data-ost-type\") || \"\";\r\n let index = opts.usedOstBlocks.findIndex((item) => item.name === type);\r\n if (index === -1) {\r\n opts.usedOstBlocks.push({ name: type, count: 1 });\r\n } else {\r\n opts.usedOstBlocks[index].count++;\r\n }\r\n });\r\n\r\n // Display update select input\r\n Array.from(element.options).forEach(function (optionElement, optionIndex) {\r\n if (optionElement.value != \"\") {\r\n const usedOstBlockIndex = opts.usedOstBlocks.findIndex(\r\n (e) => e.name === optionElement.value\r\n );\r\n\r\n // Reset\r\n var optionEl = element.options[optionIndex];\r\n optionEl.text = optionEl.text.replace(/^\\(.*\\)\\s*/g, \"\");\r\n optionEl.removeAttribute(\"class\");\r\n optionEl.removeAttribute(\"disabled\");\r\n\r\n if (usedOstBlockIndex > -1) {\r\n if (opts.usedOstBlocks[usedOstBlockIndex].count == 1) {\r\n optionEl.innerHTML = \"(&#10003;) \" + optionEl.text;\r\n optionEl.classList.add(\"gjs-select-option-ok\");\r\n optionEl.disabled = true;\r\n } else if (opts.usedOstBlocks[usedOstBlockIndex].count > 1) {\r\n optionEl.innerHTML =\r\n \"(! \" +\r\n opts.usedOstBlocks[usedOstBlockIndex].count +\r\n \"&times;) \" +\r\n optionEl.text;\r\n optionEl.classList.add(\"gjs-select-option-nok\");\r\n optionEl.disabled = true;\r\n }\r\n }\r\n }\r\n });\r\n }\r\n};\r\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","import type {Component, Plugin} from \"grapesjs\";\r\nimport loadBlocks from \"./blocks\";\r\nimport loadCommands from \"./commands\";\r\nimport loadPanels from \"./panels\";\r\nimport loadTraits from \"./traits\";\r\nimport loadComponents from \"./components\";\r\nimport loadRte from \"./rte\";\r\nimport PluginOptions from \"./pluginOptions\";\r\nimport {ostTrans} from \"./ostTranslations\";\r\n\r\nexport type RequiredPluginOptions = Required<PluginOptions>;\r\n\r\ntype ToolbarButton = {\r\n attributes?: {\r\n class?: string;\r\n \"data-tooltip\"?: string;\r\n \"data-tooltip-pos\"?: \"bottom\",\r\n };\r\n label?: string;\r\n command: string;\r\n};\r\n\r\nconst plugin: Plugin<PluginOptions> = async (\r\n editor,\r\n opts: Partial<PluginOptions> = {}\r\n) => {\r\n let config = editor.getConfig();\r\n\r\n const options: RequiredPluginOptions = {\r\n blocks: [],\r\n block: () => ({}),\r\n usedOstBlocks: [],\r\n cmdOpenImport: \"gjs-open-import-template\",\r\n codeViewerTheme: \"hopscotch\",\r\n inlineCss: true,\r\n showStylesOnChange: true,\r\n showTraitsOnLoad: true,\r\n showOutlineOnLoad: true,\r\n t9n: ostTrans,\r\n ...opts,\r\n };\r\n\r\n // Change some config\r\n config.devicePreviewMode = true;\r\n\r\n loadComponents(editor, options);\r\n loadTraits(editor, options);\r\n await loadCommands(editor, options);\r\n loadBlocks(editor, options);\r\n loadPanels(editor, options);\r\n await loadRte(editor, options);\r\n\r\n // On load\r\n editor.on(\"load\", () => {\r\n // Create ostendis toolbar\r\n const tools = document.getElementById(\"gjs-tools\");\r\n const ostTools = document.createElement(\"div\");\r\n ostTools.classList.add(\"gjs-ost-toolbar\");\r\n tools?.append(ostTools);\r\n });\r\n\r\n // On selected components\r\n editor.on(\"component:selected\", () => {\r\n let selected = editor.getSelected();\r\n\r\n if (selected != undefined) {\r\n // Disable all actions for all components\r\n selected.set({\r\n draggable: false,\r\n removable: false,\r\n copyable: false,\r\n });\r\n\r\n if (selected.is(\"ulistitem\")) {\r\n // LI itself - show only select-parent\r\n selected.set({\r\n toolbar: [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ],\r\n });\r\n showOstToolbar(selected);\r\n } else if (selected.isChildOf(\"ulistitem\")) {\r\n // Content inside LI - show only select-parent\r\n const liContentToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ];\r\n selected.set({\r\n toolbar: liContentToolbar,\r\n });\r\n showOstToolbar(selected.closestType(\"ulistitem\"));\r\n } else if (selected.getEl()?.tagName === \"LI\") {\r\n // Regular LI - show only select-parent\r\n selected.set({\r\n toolbar: [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ],\r\n });\r\n //If list element is empty replace with placeholder text (M&E case:)\r\n if (selected.components().length === 0 && !selected.get(\"content\")) {\r\n const selectedPosition = selected.index();\r\n const newComponent = selected\r\n .parent()\r\n ?.append(\"<li>Text</li>\", {at: selectedPosition});\r\n selected.remove();\r\n editor.select(newComponent);\r\n selected = editor.getSelected();\r\n }\r\n showOstToolbar(selected);\r\n } else if (isChildOfElement(selected.getEl(), \"LI\")) {\r\n // Content inside regular LI - show only select-parent\r\n const liContentToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {class: \"fa-solid fa-arrow-up\"},\r\n command: \"select-parent\",\r\n },\r\n ];\r\n selected.set({\r\n toolbar: liContentToolbar,\r\n });\r\n showOstToolbar(selected.closest(\"li\"));\r\n } else if (selected.getEl()?.tagName === \"UL\") {\r\n // UL is selected - show paste button first, select-parent at the end\r\n const ulToolbar: ToolbarButton[] = [\r\n {\r\n attributes: {\r\n class: \"fa-solid fa-file-word\",\r\n \"data-tooltip\": options.t9n.ostToolbarPasteFromWord,\r\n \"data-tooltip-pos\": \"bottom\"\r\n },\r\n command: \"paste-from-word\",\r\n },\r\n {\r\n label: '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z\"></path></svg>',\r\n command: \"select-parent\",\r\n },\r\n ];\r\n\r\n selected.set({\r\n toolbar: ulToolbar,\r\n });\r\n\r\n // Hide OST toolbar for UL elements\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n } else {\r\n // For other elements, show default toolbar with only select-parent\r\n const defaultToolbar: ToolbarButton[] = [\r\n {\r\n label: '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M13,20H11V8L5.5,13.5L4.08,12.08L12,4.16L19.92,12.08L18.5,13.5L13,8V20Z\"></path></svg>',\r\n command: \"select-parent\",\r\n },\r\n ];\r\n\r\n selected.set({\r\n toolbar: defaultToolbar,\r\n });\r\n\r\n // Hide OST toolbar for other elements\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n }\r\n }\r\n });\r\n\r\n // On deselected components\r\n editor.on(\"component:deselected\", () => {\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\");\r\n ostToolbar?.classList.remove(\"show\");\r\n });\r\n\r\n function isChildOfElement(element: HTMLElement | undefined, tag: string) {\r\n while (element?.parentNode) {\r\n element = element.parentNode as HTMLElement;\r\n if (element.tagName === tag) return element;\r\n }\r\n return false;\r\n }\r\n\r\n function showOstToolbar(listItem: Component | undefined) {\r\n const elPos = listItem?.index() || 0;\r\n const elLast = listItem?.parent()?.getLastChild().index();\r\n\r\n const ostToolbar = document.querySelector(\".gjs-ost-toolbar\") as HTMLElement;\r\n if (ostToolbar != undefined) {\r\n ostToolbar.innerHTML = \"\";\r\n\r\n // Add clone button\r\n const cBtn = document.createElement(\"div\");\r\n cBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 3a9 9 0 0 0 0 18 9 9 0 0 0 0-18zm-1.3 3.88h2.6v3.82h3.82v2.6H13.3v3.82h-2.6V13.3H6.88v-2.6h3.82z\"/></svg>';\r\n cBtn.classList.add(\"gjs-ost-toolbar-item\", \"clone\");\r\n cBtn.title = options.t9n.ostToolbarClone;\r\n cBtn.addEventListener(\"click\", () => {\r\n listItem?.parent()?.append(listItem?.clone(), {at: elPos + 1});\r\n });\r\n ostToolbar.appendChild(cBtn);\r\n\r\n //Add delete button\r\n const dBtn = document.createElement(\"div\");\r\n dBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M12 3a9 9 0 1 0 0 18 9 9 0 0 0 0-18zm5.12 7.7v2.6H6.88v-2.6z\"/></svg>';\r\n dBtn.title = options.t9n.ostToolbarDelete;\r\n dBtn.classList.add(\"gjs-ost-toolbar-item\", \"del\");\r\n if (elLast != 0) {\r\n dBtn.addEventListener(\"click\", () => {\r\n listItem?.remove();\r\n ostToolbar?.classList.remove(\"show\");\r\n });\r\n } else {\r\n dBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(dBtn);\r\n\r\n // Add move up button\r\n const upBtn = document.createElement(\"div\");\r\n upBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M1.9 20.75 12 3.25l10.1 17.5Z\"/></svg>';\r\n upBtn.title = options.t9n.ostToolbarUp;\r\n upBtn.classList.add(\"gjs-ost-toolbar-item\", \"up\");\r\n if (elPos > 0) {\r\n upBtn.addEventListener(\"click\", () => {\r\n if (elPos && listItem?.parent() != undefined) {\r\n let parent = listItem.parent();\r\n if (parent) {\r\n listItem?.move(parent, {at: elPos - 1});\r\n }\r\n editor.selectRemove(listItem);\r\n editor.select(listItem);\r\n }\r\n });\r\n } else {\r\n upBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(upBtn);\r\n\r\n // Add move down button\r\n const dwnBtn = document.createElement(\"div\");\r\n dwnBtn.innerHTML =\r\n '<svg viewBox=\"0 0 24 24\"><path fill=\"currentColor\" d=\"M22.4 3.25 12 20.75 1.6 3.25Z\"/></svg>';\r\n dwnBtn.title = options.t9n.ostToolbarDown;\r\n dwnBtn.classList.add(\"gjs-ost-toolbar-item\", \"down\");\r\n if (elPos != elLast) {\r\n let toPos = elPos + 2;\r\n if (elPos == elLast) {\r\n toPos = 0;\r\n }\r\n dwnBtn.addEventListener(\"click\", () => {\r\n if (toPos && listItem?.parent() != undefined) {\r\n let parent = listItem.parent();\r\n if (parent) {\r\n listItem.move(parent, {at: toPos});\r\n }\r\n editor.selectRemove(listItem);\r\n editor.select(listItem);\r\n }\r\n });\r\n } else {\r\n dwnBtn.classList.add(\"disable\");\r\n }\r\n ostToolbar.appendChild(dwnBtn);\r\n\r\n // Add show\r\n ostToolbar.classList.add(\"show\");\r\n }\r\n }\r\n};\r\n\r\nexport default plugin;\r\n"],"names":[],"sourceRoot":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ostendis/grapesjs-preset-ostendis-simple",
3
- "version": "1.3.2",
3
+ "version": "1.3.3",
4
4
  "description": "GrapesJS preset configuration for the Ostendis editor",
5
5
  "main": "dist/grapesjs-preset-ostendis-simple.min.js",
6
6
  "files": [