le-kit 0.1.6 → 0.1.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/{dist/le-kit/assets/custom-elements.json → custom-elements.json} +833 -833
  2. package/dist/cjs/{index-WzJ78D5H.js → index-D7B9TPh8.js} +41 -9
  3. package/dist/cjs/index-D7B9TPh8.js.map +1 -0
  4. package/dist/cjs/index.cjs.js +4 -2
  5. package/dist/cjs/index.cjs.js.map +1 -1
  6. package/dist/cjs/le-box.cjs.entry.js +2 -2
  7. package/dist/cjs/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.cjs.js.map +1 -1
  8. package/dist/cjs/le-button_6.cjs.entry.js +8 -10
  9. package/dist/cjs/le-card.cjs.entry.js +2 -2
  10. package/dist/cjs/le-kit.cjs.js +1 -1
  11. package/dist/cjs/le-number-input.cjs.entry.js +2 -2
  12. package/dist/cjs/le-popup.cjs.entry.js +1 -1
  13. package/dist/cjs/le-round-progress.cjs.entry.js +1 -1
  14. package/dist/cjs/le-stack.cjs.entry.js +2 -2
  15. package/dist/cjs/le-text.cjs.entry.js +2 -2
  16. package/dist/cjs/le-turntable.cjs.entry.js +1 -1
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/cjs/{utils-CBjH2E8A.js → utils-DrsoID-a.js} +3 -3
  19. package/dist/cjs/{utils-CBjH2E8A.js.map → utils-DrsoID-a.js.map} +1 -1
  20. package/dist/collection/components/le-component/le-component.js +5 -5
  21. package/dist/collection/components/le-component/le-component.js.map +1 -1
  22. package/dist/collection/components/le-slot/le-slot.js +5 -5
  23. package/dist/collection/components/le-slot/le-slot.js.map +1 -1
  24. package/dist/collection/global/app.js +37 -0
  25. package/dist/collection/global/app.js.map +1 -1
  26. package/dist/collection/index.js +1 -1
  27. package/dist/collection/index.js.map +1 -1
  28. package/dist/components/index.js +1 -1
  29. package/dist/components/le-box.js +1 -1
  30. package/dist/components/le-button.js +1 -1
  31. package/dist/components/le-button2.js +45 -10
  32. package/dist/components/le-button2.js.map +1 -1
  33. package/dist/components/le-card.js +1 -1
  34. package/dist/components/le-checkbox.js +1 -1
  35. package/dist/components/le-component.js +1 -1
  36. package/dist/components/le-number-input.js +1 -1
  37. package/dist/components/le-popup.js +1 -1
  38. package/dist/components/le-slot.js +1 -1
  39. package/dist/components/le-stack.js +1 -1
  40. package/dist/components/le-string-input.js +1 -1
  41. package/dist/components/le-text.js +1 -1
  42. package/dist/docs.json +1 -1
  43. package/dist/esm/{index-CdjJ98OT.js → index-PS-3Rz-c.js} +40 -9
  44. package/dist/esm/index-PS-3Rz-c.js.map +1 -0
  45. package/dist/esm/index.js +2 -2
  46. package/dist/esm/le-box.entry.js +2 -2
  47. package/dist/esm/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.js.map +1 -1
  48. package/dist/esm/le-button_6.entry.js +8 -10
  49. package/dist/esm/le-card.entry.js +2 -2
  50. package/dist/esm/le-kit.js +2 -2
  51. package/dist/esm/le-number-input.entry.js +2 -2
  52. package/dist/esm/le-popup.entry.js +1 -1
  53. package/dist/esm/le-round-progress.entry.js +1 -1
  54. package/dist/esm/le-stack.entry.js +2 -2
  55. package/dist/esm/le-text.entry.js +2 -2
  56. package/dist/esm/le-turntable.entry.js +1 -1
  57. package/dist/esm/loader.js +2 -2
  58. package/dist/esm/{utils-CzfSUhYB.js → utils-lgjSfQP0.js} +3 -3
  59. package/dist/esm/{utils-CzfSUhYB.js.map → utils-lgjSfQP0.js.map} +1 -1
  60. package/dist/le-kit/index.esm.js +1 -1
  61. package/dist/le-kit/le-button.le-checkbox.le-component.le-popover.le-slot.le-string-input.entry.esm.js.map +1 -1
  62. package/dist/le-kit/le-kit.esm.js +1 -1
  63. package/dist/le-kit/p-27710b5b.entry.js +2 -0
  64. package/dist/le-kit/{p-0633b3ab.entry.js.map → p-27710b5b.entry.js.map} +1 -1
  65. package/dist/le-kit/{p-1452a995.entry.js → p-34102cef.entry.js} +2 -2
  66. package/dist/le-kit/{p-95764888.entry.js → p-56a80e6d.entry.js} +2 -2
  67. package/dist/le-kit/p-615ea10f.entry.js +2 -0
  68. package/dist/le-kit/p-615ea10f.entry.js.map +1 -0
  69. package/dist/le-kit/{p-bc20e30d.entry.js → p-935bb2d4.entry.js} +2 -2
  70. package/dist/le-kit/{p-220528ee.entry.js → p-9d3dc4e5.entry.js} +2 -2
  71. package/dist/le-kit/{p-CvDc0yWN.js → p-DN2JVY-7.js} +2 -2
  72. package/dist/le-kit/{p-CvDc0yWN.js.map → p-DN2JVY-7.js.map} +1 -1
  73. package/dist/le-kit/p-PS-3Rz-c.js +3 -0
  74. package/dist/le-kit/p-PS-3Rz-c.js.map +1 -0
  75. package/dist/le-kit/{p-3551598e.entry.js → p-ccabc638.entry.js} +2 -2
  76. package/dist/le-kit/{p-722899f0.entry.js → p-d8157b06.entry.js} +2 -2
  77. package/dist/le-kit/p-e8c2ca0e.entry.js +2 -0
  78. package/dist/le-kit/{p-d32eddad.entry.js.map → p-e8c2ca0e.entry.js.map} +1 -1
  79. package/dist/types/global/app.d.ts +33 -0
  80. package/dist/types/index.d.ts +1 -1
  81. package/package.json +3 -2
  82. package/readme.md +22 -0
  83. package/dist/cjs/index-WzJ78D5H.js.map +0 -1
  84. package/dist/collection/assets/.gitkeep +0 -1
  85. package/dist/collection/assets/custom-elements.json +0 -4305
  86. package/dist/esm/index-CdjJ98OT.js.map +0 -1
  87. package/dist/le-kit/p-0633b3ab.entry.js +0 -2
  88. package/dist/le-kit/p-32ff3dbe.entry.js +0 -2
  89. package/dist/le-kit/p-32ff3dbe.entry.js.map +0 -1
  90. package/dist/le-kit/p-CdjJ98OT.js +0 -3
  91. package/dist/le-kit/p-CdjJ98OT.js.map +0 -1
  92. package/dist/le-kit/p-d32eddad.entry.js +0 -2
  93. /package/dist/le-kit/{p-1452a995.entry.js.map → p-34102cef.entry.js.map} +0 -0
  94. /package/dist/le-kit/{p-95764888.entry.js.map → p-56a80e6d.entry.js.map} +0 -0
  95. /package/dist/le-kit/{p-bc20e30d.entry.js.map → p-935bb2d4.entry.js.map} +0 -0
  96. /package/dist/le-kit/{p-220528ee.entry.js.map → p-9d3dc4e5.entry.js.map} +0 -0
  97. /package/dist/le-kit/{p-3551598e.entry.js.map → p-ccabc638.entry.js.map} +0 -0
  98. /package/dist/le-kit/{p-722899f0.entry.js.map → p-d8157b06.entry.js.map} +0 -0
@@ -1,2 +1,2 @@
1
- import{r as s,h as r,i as t}from"./p-CdjJ98OT.js";const e=".round-progress--container{position:relative}.round-progress{position:absolute;top:0;left:0;right:0;bottom:0;display:block}.round-progress--progress{filter:drop-shadow(var(--progress-shadow))}.round-progress--circle{fill:none;stroke:var(--progress-color, #999);stroke-width:var(--progress-width, 4);stroke-linecap:var(--progress-linecap, round);animation:progress--circle 0.5s ease-out forwards;transition:stroke-dasharray 0.5s ease-out}@keyframes progress--circle{0%{stroke-dasharray:0 1000}}.round-progress--path{fill:none;stroke-linecap:round}";const a=class{constructor(r){s(this,r)}get el(){return r(this)}value=0;updateValue(s){this.value=parseFloat(s)}padding=0;updatePadding(s){this.padding=parseFloat(s);this.calcParams()}paths;updateProgressBackgrounds(s){this.progressPaths=JSON.parse(s)}progressPaths;params;componentWillLoad(){if(typeof this.paths==="string"){this.updateProgressBackgrounds(this.paths)}this.calcParams()}calcParams(){const s=this.el.getBoundingClientRect().width;const r=s-this.padding;const t=Math.PI*r;this.params={width:s,diameter:r,circumference:t}}getViewBox(){return"0 0 "+this.params.width+" "+this.params.width}getPath(){return"M"+this.params.width/2+" "+(this.params.width-this.params.diameter)/2+" a "+this.params.diameter/2+" "+this.params.diameter/2+" 0 0 1 0 "+this.params.diameter+" a "+this.params.diameter/2+" "+this.params.diameter/2+" 0 0 1 0 -"+this.params.diameter}getStrokeDashArray(){return this.value/100*this.params.circumference+", "+this.params.circumference}getPaths(){if(!this.progressPaths||!this.progressPaths.length){return null}let s=[];this.progressPaths.forEach((r=>{s.push(t("path",{class:"round-progress--path",d:this.getPath(),stroke:r.color,"stroke-width":r.width,"stroke-dasharray":r.dasharray,"stroke-linecap":r.linecap}))}));return t("svg",{viewBox:this.getViewBox(),class:"round-progress"},s)}render(){return t("div",{key:"1ffc36704bee5d0822623ac4559ad2d4690095a4",class:"round-progress--container"},this.getPaths(),t("svg",{key:"12e4dfe5fe2df0cb672d4c001459b8dcc8253591",viewBox:this.getViewBox(),class:"round-progress round-progress--progress"},t("path",{key:"d8ce69610687fb578ce2104bd3eccba24951dd96",class:"round-progress--circle","stroke-dasharray":this.getStrokeDashArray(),d:this.getPath()})),t("slot",{key:"3976b08a7e838579d6af34a778a8756255d98e57"}))}static get watchers(){return{value:["updateValue"],padding:["updatePadding"],paths:["updateProgressBackgrounds"]}}};a.style=e;export{a as le_round_progress};
2
- //# sourceMappingURL=p-3551598e.entry.js.map
1
+ import{r as s,j as r,k as t}from"./p-PS-3Rz-c.js";const e=".round-progress--container{position:relative}.round-progress{position:absolute;top:0;left:0;right:0;bottom:0;display:block}.round-progress--progress{filter:drop-shadow(var(--progress-shadow))}.round-progress--circle{fill:none;stroke:var(--progress-color, #999);stroke-width:var(--progress-width, 4);stroke-linecap:var(--progress-linecap, round);animation:progress--circle 0.5s ease-out forwards;transition:stroke-dasharray 0.5s ease-out}@keyframes progress--circle{0%{stroke-dasharray:0 1000}}.round-progress--path{fill:none;stroke-linecap:round}";const a=class{constructor(r){s(this,r)}get el(){return r(this)}value=0;updateValue(s){this.value=parseFloat(s)}padding=0;updatePadding(s){this.padding=parseFloat(s);this.calcParams()}paths;updateProgressBackgrounds(s){this.progressPaths=JSON.parse(s)}progressPaths;params;componentWillLoad(){if(typeof this.paths==="string"){this.updateProgressBackgrounds(this.paths)}this.calcParams()}calcParams(){const s=this.el.getBoundingClientRect().width;const r=s-this.padding;const t=Math.PI*r;this.params={width:s,diameter:r,circumference:t}}getViewBox(){return"0 0 "+this.params.width+" "+this.params.width}getPath(){return"M"+this.params.width/2+" "+(this.params.width-this.params.diameter)/2+" a "+this.params.diameter/2+" "+this.params.diameter/2+" 0 0 1 0 "+this.params.diameter+" a "+this.params.diameter/2+" "+this.params.diameter/2+" 0 0 1 0 -"+this.params.diameter}getStrokeDashArray(){return this.value/100*this.params.circumference+", "+this.params.circumference}getPaths(){if(!this.progressPaths||!this.progressPaths.length){return null}let s=[];this.progressPaths.forEach((r=>{s.push(t("path",{class:"round-progress--path",d:this.getPath(),stroke:r.color,"stroke-width":r.width,"stroke-dasharray":r.dasharray,"stroke-linecap":r.linecap}))}));return t("svg",{viewBox:this.getViewBox(),class:"round-progress"},s)}render(){return t("div",{key:"1ffc36704bee5d0822623ac4559ad2d4690095a4",class:"round-progress--container"},this.getPaths(),t("svg",{key:"12e4dfe5fe2df0cb672d4c001459b8dcc8253591",viewBox:this.getViewBox(),class:"round-progress round-progress--progress"},t("path",{key:"d8ce69610687fb578ce2104bd3eccba24951dd96",class:"round-progress--circle","stroke-dasharray":this.getStrokeDashArray(),d:this.getPath()})),t("slot",{key:"3976b08a7e838579d6af34a778a8756255d98e57"}))}static get watchers(){return{value:["updateValue"],padding:["updatePadding"],paths:["updateProgressBackgrounds"]}}};a.style=e;export{a as le_round_progress};
2
+ //# sourceMappingURL=p-ccabc638.entry.js.map
@@ -1,2 +1,2 @@
1
- import{r as t,h as s,i as e}from"./p-CdjJ98OT.js";const i=":host{display:block;cursor:grab}div.turntable{width:100%;height:100%;padding:1px}";const h=class{constructor(s){t(this,s)}get el(){return s(this)}center="center";value=0;updateValue(t){if(!this.rotating){this.currentAngle=parseFloat(t);this.setAngle(this.currentAngle)}}rotating=false;centerX;centerY;pageX;pageY;currentAngle=0;startAngle;handleMouseDown(t){this.rotating=true;this.startAngle=this.getAngle(t.pageX,t.pageY);t.preventDefault();t.stopPropagation();return false}handleMouseMove(t){if(this.rotating){this.setAngle(this.currentAngle+(this.getAngle(t.pageX,t.pageY)-this.startAngle));return false}}handleMouseUp(t){if(this.rotating){const s=this.currentAngle+(this.getAngle(t.pageX,t.pageY)-this.startAngle);this.setAngle(s);this.currentAngle=s;this.rotating=false;return false}}handleWindowResize(){this.getTransformOrigin()}componentDidLoad(){this.el.style.transformOrigin=this.center;this.currentAngle=this.value;this.getTransformOrigin();this.setAngle(this.currentAngle)}componentDidUpdate(){this.getTransformOrigin()}getTransformOrigin(){[this.centerX,this.centerY]=window.getComputedStyle(this.el,null).transformOrigin.split(" ").map((t=>Math.round(parseFloat(t))));let t=null;const s=((t=document.documentElement)||(t=document.body.parentNode))&&typeof t.scrollLeft==="number"?t:document.body;const e=this.el.getBoundingClientRect();this.pageX=Math.round(e.left+s.scrollLeft);this.pageY=Math.round(e.top+s.scrollTop)}getAngle(t,s){const e=t-this.pageX-this.centerX;const i=s-this.pageY-this.centerY;const h=Math.round(Math.atan2(i,e)*180/Math.PI*100)/100;return h}setAngle(t){this.el.style.transform=`rotate(${t}deg)`}render(){return e("div",{key:"ec9a506a360881ab3c3df97027c8a25d663f6819",class:"turntable",onMouseDown:this.handleMouseDown.bind(this)},e("slot",{key:"926a84fa75952bdc3e44f1b2146848401e8ab10f"}))}static get watchers(){return{value:["updateValue"]}}};h.style=i;export{h as le_turntable};
2
- //# sourceMappingURL=p-722899f0.entry.js.map
1
+ import{r as t,j as s,k as e}from"./p-PS-3Rz-c.js";const i=":host{display:block;cursor:grab}div.turntable{width:100%;height:100%;padding:1px}";const h=class{constructor(s){t(this,s)}get el(){return s(this)}center="center";value=0;updateValue(t){if(!this.rotating){this.currentAngle=parseFloat(t);this.setAngle(this.currentAngle)}}rotating=false;centerX;centerY;pageX;pageY;currentAngle=0;startAngle;handleMouseDown(t){this.rotating=true;this.startAngle=this.getAngle(t.pageX,t.pageY);t.preventDefault();t.stopPropagation();return false}handleMouseMove(t){if(this.rotating){this.setAngle(this.currentAngle+(this.getAngle(t.pageX,t.pageY)-this.startAngle));return false}}handleMouseUp(t){if(this.rotating){const s=this.currentAngle+(this.getAngle(t.pageX,t.pageY)-this.startAngle);this.setAngle(s);this.currentAngle=s;this.rotating=false;return false}}handleWindowResize(){this.getTransformOrigin()}componentDidLoad(){this.el.style.transformOrigin=this.center;this.currentAngle=this.value;this.getTransformOrigin();this.setAngle(this.currentAngle)}componentDidUpdate(){this.getTransformOrigin()}getTransformOrigin(){[this.centerX,this.centerY]=window.getComputedStyle(this.el,null).transformOrigin.split(" ").map((t=>Math.round(parseFloat(t))));let t=null;const s=((t=document.documentElement)||(t=document.body.parentNode))&&typeof t.scrollLeft==="number"?t:document.body;const e=this.el.getBoundingClientRect();this.pageX=Math.round(e.left+s.scrollLeft);this.pageY=Math.round(e.top+s.scrollTop)}getAngle(t,s){const e=t-this.pageX-this.centerX;const i=s-this.pageY-this.centerY;const h=Math.round(Math.atan2(i,e)*180/Math.PI*100)/100;return h}setAngle(t){this.el.style.transform=`rotate(${t}deg)`}render(){return e("div",{key:"ec9a506a360881ab3c3df97027c8a25d663f6819",class:"turntable",onMouseDown:this.handleMouseDown.bind(this)},e("slot",{key:"926a84fa75952bdc3e44f1b2146848401e8ab10f"}))}static get watchers(){return{value:["updateValue"]}}};h.style=i;export{h as le_turntable};
2
+ //# sourceMappingURL=p-d8157b06.entry.js.map
@@ -0,0 +1,2 @@
1
+ import{r as t,j as e,k as i,H as l}from"./p-PS-3Rz-c.js";import{o}from"./p-DN2JVY-7.js";const n=":host{display:block}:host([hidden]){display:none}.le-text{margin:0;color:var(--le-text-color, var(--le-color-text));font-family:var(--le-font-family);line-height:var(--le-text-line-height, 1.5)}.variant-p{font-size:var(--le-font-size-base, 1rem);font-weight:var(--le-font-weight-normal, 400);color:var(--le-color-text)}.variant-h1{font-size:var(--le-font-size-4xl, 2.5rem);font-weight:var(--le-font-weight-bold, 700);line-height:1.2;color:var(--le-color-text);letter-spacing:-0.02em}.variant-h2{font-size:var(--le-font-size-3xl, 2rem);font-weight:var(--le-font-weight-bold, 700);line-height:1.25;color:var(--le-color-text);letter-spacing:-0.01em}.variant-h3{font-size:var(--le-font-size-2xl, 1.5rem);font-weight:var(--le-font-weight-semibold, 600);line-height:1.3;color:var(--le-color-text)}.variant-h4{font-size:var(--le-font-size-xl, 1.25rem);font-weight:var(--le-font-weight-semibold, 600);line-height:1.35;color:var(--le-color-text)}.variant-h5{font-size:var(--le-font-size-lg, 1.125rem);font-weight:var(--le-font-weight-medium, 500);line-height:1.4;color:var(--le-color-text)}.variant-h6{font-size:var(--le-font-size-base, 1rem);font-weight:var(--le-font-weight-medium, 500);line-height:1.45;color:var(--le-color-text);text-transform:uppercase;letter-spacing:0.05em}.variant-code{font-family:var(--le-font-family-mono, 'SF Mono', 'Fira Code', 'Consolas', monospace);font-size:var(--le-font-size-sm, 0.875rem);background:var(--le-color-surface-alt, #f5f5f5);padding:var(--le-space-md);border-radius:var(--le-radius-md);overflow-x:auto;white-space:pre-wrap;color:var(--le-color-text)}.variant-quote{font-size:var(--le-font-size-lg, 1.125rem);font-style:italic;color:var(--le-color-text-secondary);border-left:4px solid var(--le-color-primary);padding-left:var(--le-space-lg);margin-left:0;margin-right:0}.variant-label{font-size:var(--le-font-size-sm, 0.875rem);font-weight:var(--le-font-weight-medium, 500);color:var(--le-color-text-secondary);text-transform:uppercase;letter-spacing:0.05em}.variant-small{font-size:var(--le-font-size-sm, 0.875rem);color:var(--le-color-text-secondary)}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.truncate.max-lines-2,.truncate.max-lines-3,.truncate.max-lines-4,.truncate.max-lines-5{white-space:normal;display:-webkit-box;-webkit-box-orient:vertical}.truncate.max-lines-2{-webkit-line-clamp:2;line-clamp:2}.truncate.max-lines-3{-webkit-line-clamp:3;line-clamp:3}.truncate.max-lines-4{-webkit-line-clamp:4;line-clamp:4}.truncate.max-lines-5{-webkit-line-clamp:5;line-clamp:5}:host([align=\"center\"]) .le-text{text-align:center}:host([align=\"right\"]) .le-text{text-align:right}:host([align=\"justify\"]) .le-text{text-align:justify}.le-text a{color:var(--le-color-primary);text-decoration:underline}.le-text a:hover{color:var(--le-color-primary-dark)}.le-text strong,.le-text b{font-weight:var(--le-font-weight-bold, 700)}.le-text em,.le-text i{font-style:italic}.le-text u{text-decoration:underline}.le-text s,.le-text strike{text-decoration:line-through}";const s=class{constructor(e){t(this,e)}get el(){return e(this)}variant="p";align="left";color;truncate=false;maxLines;adminMode=false;content="";isFocused=false;selectionState={isBold:false,isItalic:false,isUnderline:false,isStrikethrough:false,isLink:false,blockType:"p"};editorRef;slotRef;disconnectModeObserver;connectedCallback(){this.disconnectModeObserver=o(this.el,(t=>{const e=this.adminMode;this.adminMode=t==="admin";if(this.adminMode&&!e){requestAnimationFrame((()=>this.readSlottedContent()))}else if(!this.adminMode&&e){this.syncContentToSlot()}}))}disconnectedCallback(){this.disconnectModeObserver?.()}onVariantChange(){if(this.adminMode&&this.editorRef){this.syncContentToSlot()}}readSlottedContent(){if(!this.slotRef)return;const t=this.slotRef.assignedNodes({flatten:true});let e="";t.forEach((t=>{if(t.nodeType===Node.TEXT_NODE){e+=t.textContent}else if(t.nodeType===Node.ELEMENT_NODE){e+=t.innerHTML||t.textContent}}));this.content=e.trim()}syncContentToSlot(){if(!this.editorRef)return;const t=this.editorRef.innerHTML;const e=this.slotRef;if(e){const i=e.assignedNodes({flatten:true});if(i.length>0){const e=i[0];if(e.nodeType===Node.ELEMENT_NODE){e.innerHTML=t}else if(e.nodeType===Node.TEXT_NODE){const i=e.parentNode;if(i){const l=document.createElement("span");l.innerHTML=t;i.replaceChild(l,e);if(l.childNodes.length===1&&l.firstChild?.nodeType===Node.TEXT_NODE){i.replaceChild(l.firstChild,l)}}}}else{this.el.innerHTML=t}}}handleInput=()=>{if(this.editorRef){this.content=this.editorRef.innerHTML;this.updateSelectionState()}};handleFocus=()=>{this.isFocused=true;this.updateSelectionState()};handleBlur=t=>{const e=t.relatedTarget;const i=this.el.shadowRoot?.querySelector(".le-text-toolbar");if(i?.contains(e)){return}setTimeout((()=>{if(!this.el.shadowRoot?.activeElement){this.isFocused=false;this.syncContentToSlot()}}),150)};handleSelectionChange=()=>{this.updateSelectionState()};updateSelectionState(){const t=window.getSelection();if(!t||t.rangeCount===0)return;this.selectionState={isBold:document.queryCommandState("bold"),isItalic:document.queryCommandState("italic"),isUnderline:document.queryCommandState("underline"),isStrikethrough:document.queryCommandState("strikeThrough"),isLink:this.isSelectionInLink(t),blockType:this.variant}}isSelectionInLink(t){if(!t.anchorNode)return false;let e=t.anchorNode;while(e&&e!==this.editorRef){if(e.nodeName==="A")return true;e=e.parentNode}return false}execCommand(t,e){this.editorRef?.focus();document.execCommand(t,false,e);this.handleInput();this.updateSelectionState()}toggleBold=t=>{t.preventDefault();this.execCommand("bold")};toggleItalic=t=>{t.preventDefault();this.execCommand("italic")};toggleUnderline=t=>{t.preventDefault();this.execCommand("underline")};toggleStrikethrough=t=>{t.preventDefault();this.execCommand("strikeThrough")};toggleLink=t=>{t.preventDefault();if(this.selectionState.isLink){this.execCommand("unlink")}else{const t=prompt("Enter URL:","https://");if(t){this.execCommand("createLink",t)}}};changeVariant=t=>{const e=t.target;this.variant=e.value};renderToolbar(){return i("div",{class:"le-text-toolbar"},i("select",{class:"le-text-toolbar-select",onChange:this.changeVariant,onMouseDown:t=>t.preventDefault()},i("option",{value:"p",selected:this.variant==="p"},"Paragraph"),i("option",{value:"h1",selected:this.variant==="h1"},"Heading 1"),i("option",{value:"h2",selected:this.variant==="h2"},"Heading 2"),i("option",{value:"h3",selected:this.variant==="h3"},"Heading 3"),i("option",{value:"h4",selected:this.variant==="h4"},"Heading 4"),i("option",{value:"h5",selected:this.variant==="h5"},"Heading 5"),i("option",{value:"h6",selected:this.variant==="h6"},"Heading 6"),i("option",{value:"quote",selected:this.variant==="quote"},"Quote"),i("option",{value:"code",selected:this.variant==="code"},"Code"),i("option",{value:"label",selected:this.variant==="label"},"Label"),i("option",{value:"small",selected:this.variant==="small"},"Small")),i("div",{class:"le-text-toolbar-divider"}),i("button",{type:"button",class:{"le-text-toolbar-btn":true,active:this.selectionState.isBold},onMouseDown:this.toggleBold,title:"Bold (Ctrl+B)"},i("strong",null,"B")),i("button",{type:"button",class:{"le-text-toolbar-btn":true,active:this.selectionState.isItalic},onMouseDown:this.toggleItalic,title:"Italic (Ctrl+I)"},i("em",null,"I")),i("button",{type:"button",class:{"le-text-toolbar-btn":true,active:this.selectionState.isUnderline},onMouseDown:this.toggleUnderline,title:"Underline (Ctrl+U)"},i("span",{style:{textDecoration:"underline"}},"U")),i("button",{type:"button",class:{"le-text-toolbar-btn":true,active:this.selectionState.isStrikethrough},onMouseDown:this.toggleStrikethrough,title:"Strikethrough"},i("span",{style:{textDecoration:"line-through"}},"S")),i("div",{class:"le-text-toolbar-divider"}),i("button",{type:"button",class:{"le-text-toolbar-btn":true,active:this.selectionState.isLink},onMouseDown:this.toggleLink,title:this.selectionState.isLink?"Remove link":"Add link"},"🔗"))}getTag(){switch(this.variant){case"quote":return"blockquote";case"code":return"pre";case"label":return"label";case"small":return"small";default:return this.variant}}render(){const t=this.getTag();const e={};if(this.color){e.color=this.color}if(this.align){e.textAlign=this.align}const o={"le-text":true,[`variant-${this.variant}`]:true,truncate:this.truncate,[`max-lines-${this.maxLines}`]:this.truncate&&this.maxLines};if(this.adminMode){return i(l,{class:"admin-mode"},i("le-component",{component:"le-text"},i("div",{class:"le-text-editor-wrapper"},this.isFocused&&this.renderToolbar(),i(t,{class:o,part:"text",style:e},i("div",{ref:t=>this.editorRef=t,class:"le-text-editor",contentEditable:true,onInput:this.handleInput,onFocus:this.handleFocus,onBlur:this.handleBlur,onKeyUp:this.handleSelectionChange,onMouseUp:this.handleSelectionChange,innerHTML:this.content})),i("div",{class:"hidden-slot"},i("slot",{ref:t=>this.slotRef=t,onSlotchange:()=>this.readSlottedContent()})))))}return i(l,null,i(t,{class:o,part:"text",style:e},i("slot",{ref:t=>this.slotRef=t})))}static get watchers(){return{variant:["onVariantChange"]}}};s.style=n;export{s as le_text};
2
+ //# sourceMappingURL=p-e8c2ca0e.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["registerInstance","getElement","h","Host","observeModeChanges","leTextDefaultCss","LeText","constructor","hostRef","this","el","variant","align","color","truncate","maxLines","adminMode","content","isFocused","selectionState","isBold","isItalic","isUnderline","isStrikethrough","isLink","blockType","editorRef","slotRef","disconnectModeObserver","connectedCallback","mode","wasAdmin","requestAnimationFrame","readSlottedContent","syncContentToSlot","disconnectedCallback","onVariantChange","assignedNodes","flatten","html","forEach","node","nodeType","Node","TEXT_NODE","textContent","ELEMENT_NODE","innerHTML","trim","newContent","slot","length","firstNode","parent","parentNode","temp","document","createElement","replaceChild","childNodes","firstChild","handleInput","updateSelectionState","handleFocus","handleBlur","e","relatedTarget","toolbar","shadowRoot","querySelector","contains","setTimeout","activeElement","handleSelectionChange","selection","window","getSelection","rangeCount","queryCommandState","isSelectionInLink","anchorNode","nodeName","execCommand","command","value","focus","toggleBold","preventDefault","toggleItalic","toggleUnderline","toggleStrikethrough","toggleLink","url","prompt","changeVariant","select","target","renderToolbar","class","onChange","onMouseDown","selected","type","active","title","style","textDecoration","getTag","render","Tag","textStyle","textAlign","textClass","component","part","ref","contentEditable","onInput","onFocus","onBlur","onKeyUp","onMouseUp","onSlotchange","watchers"],"sources":["0"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["registerInstance","getElement","h","Host","observeModeChanges","leTextDefaultCss","LeText","constructor","hostRef","this","el","variant","align","color","truncate","maxLines","adminMode","content","isFocused","selectionState","isBold","isItalic","isUnderline","isStrikethrough","isLink","blockType","editorRef","slotRef","disconnectModeObserver","connectedCallback","mode","wasAdmin","requestAnimationFrame","readSlottedContent","syncContentToSlot","disconnectedCallback","onVariantChange","assignedNodes","flatten","html","forEach","node","nodeType","Node","TEXT_NODE","textContent","ELEMENT_NODE","innerHTML","trim","newContent","slot","length","firstNode","parent","parentNode","temp","document","createElement","replaceChild","childNodes","firstChild","handleInput","updateSelectionState","handleFocus","handleBlur","e","relatedTarget","toolbar","shadowRoot","querySelector","contains","setTimeout","activeElement","handleSelectionChange","selection","window","getSelection","rangeCount","queryCommandState","isSelectionInLink","anchorNode","nodeName","execCommand","command","value","focus","toggleBold","preventDefault","toggleItalic","toggleUnderline","toggleStrikethrough","toggleLink","url","prompt","changeVariant","select","target","renderToolbar","class","onChange","onMouseDown","selected","type","active","title","style","textDecoration","getTag","render","Tag","textStyle","textAlign","textClass","component","part","ref","contentEditable","onInput","onFocus","onBlur","onKeyUp","onMouseUp","onSlotchange","watchers"],"sources":["0"],"mappings":"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","ignoreList":[]}
@@ -38,3 +38,36 @@ export declare function setGlobalMode(mode: LeKitMode): void;
38
38
  * Useful for switching all components to a different theme.
39
39
  */
40
40
  export declare function setGlobalTheme(theme: LeKitTheme): void;
41
+ /**
42
+ * Global configuration for le-kit
43
+ */
44
+ declare let leKitConfig: {
45
+ /**
46
+ * URL to the custom-elements.json manifest.
47
+ * Used by admin components (le-component, le-slot) to load component metadata.
48
+ *
49
+ * Default: '/custom-elements.json' (served from app root)
50
+ *
51
+ * For apps using le-kit, you may need to:
52
+ * 1. Copy the manifest from node_modules/le-kit/custom-elements.json to your public folder
53
+ * 2. Or set this to point to where the manifest is served
54
+ */
55
+ manifestUrl: string;
56
+ };
57
+ /**
58
+ * Configure le-kit global settings.
59
+ *
60
+ * @example
61
+ * ```ts
62
+ * import { configureLeki } from 'le-kit';
63
+ *
64
+ * configureLeki({
65
+ * manifestUrl: '/assets/custom-elements.json'
66
+ * });
67
+ * ```
68
+ */
69
+ export declare function configureLeki(config: Partial<typeof leKitConfig>): void;
70
+ /**
71
+ * Get the current le-kit configuration.
72
+ */
73
+ export declare function getLeKitConfig(): typeof leKitConfig;
@@ -7,7 +7,7 @@
7
7
  * @see README.md for usage instructions
8
8
  */
9
9
  export { generateId, parseCommaSeparated, slotHasContent } from './utils/utils';
10
- export { getMode, setGlobalMode, getTheme, setGlobalTheme } from './global/app';
10
+ export { getMode, setGlobalMode, getTheme, setGlobalTheme, configureLeki, getLeKitConfig } from './global/app';
11
11
  export type { LeKitMode, LeKitTheme } from './global/app';
12
12
  export { leAlert, leConfirm, lePrompt } from './components/le-popup/le-popup.api';
13
13
  export type { PopupOptions } from './components/le-popup/le-popup.api';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "le-kit",
3
- "version": "0.1.6",
3
+ "version": "0.1.7",
4
4
  "description": "Themable web components library with CMS admin mode support",
5
5
  "main": "dist/index.cjs.js",
6
6
  "module": "dist/index.js",
@@ -35,7 +35,8 @@
35
35
  },
36
36
  "files": [
37
37
  "dist/",
38
- "loader/"
38
+ "loader/",
39
+ "custom-elements.json"
39
40
  ],
40
41
  "scripts": {
41
42
  "build": "stencil build && cp -r src/themes dist/themes && cem analyze --stencil",
package/readme.md CHANGED
@@ -167,6 +167,28 @@ In admin mode, components display:
167
167
  - Settings popovers for component properties
168
168
  - Drop zones for adding new components
169
169
 
170
+ ### Admin Mode Configuration
171
+
172
+ Admin mode requires the `custom-elements.json` manifest file to be served by your application. This file contains component metadata used by the property editors.
173
+
174
+ 1. **Copy the manifest** to your public/static folder:
175
+
176
+ ```bash
177
+ cp node_modules/le-kit/custom-elements.json public/custom-elements.json
178
+ ```
179
+
180
+ 2. **Configure the manifest URL** (optional, if not served at `/custom-elements.json`):
181
+
182
+ ```javascript
183
+ import { configureLeki } from 'le-kit';
184
+
185
+ configureLeki({
186
+ manifestUrl: '/assets/custom-elements.json'
187
+ });
188
+ ```
189
+
190
+ The default `manifestUrl` is `/custom-elements.json`. Call `configureLeki()` before any admin-mode components are rendered.
191
+
170
192
  ## Browser Support
171
193
 
172
194
  Le-Kit supports all modern browsers: