@tatamicks/select 0.1.1 → 0.1.2

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/README.md CHANGED
@@ -18,7 +18,14 @@ npm install @tatamicks/select @tatamicks/core
18
18
 
19
19
  ## Usage
20
20
 
21
- waiting for documentation...
21
+ ```typescript
22
+ import { SelectPlugin } from '@tatamicks/select';
23
+
24
+ // Register plugin to DocumentEditor
25
+ editor.registerPlugin(SelectPlugin);
26
+ ```
27
+
28
+ **Note**: Styles are automatically injected when you import the plugin. No need to manually import CSS files.
22
29
 
23
30
  ## Properties
24
31
 
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const v=require("react"),b=require("@tatamicks/core");var P={exports:{}},N={};/**
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require('./index.css');const v=require("react"),b=require("@tatamicks/core");var P={exports:{}},N={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.js
4
4
  *
@@ -6,7 +6,7 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var q;function _e(){if(q)return N;q=1;var t=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function g(l,i,h){var x=null;if(h!==void 0&&(x=""+h),i.key!==void 0&&(x=""+i.key),"key"in i){h={};for(var E in i)E!=="key"&&(h[E]=i[E])}else h=i;return i=h.ref,{$$typeof:t,type:l,key:x,ref:i!==void 0?i:null,props:h}}return N.Fragment=c,N.jsx=g,N.jsxs=g,N}var O={};/**
9
+ */var q;function ae(){if(q)return N;q=1;var t=Symbol.for("react.transitional.element"),c=Symbol.for("react.fragment");function g(l,i,_){var x=null;if(_!==void 0&&(x=""+_),i.key!==void 0&&(x=""+i.key),"key"in i){_={};for(var E in i)E!=="key"&&(_[E]=i[E])}else _=i;return i=_.ref,{$$typeof:t,type:l,key:x,ref:i!==void 0?i:null,props:_}}return N.Fragment=c,N.jsx=g,N.jsxs=g,N}var O={};/**
10
10
  * @license React
11
11
  * react-jsx-runtime.development.js
12
12
  *
@@ -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 J;function he(){return J||(J=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===me?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case f:return"Fragment";case S:return"Profiler";case k:return"StrictMode";case ce:return"Suspense";case ue:return"SuspenseList";case de: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 r:return"Portal";case ie:return e.displayName||"Context";case C:return(e._context.displayName||"Context")+".Consumer";case se:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case fe:return n=e.displayName||null,n!==null?n:t(e.type)||"Memo";case I:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function c(e){return""+e}function g(e){try{c(e);var n=!1}catch{n=!0}if(n){n=console;var u=n.error,d=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return u.call(n,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",d),c(e)}}function l(e){if(e===f)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===I)return"<...>";try{var n=t(e);return n?"<"+n+">":"<...>"}catch{return"<...>"}}function i(){var e=D.A;return e===null?null:e.getOwner()}function h(){return Error("react-stack-top-frame")}function x(e){if(z.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return e.key!==void 0}function E(e,n){function u(){B||(B=!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))}u.isReactWarning=!0,Object.defineProperty(e,"key",{get:u,configurable:!0})}function R(){var e=t(this.type);return V[e]||(V[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 w(e,n,u,d,A,L){var m=u.ref;return e={$$typeof:_,type:e,key:n,props:u,_owner:d},(m!==void 0?m:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:R}):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:A}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:L}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function j(e,n,u,d,A,L){var m=n.children;if(m!==void 0)if(d)if(be(m)){for(d=0;d<m.length;d++)y(m[d]);Object.freeze&&Object.freeze(m)}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 y(m);if(z.call(n,"key")){m=t(e);var T=Object.keys(n).filter(function(pe){return pe!=="key"});d=0<T.length?"{key: someKey, "+T.join(": ..., ")+": ...}":"{key: someKey}",U[m+d]||(T=0<T.length?"{"+T.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
17
+ */var J;function le(){return J||(J=1,process.env.NODE_ENV!=="production"&&(function(){function t(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===re?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case f:return"Fragment";case S:return"Profiler";case k:return"StrictMode";case Q:return"Suspense";case K:return"SuspenseList";case te: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 r:return"Portal";case X:return e.displayName||"Context";case C:return(e._context.displayName||"Context")+".Consumer";case Z:var n=e.render;return e=e.displayName,e||(e=n.displayName||n.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case ee:return n=e.displayName||null,n!==null?n:t(e.type)||"Memo";case I:n=e._payload,e=e._init;try{return t(e(n))}catch{}}return null}function c(e){return""+e}function g(e){try{c(e);var n=!1}catch{n=!0}if(n){n=console;var u=n.error,d=typeof Symbol=="function"&&Symbol.toStringTag&&e[Symbol.toStringTag]||e.constructor.name||"Object";return u.call(n,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",d),c(e)}}function l(e){if(e===f)return"<>";if(typeof e=="object"&&e!==null&&e.$$typeof===I)return"<...>";try{var n=t(e);return n?"<"+n+">":"<...>"}catch{return"<...>"}}function i(){var e=D.A;return e===null?null:e.getOwner()}function _(){return Error("react-stack-top-frame")}function x(e){if(z.call(e,"key")){var n=Object.getOwnPropertyDescriptor(e,"key").get;if(n&&n.isReactWarning)return!1}return e.key!==void 0}function E(e,n){function u(){V||(V=!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))}u.isReactWarning=!0,Object.defineProperty(e,"key",{get:u,configurable:!0})}function R(){var e=t(this.type);return W[e]||(W[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 w(e,n,u,d,A,L){var m=u.ref;return e={$$typeof:h,type:e,key:n,props:u,_owner:d},(m!==void 0?m:null)!==null?Object.defineProperty(e,"ref",{enumerable:!1,get:R}):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:A}),Object.defineProperty(e,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:L}),Object.freeze&&(Object.freeze(e.props),Object.freeze(e)),e}function j(e,n,u,d,A,L){var m=n.children;if(m!==void 0)if(d)if(ne(m)){for(d=0;d<m.length;d++)y(m[d]);Object.freeze&&Object.freeze(m)}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 y(m);if(z.call(n,"key")){m=t(e);var T=Object.keys(n).filter(function(oe){return oe!=="key"});d=0<T.length?"{key: someKey, "+T.join(": ..., ")+": ...}":"{key: someKey}",U[m+d]||(T=0<T.length?"{"+T.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} />`,d,m,T,m),U[m+d]=!0)}if(m=null,u!==void 0&&(g(u),m=""+u),x(n)&&(g(n.key),m=""+n.key),"key"in n){u={};for(var Y in n)Y!=="key"&&(u[Y]=n[Y])}else u=n;return m&&E(u,typeof e=="function"?e.displayName||e.name||"Unknown":e),w(e,m,u,i(),A,L)}function y(e){a(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===I&&(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===_}var o=v,_=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),ie=Symbol.for("react.context"),se=Symbol.for("react.forward_ref"),ce=Symbol.for("react.suspense"),ue=Symbol.for("react.suspense_list"),fe=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),de=Symbol.for("react.activity"),me=Symbol.for("react.client.reference"),D=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,z=Object.prototype.hasOwnProperty,be=Array.isArray,$=console.createTask?console.createTask:function(){return null};o={react_stack_bottom_frame:function(e){return e()}};var B,V={},W=o.react_stack_bottom_frame.bind(o,h)(),G=$(l(h)),U={};O.Fragment=f,O.jsx=function(e,n,u){var d=1e4>D.recentlyCreatedOwnerStacks++;return j(e,n,u,!1,d?Error("react-stack-top-frame"):W,d?$(l(e)):G)},O.jsxs=function(e,n,u){var d=1e4>D.recentlyCreatedOwnerStacks++;return j(e,n,u,!0,d?Error("react-stack-top-frame"):W,d?$(l(e)):G)}})()),O}var H;function ve(){return H||(H=1,process.env.NODE_ENV==="production"?P.exports=_e():P.exports=he()),P.exports}var s=ve();const X="_container_y9aws_1",Z="_defaultSection_y9aws_8",Q="_optionsList_y9aws_18",K="_optionItem_y9aws_26",ee="_header_y9aws_35",te="_headerLabel_y9aws_42",re="_inputGroup_y9aws_48",ne="_label_y9aws_54",oe="_input_y9aws_48",ge="_colorInput_y9aws_81",Ee="_clearColorButton_y9aws_96",ae="_removeButton_y9aws_122",le="_addButton_y9aws_145",p={container:X,defaultSection:Z,optionsList:Q,optionItem:K,header:ee,headerLabel:te,inputGroup:re,label:ne,input:oe,removeButton:ae,addButton:le},F=({value:t,onChange:c,readOnly:g=!1})=>{const{options:l,defaultOption:i}=t,h=v.useCallback(()=>{const a={label:`選択肢${l.length+1}`,value:`option${l.length+1}`};c({...t,options:[...l,a]})},[l,t,c]),x=v.useCallback(a=>{var f;const o=l.filter((k,S)=>S!==a),_=(f=l[a])==null?void 0:f.value;c({options:o,defaultOption:_!==void 0&&i===_?void 0:i})},[l,i,c]),E=v.useCallback((a,o)=>{const _=l.map((r,f)=>f===a?{...r,label:o}:r);c({...t,options:_})},[l,t,c]),R=v.useCallback((a,o)=>{var k;const _=(k=l[a])==null?void 0:k.value,r=l.map((S,C)=>C===a?{...S,value:o}:S);c({options:r,defaultOption:i===_?o:i})},[l,i,c]),w=v.useCallback((a,o)=>{const _=l.map((r,f)=>f===a?{...r,color:o||void 0}:r);c({...t,options:_})},[l,t,c]),j=v.useCallback(a=>{c({...t,defaultOption:a||void 0})},[t,c]),y=v.useId();return s.jsxs("div",{className:p.container,children:[s.jsxs("div",{className:p.defaultSection,children:[s.jsx("label",{className:p.label,htmlFor:y,children:"初期選択値:"}),s.jsxs("select",{id:y,className:p.input,value:i||"",onChange:a=>j(a.target.value),disabled:g,children:[s.jsx("option",{value:"",children:"placeholder"}),l.map((a,o)=>{const _=`option-${o}`;return s.jsx("option",{value:a.value,children:a.label},_)})]})]}),s.jsx("div",{className:p.optionsList,children:l.map((a,o)=>{const _=`option-${o}`;return s.jsxs("div",{className:p.optionItem,children:[s.jsxs("div",{className:p.header,children:[s.jsxs("span",{className:p.headerLabel,children:["オプション",o+1]}),s.jsx("button",{type:"button",className:p.removeButton,onClick:()=>x(o),disabled:g||l.length===1,title:"削除",children:"削除"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`label-${o}`,children:"ラベル"}),s.jsx("input",{type:"text",id:`label-${o}`,className:p.input,value:a.label,onChange:r=>E(o,r.target.value),disabled:g,placeholder:"表示名"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`value-${o}`,children:"値"}),s.jsx("input",{type:"text",id:`value-${o}`,className:p.input,value:a.value,onChange:r=>R(o,r.target.value),disabled:g,placeholder:"内部値"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`color-${o}`,children:"色"}),s.jsx(b.ColorPicker,{value:a.color,onChange:r=>w(o,r||""),allowUndefined:!0,placeholder:"色を選択"})]})]},_)})}),s.jsx("button",{type:"button",className:p.addButton,onClick:h,disabled:g,children:"+ 選択肢を追加"})]})};F.displayName="OptionsEditor";const M=v.forwardRef(({props:t,value:c,onChange:g,onBlur:l,readOnly:i,mode:h},x)=>{const E=v.useRef(null);v.useImperativeHandle(x,()=>({focus:()=>{var r,f,k;(r=E.current)==null||r.focus(),E.current&&!i&&((k=(f=E.current).showPicker)==null||k.call(f))}}),[i]);const R=v.useMemo(()=>c&&t.selectConfig.options.find(r=>r.value===c)||null,[c,t.selectConfig.options]),w=v.useMemo(()=>h===b.NoteMode.FORM?!0:h===b.NoteMode.EDIT?!i:!1,[h,i]),j=v.useMemo(()=>{const r={width:"100%",height:"100%",display:"flex",boxSizing:"border-box",overflow:"hidden",position:"relative"};switch(t.justifyContent){case b.HorizontalAlign.center:r.justifyContent="center";break;case b.HorizontalAlign.right:r.justifyContent="flex-end";break;default:r.justifyContent="flex-start";break}switch(t.alignItems){case b.VerticalAlign.top:r.alignItems="flex-start";break;case b.VerticalAlign.bottom:r.alignItems="flex-end";break;default:r.alignItems="center";break}if(t.isIndividual)t.top&&(r.paddingTop=b.toPx.fromDim(t.top)),t.right&&(r.paddingRight=b.toPx.fromDim(t.right)),t.bottom&&(r.paddingBottom=b.toPx.fromDim(t.bottom)),t.left&&(r.paddingLeft=b.toPx.fromDim(t.left));else if(t.all){const f=b.toPx.fromDim(t.all);r.padding=`${f}px`}return c&&(R!=null&&R.color)&&(r.backgroundColor=R.color),r},[t,c,R]),y=v.useMemo(()=>{const r={appearance:"none",background:"transparent",border:"none",outline:"none",padding:w?"0px 20px 0px 0px":"0px",margin:0,width:"100%",height:"100%",boxSizing:"border-box",fontFamily:"inherit",cursor:"pointer",pointerEvents:i?"none":"auto"};switch(t.justifyContent){case b.HorizontalAlign.center:r.textAlign="center";break;case b.HorizontalAlign.right:r.textAlign="right";break;default:r.textAlign="left";break}return t.fontSize&&(r.fontSize=b.toPx.fromDim(t.fontSize)),t.color&&(r.color=t.color),t.fontWeight&&(r.fontWeight="bold"),t.italic&&(r.fontStyle="italic"),r},[t.justifyContent,t.fontSize,t.color,t.fontWeight,t.italic,i,w]),a={position:"absolute",right:"8px",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",width:"0",height:"0",borderLeft:"4px solid transparent",borderRight:"4px solid transparent",borderTop:"5px solid",borderTopColor:t.color||"#6b7280"},o=r=>{const f=r.target.value;g(f===""?null:f)},_=()=>{l&&l(c)};return s.jsxs("div",{style:j,children:[s.jsxs("select",{ref:E,value:c??"",onChange:o,onBlur:_,style:y,children:[s.jsx("option",{value:"",style:{backgroundColor:"#ffffff"},children:t.placeholder||""}),t.selectConfig.options.map(r=>s.jsx("option",{value:r.value,style:r.color?{backgroundColor:r.color}:void 0,children:r.label},r.value))]}),w&&s.jsx("div",{style:a})]})});M.displayName="SelectRenderer";const xe={kind:"select",meta:{displayName:"セレクトボックス",description:"ドロップダウンから選択肢を選ぶ入力ブロック",defaultSize:{w:4,h:2}},Renderer:M,properties:{...b.universalProperties,...b.placeholderDefinition,...b.fontStyleDefinition,...b.validationDefinition,selectConfig:{defaultValue:{options:[{label:"選択肢1",value:"option1"},{label:"選択肢2",value:"option2"}],defaultOption:void 0},label:"選択肢設定",group:"セレクト",Component:F,disableInMultiSelection:!0}},validateProps:t=>t,validateValue:t=>typeof t=="string"?t:null};exports.OptionsEditor=F;exports.SelectPlugin=xe;exports.SelectRenderer=M;exports.addButton=le;exports.clearColorButton=Ee;exports.colorInput=ge;exports.container=X;exports.defaultSection=Z;exports.header=ee;exports.headerLabel=te;exports.input=oe;exports.inputGroup=re;exports.label=ne;exports.optionItem=K;exports.optionsList=Q;exports.removeButton=ae;
22
+ <%s key={someKey} {...props} />`,d,m,T,m),U[m+d]=!0)}if(m=null,u!==void 0&&(g(u),m=""+u),x(n)&&(g(n.key),m=""+n.key),"key"in n){u={};for(var Y in n)Y!=="key"&&(u[Y]=n[Y])}else u=n;return m&&E(u,typeof e=="function"?e.displayName||e.name||"Unknown":e),w(e,m,u,i(),A,L)}function y(e){a(e)?e._store&&(e._store.validated=1):typeof e=="object"&&e!==null&&e.$$typeof===I&&(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===h}var o=v,h=Symbol.for("react.transitional.element"),r=Symbol.for("react.portal"),f=Symbol.for("react.fragment"),k=Symbol.for("react.strict_mode"),S=Symbol.for("react.profiler"),C=Symbol.for("react.consumer"),X=Symbol.for("react.context"),Z=Symbol.for("react.forward_ref"),Q=Symbol.for("react.suspense"),K=Symbol.for("react.suspense_list"),ee=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),te=Symbol.for("react.activity"),re=Symbol.for("react.client.reference"),D=o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,z=Object.prototype.hasOwnProperty,ne=Array.isArray,$=console.createTask?console.createTask:function(){return null};o={react_stack_bottom_frame:function(e){return e()}};var V,W={},B=o.react_stack_bottom_frame.bind(o,_)(),G=$(l(_)),U={};O.Fragment=f,O.jsx=function(e,n,u){var d=1e4>D.recentlyCreatedOwnerStacks++;return j(e,n,u,!1,d?Error("react-stack-top-frame"):B,d?$(l(e)):G)},O.jsxs=function(e,n,u){var d=1e4>D.recentlyCreatedOwnerStacks++;return j(e,n,u,!0,d?Error("react-stack-top-frame"):B,d?$(l(e)):G)}})()),O}var H;function ie(){return H||(H=1,process.env.NODE_ENV==="production"?P.exports=ae():P.exports=le()),P.exports}var s=ie();const se="_container_y9aws_1",ce="_defaultSection_y9aws_8",ue="_optionsList_y9aws_18",fe="_optionItem_y9aws_26",de="_header_y9aws_35",me="_headerLabel_y9aws_42",be="_inputGroup_y9aws_48",pe="_label_y9aws_54",he="_input_y9aws_48",_e="_removeButton_y9aws_122",ve="_addButton_y9aws_145",p={container:se,defaultSection:ce,optionsList:ue,optionItem:fe,header:de,headerLabel:me,inputGroup:be,label:pe,input:he,removeButton:_e,addButton:ve},F=({value:t,onChange:c,readOnly:g=!1})=>{const{options:l,defaultOption:i}=t,_=v.useCallback(()=>{const a={label:`選択肢${l.length+1}`,value:`option${l.length+1}`};c({...t,options:[...l,a]})},[l,t,c]),x=v.useCallback(a=>{var f;const o=l.filter((k,S)=>S!==a),h=(f=l[a])==null?void 0:f.value;c({options:o,defaultOption:h!==void 0&&i===h?void 0:i})},[l,i,c]),E=v.useCallback((a,o)=>{const h=l.map((r,f)=>f===a?{...r,label:o}:r);c({...t,options:h})},[l,t,c]),R=v.useCallback((a,o)=>{var k;const h=(k=l[a])==null?void 0:k.value,r=l.map((S,C)=>C===a?{...S,value:o}:S);c({options:r,defaultOption:i===h?o:i})},[l,i,c]),w=v.useCallback((a,o)=>{const h=l.map((r,f)=>f===a?{...r,color:o||void 0}:r);c({...t,options:h})},[l,t,c]),j=v.useCallback(a=>{c({...t,defaultOption:a||void 0})},[t,c]),y=v.useId();return s.jsxs("div",{className:p.container,children:[s.jsxs("div",{className:p.defaultSection,children:[s.jsx("label",{className:p.label,htmlFor:y,children:"初期選択値:"}),s.jsxs("select",{id:y,className:p.input,value:i||"",onChange:a=>j(a.target.value),disabled:g,children:[s.jsx("option",{value:"",children:"placeholder"}),l.map((a,o)=>{const h=`option-${o}`;return s.jsx("option",{value:a.value,children:a.label},h)})]})]}),s.jsx("div",{className:p.optionsList,children:l.map((a,o)=>{const h=`option-${o}`;return s.jsxs("div",{className:p.optionItem,children:[s.jsxs("div",{className:p.header,children:[s.jsxs("span",{className:p.headerLabel,children:["オプション",o+1]}),s.jsx("button",{type:"button",className:p.removeButton,onClick:()=>x(o),disabled:g||l.length===1,title:"削除",children:"削除"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`label-${o}`,children:"ラベル"}),s.jsx("input",{type:"text",id:`label-${o}`,className:p.input,value:a.label,onChange:r=>E(o,r.target.value),disabled:g,placeholder:"表示名"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`value-${o}`,children:"値"}),s.jsx("input",{type:"text",id:`value-${o}`,className:p.input,value:a.value,onChange:r=>R(o,r.target.value),disabled:g,placeholder:"内部値"})]}),s.jsxs("div",{className:p.inputGroup,children:[s.jsx("label",{className:p.label,htmlFor:`color-${o}`,children:"色"}),s.jsx(b.ColorPicker,{value:a.color,onChange:r=>w(o,r||""),allowUndefined:!0,placeholder:"色を選択"})]})]},h)})}),s.jsx("button",{type:"button",className:p.addButton,onClick:_,disabled:g,children:"+ 選択肢を追加"})]})};F.displayName="OptionsEditor";const M=v.forwardRef(({props:t,value:c,onChange:g,onBlur:l,readOnly:i,mode:_},x)=>{const E=v.useRef(null);v.useImperativeHandle(x,()=>({focus:()=>{var r,f,k;(r=E.current)==null||r.focus(),E.current&&!i&&((k=(f=E.current).showPicker)==null||k.call(f))}}),[i]);const R=v.useMemo(()=>c&&t.selectConfig.options.find(r=>r.value===c)||null,[c,t.selectConfig.options]),w=v.useMemo(()=>_===b.NoteMode.FORM?!0:_===b.NoteMode.EDIT?!i:!1,[_,i]),j=v.useMemo(()=>{const r={width:"100%",height:"100%",display:"flex",boxSizing:"border-box",overflow:"hidden",position:"relative"};switch(t.justifyContent){case b.HorizontalAlign.center:r.justifyContent="center";break;case b.HorizontalAlign.right:r.justifyContent="flex-end";break;default:r.justifyContent="flex-start";break}switch(t.alignItems){case b.VerticalAlign.top:r.alignItems="flex-start";break;case b.VerticalAlign.bottom:r.alignItems="flex-end";break;default:r.alignItems="center";break}if(t.isIndividual)t.top&&(r.paddingTop=b.toPx.fromDim(t.top)),t.right&&(r.paddingRight=b.toPx.fromDim(t.right)),t.bottom&&(r.paddingBottom=b.toPx.fromDim(t.bottom)),t.left&&(r.paddingLeft=b.toPx.fromDim(t.left));else if(t.all){const f=b.toPx.fromDim(t.all);r.padding=`${f}px`}return c&&(R!=null&&R.color)&&(r.backgroundColor=R.color),r},[t,c,R]),y=v.useMemo(()=>{const r={appearance:"none",background:"transparent",border:"none",outline:"none",padding:w?"0px 20px 0px 0px":"0px",margin:0,width:"100%",height:"100%",boxSizing:"border-box",fontFamily:"inherit",cursor:"pointer",pointerEvents:i?"none":"auto"};switch(t.justifyContent){case b.HorizontalAlign.center:r.textAlign="center";break;case b.HorizontalAlign.right:r.textAlign="right";break;default:r.textAlign="left";break}return t.fontSize&&(r.fontSize=b.toPx.fromDim(t.fontSize)),t.color&&(r.color=t.color),t.fontWeight&&(r.fontWeight="bold"),t.italic&&(r.fontStyle="italic"),r},[t.justifyContent,t.fontSize,t.color,t.fontWeight,t.italic,i,w]),a={position:"absolute",right:"8px",top:"50%",transform:"translateY(-50%)",pointerEvents:"none",width:"0",height:"0",borderLeft:"4px solid transparent",borderRight:"4px solid transparent",borderTop:"5px solid",borderTopColor:t.color||"#6b7280"},o=r=>{const f=r.target.value;g(f===""?null:f)},h=()=>{l&&l(c)};return s.jsxs("div",{style:j,children:[s.jsxs("select",{ref:E,value:c??"",onChange:o,onBlur:h,style:y,children:[s.jsx("option",{value:"",style:{backgroundColor:"#ffffff"},children:t.placeholder||""}),t.selectConfig.options.map(r=>s.jsx("option",{value:r.value,style:r.color?{backgroundColor:r.color}:void 0,children:r.label},r.value))]}),w&&s.jsx("div",{style:a})]})});M.displayName="SelectRenderer";const ge={kind:"select",meta:{displayName:"セレクトボックス",description:"ドロップダウンから選択肢を選ぶ入力ブロック",defaultSize:{w:4,h:2}},Renderer:M,properties:{...b.universalProperties,...b.placeholderDefinition,...b.fontStyleDefinition,...b.validationDefinition,selectConfig:{defaultValue:{options:[{label:"選択肢1",value:"option1"},{label:"選択肢2",value:"option2"}],defaultOption:void 0},label:"選択肢設定",group:"セレクト",Component:F,disableInMultiSelection:!0}},validateProps:t=>t,validateValue:t=>typeof t=="string"?t:null};exports.OptionsEditor=F;exports.SelectPlugin=ge;exports.SelectRenderer=M;
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/OptionsEditor.tsx","../src/SelectRenderer.tsx","../src/SelectPlugin.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","/**\n * @file OptionsEditor.tsx\n * @description 選択肢の配列とデフォルト値を編集するUIコンポーネント\n */\n\nimport { useCallback, useId } from \"react\";\nimport { ColorPicker } from \"@tatamicks/core\";\n\nimport styles from \"./OptionsEditor.module.css\";\n\nimport type { PropertyComponentProps } from \"@tatamicks/core\";\nimport type { SelectOption, SelectOptionsConfig } from \"./types\";\n\nexport interface OptionsEditorProps\n\textends PropertyComponentProps<SelectOptionsConfig> {}\n\n/**\n * 選択肢編集コンポーネント\n */\nexport const OptionsEditor = ({\n\tvalue,\n\tonChange,\n\treadOnly = false,\n}: OptionsEditorProps): React.ReactElement => {\n\tconst { options, defaultOption } = value;\n\n\t// オプション追加\n\tconst handleAdd = useCallback(() => {\n\t\tconst newOption: SelectOption = {\n\t\t\tlabel: `選択肢${options.length + 1}`,\n\t\t\tvalue: `option${options.length + 1}`,\n\t\t};\n\t\tonChange({ ...value, options: [...options, newOption] });\n\t}, [options, value, onChange]);\n\n\t// オプション削除\n\tconst handleRemove = useCallback(\n\t\t(index: number) => {\n\t\t\tconst newOptions = options.filter((_, i) => i !== index);\n\t\t\t// 削除されたオプションがデフォルトだった場合、デフォルトをクリア\n\t\t\tconst removedValue = options[index]?.value;\n\t\t\tconst newDefaultOption =\n\t\t\t\tremovedValue !== undefined && defaultOption === removedValue\n\t\t\t\t\t? undefined\n\t\t\t\t\t: defaultOption;\n\t\t\tonChange({ options: newOptions, defaultOption: newDefaultOption });\n\t\t},\n\t\t[options, defaultOption, onChange],\n\t);\n\n\t// ラベル変更\n\tconst handleLabelChange = useCallback(\n\t\t(index: number, newLabel: string) => {\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, label: newLabel } : opt,\n\t\t\t);\n\t\t\tonChange({ ...value, options: newOptions });\n\t\t},\n\t\t[options, value, onChange],\n\t);\n\n\t// 値変更\n\tconst handleValueChange = useCallback(\n\t\t(index: number, newValue: string) => {\n\t\t\tconst oldValue = options[index]?.value;\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, value: newValue } : opt,\n\t\t\t);\n\t\t\t// デフォルト値も更新\n\t\t\tconst newDefaultOption =\n\t\t\t\tdefaultOption === oldValue ? newValue : defaultOption;\n\t\t\tonChange({ options: newOptions, defaultOption: newDefaultOption });\n\t\t},\n\t\t[options, defaultOption, onChange],\n\t);\n\n\t// 色変更\n\tconst handleColorChange = useCallback(\n\t\t(index: number, newColor: string) => {\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, color: newColor || undefined } : opt,\n\t\t\t);\n\t\t\tonChange({ ...value, options: newOptions });\n\t\t},\n\t\t[options, value, onChange],\n\t);\n\n\t// デフォルト選択変更\n\tconst handleDefaultChange = useCallback(\n\t\t(newDefault: string) => {\n\t\t\tonChange({ ...value, defaultOption: newDefault || undefined });\n\t\t},\n\t\t[value, onChange],\n\t);\n\n\tconst defaultOptionId = useId();\n\n\treturn (\n\t\t<div className={styles.container}>\n\t\t\t{/* デフォルト選択 */}\n\t\t\t<div className={styles.defaultSection}>\n\t\t\t\t<label className={styles.label} htmlFor={defaultOptionId}>\n\t\t\t\t\t初期選択値:\n\t\t\t\t</label>\n\t\t\t\t<select\n\t\t\t\t\tid={defaultOptionId}\n\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\tvalue={defaultOption || \"\"}\n\t\t\t\t\tonChange={(e) => handleDefaultChange(e.target.value)}\n\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t>\n\t\t\t\t\t<option value=\"\">{\"placeholder\"}</option>\n\t\t\t\t\t{options.map((option, index) => {\n\t\t\t\t\t\tconst key = `option-${index}`;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<option key={key} value={option.value}>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</select>\n\t\t\t</div>\n\n\t\t\t{/* 選択肢リスト */}\n\t\t\t<div className={styles.optionsList}>\n\t\t\t\t{options.map((option, index) => {\n\t\t\t\t\tconst key = `option-${index}`;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div key={key} className={styles.optionItem}>\n\t\t\t\t\t\t\t<div className={styles.header}>\n\t\t\t\t\t\t\t\t<span className={styles.headerLabel}>\n\t\t\t\t\t\t\t\t\tオプション{index + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tclassName={styles.removeButton}\n\t\t\t\t\t\t\t\t\tonClick={() => handleRemove(index)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly || options.length === 1}\n\t\t\t\t\t\t\t\t\ttitle=\"削除\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t削除\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`label-${index}`}>\n\t\t\t\t\t\t\t\t\tラベル\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\tid={`label-${index}`}\n\t\t\t\t\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\t\t\t\t\tvalue={option.label}\n\t\t\t\t\t\t\t\t\tonChange={(e) => handleLabelChange(index, e.target.value)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\t\t\tplaceholder=\"表示名\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`value-${index}`}>\n\t\t\t\t\t\t\t\t\t値\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\tid={`value-${index}`}\n\t\t\t\t\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\t\t\t\t\tvalue={option.value}\n\t\t\t\t\t\t\t\t\tonChange={(e) => handleValueChange(index, e.target.value)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\t\t\tplaceholder=\"内部値\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`color-${index}`}>\n\t\t\t\t\t\t\t\t\t色\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\tvalue={option.color}\n\t\t\t\t\t\t\t\t\tonChange={(newColor) =>\n\t\t\t\t\t\t\t\t\t\thandleColorChange(index, newColor || \"\")\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tallowUndefined\n\t\t\t\t\t\t\t\t\tplaceholder=\"色を選択\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={styles.addButton}\n\t\t\t\tonClick={handleAdd}\n\t\t\t\tdisabled={readOnly}\n\t\t\t>\n\t\t\t\t+ 選択肢を追加\n\t\t\t</button>\n\t\t</div>\n\t);\n};\n\nOptionsEditor.displayName = \"OptionsEditor\";\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\tNoteMode,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport type { SelectProps, SelectValue } from \"./types\";\n\nexport const SelectRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<SelectProps, SelectValue>\n>(({ props, value, onChange, onBlur, readOnly, mode }, ref) => {\n\t// select要素への参照\n\tconst selectRef = useRef<HTMLSelectElement>(null);\n\n\t// 外部に focus メソッドを公開\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tselectRef.current?.focus();\n\t\t\t\t// ダブルクリックでフォーカスが入った瞬間にドロップダウンを開く\n\t\t\t\tif (selectRef.current && !readOnly) {\n\t\t\t\t\t// selectを開く(ブラウザによって動作が異なる)\n\t\t\t\t\tselectRef.current.showPicker?.();\n\t\t\t\t}\n\t\t\t},\n\t\t}),\n\t\t[readOnly],\n\t);\n\n\t// 選択された選択肢を取得\n\tconst selectedOption = useMemo(() => {\n\t\tif (!value) return null;\n\t\treturn (\n\t\t\tprops.selectConfig.options.find((opt) => opt.value === value) || null\n\t\t);\n\t}, [value, props.selectConfig.options]);\n\n\tconst shouldShowArrow = useMemo(() => {\n\t\tif (mode === NoteMode.FORM) return true;\n\t\tif (mode === NoteMode.EDIT) return !readOnly;\n\t\treturn false; // VIEW mode\n\t}, [mode, readOnly]);\n\n\t// --- コンテナ(Flexbox)のスタイル計算 ---\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\tposition: \"relative\", // 矢印アイコンの配置用\n\t\t};\n\n\t\t// 1. 配置 (Flexboxで制御)\n\t\t// 水平方向 (justifyContent)\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\t// 垂直方向 (alignItems)\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\t// 2. 余白 (Padding) - コンテナ側に適用\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\t// 3. 背景色 - 選択された選択肢の色をブロック全体に適用\n\t\tif (value && selectedOption?.color) {\n\t\t\tcss.backgroundColor = selectedOption.color;\n\t\t}\n\n\t\treturn css;\n\t}, [props, value, selectedOption]);\n\n\t// --- select要素のスタイル計算 ---\n\tconst selectStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tappearance: \"none\", // ネイティブの矢印を消す\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\", // 枠線を削除\n\t\t\toutline: \"none\",\n\t\t\tpadding: shouldShowArrow ? \"0px 20px 0px 0px\" : \"0px\", // 右側に矢印用のスペース\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\", // ブロック全体の幅に合わせる\n\t\t\theight: \"100%\", // ブロック全体の高さに合わせる\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcursor: \"pointer\",\n\t\t\t// readOnly時は操作を無効化(disabledを使わない)\n\t\t\tpointerEvents: readOnly ? \"none\" : \"auto\",\n\t\t};\n\n\t\t// テキストの水平配置\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\t// フォントスタイル\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = toPx.fromDim(props.fontSize);\n\t\t}\n\t\tif (props.color) {\n\t\t\tcss.color = props.color;\n\t\t}\n\t\tif (props.fontWeight) {\n\t\t\tcss.fontWeight = \"bold\";\n\t\t}\n\t\tif (props.italic) {\n\t\t\tcss.fontStyle = \"italic\";\n\t\t}\n\n\t\treturn css;\n\t}, [\n\t\tprops.justifyContent,\n\t\tprops.fontSize,\n\t\tprops.color,\n\t\tprops.fontWeight,\n\t\tprops.italic,\n\t\treadOnly,\n\t\tshouldShowArrow,\n\t]);\n\n\t// カスタム矢印アイコンのスタイル\n\tconst arrowStyle: CSSProperties = {\n\t\tposition: \"absolute\",\n\t\tright: \"8px\",\n\t\ttop: \"50%\",\n\t\ttransform: \"translateY(-50%)\",\n\t\tpointerEvents: \"none\",\n\t\twidth: \"0\",\n\t\theight: \"0\",\n\t\tborderLeft: \"4px solid transparent\",\n\t\tborderRight: \"4px solid transparent\",\n\t\tborderTop: \"5px solid\",\n\t\tborderTopColor: props.color || \"#6b7280\",\n\t};\n\n\t// 変更ハンドラー\n\tconst handleChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n\t\tconst selectedValue = e.target.value;\n\t\tonChange(selectedValue === \"\" ? null : selectedValue);\n\t};\n\n\t// ブラーハンドラー\n\tconst handleBlur = () => {\n\t\tif (onBlur) {\n\t\t\tonBlur(value);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<select\n\t\t\t\tref={selectRef}\n\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\tonChange={handleChange}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tstyle={selectStyle}\n\t\t\t>\n\t\t\t\t<option value=\"\" style={{ backgroundColor: \"#ffffff\" }}>\n\t\t\t\t\t{props.placeholder || \"\"}\n\t\t\t\t</option>\n\t\t\t\t{props.selectConfig.options.map((opt) => (\n\t\t\t\t\t<option\n\t\t\t\t\t\tkey={opt.value}\n\t\t\t\t\t\tvalue={opt.value}\n\t\t\t\t\t\tstyle={opt.color ? { backgroundColor: opt.color } : undefined}\n\t\t\t\t\t>\n\t\t\t\t\t\t{opt.label}\n\t\t\t\t\t</option>\n\t\t\t\t))}\n\t\t\t</select>\n\t\t\t{shouldShowArrow && <div style={arrowStyle} />}\n\t\t</div>\n\t);\n});\n\nSelectRenderer.displayName = \"SelectRenderer\";\n","import {\n\ttype BlockPlugin,\n\tfontStyleDefinition,\n\tplaceholderDefinition,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { OptionsEditor } from \"./OptionsEditor\";\nimport { SelectRenderer } from \"./SelectRenderer\";\n\nimport type { SelectProps, SelectValue } from \"./types\";\n\nexport const SelectPlugin: BlockPlugin<SelectProps, SelectValue> = {\n\tkind: \"select\",\n\n\tmeta: {\n\t\tdisplayName: \"セレクトボックス\",\n\t\tdescription: \"ドロップダウンから選択肢を選ぶ入力ブロック\",\n\t\tdefaultSize: { w: 4, h: 2 },\n\t},\n\n\tRenderer: SelectRenderer,\n\n\tproperties: {\n\t\t...universalProperties, // alignment + padding\n\t\t...placeholderDefinition,\n\t\t...fontStyleDefinition,\n\t\t...validationDefinition,\n\n\t\t// Select固有プロパティ - 選択肢とデフォルト値を統合\n\t\tselectConfig: {\n\t\t\tdefaultValue: {\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: \"選択肢1\", value: \"option1\" },\n\t\t\t\t\t{ label: \"選択肢2\", value: \"option2\" },\n\t\t\t\t],\n\t\t\t\tdefaultOption: undefined,\n\t\t\t},\n\t\t\tlabel: \"選択肢設定\",\n\t\t\tgroup: \"セレクト\",\n\t\t\tComponent: OptionsEditor,\n\t\t\tdisableInMultiSelection: true,\n\t\t},\n\t},\n\n\tvalidateProps: (props: unknown): SelectProps => {\n\t\treturn props as SelectProps;\n\t},\n\n\tvalidateValue: (value: unknown): SelectValue | null => {\n\t\tif (typeof value === \"string\") return value;\n\t\treturn null;\n\t},\n};\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","OptionsEditor","onChange","readOnly","options","defaultOption","handleAdd","useCallback","newOption","handleRemove","index","newOptions","_","i","removedValue","_a","handleLabelChange","newLabel","opt","handleValueChange","newValue","oldValue","handleColorChange","newColor","handleDefaultChange","newDefault","defaultOptionId","useId","jsxs","styles","jsx","e","option","ColorPicker","SelectRenderer","forwardRef","onBlur","mode","ref","selectRef","useRef","useImperativeHandle","_c","_b","selectedOption","useMemo","shouldShowArrow","NoteMode","containerStyle","css","HorizontalAlign","VerticalAlign","toPx","p","selectStyle","arrowStyle","handleChange","selectedValue","handleBlur","SelectPlugin","universalProperties","placeholderDefinition","fontStyleDefinition","validationDefinition"],"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/OptionsEditor.tsx","../src/SelectRenderer.tsx","../src/SelectPlugin.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","/**\n * @file OptionsEditor.tsx\n * @description 選択肢の配列とデフォルト値を編集するUIコンポーネント\n */\n\nimport { useCallback, useId } from \"react\";\nimport { ColorPicker } from \"@tatamicks/core\";\n\nimport styles from \"./OptionsEditor.module.css\";\n\nimport type { PropertyComponentProps } from \"@tatamicks/core\";\nimport type { SelectOption, SelectOptionsConfig } from \"./types\";\n\nexport interface OptionsEditorProps\n\textends PropertyComponentProps<SelectOptionsConfig> {}\n\n/**\n * 選択肢編集コンポーネント\n */\nexport const OptionsEditor = ({\n\tvalue,\n\tonChange,\n\treadOnly = false,\n}: OptionsEditorProps): React.ReactElement => {\n\tconst { options, defaultOption } = value;\n\n\t// オプション追加\n\tconst handleAdd = useCallback(() => {\n\t\tconst newOption: SelectOption = {\n\t\t\tlabel: `選択肢${options.length + 1}`,\n\t\t\tvalue: `option${options.length + 1}`,\n\t\t};\n\t\tonChange({ ...value, options: [...options, newOption] });\n\t}, [options, value, onChange]);\n\n\t// オプション削除\n\tconst handleRemove = useCallback(\n\t\t(index: number) => {\n\t\t\tconst newOptions = options.filter((_, i) => i !== index);\n\t\t\t// 削除されたオプションがデフォルトだった場合、デフォルトをクリア\n\t\t\tconst removedValue = options[index]?.value;\n\t\t\tconst newDefaultOption =\n\t\t\t\tremovedValue !== undefined && defaultOption === removedValue\n\t\t\t\t\t? undefined\n\t\t\t\t\t: defaultOption;\n\t\t\tonChange({ options: newOptions, defaultOption: newDefaultOption });\n\t\t},\n\t\t[options, defaultOption, onChange],\n\t);\n\n\t// ラベル変更\n\tconst handleLabelChange = useCallback(\n\t\t(index: number, newLabel: string) => {\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, label: newLabel } : opt,\n\t\t\t);\n\t\t\tonChange({ ...value, options: newOptions });\n\t\t},\n\t\t[options, value, onChange],\n\t);\n\n\t// 値変更\n\tconst handleValueChange = useCallback(\n\t\t(index: number, newValue: string) => {\n\t\t\tconst oldValue = options[index]?.value;\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, value: newValue } : opt,\n\t\t\t);\n\t\t\t// デフォルト値も更新\n\t\t\tconst newDefaultOption =\n\t\t\t\tdefaultOption === oldValue ? newValue : defaultOption;\n\t\t\tonChange({ options: newOptions, defaultOption: newDefaultOption });\n\t\t},\n\t\t[options, defaultOption, onChange],\n\t);\n\n\t// 色変更\n\tconst handleColorChange = useCallback(\n\t\t(index: number, newColor: string) => {\n\t\t\tconst newOptions = options.map((opt, i) =>\n\t\t\t\ti === index ? { ...opt, color: newColor || undefined } : opt,\n\t\t\t);\n\t\t\tonChange({ ...value, options: newOptions });\n\t\t},\n\t\t[options, value, onChange],\n\t);\n\n\t// デフォルト選択変更\n\tconst handleDefaultChange = useCallback(\n\t\t(newDefault: string) => {\n\t\t\tonChange({ ...value, defaultOption: newDefault || undefined });\n\t\t},\n\t\t[value, onChange],\n\t);\n\n\tconst defaultOptionId = useId();\n\n\treturn (\n\t\t<div className={styles.container}>\n\t\t\t{/* デフォルト選択 */}\n\t\t\t<div className={styles.defaultSection}>\n\t\t\t\t<label className={styles.label} htmlFor={defaultOptionId}>\n\t\t\t\t\t初期選択値:\n\t\t\t\t</label>\n\t\t\t\t<select\n\t\t\t\t\tid={defaultOptionId}\n\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\tvalue={defaultOption || \"\"}\n\t\t\t\t\tonChange={(e) => handleDefaultChange(e.target.value)}\n\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t>\n\t\t\t\t\t<option value=\"\">{\"placeholder\"}</option>\n\t\t\t\t\t{options.map((option, index) => {\n\t\t\t\t\t\tconst key = `option-${index}`;\n\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t<option key={key} value={option.value}>\n\t\t\t\t\t\t\t\t{option.label}\n\t\t\t\t\t\t\t</option>\n\t\t\t\t\t\t);\n\t\t\t\t\t})}\n\t\t\t\t</select>\n\t\t\t</div>\n\n\t\t\t{/* 選択肢リスト */}\n\t\t\t<div className={styles.optionsList}>\n\t\t\t\t{options.map((option, index) => {\n\t\t\t\t\tconst key = `option-${index}`;\n\t\t\t\t\treturn (\n\t\t\t\t\t\t<div key={key} className={styles.optionItem}>\n\t\t\t\t\t\t\t<div className={styles.header}>\n\t\t\t\t\t\t\t\t<span className={styles.headerLabel}>\n\t\t\t\t\t\t\t\t\tオプション{index + 1}\n\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t<button\n\t\t\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\t\t\tclassName={styles.removeButton}\n\t\t\t\t\t\t\t\t\tonClick={() => handleRemove(index)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly || options.length === 1}\n\t\t\t\t\t\t\t\t\ttitle=\"削除\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t削除\n\t\t\t\t\t\t\t\t</button>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`label-${index}`}>\n\t\t\t\t\t\t\t\t\tラベル\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\tid={`label-${index}`}\n\t\t\t\t\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\t\t\t\t\tvalue={option.label}\n\t\t\t\t\t\t\t\t\tonChange={(e) => handleLabelChange(index, e.target.value)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\t\t\tplaceholder=\"表示名\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`value-${index}`}>\n\t\t\t\t\t\t\t\t\t値\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<input\n\t\t\t\t\t\t\t\t\ttype=\"text\"\n\t\t\t\t\t\t\t\t\tid={`value-${index}`}\n\t\t\t\t\t\t\t\t\tclassName={styles.input}\n\t\t\t\t\t\t\t\t\tvalue={option.value}\n\t\t\t\t\t\t\t\t\tonChange={(e) => handleValueChange(index, e.target.value)}\n\t\t\t\t\t\t\t\t\tdisabled={readOnly}\n\t\t\t\t\t\t\t\t\tplaceholder=\"内部値\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t<div className={styles.inputGroup}>\n\t\t\t\t\t\t\t\t<label className={styles.label} htmlFor={`color-${index}`}>\n\t\t\t\t\t\t\t\t\t色\n\t\t\t\t\t\t\t\t</label>\n\t\t\t\t\t\t\t\t<ColorPicker\n\t\t\t\t\t\t\t\t\tvalue={option.color}\n\t\t\t\t\t\t\t\t\tonChange={(newColor) =>\n\t\t\t\t\t\t\t\t\t\thandleColorChange(index, newColor || \"\")\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tallowUndefined\n\t\t\t\t\t\t\t\t\tplaceholder=\"色を選択\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</div>\n\t\t\t\t\t);\n\t\t\t\t})}\n\t\t\t</div>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={styles.addButton}\n\t\t\t\tonClick={handleAdd}\n\t\t\t\tdisabled={readOnly}\n\t\t\t>\n\t\t\t\t+ 選択肢を追加\n\t\t\t</button>\n\t\t</div>\n\t);\n};\n\nOptionsEditor.displayName = \"OptionsEditor\";\n","import {\n\ttype CSSProperties,\n\tforwardRef,\n\tuseImperativeHandle,\n\tuseMemo,\n\tuseRef,\n} from \"react\";\nimport {\n\ttype BlockRef,\n\tHorizontalAlign,\n\tNoteMode,\n\ttype RendererProps,\n\ttoPx,\n\tVerticalAlign,\n} from \"@tatamicks/core\";\n\nimport type { SelectProps, SelectValue } from \"./types\";\n\nexport const SelectRenderer = forwardRef<\n\tBlockRef,\n\tRendererProps<SelectProps, SelectValue>\n>(({ props, value, onChange, onBlur, readOnly, mode }, ref) => {\n\t// select要素への参照\n\tconst selectRef = useRef<HTMLSelectElement>(null);\n\n\t// 外部に focus メソッドを公開\n\tuseImperativeHandle(\n\t\tref,\n\t\t() => ({\n\t\t\tfocus: () => {\n\t\t\t\tselectRef.current?.focus();\n\t\t\t\t// ダブルクリックでフォーカスが入った瞬間にドロップダウンを開く\n\t\t\t\tif (selectRef.current && !readOnly) {\n\t\t\t\t\t// selectを開く(ブラウザによって動作が異なる)\n\t\t\t\t\tselectRef.current.showPicker?.();\n\t\t\t\t}\n\t\t\t},\n\t\t}),\n\t\t[readOnly],\n\t);\n\n\t// 選択された選択肢を取得\n\tconst selectedOption = useMemo(() => {\n\t\tif (!value) return null;\n\t\treturn (\n\t\t\tprops.selectConfig.options.find((opt) => opt.value === value) || null\n\t\t);\n\t}, [value, props.selectConfig.options]);\n\n\tconst shouldShowArrow = useMemo(() => {\n\t\tif (mode === NoteMode.FORM) return true;\n\t\tif (mode === NoteMode.EDIT) return !readOnly;\n\t\treturn false; // VIEW mode\n\t}, [mode, readOnly]);\n\n\t// --- コンテナ(Flexbox)のスタイル計算 ---\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\tposition: \"relative\", // 矢印アイコンの配置用\n\t\t};\n\n\t\t// 1. 配置 (Flexboxで制御)\n\t\t// 水平方向 (justifyContent)\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\t// 垂直方向 (alignItems)\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\t// 2. 余白 (Padding) - コンテナ側に適用\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\t// 3. 背景色 - 選択された選択肢の色をブロック全体に適用\n\t\tif (value && selectedOption?.color) {\n\t\t\tcss.backgroundColor = selectedOption.color;\n\t\t}\n\n\t\treturn css;\n\t}, [props, value, selectedOption]);\n\n\t// --- select要素のスタイル計算 ---\n\tconst selectStyle = useMemo((): CSSProperties => {\n\t\tconst css: CSSProperties = {\n\t\t\tappearance: \"none\", // ネイティブの矢印を消す\n\t\t\tbackground: \"transparent\",\n\t\t\tborder: \"none\", // 枠線を削除\n\t\t\toutline: \"none\",\n\t\t\tpadding: shouldShowArrow ? \"0px 20px 0px 0px\" : \"0px\", // 右側に矢印用のスペース\n\t\t\tmargin: 0,\n\t\t\twidth: \"100%\", // ブロック全体の幅に合わせる\n\t\t\theight: \"100%\", // ブロック全体の高さに合わせる\n\t\t\tboxSizing: \"border-box\",\n\t\t\tfontFamily: \"inherit\",\n\t\t\tcursor: \"pointer\",\n\t\t\t// readOnly時は操作を無効化(disabledを使わない)\n\t\t\tpointerEvents: readOnly ? \"none\" : \"auto\",\n\t\t};\n\n\t\t// テキストの水平配置\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\t// フォントスタイル\n\t\tif (props.fontSize) {\n\t\t\tcss.fontSize = toPx.fromDim(props.fontSize);\n\t\t}\n\t\tif (props.color) {\n\t\t\tcss.color = props.color;\n\t\t}\n\t\tif (props.fontWeight) {\n\t\t\tcss.fontWeight = \"bold\";\n\t\t}\n\t\tif (props.italic) {\n\t\t\tcss.fontStyle = \"italic\";\n\t\t}\n\n\t\treturn css;\n\t}, [\n\t\tprops.justifyContent,\n\t\tprops.fontSize,\n\t\tprops.color,\n\t\tprops.fontWeight,\n\t\tprops.italic,\n\t\treadOnly,\n\t\tshouldShowArrow,\n\t]);\n\n\t// カスタム矢印アイコンのスタイル\n\tconst arrowStyle: CSSProperties = {\n\t\tposition: \"absolute\",\n\t\tright: \"8px\",\n\t\ttop: \"50%\",\n\t\ttransform: \"translateY(-50%)\",\n\t\tpointerEvents: \"none\",\n\t\twidth: \"0\",\n\t\theight: \"0\",\n\t\tborderLeft: \"4px solid transparent\",\n\t\tborderRight: \"4px solid transparent\",\n\t\tborderTop: \"5px solid\",\n\t\tborderTopColor: props.color || \"#6b7280\",\n\t};\n\n\t// 変更ハンドラー\n\tconst handleChange = (e: React.ChangeEvent<HTMLSelectElement>) => {\n\t\tconst selectedValue = e.target.value;\n\t\tonChange(selectedValue === \"\" ? null : selectedValue);\n\t};\n\n\t// ブラーハンドラー\n\tconst handleBlur = () => {\n\t\tif (onBlur) {\n\t\t\tonBlur(value);\n\t\t}\n\t};\n\n\treturn (\n\t\t<div style={containerStyle}>\n\t\t\t<select\n\t\t\t\tref={selectRef}\n\t\t\t\tvalue={value ?? \"\"}\n\t\t\t\tonChange={handleChange}\n\t\t\t\tonBlur={handleBlur}\n\t\t\t\tstyle={selectStyle}\n\t\t\t>\n\t\t\t\t<option value=\"\" style={{ backgroundColor: \"#ffffff\" }}>\n\t\t\t\t\t{props.placeholder || \"\"}\n\t\t\t\t</option>\n\t\t\t\t{props.selectConfig.options.map((opt) => (\n\t\t\t\t\t<option\n\t\t\t\t\t\tkey={opt.value}\n\t\t\t\t\t\tvalue={opt.value}\n\t\t\t\t\t\tstyle={opt.color ? { backgroundColor: opt.color } : undefined}\n\t\t\t\t\t>\n\t\t\t\t\t\t{opt.label}\n\t\t\t\t\t</option>\n\t\t\t\t))}\n\t\t\t</select>\n\t\t\t{shouldShowArrow && <div style={arrowStyle} />}\n\t\t</div>\n\t);\n});\n\nSelectRenderer.displayName = \"SelectRenderer\";\n","import {\n\ttype BlockPlugin,\n\tfontStyleDefinition,\n\tplaceholderDefinition,\n\tuniversalProperties,\n\tvalidationDefinition,\n} from \"@tatamicks/core\";\n\nimport { OptionsEditor } from \"./OptionsEditor\";\nimport { SelectRenderer } from \"./SelectRenderer\";\n\nimport type { SelectProps, SelectValue } from \"./types\";\n\nexport const SelectPlugin: BlockPlugin<SelectProps, SelectValue> = {\n\tkind: \"select\",\n\n\tmeta: {\n\t\tdisplayName: \"セレクトボックス\",\n\t\tdescription: \"ドロップダウンから選択肢を選ぶ入力ブロック\",\n\t\tdefaultSize: { w: 4, h: 2 },\n\t},\n\n\tRenderer: SelectRenderer,\n\n\tproperties: {\n\t\t...universalProperties, // alignment + padding\n\t\t...placeholderDefinition,\n\t\t...fontStyleDefinition,\n\t\t...validationDefinition,\n\n\t\t// Select固有プロパティ - 選択肢とデフォルト値を統合\n\t\tselectConfig: {\n\t\t\tdefaultValue: {\n\t\t\t\toptions: [\n\t\t\t\t\t{ label: \"選択肢1\", value: \"option1\" },\n\t\t\t\t\t{ label: \"選択肢2\", value: \"option2\" },\n\t\t\t\t],\n\t\t\t\tdefaultOption: undefined,\n\t\t\t},\n\t\t\tlabel: \"選択肢設定\",\n\t\t\tgroup: \"セレクト\",\n\t\t\tComponent: OptionsEditor,\n\t\t\tdisableInMultiSelection: true,\n\t\t},\n\t},\n\n\tvalidateProps: (props: unknown): SelectProps => {\n\t\treturn props as SelectProps;\n\t},\n\n\tvalidateValue: (value: unknown): SelectValue | null => {\n\t\tif (typeof value === \"string\") return value;\n\t\treturn null;\n\t},\n};\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","OptionsEditor","onChange","readOnly","options","defaultOption","handleAdd","useCallback","newOption","handleRemove","index","newOptions","_","i","removedValue","_a","handleLabelChange","newLabel","opt","handleValueChange","newValue","oldValue","handleColorChange","newColor","handleDefaultChange","newDefault","defaultOptionId","useId","jsxs","styles","jsx","e","option","ColorPicker","SelectRenderer","forwardRef","onBlur","mode","ref","selectRef","useRef","useImperativeHandle","_c","_b","selectedOption","useMemo","shouldShowArrow","NoteMode","containerStyle","css","HorizontalAlign","VerticalAlign","toPx","p","selectStyle","arrowStyle","handleChange","selectedValue","handleBlur","SelectPlugin","universalProperties","placeholderDefinition","fontStyleDefinition","validationDefinition"],"mappings":"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","x_google_ignoreList":[0,1,2]}
package/dist/index.mjs CHANGED
@@ -1,6 +1,6 @@
1
- import ce, { useCallback as T, useId as ue, forwardRef as fe, useRef as de, useImperativeHandle as me, useMemo as C } from "react";
2
- import { ColorPicker as be, NoteMode as q, HorizontalAlign as P, VerticalAlign as J, toPx as S, validationDefinition as pe, fontStyleDefinition as _e, placeholderDefinition as he, universalProperties as ve } from "@tatamicks/core";
3
- var I = { exports: {} }, N = {};
1
+ import ce, { useCallback as T, useId as ue, forwardRef as fe, useRef as de, useImperativeHandle as me, useMemo as P } from "react";
2
+ import { ColorPicker as be, NoteMode as q, HorizontalAlign as C, VerticalAlign as J, toPx as S, validationDefinition as pe, fontStyleDefinition as he, placeholderDefinition as _e, universalProperties as ve } from "@tatamicks/core";
3
+ import './index.css';var I = { exports: {} }, N = {};
4
4
  /**
5
5
  * @license React
6
6
  * react-jsx-runtime.production.js
@@ -15,22 +15,22 @@ function ge() {
15
15
  if (X) return N;
16
16
  X = 1;
17
17
  var t = Symbol.for("react.transitional.element"), c = Symbol.for("react.fragment");
18
- function h(l, i, _) {
18
+ function _(l, i, h) {
19
19
  var g = null;
20
- if (_ !== void 0 && (g = "" + _), i.key !== void 0 && (g = "" + i.key), "key" in i) {
21
- _ = {};
20
+ if (h !== void 0 && (g = "" + h), i.key !== void 0 && (g = "" + i.key), "key" in i) {
21
+ h = {};
22
22
  for (var v in i)
23
- v !== "key" && (_[v] = i[v]);
24
- } else _ = i;
25
- return i = _.ref, {
23
+ v !== "key" && (h[v] = i[v]);
24
+ } else h = i;
25
+ return i = h.ref, {
26
26
  $$typeof: t,
27
27
  type: l,
28
28
  key: g,
29
29
  ref: i !== void 0 ? i : null,
30
- props: _
30
+ props: h
31
31
  };
32
32
  }
33
- return N.Fragment = c, N.jsx = h, N.jsxs = h, N;
33
+ return N.Fragment = c, N.jsx = _, N.jsxs = _, N;
34
34
  }
35
35
  var O = {};
36
36
  /**
@@ -53,7 +53,7 @@ function Ee() {
53
53
  switch (e) {
54
54
  case f:
55
55
  return "Fragment";
56
- case k:
56
+ case y:
57
57
  return "Profiler";
58
58
  case R:
59
59
  return "StrictMode";
@@ -91,7 +91,7 @@ function Ee() {
91
91
  function c(e) {
92
92
  return "" + e;
93
93
  }
94
- function h(e) {
94
+ function _(e) {
95
95
  try {
96
96
  c(e);
97
97
  var n = !1;
@@ -123,7 +123,7 @@ function Ee() {
123
123
  var e = L.A;
124
124
  return e === null ? null : e.getOwner();
125
125
  }
126
- function _() {
126
+ function h() {
127
127
  return Error("react-stack-top-frame");
128
128
  }
129
129
  function g(e) {
@@ -135,7 +135,7 @@ function Ee() {
135
135
  }
136
136
  function v(e, n) {
137
137
  function u() {
138
- B || (B = !0, console.error(
138
+ V || (V = !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
  ));
@@ -147,7 +147,7 @@ function Ee() {
147
147
  }
148
148
  function E() {
149
149
  var e = t(this.type);
150
- return V[e] || (V[e] = !0, console.error(
150
+ return W[e] || (W[e] = !0, console.error(
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
  }
@@ -184,7 +184,7 @@ function Ee() {
184
184
  value: F
185
185
  }), Object.freeze && (Object.freeze(e.props), Object.freeze(e)), e;
186
186
  }
187
- function y(e, n, u, d, A, F) {
187
+ function k(e, n, u, d, A, F) {
188
188
  var m = n.children;
189
189
  if (m !== void 0)
190
190
  if (d)
@@ -215,7 +215,7 @@ React keys must be passed directly to JSX without using spread:
215
215
  m
216
216
  ), U[m + d] = !0);
217
217
  }
218
- if (m = null, u !== void 0 && (h(u), m = "" + u), g(n) && (h(n.key), m = "" + n.key), "key" in n) {
218
+ if (m = null, u !== void 0 && (_(u), m = "" + u), g(n) && (_(n.key), m = "" + n.key), "key" in n) {
219
219
  u = {};
220
220
  for (var z in n)
221
221
  z !== "key" && (u[z] = n[z]);
@@ -238,7 +238,7 @@ 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 o = ce, p = Symbol.for("react.transitional.element"), r = Symbol.for("react.portal"), f = Symbol.for("react.fragment"), R = Symbol.for("react.strict_mode"), k = Symbol.for("react.profiler"), D = Symbol.for("react.consumer"), ee = Symbol.for("react.context"), te = Symbol.for("react.forward_ref"), re = Symbol.for("react.suspense"), ne = Symbol.for("react.suspense_list"), oe = Symbol.for("react.memo"), $ = Symbol.for("react.lazy"), ae = Symbol.for("react.activity"), le = Symbol.for("react.client.reference"), L = o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, M = Object.prototype.hasOwnProperty, ie = Array.isArray, Y = console.createTask ? console.createTask : function() {
241
+ var o = ce, p = Symbol.for("react.transitional.element"), r = Symbol.for("react.portal"), f = Symbol.for("react.fragment"), R = Symbol.for("react.strict_mode"), y = Symbol.for("react.profiler"), D = Symbol.for("react.consumer"), ee = Symbol.for("react.context"), te = Symbol.for("react.forward_ref"), re = Symbol.for("react.suspense"), ne = Symbol.for("react.suspense_list"), oe = Symbol.for("react.memo"), $ = Symbol.for("react.lazy"), ae = Symbol.for("react.activity"), le = Symbol.for("react.client.reference"), L = o.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE, M = Object.prototype.hasOwnProperty, ie = Array.isArray, Y = console.createTask ? console.createTask : function() {
242
242
  return null;
243
243
  };
244
244
  o = {
@@ -246,28 +246,28 @@ React keys must be passed directly to JSX without using spread:
246
246
  return e();
247
247
  }
248
248
  };
249
- var B, V = {}, W = o.react_stack_bottom_frame.bind(
249
+ var V, W = {}, B = o.react_stack_bottom_frame.bind(
250
250
  o,
251
- _
252
- )(), G = Y(l(_)), U = {};
251
+ h
252
+ )(), G = Y(l(h)), U = {};
253
253
  O.Fragment = f, O.jsx = function(e, n, u) {
254
254
  var d = 1e4 > L.recentlyCreatedOwnerStacks++;
255
- return y(
255
+ return k(
256
256
  e,
257
257
  n,
258
258
  u,
259
259
  !1,
260
- d ? Error("react-stack-top-frame") : W,
260
+ d ? Error("react-stack-top-frame") : B,
261
261
  d ? Y(l(e)) : G
262
262
  );
263
263
  }, O.jsxs = function(e, n, u) {
264
264
  var d = 1e4 > L.recentlyCreatedOwnerStacks++;
265
- return y(
265
+ return k(
266
266
  e,
267
267
  n,
268
268
  u,
269
269
  !0,
270
- d ? Error("react-stack-top-frame") : W,
270
+ d ? Error("react-stack-top-frame") : B,
271
271
  d ? Y(l(e)) : G
272
272
  );
273
273
  };
@@ -278,24 +278,24 @@ function Re() {
278
278
  return Z || (Z = 1, process.env.NODE_ENV === "production" ? I.exports = ge() : I.exports = Ee()), I.exports;
279
279
  }
280
280
  var s = Re();
281
- const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsList_y9aws_18", ke = "_optionItem_y9aws_26", je = "_header_y9aws_35", Te = "_headerLabel_y9aws_42", Se = "_inputGroup_y9aws_48", Ne = "_label_y9aws_54", Oe = "_input_y9aws_48", De = "_colorInput_y9aws_81", $e = "_clearColorButton_y9aws_96", Ae = "_removeButton_y9aws_122", Ce = "_addButton_y9aws_145", b = {
281
+ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ke = "_optionsList_y9aws_18", ye = "_optionItem_y9aws_26", je = "_header_y9aws_35", Te = "_headerLabel_y9aws_42", Se = "_inputGroup_y9aws_48", Ne = "_label_y9aws_54", Oe = "_input_y9aws_48", Ae = "_removeButton_y9aws_122", Pe = "_addButton_y9aws_145", b = {
282
282
  container: xe,
283
283
  defaultSection: we,
284
- optionsList: ye,
285
- optionItem: ke,
284
+ optionsList: ke,
285
+ optionItem: ye,
286
286
  header: je,
287
287
  headerLabel: Te,
288
288
  inputGroup: Se,
289
289
  label: Ne,
290
290
  input: Oe,
291
291
  removeButton: Ae,
292
- addButton: Ce
292
+ addButton: Pe
293
293
  }, Q = ({
294
294
  value: t,
295
295
  onChange: c,
296
- readOnly: h = !1
296
+ readOnly: _ = !1
297
297
  }) => {
298
- const { options: l, defaultOption: i } = t, _ = T(() => {
298
+ const { options: l, defaultOption: i } = t, h = T(() => {
299
299
  const a = {
300
300
  label: `選択肢${l.length + 1}`,
301
301
  value: `option${l.length + 1}`
@@ -304,7 +304,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
304
304
  }, [l, t, c]), g = T(
305
305
  (a) => {
306
306
  var f;
307
- const o = l.filter((R, k) => k !== a), p = (f = l[a]) == null ? void 0 : f.value;
307
+ const o = l.filter((R, y) => y !== a), p = (f = l[a]) == null ? void 0 : f.value;
308
308
  c({ options: o, defaultOption: p !== void 0 && i === p ? void 0 : i });
309
309
  },
310
310
  [l, i, c]
@@ -320,7 +320,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
320
320
  (a, o) => {
321
321
  var R;
322
322
  const p = (R = l[a]) == null ? void 0 : R.value, r = l.map(
323
- (k, D) => D === a ? { ...k, value: o } : k
323
+ (y, D) => D === a ? { ...y, value: o } : y
324
324
  );
325
325
  c({ options: r, defaultOption: i === p ? o : i });
326
326
  },
@@ -333,7 +333,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
333
333
  c({ ...t, options: p });
334
334
  },
335
335
  [l, t, c]
336
- ), y = T(
336
+ ), k = T(
337
337
  (a) => {
338
338
  c({ ...t, defaultOption: a || void 0 });
339
339
  },
@@ -348,8 +348,8 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
348
348
  id: w,
349
349
  className: b.input,
350
350
  value: i || "",
351
- onChange: (a) => y(a.target.value),
352
- disabled: h,
351
+ onChange: (a) => k(a.target.value),
352
+ disabled: _,
353
353
  children: [
354
354
  /* @__PURE__ */ s.jsx("option", { value: "", children: "placeholder" }),
355
355
  l.map((a, o) => {
@@ -374,7 +374,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
374
374
  type: "button",
375
375
  className: b.removeButton,
376
376
  onClick: () => g(o),
377
- disabled: h || l.length === 1,
377
+ disabled: _ || l.length === 1,
378
378
  title: "削除",
379
379
  children: "削除"
380
380
  }
@@ -390,7 +390,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
390
390
  className: b.input,
391
391
  value: a.label,
392
392
  onChange: (r) => v(o, r.target.value),
393
- disabled: h,
393
+ disabled: _,
394
394
  placeholder: "表示名"
395
395
  }
396
396
  )
@@ -405,7 +405,7 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
405
405
  className: b.input,
406
406
  value: a.value,
407
407
  onChange: (r) => E(o, r.target.value),
408
- disabled: h,
408
+ disabled: _,
409
409
  placeholder: "内部値"
410
410
  }
411
411
  )
@@ -429,15 +429,15 @@ const xe = "_container_y9aws_1", we = "_defaultSection_y9aws_8", ye = "_optionsL
429
429
  {
430
430
  type: "button",
431
431
  className: b.addButton,
432
- onClick: _,
433
- disabled: h,
432
+ onClick: h,
433
+ disabled: _,
434
434
  children: "+ 選択肢を追加"
435
435
  }
436
436
  )
437
437
  ] });
438
438
  };
439
439
  Q.displayName = "OptionsEditor";
440
- const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _ }, g) => {
440
+ const K = fe(({ props: t, value: c, onChange: _, onBlur: l, readOnly: i, mode: h }, g) => {
441
441
  const v = de(null);
442
442
  me(
443
443
  g,
@@ -449,7 +449,7 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
449
449
  }),
450
450
  [i]
451
451
  );
452
- const E = C(() => c && t.selectConfig.options.find((r) => r.value === c) || null, [c, t.selectConfig.options]), x = C(() => _ === q.FORM ? !0 : _ === q.EDIT ? !i : !1, [_, i]), y = C(() => {
452
+ const E = P(() => c && t.selectConfig.options.find((r) => r.value === c) || null, [c, t.selectConfig.options]), x = P(() => h === q.FORM ? !0 : h === q.EDIT ? !i : !1, [h, i]), k = P(() => {
453
453
  const r = {
454
454
  width: "100%",
455
455
  height: "100%",
@@ -460,10 +460,10 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
460
460
  // 矢印アイコンの配置用
461
461
  };
462
462
  switch (t.justifyContent) {
463
- case P.center:
463
+ case C.center:
464
464
  r.justifyContent = "center";
465
465
  break;
466
- case P.right:
466
+ case C.right:
467
467
  r.justifyContent = "flex-end";
468
468
  break;
469
469
  default:
@@ -488,7 +488,7 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
488
488
  r.padding = `${f}px`;
489
489
  }
490
490
  return c && (E != null && E.color) && (r.backgroundColor = E.color), r;
491
- }, [t, c, E]), w = C(() => {
491
+ }, [t, c, E]), w = P(() => {
492
492
  const r = {
493
493
  appearance: "none",
494
494
  // ネイティブの矢印を消す
@@ -510,10 +510,10 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
510
510
  pointerEvents: i ? "none" : "auto"
511
511
  };
512
512
  switch (t.justifyContent) {
513
- case P.center:
513
+ case C.center:
514
514
  r.textAlign = "center";
515
515
  break;
516
- case P.right:
516
+ case C.right:
517
517
  r.textAlign = "right";
518
518
  break;
519
519
  default:
@@ -543,11 +543,11 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
543
543
  borderTopColor: t.color || "#6b7280"
544
544
  }, o = (r) => {
545
545
  const f = r.target.value;
546
- h(f === "" ? null : f);
546
+ _(f === "" ? null : f);
547
547
  }, p = () => {
548
548
  l && l(c);
549
549
  };
550
- return /* @__PURE__ */ s.jsxs("div", { style: y, children: [
550
+ return /* @__PURE__ */ s.jsxs("div", { style: k, children: [
551
551
  /* @__PURE__ */ s.jsxs(
552
552
  "select",
553
553
  {
@@ -574,7 +574,7 @@ const K = fe(({ props: t, value: c, onChange: h, onBlur: l, readOnly: i, mode: _
574
574
  ] });
575
575
  });
576
576
  K.displayName = "SelectRenderer";
577
- const Le = {
577
+ const De = {
578
578
  kind: "select",
579
579
  meta: {
580
580
  displayName: "セレクトボックス",
@@ -585,8 +585,8 @@ const Le = {
585
585
  properties: {
586
586
  ...ve,
587
587
  // alignment + padding
588
- ...he,
589
588
  ..._e,
589
+ ...he,
590
590
  ...pe,
591
591
  // Select固有プロパティ - 選択肢とデフォルト値を統合
592
592
  selectConfig: {
@@ -608,20 +608,7 @@ const Le = {
608
608
  };
609
609
  export {
610
610
  Q as OptionsEditor,
611
- Le as SelectPlugin,
612
- K as SelectRenderer,
613
- Ce as addButton,
614
- $e as clearColorButton,
615
- De as colorInput,
616
- xe as container,
617
- we as defaultSection,
618
- je as header,
619
- Te as headerLabel,
620
- Oe as input,
621
- Se as inputGroup,
622
- Ne as label,
623
- ke as optionItem,
624
- ye as optionsList,
625
- Ae as removeButton
611
+ De as SelectPlugin,
612
+ K as SelectRenderer
626
613
  };
627
614
  //# sourceMappingURL=index.mjs.map
@@ -1,5 +1,4 @@
1
1
  export * from './OptionsEditor';
2
- export * from './OptionsEditor.module.css';
3
2
  export * from './SelectPlugin';
4
3
  export * from './SelectRenderer';
5
4
  export * from './types';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,SAAS,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tatamicks/select",
3
- "version": "0.1.1",
3
+ "version": "0.1.2",
4
4
  "description": "Select/dropdown plugin for @tatamicks/core",
5
5
  "keywords": [
6
6
  "document-editor",
@@ -61,6 +61,7 @@
61
61
  "typescript": "^5.9.3",
62
62
  "vite": "^6.3.6",
63
63
  "vite-plugin-dts": "^4.5.4",
64
+ "vite-plugin-lib-inject-css": "^2.2.2",
64
65
  "vitest": "^3.2.4"
65
66
  }
66
67
  }
File without changes