@tatamicks/text 0.1.2 → 0.1.4

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.
package/dist/index.js CHANGED
@@ -14,10 +14,10 @@
14
14
  *
15
15
  * This source code is licensed under the MIT license found in the
16
16
  * LICENSE file in the root directory of this source tree.
17
- */var ee;function ae(){return ee||(ee=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===V?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case j:return"Fragment";case Y:return"Profiler";case z:return"StrictMode";case r:return"Suspense";case c:return"SuspenseList";case b:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case v:return"Portal";case H:return e.displayName||"Context";case y:return(e._context.displayName||"Context")+".Consumer";case M:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case p:return n=e.displayName||null,n!==null?n:t(e.type)||"Memo";case T:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function s(e){return""+e}function h(e){try{s(e);var n=!1}catch{n=!0}if(n){n=console;var o=n.error,i=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(n,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",i),s(e)}}function m(e){if(e===j)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===T)return"<...>";try{var n=t(e);return n?"<"+n+">":"<...>"}catch{return"<...>"}}function u(){var e=N.A;return e===null?null:e.getOwner()}function d(){return Error("react-stack-top-frame")}function g(e){if(S.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return e.key!==void 0}function x(e,n){function o(){E||(E=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",n))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}function D(){var e=t(this.type);return G[e]||(G[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function $(e,n,o,i,L,q){var l=o.ref;return e={$$typeof:O,type:e,key:n,props:o,_owner:i},(l!==void 0?l:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:D}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:L}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:q}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function P(e,n,o,i,L,q){var l=n.children;if(l!==void 0)if(i)if(U(l)){for(i=0;i<l.length;i++)R(l[i]);Object.freeze&&Object.freeze(l)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else R(l);if(S.call(n,"key")){l=t(e);var w=Object.keys(n).filter(function(ne){return ne!=="key"});i=0<w.length?"{key: someKey, "+w.join(": ..., ")+": ...}":"{key: someKey}",Q[l+i]||(w=0<w.length?"{"+w.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var ee;function ae(){return ee||(ee=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===V?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case j:return"Fragment";case Y:return"Profiler";case z:return"StrictMode";case r:return"Suspense";case c:return"SuspenseList";case b:return"Activity"}if(typeof e=="object")switch(typeof e.tag=="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),e.$$typeof){case v:return"Portal";case H:return e.displayName||"Context";case y:return(e._context.displayName||"Context")+".Consumer";case M:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case _:return n=e.displayName||null,n!==null?n:t(e.type)||"Memo";case p:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function s(e){return""+e}function h(e){try{s(e);var n=!1}catch{n=!0}if(n){n=console;var o=n.error,i=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return o.call(n,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",i),s(e)}}function m(e){if(e===j)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===p)return"<...>";try{var n=t(e);return n?"<"+n+">":"<...>"}catch{return"<...>"}}function u(){var e=N.A;return e===null?null:e.getOwner()}function d(){return Error("react-stack-top-frame")}function g(e){if(S.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return e.key!==void 0}function x(e,n){function o(){T||(T=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",n))}o.isReactWarning=!0,Object.defineProperty(e,"key",{get:o,configurable:!0})}function D(){var e=t(this.type);return G[e]||(G[e]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),e=this.props.ref,e!==void 0?e:null}function $(e,n,o,i,L,q){var l=o.ref;return e={$$typeof:O,type:e,key:n,props:o,_owner:i},(l!==void 0?l:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:D}):Object.defineProperty(e,"ref",{enumerable:!1,value:null}),e._store={},Object.defineProperty(e._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(e,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(e,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:L}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:q}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function P(e,n,o,i,L,q){var l=n.children;if(l!==void 0)if(i)if(U(l)){for(i=0;i<l.length;i++)R(l[i]);Object.freeze&&Object.freeze(l)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else R(l);if(S.call(n,"key")){l=t(e);var w=Object.keys(n).filter(function(ne){return ne!=="key"});i=0<w.length?"{key: someKey, "+w.join(": ..., ")+": ...}":"{key: someKey}",Q[l+i]||(w=0<w.length?"{"+w.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
18
18
  let props = %s;
19
19
  <%s {...props} />
20
20
  React keys must be passed directly to JSX without using spread:
21
21
  let props = %s;
22
- <%s key={someKey} {...props} />`,i,l,w,l),Q[l+i]=!0)}if(l=null,o!==void 0&&(h(o),l=""+o),g(n)&&(h(n.key),l=""+n.key),"key"in n){o={};for(var J in n)J!=="key"&&(o[J]=n[J])}else o=n;return l&&x(o,typeof e=="function"?e.displayName||e.name||"Unknown":e),$(e,l,o,u(),L,q)}function R(e){A(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===T&&(e._payload.status==="fulfilled"?A(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function A(e){return typeof e=="object"&&e!==null&&e.$$typeof===O}var _=f,O=Symbol.for("react.transitional.element"),v=Symbol.for("react.portal"),j=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),Y=Symbol.for("react.profiler"),y=Symbol.for("react.consumer"),H=Symbol.for("react.context"),M=Symbol.for("react.forward_ref"),r=Symbol.for("react.suspense"),c=Symbol.for("react.suspense_list"),p=Symbol.for("react.memo"),T=Symbol.for("react.lazy"),b=Symbol.for("react.activity"),V=Symbol.for("react.client.reference"),N=_.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,U=Array.isArray,k=console.createTask?console.createTask:function(){return null};_={react_stack_bottom_frame:function(e){return e()}};var E,G={},X=_.react_stack_bottom_frame.bind(_,d)(),Z=k(m(d)),Q={};I.Fragment=j,I.jsx=function(e,n,o){var i=1e4>N.recentlyCreatedOwnerStacks++;return P(e,n,o,!1,i?Error("react-stack-top-frame"):X,i?k(m(e)):Z)},I.jsxs=function(e,n,o){var i=1e4>N.recentlyCreatedOwnerStacks++;return P(e,n,o,!0,i?Error("react-stack-top-frame"):X,i?k(m(e)):Z)}})()),I}var te;function ie(){return te||(te=1,process.env.NODE_ENV==="production"?W.exports=oe():W.exports=ae()),W.exports}var F=ie();const B=f.forwardRef(({props:t,value:s,onChange:h,onBlur:m,readOnly:u},d)=>{const g=f.useRef(null),x=f.useRef(null),D=f.useRef(null),$=f.useRef(null),[P,R]=f.useState({top:0,bottom:0}),[A,_]=f.useState(null);f.useEffect(()=>{if(!t.multiline)return;const r=$.current,c=D.current;if(!r||!c)return;r.value=s??"";const p=window.getComputedStyle(c),T=Number.parseFloat(p.paddingTop),b=Number.parseFloat(p.paddingBottom),V=Number.parseFloat(p.paddingLeft),N=Number.parseFloat(p.paddingRight),S=c.clientHeight-T-b,U=c.clientWidth-V-N;r.style.width=`${U}px`,r.style.paddingTop="0px",r.style.paddingBottom="0px";const k=r.scrollHeight;if(_(S),k<S){const E=S-k;switch(t.alignItems){case a.VerticalAlign.top:R({top:0,bottom:E});break;case a.VerticalAlign.bottom:R({top:E,bottom:0});break;default:R({top:E/2,bottom:E/2});break}}else R({top:0,bottom:0})},[t,s]),f.useImperativeHandle(d,()=>({focus:()=>{var r;(r=g.current)==null||r.focus()}}),[]);const O=f.useMemo(()=>{const r={width:"100%",height:"100%",display:"flex",boxSizing:"border-box",overflow:"hidden"};switch(t.justifyContent){case a.HorizontalAlign.center:r.justifyContent="center";break;case a.HorizontalAlign.right:r.justifyContent="flex-end";break;default:r.justifyContent="flex-start";break}switch(t.alignItems){case a.VerticalAlign.top:r.alignItems="flex-start";break;case a.VerticalAlign.bottom:r.alignItems="flex-end";break;default:r.alignItems="center";break}if(t.isIndividual)t.top&&(r.paddingTop=a.toPx.fromDim(t.top)),t.right&&(r.paddingRight=a.toPx.fromDim(t.right)),t.bottom&&(r.paddingBottom=a.toPx.fromDim(t.bottom)),t.left&&(r.paddingLeft=a.toPx.fromDim(t.left));else if(t.all){const c=a.toPx.fromDim(t.all);r.padding=`${c}px`}return r},[t]),v=f.useMemo(()=>{const r={background:"transparent",border:"none",outline:"none",resize:"none",padding:0,margin:0,width:"100%",boxSizing:"border-box",fontFamily:"inherit",color:"inherit"};t.fontSize&&(r.fontSize=`${a.toPx.fromDim(t.fontSize)}px`),t.fontFamily&&(r.fontFamily=t.fontFamily),t.color&&(r.color=t.color),r.fontWeight=t.fontWeight?"bold":"normal",r.fontStyle=t.italic?"italic":"normal";const c=[];switch(t.underline&&c.push("underline"),t.lineThrough&&c.push("line-through"),r.textDecoration=c.length>0?c.join(" "):"none",t.lineHeight&&(r.lineHeight=t.lineHeight),t.justifyContent){case a.HorizontalAlign.center:r.textAlign="center";break;case a.HorizontalAlign.right:r.textAlign="right";break;default:r.textAlign="left";break}return r},[t]),j=f.useMemo(()=>({...v,position:"absolute",top:0,left:0,width:"100%",height:"auto",visibility:"hidden",pointerEvents:"none",overflow:"hidden",whiteSpace:"pre-wrap",wordWrap:"break-word",overflowWrap:"break-word",padding:0,border:"none",boxSizing:"border-box",resize:"none"}),[v]),z=r=>{h(r.target.value)},Y=()=>{m==null||m(s)},y=!u;if(t.multiline){const r={...v,resize:"none",overflow:"auto",height:A!==null?`${A}px`:"100%",paddingTop:`${P.top}px`,paddingBottom:`${P.bottom}px`},T={ref:b=>{x.current=b,g.current=b},value:s??"",onChange:b=>{z(b)},onBlur:Y,style:r,placeholder:t.placeholder,readOnly:!y,tabIndex:y?0:-1};return F.jsxs("div",{ref:D,style:O,children:[F.jsx("textarea",{ref:$,style:j,"aria-hidden":"true",readOnly:!0,tabIndex:-1,rows:1,value:s??""}),F.jsx("textarea",{...T})]})}const H={...v,height:"100%"},M={ref:g,value:s??"",onChange:z,onBlur:Y,style:H,placeholder:t.placeholder,readOnly:!y,tabIndex:y?0:-1};return F.jsx("div",{style:O,children:F.jsx("input",{type:"text",...M})})});B.displayName="TextRenderer";function re(t=a.DEFAULT_FONT_FAMILY){return{kind:"text",meta:{displayName:"テキスト",description:"リッチなテキスト編集ブロック",defaultSize:{w:4,h:2}},Renderer:B,properties:{...a.universalProperties,...a.placeholderDefinition,...a.fontStyleDefinition,...a.multilineDefinition,...a.validationDefinition,fontFamily:{defaultValue:"sans-serif",label:"フォント",group:"フォント",Component:a.Select,config:{placeholder:"フォントを選択",options:t}}},validateProps:s=>s,validateValue:s=>typeof s=="string"?s:typeof s=="number"?String(s):null}}const le=re();exports.TextPlugin=le;exports.TextRenderer=B;exports.createTextPlugin=re;
22
+ <%s key={someKey} {...props} />`,i,l,w,l),Q[l+i]=!0)}if(l=null,o!==void 0&&(h(o),l=""+o),g(n)&&(h(n.key),l=""+n.key),"key"in n){o={};for(var J in n)J!=="key"&&(o[J]=n[J])}else o=n;return l&&x(o,typeof e=="function"?e.displayName||e.name||"Unknown":e),$(e,l,o,u(),L,q)}function R(e){A(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===p&&(e._payload.status==="fulfilled"?A(e._payload.value)&&e._payload.value._store&&(e._payload.value._store.validated=1):e._store&&(e._store.validated=1))}function A(e){return typeof e=="object"&&e!==null&&e.$$typeof===O}var E=f,O=Symbol.for("react.transitional.element"),v=Symbol.for("react.portal"),j=Symbol.for("react.fragment"),z=Symbol.for("react.strict_mode"),Y=Symbol.for("react.profiler"),y=Symbol.for("react.consumer"),H=Symbol.for("react.context"),M=Symbol.for("react.forward_ref"),r=Symbol.for("react.suspense"),c=Symbol.for("react.suspense_list"),_=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),b=Symbol.for("react.activity"),V=Symbol.for("react.client.reference"),N=E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,S=Object.prototype.hasOwnProperty,U=Array.isArray,k=console.createTask?console.createTask:function(){return null};E={react_stack_bottom_frame:function(e){return e()}};var T,G={},X=E.react_stack_bottom_frame.bind(E,d)(),Z=k(m(d)),Q={};I.Fragment=j,I.jsx=function(e,n,o){var i=1e4>N.recentlyCreatedOwnerStacks++;return P(e,n,o,!1,i?Error("react-stack-top-frame"):X,i?k(m(e)):Z)},I.jsxs=function(e,n,o){var i=1e4>N.recentlyCreatedOwnerStacks++;return P(e,n,o,!0,i?Error("react-stack-top-frame"):X,i?k(m(e)):Z)}})()),I}var te;function ie(){return te||(te=1,process.env.NODE_ENV==="production"?W.exports=oe():W.exports=ae()),W.exports}var F=ie();const le="_ghost_tf9uv_15",se={ghost:le},B=f.forwardRef(({props:t,value:s,onChange:h,onBlur:m,readOnly:u},d)=>{const g=f.useRef(null),x=f.useRef(null),D=f.useRef(null),$=f.useRef(null),[P,R]=f.useState({top:0,bottom:0}),[A,E]=f.useState(null);f.useEffect(()=>{if(!t.multiline)return;const r=$.current,c=D.current;if(!r||!c)return;r.value=s??"";const _=window.getComputedStyle(c),p=Number.parseFloat(_.paddingTop),b=Number.parseFloat(_.paddingBottom),V=Number.parseFloat(_.paddingLeft),N=Number.parseFloat(_.paddingRight),S=c.clientHeight-p-b,U=c.clientWidth-V-N;r.style.width=`${U}px`,r.style.paddingTop="0px",r.style.paddingBottom="0px";const k=r.scrollHeight;if(E(S),k<S){const T=S-k;switch(t.alignItems){case a.VerticalAlign.top:R({top:0,bottom:T});break;case a.VerticalAlign.bottom:R({top:T,bottom:0});break;default:R({top:T/2,bottom:T/2});break}}else R({top:0,bottom:0})},[t,s]),f.useImperativeHandle(d,()=>({focus:()=>{var r;(r=g.current)==null||r.focus()}}),[]);const O=f.useMemo(()=>{const r={width:"100%",height:"100%",display:"flex",boxSizing:"border-box",overflow:"hidden"};switch(t.justifyContent){case a.HorizontalAlign.center:r.justifyContent="center";break;case a.HorizontalAlign.right:r.justifyContent="flex-end";break;default:r.justifyContent="flex-start";break}switch(t.alignItems){case a.VerticalAlign.top:r.alignItems="flex-start";break;case a.VerticalAlign.bottom:r.alignItems="flex-end";break;default:r.alignItems="center";break}if(t.isIndividual)t.top&&(r.paddingTop=a.toPx.fromDim(t.top)),t.right&&(r.paddingRight=a.toPx.fromDim(t.right)),t.bottom&&(r.paddingBottom=a.toPx.fromDim(t.bottom)),t.left&&(r.paddingLeft=a.toPx.fromDim(t.left));else if(t.all){const c=a.toPx.fromDim(t.all);r.padding=`${c}px`}return r},[t]),v=f.useMemo(()=>{const r={background:"transparent",border:"none",outline:"none",resize:"none",padding:0,margin:0,width:"100%",boxSizing:"border-box",fontFamily:"inherit",color:"inherit"};t.fontSize&&(r.fontSize=`${a.toPx.fromDim(t.fontSize)}px`),t.fontFamily&&(r.fontFamily=t.fontFamily),t.color&&(r.color=t.color),r.fontWeight=t.fontWeight?"bold":"normal",r.fontStyle=t.italic?"italic":"normal";const c=[];switch(t.underline&&c.push("underline"),t.lineThrough&&c.push("line-through"),r.textDecoration=c.length>0?c.join(" "):"none",t.lineHeight&&(r.lineHeight=t.lineHeight),t.justifyContent){case a.HorizontalAlign.center:r.textAlign="center";break;case a.HorizontalAlign.right:r.textAlign="right";break;default:r.textAlign="left";break}return r},[t]),j=f.useMemo(()=>({...v,position:"absolute",top:0,left:0,width:"100%",height:"auto",visibility:"hidden",pointerEvents:"none",overflow:"hidden",whiteSpace:"pre-wrap",wordWrap:"break-word",overflowWrap:"break-word",padding:0,border:"none",boxSizing:"border-box",resize:"none"}),[v]),z=r=>{h(r.target.value)},Y=()=>{m==null||m(s)},y=!u;if(t.multiline){const r={...v,resize:"none",overflow:"auto",height:A!==null?`${A}px`:"100%",paddingTop:`${P.top}px`,paddingBottom:`${P.bottom}px`},p={ref:b=>{x.current=b,g.current=b},value:s??"",onChange:b=>{z(b)},onBlur:Y,style:r,placeholder:t.placeholder,readOnly:!y,tabIndex:y?0:-1};return F.jsxs("div",{ref:D,style:O,children:[F.jsx("textarea",{ref:$,className:se.ghost,style:j,"aria-hidden":"true",readOnly:!0,tabIndex:-1,rows:1,value:s??""}),F.jsx("textarea",{...p})]})}const H={...v,height:"100%"},M={ref:g,value:s??"",onChange:z,onBlur:Y,style:H,placeholder:t.placeholder,readOnly:!y,tabIndex:y?0:-1};return F.jsx("div",{style:O,children:F.jsx("input",{type:"text",...M})})});B.displayName="TextRenderer";function re(t=a.DEFAULT_FONT_FAMILY){return{kind:"text",meta:{displayName:"テキスト",description:"リッチなテキスト編集ブロック",defaultSize:{w:4,h:2}},Renderer:B,properties:{...a.universalProperties,...a.placeholderDefinition,...a.fontStyleDefinition,...a.multilineDefinition,...a.validationDefinition,fontFamily:{defaultValue:"sans-serif",label:"フォント",group:"フォント",Component:a.Select,config:{placeholder:"フォントを選択",options:t}}},validateProps:s=>s,validateValue:s=>typeof s=="string"?s:typeof s=="number"?String(s):null}}const ce=re();exports.TextPlugin=ce;exports.TextRenderer=B;exports.createTextPlugin=re;
23
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/TextRenderer.tsx","../src/TextPlugin.ts"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport type { TextProps, TextValue } from \"./types\";\nimport \"./TextRenderer.module.css\";\n\nexport const TextRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<TextProps, TextValue>\n>(({ props, value, onChange, onBlur, readOnly }, ref) => {\n\t// 入力要素への参照\n\tconst inputRef = useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\tconst textareaRef = useRef<HTMLTextAreaElement>(null);\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst ghostRef = useRef<HTMLTextAreaElement>(null);\n\n\tconst [textareaPadding, setTextareaPadding] = useState({ top: 0, bottom: 0 });\n\tconst [textareaHeight, setTextareaHeight] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!props.multiline) return;\n\n\t\tconst ghost = ghostRef.current;\n\t\tconst container = containerRef.current;\n\t\tif (!ghost || !container) return;\n\n\t\tghost.value = value ?? \"\";\n\n\t\tconst containerStyle = window.getComputedStyle(container);\n\t\tconst paddingTop = Number.parseFloat(containerStyle.paddingTop);\n\t\tconst paddingBottom = Number.parseFloat(containerStyle.paddingBottom);\n\t\tconst paddingLeft = Number.parseFloat(containerStyle.paddingLeft);\n\t\tconst paddingRight = Number.parseFloat(containerStyle.paddingRight);\n\n\t\tconst containerHeight = container.clientHeight - paddingTop - paddingBottom;\n\t\tconst availableWidth = container.clientWidth - paddingLeft - paddingRight;\n\n\t\tghost.style.width = `${availableWidth}px`;\n\t\tghost.style.paddingTop = \"0px\";\n\t\tghost.style.paddingBottom = \"0px\";\n\n\t\tconst contentHeight = ghost.scrollHeight;\n\n\t\tsetTextareaHeight(containerHeight);\n\n\t\tif (contentHeight < containerHeight) {\n\t\t\tconst availableSpace = containerHeight - contentHeight;\n\n\t\t\tswitch (props.alignItems) {\n\t\t\t\tcase VerticalAlign.top:\n\t\t\t\t\tsetTextareaPadding({ top: 0, bottom: availableSpace });\n\t\t\t\t\tbreak;\n\t\t\t\tcase VerticalAlign.bottom:\n\t\t\t\t\tsetTextareaPadding({ top: availableSpace, bottom: 0 });\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tsetTextareaPadding({\n\t\t\t\t\t\ttop: availableSpace / 2,\n\t\t\t\t\t\tbottom: availableSpace / 2,\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} else {\n\t\t\tsetTextareaPadding({ top: 0, bottom: 0 });\n\t\t}\n\t}, [props, value]);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tinputRef.current?.focus();\n\t\t\t},\n\t\t}),\n\t\t[],\n\t);\n\n\tconst containerStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tdisplay: \"flex\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\toverflow: \"hidden\",\n\t\t};\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.justifyContent = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.justifyContent = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.justifyContent = \"flex-start\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (props.alignItems) {\n\t\t\tcase VerticalAlign.top:\n\t\t\t\tcss.alignItems = \"flex-start\";\n\t\t\t\tbreak;\n\t\t\tcase VerticalAlign.bottom:\n\t\t\t\tcss.alignItems = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.alignItems = \"center\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (props.isIndividual) {\n\t\t\tif (props.top) css.paddingTop = toPx.fromDim(props.top);\n\t\t\tif (props.right) css.paddingRight = toPx.fromDim(props.right);\n\t\t\tif (props.bottom) css.paddingBottom = toPx.fromDim(props.bottom);\n\t\t\tif (props.left) css.paddingLeft = toPx.fromDim(props.left);\n\t\t} else if (props.all) {\n\t\t\tconst p = toPx.fromDim(props.all);\n\t\t\tcss.padding = `${p}px`;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst inputStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\",\n\t\t\toutline: \"none\",\n\t\t\tresize: \"none\",\n\t\t\tpadding: 0,\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"inherit\",\n\t\t};\n\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = `${toPx.fromDim(props.fontSize)}px`;\n\t\t}\n\n\t\tif (props.fontFamily) css.fontFamily = props.fontFamily;\n\t\tif (props.color) css.color = props.color;\n\n\t\tcss.fontWeight = props.fontWeight ? \"bold\" : \"normal\";\n\t\tcss.fontStyle = props.italic ? \"italic\" : \"normal\";\n\n\t\tconst decorations: string[] = [];\n\t\tif (props.underline) decorations.push(\"underline\");\n\t\tif (props.lineThrough) decorations.push(\"line-through\");\n\t\tcss.textDecoration =\n\t\t\tdecorations.length > 0 ? decorations.join(\" \") : \"none\";\n\n\t\tif (props.lineHeight) css.lineHeight = props.lineHeight;\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.textAlign = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.textAlign = \"right\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.textAlign = \"left\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst ghostStyle = useMemo((): CSSProperties => {\n\t\treturn {\n\t\t\t...inputStyle,\n\t\t\tposition: \"absolute\",\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"auto\",\n\t\t\tvisibility: \"hidden\",\n\t\t\tpointerEvents: \"none\",\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"pre-wrap\",\n\t\t\twordWrap: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t\tpadding: 0,\n\t\t\tborder: \"none\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tresize: \"none\",\n\t\t};\n\t}, [inputStyle]);\n\n\tconst handleChange = (\n\t\te: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n\t) => {\n\t\tonChange(e.target.value);\n\t};\n\n\tconst handleBlur = () => {\n\t\tonBlur?.(value);\n\t};\n\n\tconst isEditable = !readOnly;\n\n\tif (props.multiline) {\n\t\tconst textareaStyle: CSSProperties = {\n\t\t\t...inputStyle,\n\t\t\tresize: \"none\",\n\t\t\toverflow: \"auto\",\n\t\t\theight: textareaHeight !== null ? `${textareaHeight}px` : \"100%\",\n\t\t\tpaddingTop: `${textareaPadding.top}px`,\n\t\t\tpaddingBottom: `${textareaPadding.bottom}px`,\n\t\t};\n\n\t\tconst handleTextareaChange = (\n\t\t\te: React.ChangeEvent<HTMLTextAreaElement>,\n\t\t) => {\n\t\t\thandleChange(e);\n\t\t};\n\n\t\tconst setTextareaRefs = (el: HTMLTextAreaElement | null) => {\n\t\t\ttextareaRef.current = el;\n\t\t\tinputRef.current = el;\n\t\t};\n\n\t\tconst textareaProps = {\n\t\t\tref: setTextareaRefs,\n\t\t\tvalue: value ?? \"\",\n\t\t\tonChange: handleTextareaChange,\n\t\t\tonBlur: handleBlur,\n\t\t\tstyle: textareaStyle,\n\t\t\tplaceholder: props.placeholder,\n\t\t\treadOnly: !isEditable,\n\t\t\ttabIndex: isEditable ? 0 : -1,\n\t\t};\n\n\t\treturn (\n\t\t\t<div ref={containerRef} style={containerStyle}>\n\t\t\t\t<textarea\n\t\t\t\t\tref={ghostRef}\n\t\t\t\t\tstyle={ghostStyle}\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\treadOnly\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\trows={1}\n\t\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\t/>\n\t\t\t\t<textarea {...textareaProps} />\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst singleLineStyle: CSSProperties = {\n\t\t...inputStyle,\n\t\theight: \"100%\",\n\t};\n\n\tconst commonInputProps = {\n\t\tref: inputRef as React.RefObject<HTMLInputElement>,\n\t\tvalue: value ?? \"\",\n\t\tonChange: handleChange,\n\t\tonBlur: handleBlur,\n\t\tstyle: singleLineStyle,\n\t\tplaceholder: props.placeholder,\n\t\treadOnly: !isEditable,\n\t\ttabIndex: isEditable ? 0 : -1,\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<input type=\"text\" {...commonInputProps} />\n\t\t</div>\n\t);\n});\n\nTextRenderer.displayName = \"TextRenderer\";\n","import {\n\ttype BlockPlugin,\n\tDEFAULT_FONT_FAMILY,\n\tfontStyleDefinition,\n\tmultilineDefinition,\n\tplaceholderDefinition,\n\tSelect,\n\ttype SelectOption,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { TextRenderer } from \"./TextRenderer\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport function createTextPlugin(\n\tfontFamilyOptions: readonly SelectOption[] = DEFAULT_FONT_FAMILY,\n): BlockPlugin<TextProps, TextValue> {\n\treturn {\n\t\tkind: \"text\",\n\n\t\tmeta: {\n\t\t\tdisplayName: \"テキスト\",\n\t\t\tdescription: \"リッチなテキスト編集ブロック\",\n\t\t\tdefaultSize: { w: 4, h: 2 }, // デフォルトサイズ\n\t\t},\n\n\t\tRenderer: TextRenderer,\n\n\t\tproperties: {\n\t\t\t...universalProperties,\n\t\t\t...placeholderDefinition,\n\t\t\t...fontStyleDefinition,\n\t\t\t...multilineDefinition,\n\t\t\t...validationDefinition,\n\n\t\t\tfontFamily: {\n\t\t\t\tdefaultValue: \"sans-serif\",\n\t\t\t\tlabel: \"フォント\",\n\t\t\t\tgroup: \"フォント\",\n\t\t\t\tComponent: Select,\n\t\t\t\tconfig: {\n\t\t\t\t\tplaceholder: \"フォントを選択\",\n\t\t\t\t\toptions: fontFamilyOptions,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\t// バリデーション (Propsの型チェックと初期化)\n\t\tvalidateProps: (props: unknown): TextProps => {\n\t\t\t// createInitialPropsを通すので、基本的にはキャストでOKですが、\n\t\t\t// 必要に応じて厳密なチェックを行います\n\t\t\treturn props as TextProps;\n\t\t},\n\n\t\t// 値のバリデーション\n\t\tvalidateValue: (value: unknown): TextValue | null => {\n\t\t\tif (typeof value === \"string\") return value;\n\t\t\tif (typeof value === \"number\") return String(value);\n\t\t\treturn null;\n\t\t},\n\t};\n}\n\nexport const TextPlugin: BlockPlugin<TextProps, TextValue> = createTextPlugin();\n"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","getComponentNameFromType","REACT_CLIENT_REFERENCE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_ACTIVITY_TYPE","REACT_PORTAL_TYPE","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","REACT_FORWARD_REF_TYPE","innerType","REACT_MEMO_TYPE","REACT_LAZY_TYPE","testStringCoercion","value","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","getTaskName","name","getOwner","dispatcher","ReactSharedInternals","UnknownOwner","hasValidKey","hasOwnProperty","getter","defineKeyPropWarningGetter","props","displayName","warnAboutAccessingKey","specialPropKeyWarningShown","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","ReactElement","owner","debugStack","debugTask","refProp","jsxDEVImpl","isStaticChildren","children","isArrayImpl","validateChildKeys","keys","k","didWarnAboutKeySpread","node","isValidElement","object","React","require$$0","createTask","callStackForError","unknownOwnerDebugStack","unknownOwnerDebugTask","reactJsxRuntime_development","trackActualOwner","jsxRuntimeModule","require$$1","TextRenderer","forwardRef","onChange","onBlur","readOnly","ref","inputRef","useRef","textareaRef","containerRef","ghostRef","textareaPadding","setTextareaPadding","useState","textareaHeight","setTextareaHeight","useEffect","ghost","container","containerStyle","paddingTop","paddingBottom","paddingLeft","paddingRight","containerHeight","availableWidth","contentHeight","availableSpace","VerticalAlign","useImperativeHandle","_a","useMemo","css","HorizontalAlign","toPx","p","inputStyle","decorations","ghostStyle","handleChange","e","handleBlur","isEditable","textareaStyle","textareaProps","el","jsxs","jsx","singleLineStyle","commonInputProps","createTextPlugin","fontFamilyOptions","DEFAULT_FONT_FAMILY","universalProperties","placeholderDefinition","fontStyleDefinition","multilineDefinition","validationDefinition","Select","TextPlugin"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"index.js","sources":["../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/TextRenderer.tsx","../src/TextPlugin.ts"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport styles from \"./TextRenderer.module.css\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport const TextRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<TextProps, TextValue>\n>(({ props, value, onChange, onBlur, readOnly }, ref) => {\n\t// 入力要素への参照\n\tconst inputRef = useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\tconst textareaRef = useRef<HTMLTextAreaElement>(null);\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst ghostRef = useRef<HTMLTextAreaElement>(null);\n\n\tconst [textareaPadding, setTextareaPadding] = useState({ top: 0, bottom: 0 });\n\tconst [textareaHeight, setTextareaHeight] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!props.multiline) return;\n\n\t\tconst ghost = ghostRef.current;\n\t\tconst container = containerRef.current;\n\t\tif (!ghost || !container) return;\n\n\t\tghost.value = value ?? \"\";\n\n\t\tconst containerStyle = window.getComputedStyle(container);\n\t\tconst paddingTop = Number.parseFloat(containerStyle.paddingTop);\n\t\tconst paddingBottom = Number.parseFloat(containerStyle.paddingBottom);\n\t\tconst paddingLeft = Number.parseFloat(containerStyle.paddingLeft);\n\t\tconst paddingRight = Number.parseFloat(containerStyle.paddingRight);\n\n\t\tconst containerHeight = container.clientHeight - paddingTop - paddingBottom;\n\t\tconst availableWidth = container.clientWidth - paddingLeft - paddingRight;\n\n\t\tghost.style.width = `${availableWidth}px`;\n\t\tghost.style.paddingTop = \"0px\";\n\t\tghost.style.paddingBottom = \"0px\";\n\n\t\tconst contentHeight = ghost.scrollHeight;\n\n\t\tsetTextareaHeight(containerHeight);\n\n\t\tif (contentHeight < containerHeight) {\n\t\t\tconst availableSpace = containerHeight - contentHeight;\n\n\t\t\tswitch (props.alignItems) {\n\t\t\t\tcase VerticalAlign.top:\n\t\t\t\t\tsetTextareaPadding({ top: 0, bottom: availableSpace });\n\t\t\t\t\tbreak;\n\t\t\t\tcase VerticalAlign.bottom:\n\t\t\t\t\tsetTextareaPadding({ top: availableSpace, bottom: 0 });\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tsetTextareaPadding({\n\t\t\t\t\t\ttop: availableSpace / 2,\n\t\t\t\t\t\tbottom: availableSpace / 2,\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} else {\n\t\t\tsetTextareaPadding({ top: 0, bottom: 0 });\n\t\t}\n\t}, [props, value]);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tinputRef.current?.focus();\n\t\t\t},\n\t\t}),\n\t\t[],\n\t);\n\n\tconst containerStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tdisplay: \"flex\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\toverflow: \"hidden\",\n\t\t};\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.justifyContent = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.justifyContent = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.justifyContent = \"flex-start\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (props.alignItems) {\n\t\t\tcase VerticalAlign.top:\n\t\t\t\tcss.alignItems = \"flex-start\";\n\t\t\t\tbreak;\n\t\t\tcase VerticalAlign.bottom:\n\t\t\t\tcss.alignItems = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.alignItems = \"center\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (props.isIndividual) {\n\t\t\tif (props.top) css.paddingTop = toPx.fromDim(props.top);\n\t\t\tif (props.right) css.paddingRight = toPx.fromDim(props.right);\n\t\t\tif (props.bottom) css.paddingBottom = toPx.fromDim(props.bottom);\n\t\t\tif (props.left) css.paddingLeft = toPx.fromDim(props.left);\n\t\t} else if (props.all) {\n\t\t\tconst p = toPx.fromDim(props.all);\n\t\t\tcss.padding = `${p}px`;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst inputStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\",\n\t\t\toutline: \"none\",\n\t\t\tresize: \"none\",\n\t\t\tpadding: 0,\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"inherit\",\n\t\t};\n\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = `${toPx.fromDim(props.fontSize)}px`;\n\t\t}\n\n\t\tif (props.fontFamily) css.fontFamily = props.fontFamily;\n\t\tif (props.color) css.color = props.color;\n\n\t\tcss.fontWeight = props.fontWeight ? \"bold\" : \"normal\";\n\t\tcss.fontStyle = props.italic ? \"italic\" : \"normal\";\n\n\t\tconst decorations: string[] = [];\n\t\tif (props.underline) decorations.push(\"underline\");\n\t\tif (props.lineThrough) decorations.push(\"line-through\");\n\t\tcss.textDecoration =\n\t\t\tdecorations.length > 0 ? decorations.join(\" \") : \"none\";\n\n\t\tif (props.lineHeight) css.lineHeight = props.lineHeight;\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.textAlign = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.textAlign = \"right\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.textAlign = \"left\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst ghostStyle = useMemo((): CSSProperties => {\n\t\treturn {\n\t\t\t...inputStyle,\n\t\t\tposition: \"absolute\",\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"auto\",\n\t\t\tvisibility: \"hidden\",\n\t\t\tpointerEvents: \"none\",\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"pre-wrap\",\n\t\t\twordWrap: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t\tpadding: 0,\n\t\t\tborder: \"none\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tresize: \"none\",\n\t\t};\n\t}, [inputStyle]);\n\n\tconst handleChange = (\n\t\te: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n\t) => {\n\t\tonChange(e.target.value);\n\t};\n\n\tconst handleBlur = () => {\n\t\tonBlur?.(value);\n\t};\n\n\tconst isEditable = !readOnly;\n\n\tif (props.multiline) {\n\t\tconst textareaStyle: CSSProperties = {\n\t\t\t...inputStyle,\n\t\t\tresize: \"none\",\n\t\t\toverflow: \"auto\",\n\t\t\theight: textareaHeight !== null ? `${textareaHeight}px` : \"100%\",\n\t\t\tpaddingTop: `${textareaPadding.top}px`,\n\t\t\tpaddingBottom: `${textareaPadding.bottom}px`,\n\t\t};\n\n\t\tconst handleTextareaChange = (\n\t\t\te: React.ChangeEvent<HTMLTextAreaElement>,\n\t\t) => {\n\t\t\thandleChange(e);\n\t\t};\n\n\t\tconst setTextareaRefs = (el: HTMLTextAreaElement | null) => {\n\t\t\ttextareaRef.current = el;\n\t\t\tinputRef.current = el;\n\t\t};\n\n\t\tconst textareaProps = {\n\t\t\tref: setTextareaRefs,\n\t\t\tvalue: value ?? \"\",\n\t\t\tonChange: handleTextareaChange,\n\t\t\tonBlur: handleBlur,\n\t\t\tstyle: textareaStyle,\n\t\t\tplaceholder: props.placeholder,\n\t\t\treadOnly: !isEditable,\n\t\t\ttabIndex: isEditable ? 0 : -1,\n\t\t};\n\n\t\treturn (\n\t\t\t<div ref={containerRef} style={containerStyle}>\n\t\t\t\t<textarea\n\t\t\t\t\tref={ghostRef}\n\t\t\t\t\tclassName={styles.ghost}\n\t\t\t\t\tstyle={ghostStyle}\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\treadOnly\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\trows={1}\n\t\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\t/>\n\t\t\t\t<textarea {...textareaProps} />\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst singleLineStyle: CSSProperties = {\n\t\t...inputStyle,\n\t\theight: \"100%\",\n\t};\n\n\tconst commonInputProps = {\n\t\tref: inputRef as React.RefObject<HTMLInputElement>,\n\t\tvalue: value ?? \"\",\n\t\tonChange: handleChange,\n\t\tonBlur: handleBlur,\n\t\tstyle: singleLineStyle,\n\t\tplaceholder: props.placeholder,\n\t\treadOnly: !isEditable,\n\t\ttabIndex: isEditable ? 0 : -1,\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<input type=\"text\" {...commonInputProps} />\n\t\t</div>\n\t);\n});\n\nTextRenderer.displayName = \"TextRenderer\";\n","import {\n\ttype BlockPlugin,\n\tDEFAULT_FONT_FAMILY,\n\tfontStyleDefinition,\n\tmultilineDefinition,\n\tplaceholderDefinition,\n\tSelect,\n\ttype SelectOption,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { TextRenderer } from \"./TextRenderer\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport function createTextPlugin(\n\tfontFamilyOptions: readonly SelectOption[] = DEFAULT_FONT_FAMILY,\n): BlockPlugin<TextProps, TextValue> {\n\treturn {\n\t\tkind: \"text\",\n\n\t\tmeta: {\n\t\t\tdisplayName: \"テキスト\",\n\t\t\tdescription: \"リッチなテキスト編集ブロック\",\n\t\t\tdefaultSize: { w: 4, h: 2 }, // デフォルトサイズ\n\t\t},\n\n\t\tRenderer: TextRenderer,\n\n\t\tproperties: {\n\t\t\t...universalProperties,\n\t\t\t...placeholderDefinition,\n\t\t\t...fontStyleDefinition,\n\t\t\t...multilineDefinition,\n\t\t\t...validationDefinition,\n\n\t\t\tfontFamily: {\n\t\t\t\tdefaultValue: \"sans-serif\",\n\t\t\t\tlabel: \"フォント\",\n\t\t\t\tgroup: \"フォント\",\n\t\t\t\tComponent: Select,\n\t\t\t\tconfig: {\n\t\t\t\t\tplaceholder: \"フォントを選択\",\n\t\t\t\t\toptions: fontFamilyOptions,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\t// バリデーション (Propsの型チェックと初期化)\n\t\tvalidateProps: (props: unknown): TextProps => {\n\t\t\t// createInitialPropsを通すので、基本的にはキャストでOKですが、\n\t\t\t// 必要に応じて厳密なチェックを行います\n\t\t\treturn props as TextProps;\n\t\t},\n\n\t\t// 値のバリデーション\n\t\tvalidateValue: (value: unknown): TextValue | null => {\n\t\t\tif (typeof value === \"string\") return value;\n\t\t\tif (typeof value === \"number\") return String(value);\n\t\t\treturn null;\n\t\t},\n\t};\n}\n\nexport const TextPlugin: BlockPlugin<TextProps, TextValue> = createTextPlugin();\n"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","getComponentNameFromType","REACT_CLIENT_REFERENCE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_ACTIVITY_TYPE","REACT_PORTAL_TYPE","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","REACT_FORWARD_REF_TYPE","innerType","REACT_MEMO_TYPE","REACT_LAZY_TYPE","testStringCoercion","value","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","getTaskName","name","getOwner","dispatcher","ReactSharedInternals","UnknownOwner","hasValidKey","hasOwnProperty","getter","defineKeyPropWarningGetter","props","displayName","warnAboutAccessingKey","specialPropKeyWarningShown","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","ReactElement","owner","debugStack","debugTask","refProp","jsxDEVImpl","isStaticChildren","children","isArrayImpl","validateChildKeys","keys","k","didWarnAboutKeySpread","node","isValidElement","object","React","require$$0","createTask","callStackForError","unknownOwnerDebugStack","unknownOwnerDebugTask","reactJsxRuntime_development","trackActualOwner","jsxRuntimeModule","require$$1","TextRenderer","forwardRef","onChange","onBlur","readOnly","ref","inputRef","useRef","textareaRef","containerRef","ghostRef","textareaPadding","setTextareaPadding","useState","textareaHeight","setTextareaHeight","useEffect","ghost","container","containerStyle","paddingTop","paddingBottom","paddingLeft","paddingRight","containerHeight","availableWidth","contentHeight","availableSpace","VerticalAlign","useImperativeHandle","_a","useMemo","css","HorizontalAlign","toPx","p","inputStyle","decorations","ghostStyle","handleChange","e","handleBlur","isEditable","textareaStyle","textareaProps","el","jsxs","jsx","styles","singleLineStyle","commonInputProps","createTextPlugin","fontFamilyOptions","DEFAULT_FONT_FAMILY","universalProperties","placeholderDefinition","fontStyleDefinition","multilineDefinition","validationDefinition","Select","TextPlugin"],"mappings":";;;;;;;;yCAWA,IAAIA,EAAqB,OAAO,IAAI,4BAA4B,EAC9DC,EAAsB,OAAO,IAAI,gBAAgB,EACnD,SAASC,EAAQC,EAAMC,EAAQC,EAAU,CACvC,IAAIC,EAAM,KAGV,GAFWD,IAAX,SAAwBC,EAAM,GAAKD,GACxBD,EAAO,MAAlB,SAA0BE,EAAM,GAAKF,EAAO,KACxC,QAASA,EAAQ,CACnBC,EAAW,CAAA,EACX,QAASE,KAAYH,EACTG,IAAV,QAAuBF,EAASE,CAAQ,EAAIH,EAAOG,CAAQ,EACjE,MAASF,EAAWD,EAClB,OAAAA,EAASC,EAAS,IACX,CACL,SAAUL,EACV,KAAMG,EACN,IAAKG,EACL,IAAgBF,IAAX,OAAoBA,EAAS,KAClC,MAAOC,EAEX,CACA,OAAAG,EAAA,SAAmBP,EACnBO,EAAA,IAAcN,EACdM,EAAA,KAAeN;;;;;;;;yCCtBE,QAAQ,IAAI,WAA7B,eACG,UAAY,CACX,SAASO,EAAyBN,EAAM,CACtC,GAAYA,GAAR,KAAc,OAAO,KACzB,GAAmB,OAAOA,GAAtB,WACF,OAAOA,EAAK,WAAaO,EACrB,KACAP,EAAK,aAAeA,EAAK,MAAQ,KACvC,GAAiB,OAAOA,GAApB,SAA0B,OAAOA,EACrC,OAAQA,EAAI,CACV,KAAKF,EACH,MAAO,WACT,KAAKU,EACH,MAAO,WACT,KAAKC,EACH,MAAO,aACT,KAAKC,EACH,MAAO,WACT,KAAKC,EACH,MAAO,eACT,KAAKC,EACH,MAAO,UACjB,CACM,GAAiB,OAAOZ,GAApB,SACF,OACgB,OAAOA,EAAK,KAAzB,UACC,QAAQ,MACN,qHAEJA,EAAK,SACf,CACU,KAAKa,EACH,MAAO,SACT,KAAKC,EACH,OAAOd,EAAK,aAAe,UAC7B,KAAKe,EACH,OAAQf,EAAK,SAAS,aAAe,WAAa,YACpD,KAAKgB,EACH,IAAIC,EAAYjB,EAAK,OACrB,OAAAA,EAAOA,EAAK,YACZA,IACIA,EAAOiB,EAAU,aAAeA,EAAU,MAAQ,GACnDjB,EAAcA,IAAP,GAAc,cAAgBA,EAAO,IAAM,cAC9CA,EACT,KAAKkB,EACH,OACGD,EAAYjB,EAAK,aAAe,KACxBiB,IAAT,KACIA,EACAX,EAAyBN,EAAK,IAAI,GAAK,OAE/C,KAAKmB,EACHF,EAAYjB,EAAK,SACjBA,EAAOA,EAAK,MACZ,GAAI,CACF,OAAOM,EAAyBN,EAAKiB,CAAS,CAAC,CAC7D,MAAwB,CAAA,CACxB,CACM,OAAO,IACb,CACI,SAASG,EAAmBC,EAAO,CACjC,MAAO,GAAKA,CAClB,CACI,SAASC,EAAuBD,EAAO,CACrC,GAAI,CACFD,EAAmBC,CAAK,EACxB,IAAIE,EAA2B,EACvC,MAAkB,CACVA,EAA2B,EACnC,CACM,GAAIA,EAA0B,CAC5BA,EAA2B,QAC3B,IAAIC,EAAwBD,EAAyB,MACjDE,EACc,OAAO,QAAtB,YACC,OAAO,aACPJ,EAAM,OAAO,WAAW,GAC1BA,EAAM,YAAY,MAClB,SACF,OAAAG,EAAsB,KACpBD,EACA,2GACAE,GAEKL,EAAmBC,CAAK,CACvC,CACA,CACI,SAASK,EAAY1B,EAAM,CACzB,GAAIA,IAASF,EAAqB,MAAO,KACzC,GACe,OAAOE,GAApB,UACSA,IAAT,MACAA,EAAK,WAAamB,EAElB,MAAO,QACT,GAAI,CACF,IAAIQ,EAAOrB,EAAyBN,CAAI,EACxC,OAAO2B,EAAO,IAAMA,EAAO,IAAM,OACzC,MAAkB,CACV,MAAO,OACf,CACA,CACI,SAASC,GAAW,CAClB,IAAIC,EAAaC,EAAqB,EACtC,OAAgBD,IAAT,KAAsB,KAAOA,EAAW,SAAQ,CAC7D,CACI,SAASE,GAAe,CACtB,OAAO,MAAM,uBAAuB,CAC1C,CACI,SAASC,EAAY/B,EAAQ,CAC3B,GAAIgC,EAAe,KAAKhC,EAAQ,KAAK,EAAG,CACtC,IAAIiC,EAAS,OAAO,yBAAyBjC,EAAQ,KAAK,EAAE,IAC5D,GAAIiC,GAAUA,EAAO,eAAgB,MAAO,EACpD,CACM,OAAkBjC,EAAO,MAAlB,MACb,CACI,SAASkC,EAA2BC,EAAOC,EAAa,CACtD,SAASC,GAAwB,CAC/BC,IACIA,EAA6B,GAC/B,QAAQ,MACN,0OACAF,CACZ,EACA,CACMC,EAAsB,eAAiB,GACvC,OAAO,eAAeF,EAAO,MAAO,CAClC,IAAKE,EACL,aAAc,EACtB,CAAO,CACP,CACI,SAASE,GAAyC,CAChD,IAAIC,EAAgBnC,EAAyB,KAAK,IAAI,EACtD,OAAAoC,EAAuBD,CAAa,IAChCC,EAAuBD,CAAa,EAAI,GAC1C,QAAQ,MACN,6IACV,GACMA,EAAgB,KAAK,MAAM,IACTA,IAAX,OAA2BA,EAAgB,IACxD,CACI,SAASE,EAAa3C,EAAMG,EAAKiC,EAAOQ,EAAOC,EAAYC,EAAW,CACpE,IAAIC,EAAUX,EAAM,IACpB,OAAApC,EAAO,CACL,SAAUH,EACV,KAAMG,EACN,IAAKG,EACL,MAAOiC,EACP,OAAQQ,IAEWG,IAAX,OAAqBA,EAAU,QAAzC,KACI,OAAO,eAAe/C,EAAM,MAAO,CACjC,WAAY,GACZ,IAAKwC,EACN,EACD,OAAO,eAAexC,EAAM,MAAO,CAAE,WAAY,GAAI,MAAO,KAAM,EACtEA,EAAK,OAAS,CAAA,EACd,OAAO,eAAeA,EAAK,OAAQ,YAAa,CAC9C,aAAc,GACd,WAAY,GACZ,SAAU,GACV,MAAO,CACf,CAAO,EACD,OAAO,eAAeA,EAAM,aAAc,CACxC,aAAc,GACd,WAAY,GACZ,SAAU,GACV,MAAO,IACf,CAAO,EACD,OAAO,eAAeA,EAAM,cAAe,CACzC,aAAc,GACd,WAAY,GACZ,SAAU,GACV,MAAO6C,CACf,CAAO,EACD,OAAO,eAAe7C,EAAM,aAAc,CACxC,aAAc,GACd,WAAY,GACZ,SAAU,GACV,MAAO8C,CACf,CAAO,EACD,OAAO,SAAW,OAAO,OAAO9C,EAAK,KAAK,EAAG,OAAO,OAAOA,CAAI,GACxDA,CACb,CACI,SAASgD,EACPhD,EACAC,EACAC,EACA+C,EACAJ,EACAC,EACA,CACA,IAAII,EAAWjD,EAAO,SACtB,GAAeiD,IAAX,OACF,GAAID,EACF,GAAIE,EAAYD,CAAQ,EAAG,CACzB,IACED,EAAmB,EACnBA,EAAmBC,EAAS,OAC5BD,IAEAG,EAAkBF,EAASD,CAAgB,CAAC,EAC9C,OAAO,QAAU,OAAO,OAAOC,CAAQ,CACnD,MACY,QAAQ,MACN,6JAEDE,EAAkBF,CAAQ,EACjC,GAAIjB,EAAe,KAAKhC,EAAQ,KAAK,EAAG,CACtCiD,EAAW5C,EAAyBN,CAAI,EACxC,IAAIqD,EAAO,OAAO,KAAKpD,CAAM,EAAE,OAAO,SAAUqD,GAAG,CACjD,OAAiBA,KAAV,KACjB,CAAS,EACDL,EACE,EAAII,EAAK,OACL,kBAAoBA,EAAK,KAAK,SAAS,EAAI,SAC3C,iBACNE,EAAsBL,EAAWD,CAAgB,IAC7CI,EACA,EAAIA,EAAK,OAAS,IAAMA,EAAK,KAAK,SAAS,EAAI,SAAW,KAC5D,QAAQ,MACN;AAAA;AAAA;AAAA;AAAA;AAAA,mCACAJ,EACAC,EACAG,EACAH,GAEDK,EAAsBL,EAAWD,CAAgB,EAAI,GAChE,CAMM,GALAC,EAAW,KACAhD,IAAX,SACGoB,EAAuBpB,CAAQ,EAAIgD,EAAW,GAAKhD,GACtD8B,EAAY/B,CAAM,IACfqB,EAAuBrB,EAAO,GAAG,EAAIiD,EAAW,GAAKjD,EAAO,KAC3D,QAASA,EAAQ,CACnBC,EAAW,CAAA,EACX,QAASE,KAAYH,EACTG,IAAV,QAAuBF,EAASE,CAAQ,EAAIH,EAAOG,CAAQ,EACrE,MAAaF,EAAWD,EAClB,OAAAiD,GACEf,EACEjC,EACe,OAAOF,GAAtB,WACIA,EAAK,aAAeA,EAAK,MAAQ,UACjCA,GAED2C,EACL3C,EACAkD,EACAhD,EACA0B,EAAQ,EACRiB,EACAC,EAER,CACI,SAASM,EAAkBI,EAAM,CAC/BC,EAAeD,CAAI,EACfA,EAAK,SAAWA,EAAK,OAAO,UAAY,GAC3B,OAAOA,GAApB,UACSA,IAAT,MACAA,EAAK,WAAarC,IACDqC,EAAK,SAAS,SAA9B,YACGC,EAAeD,EAAK,SAAS,KAAK,GAClCA,EAAK,SAAS,MAAM,SACnBA,EAAK,SAAS,MAAM,OAAO,UAAY,GACxCA,EAAK,SAAWA,EAAK,OAAO,UAAY,GACtD,CACI,SAASC,EAAeC,EAAQ,CAC9B,OACe,OAAOA,GAApB,UACSA,IAAT,MACAA,EAAO,WAAa7D,CAE5B,CACI,IAAI8D,EAAQC,EACV/D,EAAqB,OAAO,IAAI,4BAA4B,EAC5DgB,EAAoB,OAAO,IAAI,cAAc,EAC7Cf,EAAsB,OAAO,IAAI,gBAAgB,EACjDW,EAAyB,OAAO,IAAI,mBAAmB,EACvDD,EAAsB,OAAO,IAAI,gBAAgB,EACjDO,EAAsB,OAAO,IAAI,gBAAgB,EACjDD,EAAqB,OAAO,IAAI,eAAe,EAC/CE,EAAyB,OAAO,IAAI,mBAAmB,EACvDN,EAAsB,OAAO,IAAI,gBAAgB,EACjDC,EAA2B,OAAO,IAAI,qBAAqB,EAC3DO,EAAkB,OAAO,IAAI,YAAY,EACzCC,EAAkB,OAAO,IAAI,YAAY,EACzCP,EAAsB,OAAO,IAAI,gBAAgB,EACjDL,EAAyB,OAAO,IAAI,wBAAwB,EAC5DuB,EACE6B,EAAM,gEACR1B,EAAiB,OAAO,UAAU,eAClCkB,EAAc,MAAM,QACpBU,EAAa,QAAQ,WACjB,QAAQ,WACR,UAAY,CACV,OAAO,IACnB,EACIF,EAAQ,CACN,yBAA0B,SAAUG,EAAmB,CACrD,OAAOA,EAAiB,CAChC,GAEI,IAAIvB,EACAG,EAAyB,CAAA,EACzBqB,EAAyBJ,EAAM,yBAAyB,KAC1DA,EACA5B,CACN,EAAK,EACGiC,EAAwBH,EAAWnC,EAAYK,CAAY,CAAC,EAC5DwB,EAAwB,CAAA,EAC5BU,EAAA,SAAmBnE,EACnBmE,EAAA,IAAc,SAAUjE,EAAMC,EAAQC,EAAU,CAC9C,IAAIgE,EACF,IAAMpC,EAAqB,6BAC7B,OAAOkB,EACLhD,EACAC,EACAC,EACA,GACAgE,EACI,MAAM,uBAAuB,EAC7BH,EACJG,EAAmBL,EAAWnC,EAAY1B,CAAI,CAAC,EAAIgE,EAE3D,EACIC,EAAA,KAAe,SAAUjE,EAAMC,EAAQC,EAAU,CAC/C,IAAIgE,EACF,IAAMpC,EAAqB,6BAC7B,OAAOkB,EACLhD,EACAC,EACAC,EACA,GACAgE,EACI,MAAM,uBAAuB,EAC7BH,EACJG,EAAmBL,EAAWnC,EAAY1B,CAAI,CAAC,EAAIgE,EAE3D,CACA,GAAG,2CC7VC,QAAQ,IAAI,WAAa,aAC3BG,EAAA,QAAiBP,GAAA,EAEjBO,EAAA,QAAiBC,GAAA,iECgBNC,EAAeC,EAAAA,WAG1B,CAAC,CAAE,MAAAlC,EAAO,MAAAf,EAAO,SAAAkD,EAAU,OAAAC,EAAQ,SAAAC,CAAA,EAAYC,IAAQ,CAExD,MAAMC,EAAWC,EAAAA,OAA+C,IAAI,EAC9DC,EAAcD,EAAAA,OAA4B,IAAI,EAC9CE,EAAeF,EAAAA,OAAuB,IAAI,EAC1CG,EAAWH,EAAAA,OAA4B,IAAI,EAE3C,CAACI,EAAiBC,CAAkB,EAAIC,EAAAA,SAAS,CAAE,IAAK,EAAG,OAAQ,EAAG,EACtE,CAACC,EAAgBC,CAAiB,EAAIF,EAAAA,SAAwB,IAAI,EAExEG,EAAAA,UAAU,IAAM,CACf,GAAI,CAACjD,EAAM,UAAW,OAEtB,MAAMkD,EAAQP,EAAS,QACjBQ,EAAYT,EAAa,QAC/B,GAAI,CAACQ,GAAS,CAACC,EAAW,OAE1BD,EAAM,MAAQjE,GAAS,GAEvB,MAAMmE,EAAiB,OAAO,iBAAiBD,CAAS,EAClDE,EAAa,OAAO,WAAWD,EAAe,UAAU,EACxDE,EAAgB,OAAO,WAAWF,EAAe,aAAa,EAC9DG,EAAc,OAAO,WAAWH,EAAe,WAAW,EAC1DI,EAAe,OAAO,WAAWJ,EAAe,YAAY,EAE5DK,EAAkBN,EAAU,aAAeE,EAAaC,EACxDI,EAAiBP,EAAU,YAAcI,EAAcC,EAE7DN,EAAM,MAAM,MAAQ,GAAGQ,CAAc,KACrCR,EAAM,MAAM,WAAa,MACzBA,EAAM,MAAM,cAAgB,MAE5B,MAAMS,EAAgBT,EAAM,aAI5B,GAFAF,EAAkBS,CAAe,EAE7BE,EAAgBF,EAAiB,CACpC,MAAMG,EAAiBH,EAAkBE,EAEzC,OAAQ3D,EAAM,WAAA,CACb,KAAK6D,EAAAA,cAAc,IAClBhB,EAAmB,CAAE,IAAK,EAAG,OAAQe,EAAgB,EACrD,MACD,KAAKC,EAAAA,cAAc,OAClBhB,EAAmB,CAAE,IAAKe,EAAgB,OAAQ,EAAG,EACrD,MACD,QACCf,EAAmB,CAClB,IAAKe,EAAiB,EACtB,OAAQA,EAAiB,CAAA,CACzB,EACD,KAAA,CAEH,MACCf,EAAmB,CAAE,IAAK,EAAG,OAAQ,EAAG,CAE1C,EAAG,CAAC7C,EAAOf,CAAK,CAAC,EAEjB6E,EAAAA,oBACCxB,EACA,KAAO,CACN,MAAO,IAAM,QACZyB,EAAAxB,EAAS,UAAT,MAAAwB,EAAkB,OACnB,CAAA,GAED,CAAA,CAAC,EAGF,MAAMX,EAAiBY,EAAAA,QAAQ,IAAqB,CACnD,MAAMC,EAAqB,CAC1B,MAAO,OACP,OAAQ,OACR,QAAS,OACT,UAAW,aACX,SAAU,QAAA,EAGX,OAAQjE,EAAM,eAAA,CACb,KAAKkE,EAAAA,gBAAgB,OACpBD,EAAI,eAAiB,SACrB,MACD,KAAKC,EAAAA,gBAAgB,MACpBD,EAAI,eAAiB,WACrB,MACD,QACCA,EAAI,eAAiB,aACrB,KAAA,CAGF,OAAQjE,EAAM,WAAA,CACb,KAAK6D,EAAAA,cAAc,IAClBI,EAAI,WAAa,aACjB,MACD,KAAKJ,EAAAA,cAAc,OAClBI,EAAI,WAAa,WACjB,MACD,QACCA,EAAI,WAAa,SACjB,KAAA,CAGF,GAAIjE,EAAM,aACLA,EAAM,MAAKiE,EAAI,WAAaE,EAAAA,KAAK,QAAQnE,EAAM,GAAG,GAClDA,EAAM,QAAOiE,EAAI,aAAeE,EAAAA,KAAK,QAAQnE,EAAM,KAAK,GACxDA,EAAM,SAAQiE,EAAI,cAAgBE,EAAAA,KAAK,QAAQnE,EAAM,MAAM,GAC3DA,EAAM,OAAMiE,EAAI,YAAcE,EAAAA,KAAK,QAAQnE,EAAM,IAAI,WAC/CA,EAAM,IAAK,CACrB,MAAMoE,EAAID,EAAAA,KAAK,QAAQnE,EAAM,GAAG,EAChCiE,EAAI,QAAU,GAAGG,CAAC,IACnB,CAEA,OAAOH,CACR,EAAG,CAACjE,CAAK,CAAC,EAEJqE,EAAaL,EAAAA,QAAQ,IAAqB,CAC/C,MAAMC,EAAqB,CAC1B,WAAY,cACZ,OAAQ,OACR,QAAS,OACT,OAAQ,OACR,QAAS,EACT,OAAQ,EACR,MAAO,OACP,UAAW,aACX,WAAY,UACZ,MAAO,SAAA,EAGJjE,EAAM,WACTiE,EAAI,SAAW,GAAGE,EAAAA,KAAK,QAAQnE,EAAM,QAAQ,CAAC,MAG3CA,EAAM,aAAYiE,EAAI,WAAajE,EAAM,YACzCA,EAAM,QAAOiE,EAAI,MAAQjE,EAAM,OAEnCiE,EAAI,WAAajE,EAAM,WAAa,OAAS,SAC7CiE,EAAI,UAAYjE,EAAM,OAAS,SAAW,SAE1C,MAAMsE,EAAwB,CAAA,EAQ9B,OAPItE,EAAM,WAAWsE,EAAY,KAAK,WAAW,EAC7CtE,EAAM,aAAasE,EAAY,KAAK,cAAc,EACtDL,EAAI,eACHK,EAAY,OAAS,EAAIA,EAAY,KAAK,GAAG,EAAI,OAE9CtE,EAAM,aAAYiE,EAAI,WAAajE,EAAM,YAErCA,EAAM,eAAA,CACb,KAAKkE,EAAAA,gBAAgB,OACpBD,EAAI,UAAY,SAChB,MACD,KAAKC,EAAAA,gBAAgB,MACpBD,EAAI,UAAY,QAChB,MACD,QACCA,EAAI,UAAY,OAChB,KAAA,CAGF,OAAOA,CACR,EAAG,CAACjE,CAAK,CAAC,EAEJuE,EAAaP,EAAAA,QAAQ,KACnB,CACN,GAAGK,EACH,SAAU,WACV,IAAK,EACL,KAAM,EACN,MAAO,OACP,OAAQ,OACR,WAAY,SACZ,cAAe,OACf,SAAU,SACV,WAAY,WACZ,SAAU,aACV,aAAc,aACd,QAAS,EACT,OAAQ,OACR,UAAW,aACX,OAAQ,MAAA,GAEP,CAACA,CAAU,CAAC,EAETG,EACLC,GACI,CACJtC,EAASsC,EAAE,OAAO,KAAK,CACxB,EAEMC,EAAa,IAAM,CACxBtC,GAAA,MAAAA,EAASnD,EACV,EAEM0F,EAAa,CAACtC,EAEpB,GAAIrC,EAAM,UAAW,CACpB,MAAM4E,EAA+B,CACpC,GAAGP,EACH,OAAQ,OACR,SAAU,OACV,OAAQtB,IAAmB,KAAO,GAAGA,CAAc,KAAO,OAC1D,WAAY,GAAGH,EAAgB,GAAG,KAClC,cAAe,GAAGA,EAAgB,MAAM,IAAA,EAcnCiC,EAAgB,CACrB,IANwBC,GAAmC,CAC3DrC,EAAY,QAAUqC,EACtBvC,EAAS,QAAUuC,CACpB,EAIC,MAAO7F,GAAS,GAChB,SAbAwF,GACI,CACJD,EAAaC,CAAC,CACf,EAWC,OAAQC,EACR,MAAOE,EACP,YAAa5E,EAAM,YACnB,SAAU,CAAC2E,EACX,SAAUA,EAAa,EAAI,EAAA,EAG5B,OACCI,EAAAA,KAAC,MAAA,CAAI,IAAKrC,EAAc,MAAOU,EAC9B,SAAA,CAAA4B,EAAAA,IAAC,WAAA,CACA,IAAKrC,EACL,UAAWsC,GAAO,MAClB,MAAOV,EACP,cAAY,OACZ,SAAQ,GACR,SAAU,GACV,KAAM,EACN,MAAOtF,GAAS,EAAA,CAAA,EAEjB+F,MAAC,WAAA,CAAU,GAAGH,CAAA,CAAe,CAAA,EAC9B,CAEF,CAEA,MAAMK,EAAiC,CACtC,GAAGb,EACH,OAAQ,MAAA,EAGHc,EAAmB,CACxB,IAAK5C,EACL,MAAOtD,GAAS,GAChB,SAAUuF,EACV,OAAQE,EACR,MAAOQ,EACP,YAAalF,EAAM,YACnB,SAAU,CAAC2E,EACX,SAAUA,EAAa,EAAI,EAAA,EAG5B,OACCK,EAAAA,IAAC,MAAA,CAAI,MAAO5B,EACX,SAAA4B,EAAAA,IAAC,SAAM,KAAK,OAAQ,GAAGG,CAAA,CAAkB,CAAA,CAC1C,CAEF,CAAC,EAEDlD,EAAa,YAAc,eClRpB,SAASmD,GACfC,EAA6CC,sBACT,CACpC,MAAO,CACN,KAAM,OAEN,KAAM,CACL,YAAa,OACb,YAAa,iBACb,YAAa,CAAE,EAAG,EAAG,EAAG,CAAA,CAAE,EAG3B,SAAUrD,EAEV,WAAY,CACX,GAAGsD,EAAAA,oBACH,GAAGC,EAAAA,sBACH,GAAGC,EAAAA,oBACH,GAAGC,EAAAA,oBACH,GAAGC,EAAAA,qBAEH,WAAY,CACX,aAAc,aACd,MAAO,OACP,MAAO,OACP,UAAWC,EAAAA,OACX,OAAQ,CACP,YAAa,UACb,QAASP,CAAA,CACV,CACD,EAID,cAAgBrF,GAGRA,EAIR,cAAgBf,GACX,OAAOA,GAAU,SAAiBA,EAClC,OAAOA,GAAU,SAAiB,OAAOA,CAAK,EAC3C,IACR,CAEF,CAEO,MAAM4G,GAAgDT,GAAA","x_google_ignoreList":[0,1,2]}
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { VerticalAlign as L, HorizontalAlign as W, toPx as S, DEFAULT_FONT_FAMILY as le, Select as se, validationDefinition as ce, multilineDefinition as ue, fontStyleDefinition as fe, placeholderDefinition as de, universalProperties as me } from "@tatamicks/core";
2
- import be, { forwardRef as ge, useRef as H, useState as te, useEffect as he, useImperativeHandle as xe, useMemo as X } from "react";
2
+ import ge, { forwardRef as be, useRef as H, useState as te, useEffect as he, useImperativeHandle as xe, useMemo as X } from "react";
3
3
  var M = { exports: {} }, N = {};
4
4
  /**
5
5
  * @license React
@@ -15,12 +15,12 @@ function pe() {
15
15
  if (re) return N;
16
16
  re = 1;
17
17
  var t = Symbol.for("react.transitional.element"), l = Symbol.for("react.fragment");
18
- function b(f, c, u) {
18
+ function g(f, c, u) {
19
19
  var d = null;
20
20
  if (u !== void 0 && (d = "" + u), c.key !== void 0 && (d = "" + c.key), "key" in c) {
21
21
  u = {};
22
- for (var g in c)
23
- g !== "key" && (u[g] = c[g]);
22
+ for (var b in c)
23
+ b !== "key" && (u[b] = c[b]);
24
24
  } else u = c;
25
25
  return c = u.ref, {
26
26
  $$typeof: t,
@@ -30,7 +30,7 @@ function pe() {
30
30
  props: u
31
31
  };
32
32
  }
33
- return N.Fragment = l, N.jsx = b, N.jsxs = b, N;
33
+ return N.Fragment = l, N.jsx = g, N.jsxs = g, N;
34
34
  }
35
35
  var C = {};
36
36
  /**
@@ -68,7 +68,7 @@ function Re() {
68
68
  switch (typeof e.tag == "number" && console.error(
69
69
  "Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."
70
70
  ), e.$$typeof) {
71
- case _:
71
+ case E:
72
72
  return "Portal";
73
73
  case U:
74
74
  return e.displayName || "Context";
@@ -91,7 +91,7 @@ function Re() {
91
91
  function l(e) {
92
92
  return "" + e;
93
93
  }
94
- function b(e) {
94
+ function g(e) {
95
95
  try {
96
96
  l(e);
97
97
  var n = !1;
@@ -100,11 +100,11 @@ function Re() {
100
100
  }
101
101
  if (n) {
102
102
  n = console;
103
- var a = n.error, o = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
104
- return a.call(
103
+ var o = n.error, a = typeof Symbol == "function" && Symbol.toStringTag && e[Symbol.toStringTag] || e.constructor.name || "Object";
104
+ return o.call(
105
105
  n,
106
106
  "The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",
107
- o
107
+ a
108
108
  ), l(e);
109
109
  }
110
110
  }
@@ -133,15 +133,15 @@ function Re() {
133
133
  }
134
134
  return e.key !== void 0;
135
135
  }
136
- function g(e, n) {
137
- function a() {
136
+ function b(e, n) {
137
+ function o() {
138
138
  R || (R = !0, console.error(
139
139
  "%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",
140
140
  n
141
141
  ));
142
142
  }
143
- a.isReactWarning = !0, Object.defineProperty(e, "key", {
144
- get: a,
143
+ o.isReactWarning = !0, Object.defineProperty(e, "key", {
144
+ get: o,
145
145
  configurable: !0
146
146
  });
147
147
  }
@@ -151,14 +151,14 @@ function Re() {
151
151
  "Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release."
152
152
  )), e = this.props.ref, e !== void 0 ? e : null;
153
153
  }
154
- function D(e, n, a, o, z, B) {
155
- var i = a.ref;
154
+ function D(e, n, o, a, z, B) {
155
+ var i = o.ref;
156
156
  return e = {
157
157
  $$typeof: P,
158
158
  type: e,
159
159
  key: n,
160
- props: a,
161
- _owner: o
160
+ props: o,
161
+ _owner: a
162
162
  }, (i !== void 0 ? i : null) !== null ? Object.defineProperty(e, "ref", {
163
163
  enumerable: !1,
164
164
  get: F
@@ -184,13 +184,13 @@ function Re() {
184
184
  value: B
185
185
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
186
186
  }
187
- function w(e, n, a, o, z, B) {
187
+ function w(e, n, o, a, z, B) {
188
188
  var i = n.children;
189
189
  if (i !== void 0)
190
- if (o)
190
+ if (a)
191
191
  if (J(i)) {
192
- for (o = 0; o < i.length; o++)
193
- h(i[o]);
192
+ for (a = 0; a < i.length; a++)
193
+ h(i[a]);
194
194
  Object.freeze && Object.freeze(i);
195
195
  } else
196
196
  console.error(
@@ -202,31 +202,31 @@ function Re() {
202
202
  var k = Object.keys(n).filter(function(ie) {
203
203
  return ie !== "key";
204
204
  });
205
- o = 0 < k.length ? "{key: someKey, " + k.join(": ..., ") + ": ...}" : "{key: someKey}", ee[i + o] || (k = 0 < k.length ? "{" + k.join(": ..., ") + ": ...}" : "{}", console.error(
205
+ a = 0 < k.length ? "{key: someKey, " + k.join(": ..., ") + ": ...}" : "{key: someKey}", ee[i + a] || (k = 0 < k.length ? "{" + k.join(": ..., ") + ": ...}" : "{}", console.error(
206
206
  `A props object containing a "key" prop is being spread into JSX:
207
207
  let props = %s;
208
208
  <%s {...props} />
209
209
  React keys must be passed directly to JSX without using spread:
210
210
  let props = %s;
211
211
  <%s key={someKey} {...props} />`,
212
- o,
212
+ a,
213
213
  i,
214
214
  k,
215
215
  i
216
- ), ee[i + o] = !0);
216
+ ), ee[i + a] = !0);
217
217
  }
218
- if (i = null, a !== void 0 && (b(a), i = "" + a), d(n) && (b(n.key), i = "" + n.key), "key" in n) {
219
- a = {};
218
+ if (i = null, o !== void 0 && (g(o), i = "" + o), d(n) && (g(n.key), i = "" + n.key), "key" in n) {
219
+ o = {};
220
220
  for (var G in n)
221
- G !== "key" && (a[G] = n[G]);
222
- } else a = n;
223
- return i && g(
224
- a,
221
+ G !== "key" && (o[G] = n[G]);
222
+ } else o = n;
223
+ return i && b(
224
+ o,
225
225
  typeof e == "function" ? e.displayName || e.name || "Unknown" : e
226
226
  ), D(
227
227
  e,
228
228
  i,
229
- a,
229
+ o,
230
230
  c(),
231
231
  z,
232
232
  B
@@ -238,48 +238,50 @@ React keys must be passed directly to JSX without using spread:
238
238
  function A(e) {
239
239
  return typeof e == "object" && e !== null && e.$$typeof === P;
240
240
  }
241
- var E = be, P = Symbol.for("react.transitional.element"), _ = Symbol.for("react.portal"), O = Symbol.for("react.fragment"), $ = Symbol.for("react.strict_mode"), Y = Symbol.for("react.profiler"), v = Symbol.for("react.consumer"), U = Symbol.for("react.context"), V = Symbol.for("react.forward_ref"), r = Symbol.for("react.suspense"), s = Symbol.for("react.suspense_list"), x = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), m = Symbol.for("react.activity"), q = Symbol.for("react.client.reference"), j = E.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, T = Object.prototype.hasOwnProperty, J = Array.isArray, y = console.createTask ? console.createTask : function() {
241
+ var _ = ge, P = Symbol.for("react.transitional.element"), E = Symbol.for("react.portal"), O = Symbol.for("react.fragment"), $ = Symbol.for("react.strict_mode"), Y = Symbol.for("react.profiler"), v = Symbol.for("react.consumer"), U = Symbol.for("react.context"), V = Symbol.for("react.forward_ref"), r = Symbol.for("react.suspense"), s = Symbol.for("react.suspense_list"), x = Symbol.for("react.memo"), p = Symbol.for("react.lazy"), m = Symbol.for("react.activity"), q = Symbol.for("react.client.reference"), j = _.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, T = Object.prototype.hasOwnProperty, J = Array.isArray, y = console.createTask ? console.createTask : function() {
242
242
  return null;
243
243
  };
244
- E = {
244
+ _ = {
245
245
  react_stack_bottom_frame: function(e) {
246
246
  return e();
247
247
  }
248
248
  };
249
- var R, Z = {}, Q = E.react_stack_bottom_frame.bind(
250
- E,
249
+ var R, Z = {}, Q = _.react_stack_bottom_frame.bind(
250
+ _,
251
251
  u
252
252
  )(), K = y(f(u)), ee = {};
253
- C.Fragment = O, C.jsx = function(e, n, a) {
254
- var o = 1e4 > j.recentlyCreatedOwnerStacks++;
253
+ C.Fragment = O, C.jsx = function(e, n, o) {
254
+ var a = 1e4 > j.recentlyCreatedOwnerStacks++;
255
255
  return w(
256
256
  e,
257
257
  n,
258
- a,
258
+ o,
259
259
  !1,
260
- o ? Error("react-stack-top-frame") : Q,
261
- o ? y(f(e)) : K
260
+ a ? Error("react-stack-top-frame") : Q,
261
+ a ? y(f(e)) : K
262
262
  );
263
- }, C.jsxs = function(e, n, a) {
264
- var o = 1e4 > j.recentlyCreatedOwnerStacks++;
263
+ }, C.jsxs = function(e, n, o) {
264
+ var a = 1e4 > j.recentlyCreatedOwnerStacks++;
265
265
  return w(
266
266
  e,
267
267
  n,
268
- a,
268
+ o,
269
269
  !0,
270
- o ? Error("react-stack-top-frame") : Q,
271
- o ? y(f(e)) : K
270
+ a ? Error("react-stack-top-frame") : Q,
271
+ a ? y(f(e)) : K
272
272
  );
273
273
  };
274
274
  })()), C;
275
275
  }
276
- var ae;
277
- function Ee() {
278
- return ae || (ae = 1, process.env.NODE_ENV === "production" ? M.exports = pe() : M.exports = Re()), M.exports;
276
+ var oe;
277
+ function _e() {
278
+ return oe || (oe = 1, process.env.NODE_ENV === "production" ? M.exports = pe() : M.exports = Re()), M.exports;
279
279
  }
280
- var I = Ee();
281
- const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) => {
282
- const d = H(null), g = H(null), F = H(null), D = H(null), [w, h] = te({ top: 0, bottom: 0 }), [A, E] = te(null);
280
+ var I = _e();
281
+ const Ee = "_ghost_tf9uv_15", ve = {
282
+ ghost: Ee
283
+ }, ae = be(({ props: t, value: l, onChange: g, onBlur: f, readOnly: c }, u) => {
284
+ const d = H(null), b = H(null), F = H(null), D = H(null), [w, h] = te({ top: 0, bottom: 0 }), [A, _] = te(null);
283
285
  he(() => {
284
286
  if (!t.multiline) return;
285
287
  const r = D.current, s = F.current;
@@ -288,7 +290,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
288
290
  const x = window.getComputedStyle(s), p = Number.parseFloat(x.paddingTop), m = Number.parseFloat(x.paddingBottom), q = Number.parseFloat(x.paddingLeft), j = Number.parseFloat(x.paddingRight), T = s.clientHeight - p - m, J = s.clientWidth - q - j;
289
291
  r.style.width = `${J}px`, r.style.paddingTop = "0px", r.style.paddingBottom = "0px";
290
292
  const y = r.scrollHeight;
291
- if (E(T), y < T) {
293
+ if (_(T), y < T) {
292
294
  const R = T - y;
293
295
  switch (t.alignItems) {
294
296
  case L.top:
@@ -353,7 +355,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
353
355
  r.padding = `${s}px`;
354
356
  }
355
357
  return r;
356
- }, [t]), _ = X(() => {
358
+ }, [t]), E = X(() => {
357
359
  const r = {
358
360
  background: "transparent",
359
361
  border: "none",
@@ -381,7 +383,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
381
383
  }
382
384
  return r;
383
385
  }, [t]), O = X(() => ({
384
- ..._,
386
+ ...E,
385
387
  position: "absolute",
386
388
  top: 0,
387
389
  left: 0,
@@ -397,14 +399,14 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
397
399
  border: "none",
398
400
  boxSizing: "border-box",
399
401
  resize: "none"
400
- }), [_]), $ = (r) => {
401
- b(r.target.value);
402
+ }), [E]), $ = (r) => {
403
+ g(r.target.value);
402
404
  }, Y = () => {
403
405
  f == null || f(l);
404
406
  }, v = !c;
405
407
  if (t.multiline) {
406
408
  const r = {
407
- ..._,
409
+ ...E,
408
410
  resize: "none",
409
411
  overflow: "auto",
410
412
  height: A !== null ? `${A}px` : "100%",
@@ -412,7 +414,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
412
414
  paddingBottom: `${w.bottom}px`
413
415
  }, p = {
414
416
  ref: (m) => {
415
- g.current = m, d.current = m;
417
+ b.current = m, d.current = m;
416
418
  },
417
419
  value: l ?? "",
418
420
  onChange: (m) => {
@@ -429,6 +431,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
429
431
  "textarea",
430
432
  {
431
433
  ref: D,
434
+ className: ve.ghost,
432
435
  style: O,
433
436
  "aria-hidden": "true",
434
437
  readOnly: !0,
@@ -441,7 +444,7 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
441
444
  ] });
442
445
  }
443
446
  const U = {
444
- ..._,
447
+ ...E,
445
448
  height: "100%"
446
449
  }, V = {
447
450
  ref: d,
@@ -455,8 +458,8 @@ const oe = ge(({ props: t, value: l, onChange: b, onBlur: f, readOnly: c }, u) =
455
458
  };
456
459
  return /* @__PURE__ */ I.jsx("div", { style: P, children: /* @__PURE__ */ I.jsx("input", { type: "text", ...V }) });
457
460
  });
458
- oe.displayName = "TextRenderer";
459
- function _e(t = le) {
461
+ ae.displayName = "TextRenderer";
462
+ function Te(t = le) {
460
463
  return {
461
464
  kind: "text",
462
465
  meta: {
@@ -465,7 +468,7 @@ function _e(t = le) {
465
468
  defaultSize: { w: 4, h: 2 }
466
469
  // デフォルトサイズ
467
470
  },
468
- Renderer: oe,
471
+ Renderer: ae,
469
472
  properties: {
470
473
  ...me,
471
474
  ...de,
@@ -489,10 +492,10 @@ function _e(t = le) {
489
492
  validateValue: (l) => typeof l == "string" ? l : typeof l == "number" ? String(l) : null
490
493
  };
491
494
  }
492
- const ye = _e();
495
+ const Se = Te();
493
496
  export {
494
- ye as TextPlugin,
495
- oe as TextRenderer,
496
- _e as createTextPlugin
497
+ Se as TextPlugin,
498
+ ae as TextRenderer,
499
+ Te as createTextPlugin
497
500
  };
498
501
  //# sourceMappingURL=index.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/TextRenderer.tsx","../src/TextPlugin.ts"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport type { TextProps, TextValue } from \"./types\";\nimport \"./TextRenderer.module.css\";\n\nexport const TextRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<TextProps, TextValue>\n>(({ props, value, onChange, onBlur, readOnly }, ref) => {\n\t// 入力要素への参照\n\tconst inputRef = useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\tconst textareaRef = useRef<HTMLTextAreaElement>(null);\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst ghostRef = useRef<HTMLTextAreaElement>(null);\n\n\tconst [textareaPadding, setTextareaPadding] = useState({ top: 0, bottom: 0 });\n\tconst [textareaHeight, setTextareaHeight] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!props.multiline) return;\n\n\t\tconst ghost = ghostRef.current;\n\t\tconst container = containerRef.current;\n\t\tif (!ghost || !container) return;\n\n\t\tghost.value = value ?? \"\";\n\n\t\tconst containerStyle = window.getComputedStyle(container);\n\t\tconst paddingTop = Number.parseFloat(containerStyle.paddingTop);\n\t\tconst paddingBottom = Number.parseFloat(containerStyle.paddingBottom);\n\t\tconst paddingLeft = Number.parseFloat(containerStyle.paddingLeft);\n\t\tconst paddingRight = Number.parseFloat(containerStyle.paddingRight);\n\n\t\tconst containerHeight = container.clientHeight - paddingTop - paddingBottom;\n\t\tconst availableWidth = container.clientWidth - paddingLeft - paddingRight;\n\n\t\tghost.style.width = `${availableWidth}px`;\n\t\tghost.style.paddingTop = \"0px\";\n\t\tghost.style.paddingBottom = \"0px\";\n\n\t\tconst contentHeight = ghost.scrollHeight;\n\n\t\tsetTextareaHeight(containerHeight);\n\n\t\tif (contentHeight < containerHeight) {\n\t\t\tconst availableSpace = containerHeight - contentHeight;\n\n\t\t\tswitch (props.alignItems) {\n\t\t\t\tcase VerticalAlign.top:\n\t\t\t\t\tsetTextareaPadding({ top: 0, bottom: availableSpace });\n\t\t\t\t\tbreak;\n\t\t\t\tcase VerticalAlign.bottom:\n\t\t\t\t\tsetTextareaPadding({ top: availableSpace, bottom: 0 });\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tsetTextareaPadding({\n\t\t\t\t\t\ttop: availableSpace / 2,\n\t\t\t\t\t\tbottom: availableSpace / 2,\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} else {\n\t\t\tsetTextareaPadding({ top: 0, bottom: 0 });\n\t\t}\n\t}, [props, value]);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tinputRef.current?.focus();\n\t\t\t},\n\t\t}),\n\t\t[],\n\t);\n\n\tconst containerStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tdisplay: \"flex\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\toverflow: \"hidden\",\n\t\t};\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.justifyContent = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.justifyContent = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.justifyContent = \"flex-start\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (props.alignItems) {\n\t\t\tcase VerticalAlign.top:\n\t\t\t\tcss.alignItems = \"flex-start\";\n\t\t\t\tbreak;\n\t\t\tcase VerticalAlign.bottom:\n\t\t\t\tcss.alignItems = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.alignItems = \"center\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (props.isIndividual) {\n\t\t\tif (props.top) css.paddingTop = toPx.fromDim(props.top);\n\t\t\tif (props.right) css.paddingRight = toPx.fromDim(props.right);\n\t\t\tif (props.bottom) css.paddingBottom = toPx.fromDim(props.bottom);\n\t\t\tif (props.left) css.paddingLeft = toPx.fromDim(props.left);\n\t\t} else if (props.all) {\n\t\t\tconst p = toPx.fromDim(props.all);\n\t\t\tcss.padding = `${p}px`;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst inputStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\",\n\t\t\toutline: \"none\",\n\t\t\tresize: \"none\",\n\t\t\tpadding: 0,\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"inherit\",\n\t\t};\n\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = `${toPx.fromDim(props.fontSize)}px`;\n\t\t}\n\n\t\tif (props.fontFamily) css.fontFamily = props.fontFamily;\n\t\tif (props.color) css.color = props.color;\n\n\t\tcss.fontWeight = props.fontWeight ? \"bold\" : \"normal\";\n\t\tcss.fontStyle = props.italic ? \"italic\" : \"normal\";\n\n\t\tconst decorations: string[] = [];\n\t\tif (props.underline) decorations.push(\"underline\");\n\t\tif (props.lineThrough) decorations.push(\"line-through\");\n\t\tcss.textDecoration =\n\t\t\tdecorations.length > 0 ? decorations.join(\" \") : \"none\";\n\n\t\tif (props.lineHeight) css.lineHeight = props.lineHeight;\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.textAlign = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.textAlign = \"right\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.textAlign = \"left\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst ghostStyle = useMemo((): CSSProperties => {\n\t\treturn {\n\t\t\t...inputStyle,\n\t\t\tposition: \"absolute\",\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"auto\",\n\t\t\tvisibility: \"hidden\",\n\t\t\tpointerEvents: \"none\",\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"pre-wrap\",\n\t\t\twordWrap: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t\tpadding: 0,\n\t\t\tborder: \"none\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tresize: \"none\",\n\t\t};\n\t}, [inputStyle]);\n\n\tconst handleChange = (\n\t\te: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n\t) => {\n\t\tonChange(e.target.value);\n\t};\n\n\tconst handleBlur = () => {\n\t\tonBlur?.(value);\n\t};\n\n\tconst isEditable = !readOnly;\n\n\tif (props.multiline) {\n\t\tconst textareaStyle: CSSProperties = {\n\t\t\t...inputStyle,\n\t\t\tresize: \"none\",\n\t\t\toverflow: \"auto\",\n\t\t\theight: textareaHeight !== null ? `${textareaHeight}px` : \"100%\",\n\t\t\tpaddingTop: `${textareaPadding.top}px`,\n\t\t\tpaddingBottom: `${textareaPadding.bottom}px`,\n\t\t};\n\n\t\tconst handleTextareaChange = (\n\t\t\te: React.ChangeEvent<HTMLTextAreaElement>,\n\t\t) => {\n\t\t\thandleChange(e);\n\t\t};\n\n\t\tconst setTextareaRefs = (el: HTMLTextAreaElement | null) => {\n\t\t\ttextareaRef.current = el;\n\t\t\tinputRef.current = el;\n\t\t};\n\n\t\tconst textareaProps = {\n\t\t\tref: setTextareaRefs,\n\t\t\tvalue: value ?? \"\",\n\t\t\tonChange: handleTextareaChange,\n\t\t\tonBlur: handleBlur,\n\t\t\tstyle: textareaStyle,\n\t\t\tplaceholder: props.placeholder,\n\t\t\treadOnly: !isEditable,\n\t\t\ttabIndex: isEditable ? 0 : -1,\n\t\t};\n\n\t\treturn (\n\t\t\t<div ref={containerRef} style={containerStyle}>\n\t\t\t\t<textarea\n\t\t\t\t\tref={ghostRef}\n\t\t\t\t\tstyle={ghostStyle}\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\treadOnly\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\trows={1}\n\t\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\t/>\n\t\t\t\t<textarea {...textareaProps} />\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst singleLineStyle: CSSProperties = {\n\t\t...inputStyle,\n\t\theight: \"100%\",\n\t};\n\n\tconst commonInputProps = {\n\t\tref: inputRef as React.RefObject<HTMLInputElement>,\n\t\tvalue: value ?? \"\",\n\t\tonChange: handleChange,\n\t\tonBlur: handleBlur,\n\t\tstyle: singleLineStyle,\n\t\tplaceholder: props.placeholder,\n\t\treadOnly: !isEditable,\n\t\ttabIndex: isEditable ? 0 : -1,\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<input type=\"text\" {...commonInputProps} />\n\t\t</div>\n\t);\n});\n\nTextRenderer.displayName = \"TextRenderer\";\n","import {\n\ttype BlockPlugin,\n\tDEFAULT_FONT_FAMILY,\n\tfontStyleDefinition,\n\tmultilineDefinition,\n\tplaceholderDefinition,\n\tSelect,\n\ttype SelectOption,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { TextRenderer } from \"./TextRenderer\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport function createTextPlugin(\n\tfontFamilyOptions: readonly SelectOption[] = DEFAULT_FONT_FAMILY,\n): BlockPlugin<TextProps, TextValue> {\n\treturn {\n\t\tkind: \"text\",\n\n\t\tmeta: {\n\t\t\tdisplayName: \"テキスト\",\n\t\t\tdescription: \"リッチなテキスト編集ブロック\",\n\t\t\tdefaultSize: { w: 4, h: 2 }, // デフォルトサイズ\n\t\t},\n\n\t\tRenderer: TextRenderer,\n\n\t\tproperties: {\n\t\t\t...universalProperties,\n\t\t\t...placeholderDefinition,\n\t\t\t...fontStyleDefinition,\n\t\t\t...multilineDefinition,\n\t\t\t...validationDefinition,\n\n\t\t\tfontFamily: {\n\t\t\t\tdefaultValue: \"sans-serif\",\n\t\t\t\tlabel: \"フォント\",\n\t\t\t\tgroup: \"フォント\",\n\t\t\t\tComponent: Select,\n\t\t\t\tconfig: {\n\t\t\t\t\tplaceholder: \"フォントを選択\",\n\t\t\t\t\toptions: fontFamilyOptions,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\t// バリデーション (Propsの型チェックと初期化)\n\t\tvalidateProps: (props: unknown): TextProps => {\n\t\t\t// createInitialPropsを通すので、基本的にはキャストでOKですが、\n\t\t\t// 必要に応じて厳密なチェックを行います\n\t\t\treturn props as TextProps;\n\t\t},\n\n\t\t// 値のバリデーション\n\t\tvalidateValue: (value: unknown): TextValue | null => {\n\t\t\tif (typeof value === \"string\") return value;\n\t\t\tif (typeof value === \"number\") return String(value);\n\t\t\treturn null;\n\t\t},\n\t};\n}\n\nexport const TextPlugin: BlockPlugin<TextProps, TextValue> = createTextPlugin();\n"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","getComponentNameFromType","REACT_CLIENT_REFERENCE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_ACTIVITY_TYPE","REACT_PORTAL_TYPE","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","REACT_FORWARD_REF_TYPE","innerType","REACT_MEMO_TYPE","REACT_LAZY_TYPE","testStringCoercion","value","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","getTaskName","name","getOwner","dispatcher","ReactSharedInternals","UnknownOwner","hasValidKey","hasOwnProperty","getter","defineKeyPropWarningGetter","props","displayName","warnAboutAccessingKey","specialPropKeyWarningShown","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","ReactElement","owner","debugStack","debugTask","refProp","jsxDEVImpl","isStaticChildren","children","isArrayImpl","validateChildKeys","keys","k","didWarnAboutKeySpread","node","isValidElement","object","React","require$$0","createTask","callStackForError","unknownOwnerDebugStack","unknownOwnerDebugTask","reactJsxRuntime_development","trackActualOwner","jsxRuntimeModule","require$$1","TextRenderer","forwardRef","onChange","onBlur","readOnly","ref","inputRef","useRef","textareaRef","containerRef","ghostRef","textareaPadding","setTextareaPadding","useState","textareaHeight","setTextareaHeight","useEffect","ghost","container","containerStyle","paddingTop","paddingBottom","paddingLeft","paddingRight","containerHeight","availableWidth","contentHeight","availableSpace","VerticalAlign","useImperativeHandle","_a","useMemo","css","HorizontalAlign","toPx","p","inputStyle","decorations","ghostStyle","handleChange","e","handleBlur","isEditable","textareaStyle","textareaProps","el","jsxs","jsx","singleLineStyle","commonInputProps","createTextPlugin","fontFamilyOptions","DEFAULT_FONT_FAMILY","universalProperties","placeholderDefinition","fontStyleDefinition","multilineDefinition","validationDefinition","Select","TextPlugin"],"mappings":"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","x_google_ignoreList":[0,1,2]}
1
+ {"version":3,"file":"index.mjs","sources":["../../../node_modules/react/cjs/react-jsx-runtime.production.js","../../../node_modules/react/cjs/react-jsx-runtime.development.js","../../../node_modules/react/jsx-runtime.js","../src/TextRenderer.tsx","../src/TextPlugin.ts"],"sourcesContent":["/**\n * @license React\n * react-jsx-runtime.production.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\nvar REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\");\nfunction jsxProd(type, config, maybeKey) {\n var key = null;\n void 0 !== maybeKey && (key = \"\" + maybeKey);\n void 0 !== config.key && (key = \"\" + config.key);\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n config = maybeKey.ref;\n return {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n ref: void 0 !== config ? config : null,\n props: maybeKey\n };\n}\nexports.Fragment = REACT_FRAGMENT_TYPE;\nexports.jsx = jsxProd;\nexports.jsxs = jsxProd;\n","/**\n * @license React\n * react-jsx-runtime.development.js\n *\n * Copyright (c) Meta Platforms, Inc. and affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n\"use strict\";\n\"production\" !== process.env.NODE_ENV &&\n (function () {\n function getComponentNameFromType(type) {\n if (null == type) return null;\n if (\"function\" === typeof type)\n return type.$$typeof === REACT_CLIENT_REFERENCE\n ? null\n : type.displayName || type.name || null;\n if (\"string\" === typeof type) return type;\n switch (type) {\n case REACT_FRAGMENT_TYPE:\n return \"Fragment\";\n case REACT_PROFILER_TYPE:\n return \"Profiler\";\n case REACT_STRICT_MODE_TYPE:\n return \"StrictMode\";\n case REACT_SUSPENSE_TYPE:\n return \"Suspense\";\n case REACT_SUSPENSE_LIST_TYPE:\n return \"SuspenseList\";\n case REACT_ACTIVITY_TYPE:\n return \"Activity\";\n }\n if (\"object\" === typeof type)\n switch (\n (\"number\" === typeof type.tag &&\n console.error(\n \"Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue.\"\n ),\n type.$$typeof)\n ) {\n case REACT_PORTAL_TYPE:\n return \"Portal\";\n case REACT_CONTEXT_TYPE:\n return type.displayName || \"Context\";\n case REACT_CONSUMER_TYPE:\n return (type._context.displayName || \"Context\") + \".Consumer\";\n case REACT_FORWARD_REF_TYPE:\n var innerType = type.render;\n type = type.displayName;\n type ||\n ((type = innerType.displayName || innerType.name || \"\"),\n (type = \"\" !== type ? \"ForwardRef(\" + type + \")\" : \"ForwardRef\"));\n return type;\n case REACT_MEMO_TYPE:\n return (\n (innerType = type.displayName || null),\n null !== innerType\n ? innerType\n : getComponentNameFromType(type.type) || \"Memo\"\n );\n case REACT_LAZY_TYPE:\n innerType = type._payload;\n type = type._init;\n try {\n return getComponentNameFromType(type(innerType));\n } catch (x) {}\n }\n return null;\n }\n function testStringCoercion(value) {\n return \"\" + value;\n }\n function checkKeyStringCoercion(value) {\n try {\n testStringCoercion(value);\n var JSCompiler_inline_result = !1;\n } catch (e) {\n JSCompiler_inline_result = !0;\n }\n if (JSCompiler_inline_result) {\n JSCompiler_inline_result = console;\n var JSCompiler_temp_const = JSCompiler_inline_result.error;\n var JSCompiler_inline_result$jscomp$0 =\n (\"function\" === typeof Symbol &&\n Symbol.toStringTag &&\n value[Symbol.toStringTag]) ||\n value.constructor.name ||\n \"Object\";\n JSCompiler_temp_const.call(\n JSCompiler_inline_result,\n \"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.\",\n JSCompiler_inline_result$jscomp$0\n );\n return testStringCoercion(value);\n }\n }\n function getTaskName(type) {\n if (type === REACT_FRAGMENT_TYPE) return \"<>\";\n if (\n \"object\" === typeof type &&\n null !== type &&\n type.$$typeof === REACT_LAZY_TYPE\n )\n return \"<...>\";\n try {\n var name = getComponentNameFromType(type);\n return name ? \"<\" + name + \">\" : \"<...>\";\n } catch (x) {\n return \"<...>\";\n }\n }\n function getOwner() {\n var dispatcher = ReactSharedInternals.A;\n return null === dispatcher ? null : dispatcher.getOwner();\n }\n function UnknownOwner() {\n return Error(\"react-stack-top-frame\");\n }\n function hasValidKey(config) {\n if (hasOwnProperty.call(config, \"key\")) {\n var getter = Object.getOwnPropertyDescriptor(config, \"key\").get;\n if (getter && getter.isReactWarning) return !1;\n }\n return void 0 !== config.key;\n }\n function defineKeyPropWarningGetter(props, displayName) {\n function warnAboutAccessingKey() {\n specialPropKeyWarningShown ||\n ((specialPropKeyWarningShown = !0),\n console.error(\n \"%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)\",\n displayName\n ));\n }\n warnAboutAccessingKey.isReactWarning = !0;\n Object.defineProperty(props, \"key\", {\n get: warnAboutAccessingKey,\n configurable: !0\n });\n }\n function elementRefGetterWithDeprecationWarning() {\n var componentName = getComponentNameFromType(this.type);\n didWarnAboutElementRef[componentName] ||\n ((didWarnAboutElementRef[componentName] = !0),\n console.error(\n \"Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.\"\n ));\n componentName = this.props.ref;\n return void 0 !== componentName ? componentName : null;\n }\n function ReactElement(type, key, props, owner, debugStack, debugTask) {\n var refProp = props.ref;\n type = {\n $$typeof: REACT_ELEMENT_TYPE,\n type: type,\n key: key,\n props: props,\n _owner: owner\n };\n null !== (void 0 !== refProp ? refProp : null)\n ? Object.defineProperty(type, \"ref\", {\n enumerable: !1,\n get: elementRefGetterWithDeprecationWarning\n })\n : Object.defineProperty(type, \"ref\", { enumerable: !1, value: null });\n type._store = {};\n Object.defineProperty(type._store, \"validated\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: 0\n });\n Object.defineProperty(type, \"_debugInfo\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: null\n });\n Object.defineProperty(type, \"_debugStack\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugStack\n });\n Object.defineProperty(type, \"_debugTask\", {\n configurable: !1,\n enumerable: !1,\n writable: !0,\n value: debugTask\n });\n Object.freeze && (Object.freeze(type.props), Object.freeze(type));\n return type;\n }\n function jsxDEVImpl(\n type,\n config,\n maybeKey,\n isStaticChildren,\n debugStack,\n debugTask\n ) {\n var children = config.children;\n if (void 0 !== children)\n if (isStaticChildren)\n if (isArrayImpl(children)) {\n for (\n isStaticChildren = 0;\n isStaticChildren < children.length;\n isStaticChildren++\n )\n validateChildKeys(children[isStaticChildren]);\n Object.freeze && Object.freeze(children);\n } else\n console.error(\n \"React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.\"\n );\n else validateChildKeys(children);\n if (hasOwnProperty.call(config, \"key\")) {\n children = getComponentNameFromType(type);\n var keys = Object.keys(config).filter(function (k) {\n return \"key\" !== k;\n });\n isStaticChildren =\n 0 < keys.length\n ? \"{key: someKey, \" + keys.join(\": ..., \") + \": ...}\"\n : \"{key: someKey}\";\n didWarnAboutKeySpread[children + isStaticChildren] ||\n ((keys =\n 0 < keys.length ? \"{\" + keys.join(\": ..., \") + \": ...}\" : \"{}\"),\n console.error(\n 'A props object containing a \"key\" prop is being spread into JSX:\\n let props = %s;\\n <%s {...props} />\\nReact keys must be passed directly to JSX without using spread:\\n let props = %s;\\n <%s key={someKey} {...props} />',\n isStaticChildren,\n children,\n keys,\n children\n ),\n (didWarnAboutKeySpread[children + isStaticChildren] = !0));\n }\n children = null;\n void 0 !== maybeKey &&\n (checkKeyStringCoercion(maybeKey), (children = \"\" + maybeKey));\n hasValidKey(config) &&\n (checkKeyStringCoercion(config.key), (children = \"\" + config.key));\n if (\"key\" in config) {\n maybeKey = {};\n for (var propName in config)\n \"key\" !== propName && (maybeKey[propName] = config[propName]);\n } else maybeKey = config;\n children &&\n defineKeyPropWarningGetter(\n maybeKey,\n \"function\" === typeof type\n ? type.displayName || type.name || \"Unknown\"\n : type\n );\n return ReactElement(\n type,\n children,\n maybeKey,\n getOwner(),\n debugStack,\n debugTask\n );\n }\n function validateChildKeys(node) {\n isValidElement(node)\n ? node._store && (node._store.validated = 1)\n : \"object\" === typeof node &&\n null !== node &&\n node.$$typeof === REACT_LAZY_TYPE &&\n (\"fulfilled\" === node._payload.status\n ? isValidElement(node._payload.value) &&\n node._payload.value._store &&\n (node._payload.value._store.validated = 1)\n : node._store && (node._store.validated = 1));\n }\n function isValidElement(object) {\n return (\n \"object\" === typeof object &&\n null !== object &&\n object.$$typeof === REACT_ELEMENT_TYPE\n );\n }\n var React = require(\"react\"),\n REACT_ELEMENT_TYPE = Symbol.for(\"react.transitional.element\"),\n REACT_PORTAL_TYPE = Symbol.for(\"react.portal\"),\n REACT_FRAGMENT_TYPE = Symbol.for(\"react.fragment\"),\n REACT_STRICT_MODE_TYPE = Symbol.for(\"react.strict_mode\"),\n REACT_PROFILER_TYPE = Symbol.for(\"react.profiler\"),\n REACT_CONSUMER_TYPE = Symbol.for(\"react.consumer\"),\n REACT_CONTEXT_TYPE = Symbol.for(\"react.context\"),\n REACT_FORWARD_REF_TYPE = Symbol.for(\"react.forward_ref\"),\n REACT_SUSPENSE_TYPE = Symbol.for(\"react.suspense\"),\n REACT_SUSPENSE_LIST_TYPE = Symbol.for(\"react.suspense_list\"),\n REACT_MEMO_TYPE = Symbol.for(\"react.memo\"),\n REACT_LAZY_TYPE = Symbol.for(\"react.lazy\"),\n REACT_ACTIVITY_TYPE = Symbol.for(\"react.activity\"),\n REACT_CLIENT_REFERENCE = Symbol.for(\"react.client.reference\"),\n ReactSharedInternals =\n React.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,\n hasOwnProperty = Object.prototype.hasOwnProperty,\n isArrayImpl = Array.isArray,\n createTask = console.createTask\n ? console.createTask\n : function () {\n return null;\n };\n React = {\n react_stack_bottom_frame: function (callStackForError) {\n return callStackForError();\n }\n };\n var specialPropKeyWarningShown;\n var didWarnAboutElementRef = {};\n var unknownOwnerDebugStack = React.react_stack_bottom_frame.bind(\n React,\n UnknownOwner\n )();\n var unknownOwnerDebugTask = createTask(getTaskName(UnknownOwner));\n var didWarnAboutKeySpread = {};\n exports.Fragment = REACT_FRAGMENT_TYPE;\n exports.jsx = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !1,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n exports.jsxs = function (type, config, maybeKey) {\n var trackActualOwner =\n 1e4 > ReactSharedInternals.recentlyCreatedOwnerStacks++;\n return jsxDEVImpl(\n type,\n config,\n maybeKey,\n !0,\n trackActualOwner\n ? Error(\"react-stack-top-frame\")\n : unknownOwnerDebugStack,\n trackActualOwner ? createTask(getTaskName(type)) : unknownOwnerDebugTask\n );\n };\n })();\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react-jsx-runtime.production.js');\n} else {\n module.exports = require('./cjs/react-jsx-runtime.development.js');\n}\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseEffect,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n\tuseState,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport styles from \"./TextRenderer.module.css\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport const TextRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<TextProps, TextValue>\n>(({ props, value, onChange, onBlur, readOnly }, ref) => {\n\t// 入力要素への参照\n\tconst inputRef = useRef<HTMLInputElement | HTMLTextAreaElement>(null);\n\tconst textareaRef = useRef<HTMLTextAreaElement>(null);\n\tconst containerRef = useRef<HTMLDivElement>(null);\n\tconst ghostRef = useRef<HTMLTextAreaElement>(null);\n\n\tconst [textareaPadding, setTextareaPadding] = useState({ top: 0, bottom: 0 });\n\tconst [textareaHeight, setTextareaHeight] = useState<number | null>(null);\n\n\tuseEffect(() => {\n\t\tif (!props.multiline) return;\n\n\t\tconst ghost = ghostRef.current;\n\t\tconst container = containerRef.current;\n\t\tif (!ghost || !container) return;\n\n\t\tghost.value = value ?? \"\";\n\n\t\tconst containerStyle = window.getComputedStyle(container);\n\t\tconst paddingTop = Number.parseFloat(containerStyle.paddingTop);\n\t\tconst paddingBottom = Number.parseFloat(containerStyle.paddingBottom);\n\t\tconst paddingLeft = Number.parseFloat(containerStyle.paddingLeft);\n\t\tconst paddingRight = Number.parseFloat(containerStyle.paddingRight);\n\n\t\tconst containerHeight = container.clientHeight - paddingTop - paddingBottom;\n\t\tconst availableWidth = container.clientWidth - paddingLeft - paddingRight;\n\n\t\tghost.style.width = `${availableWidth}px`;\n\t\tghost.style.paddingTop = \"0px\";\n\t\tghost.style.paddingBottom = \"0px\";\n\n\t\tconst contentHeight = ghost.scrollHeight;\n\n\t\tsetTextareaHeight(containerHeight);\n\n\t\tif (contentHeight < containerHeight) {\n\t\t\tconst availableSpace = containerHeight - contentHeight;\n\n\t\t\tswitch (props.alignItems) {\n\t\t\t\tcase VerticalAlign.top:\n\t\t\t\t\tsetTextareaPadding({ top: 0, bottom: availableSpace });\n\t\t\t\t\tbreak;\n\t\t\t\tcase VerticalAlign.bottom:\n\t\t\t\t\tsetTextareaPadding({ top: availableSpace, bottom: 0 });\n\t\t\t\t\tbreak;\n\t\t\t\tdefault:\n\t\t\t\t\tsetTextareaPadding({\n\t\t\t\t\t\ttop: availableSpace / 2,\n\t\t\t\t\t\tbottom: availableSpace / 2,\n\t\t\t\t\t});\n\t\t\t\t\tbreak;\n\t\t\t}\n\t\t} else {\n\t\t\tsetTextareaPadding({ top: 0, bottom: 0 });\n\t\t}\n\t}, [props, value]);\n\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tinputRef.current?.focus();\n\t\t\t},\n\t\t}),\n\t\t[],\n\t);\n\n\tconst containerStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\twidth: \"100%\",\n\t\t\theight: \"100%\",\n\t\t\tdisplay: \"flex\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\toverflow: \"hidden\",\n\t\t};\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.justifyContent = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.justifyContent = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.justifyContent = \"flex-start\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tswitch (props.alignItems) {\n\t\t\tcase VerticalAlign.top:\n\t\t\t\tcss.alignItems = \"flex-start\";\n\t\t\t\tbreak;\n\t\t\tcase VerticalAlign.bottom:\n\t\t\t\tcss.alignItems = \"flex-end\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.alignItems = \"center\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\tif (props.isIndividual) {\n\t\t\tif (props.top) css.paddingTop = toPx.fromDim(props.top);\n\t\t\tif (props.right) css.paddingRight = toPx.fromDim(props.right);\n\t\t\tif (props.bottom) css.paddingBottom = toPx.fromDim(props.bottom);\n\t\t\tif (props.left) css.paddingLeft = toPx.fromDim(props.left);\n\t\t} else if (props.all) {\n\t\t\tconst p = toPx.fromDim(props.all);\n\t\t\tcss.padding = `${p}px`;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst inputStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\",\n\t\t\toutline: \"none\",\n\t\t\tresize: \"none\",\n\t\t\tpadding: 0,\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcolor: \"inherit\",\n\t\t};\n\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = `${toPx.fromDim(props.fontSize)}px`;\n\t\t}\n\n\t\tif (props.fontFamily) css.fontFamily = props.fontFamily;\n\t\tif (props.color) css.color = props.color;\n\n\t\tcss.fontWeight = props.fontWeight ? \"bold\" : \"normal\";\n\t\tcss.fontStyle = props.italic ? \"italic\" : \"normal\";\n\n\t\tconst decorations: string[] = [];\n\t\tif (props.underline) decorations.push(\"underline\");\n\t\tif (props.lineThrough) decorations.push(\"line-through\");\n\t\tcss.textDecoration =\n\t\t\tdecorations.length > 0 ? decorations.join(\" \") : \"none\";\n\n\t\tif (props.lineHeight) css.lineHeight = props.lineHeight;\n\n\t\tswitch (props.justifyContent) {\n\t\t\tcase HorizontalAlign.center:\n\t\t\t\tcss.textAlign = \"center\";\n\t\t\t\tbreak;\n\t\t\tcase HorizontalAlign.right:\n\t\t\t\tcss.textAlign = \"right\";\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tcss.textAlign = \"left\";\n\t\t\t\tbreak;\n\t\t}\n\n\t\treturn css;\n\t}, [props]);\n\n\tconst ghostStyle = useMemo((): CSSProperties => {\n\t\treturn {\n\t\t\t...inputStyle,\n\t\t\tposition: \"absolute\",\n\t\t\ttop: 0,\n\t\t\tleft: 0,\n\t\t\twidth: \"100%\",\n\t\t\theight: \"auto\",\n\t\t\tvisibility: \"hidden\",\n\t\t\tpointerEvents: \"none\",\n\t\t\toverflow: \"hidden\",\n\t\t\twhiteSpace: \"pre-wrap\",\n\t\t\twordWrap: \"break-word\",\n\t\t\toverflowWrap: \"break-word\",\n\t\t\tpadding: 0,\n\t\t\tborder: \"none\",\n\t\t\tboxSizing: \"border-box\",\n\t\t\tresize: \"none\",\n\t\t};\n\t}, [inputStyle]);\n\n\tconst handleChange = (\n\t\te: React.ChangeEvent<HTMLInputElement | HTMLTextAreaElement>,\n\t) => {\n\t\tonChange(e.target.value);\n\t};\n\n\tconst handleBlur = () => {\n\t\tonBlur?.(value);\n\t};\n\n\tconst isEditable = !readOnly;\n\n\tif (props.multiline) {\n\t\tconst textareaStyle: CSSProperties = {\n\t\t\t...inputStyle,\n\t\t\tresize: \"none\",\n\t\t\toverflow: \"auto\",\n\t\t\theight: textareaHeight !== null ? `${textareaHeight}px` : \"100%\",\n\t\t\tpaddingTop: `${textareaPadding.top}px`,\n\t\t\tpaddingBottom: `${textareaPadding.bottom}px`,\n\t\t};\n\n\t\tconst handleTextareaChange = (\n\t\t\te: React.ChangeEvent<HTMLTextAreaElement>,\n\t\t) => {\n\t\t\thandleChange(e);\n\t\t};\n\n\t\tconst setTextareaRefs = (el: HTMLTextAreaElement | null) => {\n\t\t\ttextareaRef.current = el;\n\t\t\tinputRef.current = el;\n\t\t};\n\n\t\tconst textareaProps = {\n\t\t\tref: setTextareaRefs,\n\t\t\tvalue: value ?? \"\",\n\t\t\tonChange: handleTextareaChange,\n\t\t\tonBlur: handleBlur,\n\t\t\tstyle: textareaStyle,\n\t\t\tplaceholder: props.placeholder,\n\t\t\treadOnly: !isEditable,\n\t\t\ttabIndex: isEditable ? 0 : -1,\n\t\t};\n\n\t\treturn (\n\t\t\t<div ref={containerRef} style={containerStyle}>\n\t\t\t\t<textarea\n\t\t\t\t\tref={ghostRef}\n\t\t\t\t\tclassName={styles.ghost}\n\t\t\t\t\tstyle={ghostStyle}\n\t\t\t\t\taria-hidden=\"true\"\n\t\t\t\t\treadOnly\n\t\t\t\t\ttabIndex={-1}\n\t\t\t\t\trows={1}\n\t\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\t/>\n\t\t\t\t<textarea {...textareaProps} />\n\t\t\t</div>\n\t\t);\n\t}\n\n\tconst singleLineStyle: CSSProperties = {\n\t\t...inputStyle,\n\t\theight: \"100%\",\n\t};\n\n\tconst commonInputProps = {\n\t\tref: inputRef as React.RefObject<HTMLInputElement>,\n\t\tvalue: value ?? \"\",\n\t\tonChange: handleChange,\n\t\tonBlur: handleBlur,\n\t\tstyle: singleLineStyle,\n\t\tplaceholder: props.placeholder,\n\t\treadOnly: !isEditable,\n\t\ttabIndex: isEditable ? 0 : -1,\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<input type=\"text\" {...commonInputProps} />\n\t\t</div>\n\t);\n});\n\nTextRenderer.displayName = \"TextRenderer\";\n","import {\n\ttype BlockPlugin,\n\tDEFAULT_FONT_FAMILY,\n\tfontStyleDefinition,\n\tmultilineDefinition,\n\tplaceholderDefinition,\n\tSelect,\n\ttype SelectOption,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { TextRenderer } from \"./TextRenderer\";\n\nimport type { TextProps, TextValue } from \"./types\";\n\nexport function createTextPlugin(\n\tfontFamilyOptions: readonly SelectOption[] = DEFAULT_FONT_FAMILY,\n): BlockPlugin<TextProps, TextValue> {\n\treturn {\n\t\tkind: \"text\",\n\n\t\tmeta: {\n\t\t\tdisplayName: \"テキスト\",\n\t\t\tdescription: \"リッチなテキスト編集ブロック\",\n\t\t\tdefaultSize: { w: 4, h: 2 }, // デフォルトサイズ\n\t\t},\n\n\t\tRenderer: TextRenderer,\n\n\t\tproperties: {\n\t\t\t...universalProperties,\n\t\t\t...placeholderDefinition,\n\t\t\t...fontStyleDefinition,\n\t\t\t...multilineDefinition,\n\t\t\t...validationDefinition,\n\n\t\t\tfontFamily: {\n\t\t\t\tdefaultValue: \"sans-serif\",\n\t\t\t\tlabel: \"フォント\",\n\t\t\t\tgroup: \"フォント\",\n\t\t\t\tComponent: Select,\n\t\t\t\tconfig: {\n\t\t\t\t\tplaceholder: \"フォントを選択\",\n\t\t\t\t\toptions: fontFamilyOptions,\n\t\t\t\t},\n\t\t\t},\n\t\t},\n\n\t\t// バリデーション (Propsの型チェックと初期化)\n\t\tvalidateProps: (props: unknown): TextProps => {\n\t\t\t// createInitialPropsを通すので、基本的にはキャストでOKですが、\n\t\t\t// 必要に応じて厳密なチェックを行います\n\t\t\treturn props as TextProps;\n\t\t},\n\n\t\t// 値のバリデーション\n\t\tvalidateValue: (value: unknown): TextValue | null => {\n\t\t\tif (typeof value === \"string\") return value;\n\t\t\tif (typeof value === \"number\") return String(value);\n\t\t\treturn null;\n\t\t},\n\t};\n}\n\nexport const TextPlugin: BlockPlugin<TextProps, TextValue> = createTextPlugin();\n"],"names":["REACT_ELEMENT_TYPE","REACT_FRAGMENT_TYPE","jsxProd","type","config","maybeKey","key","propName","reactJsxRuntime_production","getComponentNameFromType","REACT_CLIENT_REFERENCE","REACT_PROFILER_TYPE","REACT_STRICT_MODE_TYPE","REACT_SUSPENSE_TYPE","REACT_SUSPENSE_LIST_TYPE","REACT_ACTIVITY_TYPE","REACT_PORTAL_TYPE","REACT_CONTEXT_TYPE","REACT_CONSUMER_TYPE","REACT_FORWARD_REF_TYPE","innerType","REACT_MEMO_TYPE","REACT_LAZY_TYPE","testStringCoercion","value","checkKeyStringCoercion","JSCompiler_inline_result","JSCompiler_temp_const","JSCompiler_inline_result$jscomp$0","getTaskName","name","getOwner","dispatcher","ReactSharedInternals","UnknownOwner","hasValidKey","hasOwnProperty","getter","defineKeyPropWarningGetter","props","displayName","warnAboutAccessingKey","specialPropKeyWarningShown","elementRefGetterWithDeprecationWarning","componentName","didWarnAboutElementRef","ReactElement","owner","debugStack","debugTask","refProp","jsxDEVImpl","isStaticChildren","children","isArrayImpl","validateChildKeys","keys","k","didWarnAboutKeySpread","node","isValidElement","object","React","require$$0","createTask","callStackForError","unknownOwnerDebugStack","unknownOwnerDebugTask","reactJsxRuntime_development","trackActualOwner","jsxRuntimeModule","require$$1","TextRenderer","forwardRef","onChange","onBlur","readOnly","ref","inputRef","useRef","textareaRef","containerRef","ghostRef","textareaPadding","setTextareaPadding","useState","textareaHeight","setTextareaHeight","useEffect","ghost","container","containerStyle","paddingTop","paddingBottom","paddingLeft","paddingRight","containerHeight","availableWidth","contentHeight","availableSpace","VerticalAlign","useImperativeHandle","_a","useMemo","css","HorizontalAlign","toPx","p","inputStyle","decorations","ghostStyle","handleChange","e","handleBlur","isEditable","textareaStyle","textareaProps","el","jsxs","jsx","styles","singleLineStyle","commonInputProps","createTextPlugin","fontFamilyOptions","DEFAULT_FONT_FAMILY","universalProperties","placeholderDefinition","fontStyleDefinition","multilineDefinition","validationDefinition","Select","TextPlugin"],"mappings":"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","x_google_ignoreList":[0,1,2]}
@@ -1 +1 @@
1
- {"version":3,"file":"TextRenderer.d.ts","sourceRoot":"","sources":["../../src/TextRenderer.tsx"],"names":[],"mappings":"AASA,OAAO,EACN,KAAK,QAAQ,EAEb,KAAK,aAAa,EAGlB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,SAAS,CAAC;AACpD,OAAO,2BAA2B,CAAC;AAEnC,eAAO,MAAM,YAAY,uHA0QvB,CAAC"}
1
+ {"version":3,"file":"TextRenderer.d.ts","sourceRoot":"","sources":["../../src/TextRenderer.tsx"],"names":[],"mappings":"AASA,OAAO,EACN,KAAK,QAAQ,EAEb,KAAK,aAAa,EAGlB,MAAM,iBAAiB,CAAC;AAIzB,OAAO,KAAK,EAAE,SAAS,EAAa,MAAM,SAAS,CAAC;AAEpD,eAAO,MAAM,YAAY,uHA2QvB,CAAC"}
package/dist/text.css ADDED
@@ -0,0 +1 @@
1
+ [contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:#999;pointer-events:none;position:absolute}[contenteditable=false]{cursor:default}._ghost_tf9uv_15{visibility:hidden;position:absolute;pointer-events:none}@media print{._ghost_tf9uv_15{display:none}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tatamicks/text",
3
- "version": "0.1.2",
3
+ "version": "0.1.4",
4
4
  "private": false,
5
5
  "description": "Text plugin for @tatamicks/core",
6
6
  "keywords": [