amotify 0.1.31 → 0.1.32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/dist/@declaration/_.js +1 -1
  2. package/dist/@styles/componentClasses/_.css +68 -65
  3. package/dist/@styles/componentClasses/_.js +39 -39
  4. package/dist/@styles/index.css +68 -65
  5. package/dist/@styles/index.js +39 -39
  6. package/dist/@styles/init.css +1 -1
  7. package/dist/@styles/style.css +68 -65
  8. package/dist/@styles/style.js +39 -39
  9. package/dist/@styles/var.css +1 -1
  10. package/dist/@utils/GenerateClassName.js +470 -1
  11. package/dist/@utils/LaunchReactApp.js +78 -1
  12. package/dist/@utils/_.js +12 -1
  13. package/dist/@utils/collectForm.js +96 -1
  14. package/dist/@utils/color.js +103 -1
  15. package/dist/@utils/config.js +101 -1
  16. package/dist/@utils/fin.js +39 -1
  17. package/dist/@utils/getElement.js +13 -1
  18. package/dist/@utils/jsminEx.js +172 -1
  19. package/dist/@utils/pageTransit.js +33 -1
  20. package/dist/@utils/useRecycle.js +44 -1
  21. package/dist/@utils/useStore.js +54 -1
  22. package/dist/atoms/Box.js +20 -1
  23. package/dist/atoms/FAI.js +148 -1
  24. package/dist/atoms/Flex.js +34 -1
  25. package/dist/atoms/Grid.js +17 -1
  26. package/dist/atoms/Img.js +65 -1
  27. package/dist/atoms/Logo.js +359 -51
  28. package/dist/atoms/P.js +20 -1
  29. package/dist/atoms/Placeholder.js +44 -1
  30. package/dist/atoms/Span.js +20 -1
  31. package/dist/atoms/_.js +9 -1
  32. package/dist/chunk-JJ3PEWPN.js +60 -0
  33. package/dist/fn/Button.js +316 -1
  34. package/dist/fn/Cropper.js +1009 -1
  35. package/dist/fn/Effect/Fade.js +88 -1
  36. package/dist/fn/Effect/Pudding.js +22 -1
  37. package/dist/fn/Effect/Ripple.js +117 -3
  38. package/dist/fn/Effect/_.js +14 -1
  39. package/dist/fn/Input/AutoHeightText.js +112 -1
  40. package/dist/fn/Input/Checker.js +36 -1
  41. package/dist/fn/Input/Chips/Selector.js +472 -1
  42. package/dist/fn/Input/Chips/_.js +349 -1
  43. package/dist/fn/Input/Contenteditable.js +160 -1
  44. package/dist/fn/Input/DigitCharacters.js +275 -1
  45. package/dist/fn/Input/Filer.js +619 -1
  46. package/dist/fn/Input/Hidden.js +48 -1
  47. package/dist/fn/Input/List.js +450 -1
  48. package/dist/fn/Input/Parts.js +121 -1
  49. package/dist/fn/Input/Plain.js +12 -1
  50. package/dist/fn/Input/RichSelect.js +279 -1
  51. package/dist/fn/Input/Search.js +53 -1
  52. package/dist/fn/Input/Segmented.js +245 -1
  53. package/dist/fn/Input/Select.js +278 -1
  54. package/dist/fn/Input/Slider.js +538 -1
  55. package/dist/fn/Input/Switch.js +221 -1
  56. package/dist/fn/Input/Text.js +626 -1
  57. package/dist/fn/Input/TextArea.js +151 -1
  58. package/dist/fn/Input/Time/Picker.js +1457 -1
  59. package/dist/fn/Input/Time/_.js +867 -1
  60. package/dist/fn/Input/_.js +48 -1
  61. package/dist/fn/Input/core.js +626 -1
  62. package/dist/fn/Layout/PageNotFound.js +90 -1
  63. package/dist/fn/Layout/PageRouter.js +87 -1
  64. package/dist/fn/Layout/PageViewController.js +29 -1
  65. package/dist/fn/Layout/Plate.js +37 -1
  66. package/dist/fn/Layout/RootViewController.js +315 -1
  67. package/dist/fn/Layout/SwipeView.js +348 -1
  68. package/dist/fn/Layout/TabBar.js +72 -1
  69. package/dist/fn/Layout/_.js +22 -1
  70. package/dist/fn/Loader/_.js +104 -1
  71. package/dist/fn/Loader/corner.js +85 -1
  72. package/dist/fn/Loader/mini.js +125 -1
  73. package/dist/fn/Loader/top.js +73 -1
  74. package/dist/fn/Sheet.js +1101 -1
  75. package/dist/fn/Snackbar.js +216 -1
  76. package/dist/fn/Table/Data.js +974 -1
  77. package/dist/fn/Table/Drag.js +435 -1
  78. package/dist/fn/Table/Normal.js +136 -1
  79. package/dist/fn/Table/Parts.js +41 -1
  80. package/dist/fn/Table/Wrapper.js +60 -1
  81. package/dist/fn/Table/_.js +16 -1
  82. package/dist/fn/Table/cellStyling.js +51 -1
  83. package/dist/fn/Tooltips.js +58 -1
  84. package/dist/fn/_.js +10 -1
  85. package/dist/index.js +20 -1
  86. package/dist/mols/Accordion.js +152 -1
  87. package/dist/mols/Column.js +16 -1
  88. package/dist/mols/LinkifyText.js +42 -1
  89. package/dist/mols/List.js +42 -1
  90. package/dist/mols/Row.js +47 -1
  91. package/dist/mols/Text.js +67 -1
  92. package/dist/mols/_.js +6 -1
  93. package/dist/temps/_.js +1 -1
  94. package/dist/temps/designBook.js +3639 -20
  95. package/package.json +1 -1
@@ -1 +1,472 @@
1
- import{b as E,c as J,d as W,e as K}from"../../../chunk-VY3566IV.js";import{Fragment as j,jsx as n,jsxs as O}from"react/jsx-runtime";import{useState as I,useEffect as R,useRef as L}from"react";import{$$ as w,$$fromRoot as P,useStore as U}from"../../../@utils/_";import F from"../../../atoms/Box";import _ from"../../../atoms/FAI";import $ from"../../../atoms/Span";import H from"../../../mols/Column";import b from"../../../mols/Row";import V from"../../Button";import k from"../../Sheet";import G from"../../Loader/_";import Q from"../Text";import X from"../Parts";import{InputChipsClasses as Y}from"../../../@styles/componentClasses/_";const Z=e=>{let[y,r]=I("show"),[h,N]=I(""),[u]=I(w.uuid.gen()),[l,g]=I(e.options),[o,C]=I(l[0]||null),[S,x]=I(e.selected),[D,T]=I("init");R(()=>{U.set({key:e.selectorID,value:{updateOptions:t=>{g(t)},updateSelected:t=>{x(t)}}})},[]);const B=L(!1);R(()=>{B.current?k.reposition(e.selectorID):B.current=!0},[l]);const z=L(!1);R(()=>{z.current?(r("interlude"),C(l[0]||null),e.onDynamicSearch?(w.interval.clear(u+"-dynamicSearch"),w.interval.standBy(u+"-dynamicSearch",400,()=>K(void 0,null,function*(){let{options:t}=yield e.onDynamicSearch(h);g(t),r("show")}))):(w.interval.clear(u+"-staticSearch"),w.interval.standBy(u+"-staticSearch",400,()=>K(void 0,null,function*(){let t=new RegExp(h,"ig"),p=[];[...e.options].forEach(a=>{var c;!!(!h||((c=String(a.label))!=null?c:String(a.value)).match(t))&&p.push(a)}),g(p),r("show")})))):z.current=!0},[h]);const M=L(!1);R(()=>{M.current?e.onUpdated({values:S}):M.current=!0},[S]),R(()=>{w.scope(()=>{if(w.is.nullish(o)||D=="MouseEvent")return;let t=P("#"+u+"-Selector-Cell-Wrap");if(!t[0])return;let p=P('[data-chips-selector-cell="'+u+"-"+JSON.stringify((o==null?void 0:o.value)||"").replace(/\"/ig,"")+'"]');if(!p[0])return;let{top:a,height:v}=t.position(),{top:c,height:d}=p.position();if(a<=c&&c+d<=a+v)return;let i=t[0].scrollTop+(c-a);D=="ArrowDown"?i-=v-d-20:D=="ArrowUp"&&(i-=20),t[0].scrollTop=i})},[o]);let A=[];return y=="interlude"?A=[O(b.Center,{padding:2,gap:0,children:[n(G.Theme.R,{showInitial:!0}),n(F,{padding:[0,1],fontSize:"1.mini",fontColor:"4.thin",children:"\u691C\u7D22\u4E2D..."})]})]:A=[l.map((t,p)=>{let{value:a,label:v}=t,c=String(JSON.stringify(a)),d=S.findIndex(f=>JSON.stringify(f.value)==c),i=d!=-1,s=JSON.stringify((o==null?void 0:o.value)||"")==c,m={};return(i||s)&&(m={fontColor:"theme",isSemiBoldFont:!0}),s&&(m.backgroundColor="cloud"),i&&(m.backgroundColor="tcOpFew"),n(V.Button.Clear.R,J(E({borderRadius:"3.tone.tertiary",color:"cloud",padding:"1/3",tabIndex:-1,textAlign:"left","data-chips-selector-cell":u+"-"+c.replace(/\"/ig,""),isActive:i||s,isActiveStyles:m},m),{onMouseOver:()=>{T("MouseEvent"),C(t)},onClick:()=>{let f=[...S];i?f.splice(d,1):(f=[...f,t],e.limit&&f.length>e.limit&&f.shift()),x(f)},children:n(e.SelectorCellComponent,{isSelected:i,isFocused:s,value:a,label:v})}),p)})],O(j,{children:[O(H,{padding:"2/3",gap:"2/3",borderBottom:!0,children:[O(b.Separate,{children:[n(Q.Normal,{value:h,onUpdateValidValue:({value:t})=>{N(t)},id:e.selectorID+"-KeywordInput",padding:"2/3",placeholder:"\u691C\u7D22...",leftIcon:n(X.LeftIcon,{right:"2/3",fontSize:"1.mini",fontColor:"3.blur",children:n(_.Search,{})}),onKeyDown:t=>{let{key:p,metaKey:a,ctrlKey:v}=t,c=a||v;if(["ArrowDown","ArrowUp"].includes(p)){let d=+(p=="ArrowDown")*2-1;if(c){let i=l[d==1?l.length-1:0];C(i)}else{let i=l.findIndex(s=>JSON.stringify(s.value)==JSON.stringify((o==null?void 0:o.value)||""))+d;l[i]?C(l[i]):C(l[d==1?0:l.length-1]||null)}}else if(p=="Enter"){let d=S.findIndex(m=>JSON.stringify(m.value)==JSON.stringify((o==null?void 0:o.value)||"")),i=d!=-1,s=[...S];if(i)s.splice(d,1);else{let m=l.findIndex(f=>JSON.stringify(f.value)==JSON.stringify((o==null?void 0:o.value)||""));if(m==-1)return;s=[...s,l[m]],e.limit&&s.length>e.limit&&s.shift()}x(s)}T(p)}}),n(V.Button.Border.S,{marginRight:"1/3",ssSphere:2,backgroundColor:"cloud",borderRadius:"2.tone.secondary",onClick:()=>{k.close(e.selectorID)},children:n(_.Times,{})})]}),O(b.Separate,{children:[O(b.Left,{gap:"1/2",verticalAlign:"baseline",children:[n($,{fontColor:"theme",children:l.length}),n(F,{fontSize:"1.mini",fontColor:"3.blur",children:"\u4EF6\u306E\u30D2\u30C3\u30C8"})]}),n(b.Right,{children:e.limit?O($,{fontColor:"3.blur",fontSize:"1.mini",children:[n($,{fontSize:"3.paragraph",fontColor:"theme",isSemiBoldFont:!0,children:S.length})," / ",e.limit," \u4EF6"]}):null})]})]}),n(H,{gap:"1/4",padding:"1/2",overflow:"auto",freeCSS:{maxHeight:12*26,maxWidth:12*26},id:u+"-Selector-Cell-Wrap",className:Y("SelectorWrapper"),children:A}),e.bottomContent]})},q={openSelector:e=>{let T=e,{selectorID:y,options:r,selected:h,limit:N,bottomContent:u,onDynamicSearch:l,SelectorCellComponent:g,onUpdated:o,onClosed:C,parent:S}=T,x=W(T,["selectorID","options","selected","limit","bottomContent","onDynamicSearch","SelectorCellComponent","onUpdated","onClosed","parent"]),D=y;g=g||(B=>n(b.Left,{children:B.label})),k.open(J(E({parent:S,sheetID:D,type:"custom",gravityPoint:22,padding:[1,0],hold_state:!0,close_option:{aroundClick:!0,escapeKeyDown:!0}},x),{content:n(F,{borderRadius:"2.tone.secondary",backgroundColor:"1.layer.base",border:!0,boxShadow:"1.normal",overflow:"hidden",children:n(Z,{selectorID:y,options:r,limit:N,selected:h,onUpdated:o,SelectorCellComponent:g,bottomContent:u,onDynamicSearch:l},JSON.stringify(h))}),openAfter:()=>{P("#"+e.selectorID+"-KeywordInput").focus()},closeAfter:()=>{C()}}))},closeSelector:e=>{k.close(e)},updateOptions:(e,y)=>{let r=U.get(e);r&&r.updateOptions&&r.updateOptions(y)},updateSelected:(e,y)=>{let r=U.get(e);r&&r.updateSelected&&r.updateSelected(y)}};export{q as Selector,q as default};
1
+ import {
2
+ __async,
3
+ __objRest,
4
+ __spreadProps,
5
+ __spreadValues
6
+ } from "../../../chunk-JJ3PEWPN.js";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
8
+ import {
9
+ useState,
10
+ useEffect,
11
+ useRef
12
+ } from "react";
13
+ import {
14
+ $$,
15
+ $$fromRoot,
16
+ useStore
17
+ } from "../../../@utils/_";
18
+ import Box from "../../../atoms/Box";
19
+ import FAI from "../../../atoms/FAI";
20
+ import Span from "../../../atoms/Span";
21
+ import Column from "../../../mols/Column";
22
+ import Row from "../../../mols/Row";
23
+ import Button from "../../Button";
24
+ import Sheet from "../../Sheet";
25
+ import Loader from "../../Loader/_";
26
+ import Text from "../Text";
27
+ import Parts from "../Parts";
28
+ import { InputChipsClasses } from "../../../@styles/componentClasses/_";
29
+ const Component = (params) => {
30
+ let [val_status, set_status] = useState("show");
31
+ let [val_keyword, set_keyword] = useState("");
32
+ let [val_componentID] = useState($$.uuid.gen());
33
+ let [val_options, set_options] = useState(params.options);
34
+ let [val_focus, set_focus] = useState(val_options[0] || null);
35
+ let [val_selected, set_selected] = useState(params.selected);
36
+ let [val_keyEvent, set_keyEvent] = useState("init");
37
+ useEffect(() => {
38
+ useStore.set({
39
+ key: params.selectorID,
40
+ value: {
41
+ updateOptions: (options) => {
42
+ set_options(options);
43
+ },
44
+ updateSelected: (selected) => {
45
+ set_selected(selected);
46
+ }
47
+ }
48
+ });
49
+ }, []);
50
+ const mountedOptions = useRef(false);
51
+ useEffect(() => {
52
+ if (mountedOptions.current) {
53
+ Sheet.reposition(params.selectorID);
54
+ } else {
55
+ mountedOptions.current = true;
56
+ }
57
+ }, [val_options]);
58
+ const mountedKeyword = useRef(false);
59
+ useEffect(() => {
60
+ if (mountedKeyword.current) {
61
+ set_status("interlude");
62
+ set_focus(val_options[0] || null);
63
+ if (params.onDynamicSearch) {
64
+ $$.interval.clear(val_componentID + "-dynamicSearch");
65
+ $$.interval.standBy(
66
+ val_componentID + "-dynamicSearch",
67
+ 400,
68
+ () => __async(void 0, null, function* () {
69
+ let {
70
+ options
71
+ } = yield params.onDynamicSearch(val_keyword);
72
+ set_options(options);
73
+ set_status("show");
74
+ })
75
+ );
76
+ } else {
77
+ $$.interval.clear(val_componentID + "-staticSearch");
78
+ $$.interval.standBy(
79
+ val_componentID + "-staticSearch",
80
+ 400,
81
+ () => __async(void 0, null, function* () {
82
+ let regExp = new RegExp(val_keyword, "ig");
83
+ let newSelection = [];
84
+ [...params.options].forEach((o) => {
85
+ var _a;
86
+ let match = Boolean(!val_keyword || ((_a = String(o.label)) != null ? _a : String(o.value)).match(regExp));
87
+ if (match)
88
+ newSelection.push(o);
89
+ });
90
+ set_options(newSelection);
91
+ set_status("show");
92
+ })
93
+ );
94
+ }
95
+ } else {
96
+ mountedKeyword.current = true;
97
+ }
98
+ }, [val_keyword]);
99
+ const mountedSelected = useRef(false);
100
+ useEffect(() => {
101
+ if (mountedSelected.current) {
102
+ params.onUpdated({
103
+ values: val_selected
104
+ });
105
+ } else {
106
+ mountedSelected.current = true;
107
+ }
108
+ }, [val_selected]);
109
+ useEffect(() => {
110
+ $$.scope(() => {
111
+ if ($$.is.nullish(val_focus))
112
+ return;
113
+ if (val_keyEvent == "MouseEvent")
114
+ return;
115
+ let Wrapper = $$fromRoot("#" + val_componentID + "-Selector-Cell-Wrap");
116
+ if (!Wrapper[0])
117
+ return;
118
+ let focusCell = $$fromRoot('[data-chips-selector-cell="' + val_componentID + "-" + JSON.stringify((val_focus == null ? void 0 : val_focus.value) || "").replace(/\"/ig, "") + '"]');
119
+ if (!focusCell[0])
120
+ return;
121
+ let { top: pTop, height: pHeight } = Wrapper.position();
122
+ let { top: cTop, height: cHeight } = focusCell.position();
123
+ if (pTop <= cTop && cTop + cHeight <= pTop + pHeight)
124
+ return;
125
+ let scroll = Wrapper[0].scrollTop + (cTop - pTop);
126
+ if (val_keyEvent == "ArrowDown") {
127
+ scroll -= pHeight - cHeight - 20;
128
+ } else if (val_keyEvent == "ArrowUp") {
129
+ scroll -= 20;
130
+ }
131
+ Wrapper[0].scrollTop = scroll;
132
+ });
133
+ }, [val_focus]);
134
+ let List = [];
135
+ if (val_status == "interlude") {
136
+ List = [/* @__PURE__ */ jsxs(
137
+ Row.Center,
138
+ {
139
+ padding: 2,
140
+ gap: 0,
141
+ children: [
142
+ /* @__PURE__ */ jsx(
143
+ Loader.Theme.R,
144
+ {
145
+ showInitial: true
146
+ }
147
+ ),
148
+ /* @__PURE__ */ jsx(
149
+ Box,
150
+ {
151
+ padding: [0, 1],
152
+ fontSize: "1.mini",
153
+ fontColor: "4.thin",
154
+ children: "\u691C\u7D22\u4E2D..."
155
+ }
156
+ )
157
+ ]
158
+ }
159
+ )];
160
+ } else {
161
+ List = [
162
+ val_options.map((option, index) => {
163
+ let {
164
+ value,
165
+ label
166
+ } = option;
167
+ let safeValue = String(JSON.stringify(value));
168
+ let findIndex = val_selected.findIndex((v) => JSON.stringify(v.value) == safeValue);
169
+ let isSelected = findIndex != -1;
170
+ let isFocused = JSON.stringify((val_focus == null ? void 0 : val_focus.value) || "") == safeValue;
171
+ let styles = {};
172
+ if (isSelected || isFocused) {
173
+ styles = {
174
+ fontColor: "theme",
175
+ isSemiBoldFont: true
176
+ };
177
+ }
178
+ if (isFocused)
179
+ styles.backgroundColor = "cloud";
180
+ if (isSelected)
181
+ styles.backgroundColor = "tcOpFew";
182
+ return /* @__PURE__ */ jsx(
183
+ Button.Button.Clear.R,
184
+ __spreadProps(__spreadValues({
185
+ borderRadius: "3.tone.tertiary",
186
+ color: "cloud",
187
+ padding: "1/3",
188
+ tabIndex: -1,
189
+ textAlign: "left",
190
+ "data-chips-selector-cell": val_componentID + "-" + safeValue.replace(/\"/ig, ""),
191
+ isActive: isSelected || isFocused,
192
+ isActiveStyles: styles
193
+ }, styles), {
194
+ onMouseOver: () => {
195
+ set_keyEvent("MouseEvent");
196
+ set_focus(option);
197
+ },
198
+ onClick: () => {
199
+ let newSelected = [...val_selected];
200
+ if (isSelected) {
201
+ newSelected.splice(findIndex, 1);
202
+ } else {
203
+ newSelected = [
204
+ ...newSelected,
205
+ option
206
+ ];
207
+ if (params.limit && newSelected.length > params.limit) {
208
+ newSelected.shift();
209
+ }
210
+ }
211
+ set_selected(newSelected);
212
+ },
213
+ children: /* @__PURE__ */ jsx(
214
+ params.SelectorCellComponent,
215
+ {
216
+ isSelected,
217
+ isFocused,
218
+ value,
219
+ label
220
+ }
221
+ )
222
+ }),
223
+ index
224
+ );
225
+ })
226
+ ];
227
+ }
228
+ return /* @__PURE__ */ jsxs(Fragment, { children: [
229
+ /* @__PURE__ */ jsxs(
230
+ Column,
231
+ {
232
+ padding: "2/3",
233
+ gap: "2/3",
234
+ borderBottom: true,
235
+ children: [
236
+ /* @__PURE__ */ jsxs(Row.Separate, { children: [
237
+ /* @__PURE__ */ jsx(
238
+ Text.Normal,
239
+ {
240
+ value: val_keyword,
241
+ onUpdateValidValue: ({ value }) => {
242
+ set_keyword(value);
243
+ },
244
+ id: params.selectorID + "-KeywordInput",
245
+ padding: "2/3",
246
+ placeholder: "\u691C\u7D22...",
247
+ leftIcon: /* @__PURE__ */ jsx(
248
+ Parts.LeftIcon,
249
+ {
250
+ right: "2/3",
251
+ fontSize: "1.mini",
252
+ fontColor: "3.blur",
253
+ children: /* @__PURE__ */ jsx(FAI.Search, {})
254
+ }
255
+ ),
256
+ onKeyDown: (event) => {
257
+ let {
258
+ key,
259
+ metaKey,
260
+ ctrlKey
261
+ } = event;
262
+ let auxKey = metaKey || ctrlKey;
263
+ if (["ArrowDown", "ArrowUp"].includes(key)) {
264
+ let dir = Number(key == "ArrowDown") * 2 - 1;
265
+ if (auxKey) {
266
+ let next = val_options[dir == 1 ? val_options.length - 1 : 0];
267
+ set_focus(next);
268
+ } else {
269
+ let nextIndex = val_options.findIndex((v) => JSON.stringify(v.value) == JSON.stringify((val_focus == null ? void 0 : val_focus.value) || "")) + dir;
270
+ if (val_options[nextIndex]) {
271
+ set_focus(val_options[nextIndex]);
272
+ } else {
273
+ set_focus(val_options[dir == 1 ? 0 : val_options.length - 1] || null);
274
+ }
275
+ }
276
+ } else if (key == "Enter") {
277
+ let selectedIndex = val_selected.findIndex((v) => JSON.stringify(v.value) == JSON.stringify((val_focus == null ? void 0 : val_focus.value) || ""));
278
+ let isSelected = selectedIndex != -1;
279
+ let newSelected = [...val_selected];
280
+ if (isSelected) {
281
+ newSelected.splice(selectedIndex, 1);
282
+ } else {
283
+ let optionsIndex = val_options.findIndex((v) => JSON.stringify(v.value) == JSON.stringify((val_focus == null ? void 0 : val_focus.value) || ""));
284
+ if (optionsIndex == -1)
285
+ return;
286
+ newSelected = [
287
+ ...newSelected,
288
+ val_options[optionsIndex]
289
+ ];
290
+ if (params.limit && newSelected.length > params.limit) {
291
+ newSelected.shift();
292
+ }
293
+ }
294
+ set_selected(newSelected);
295
+ }
296
+ set_keyEvent(key);
297
+ }
298
+ }
299
+ ),
300
+ /* @__PURE__ */ jsx(
301
+ Button.Button.Border.S,
302
+ {
303
+ marginRight: "1/3",
304
+ ssSphere: 2,
305
+ backgroundColor: "cloud",
306
+ borderRadius: "2.tone.secondary",
307
+ onClick: () => {
308
+ Sheet.close(params.selectorID);
309
+ },
310
+ children: /* @__PURE__ */ jsx(FAI.Times, {})
311
+ }
312
+ )
313
+ ] }),
314
+ /* @__PURE__ */ jsxs(Row.Separate, { children: [
315
+ /* @__PURE__ */ jsxs(
316
+ Row.Left,
317
+ {
318
+ gap: "1/2",
319
+ verticalAlign: "baseline",
320
+ children: [
321
+ /* @__PURE__ */ jsx(
322
+ Span,
323
+ {
324
+ fontColor: "theme",
325
+ children: val_options.length
326
+ }
327
+ ),
328
+ /* @__PURE__ */ jsx(
329
+ Box,
330
+ {
331
+ fontSize: "1.mini",
332
+ fontColor: "3.blur",
333
+ children: "\u4EF6\u306E\u30D2\u30C3\u30C8"
334
+ }
335
+ )
336
+ ]
337
+ }
338
+ ),
339
+ /* @__PURE__ */ jsx(Row.Right, { children: !!params.limit && /* @__PURE__ */ jsxs(
340
+ Span,
341
+ {
342
+ fontColor: "3.blur",
343
+ fontSize: "1.mini",
344
+ children: [
345
+ /* @__PURE__ */ jsx(
346
+ Span,
347
+ {
348
+ fontSize: "3.paragraph",
349
+ fontColor: "theme",
350
+ isSemiBoldFont: true,
351
+ children: val_selected.length
352
+ }
353
+ ),
354
+ " / ",
355
+ params.limit,
356
+ " \u4EF6"
357
+ ]
358
+ }
359
+ ) })
360
+ ] })
361
+ ]
362
+ }
363
+ ),
364
+ /* @__PURE__ */ jsx(
365
+ Column,
366
+ {
367
+ gap: "1/4",
368
+ padding: "1/2",
369
+ overflow: "auto",
370
+ freeCSS: {
371
+ maxHeight: 12 * 26,
372
+ maxWidth: 12 * 26
373
+ },
374
+ id: val_componentID + "-Selector-Cell-Wrap",
375
+ className: InputChipsClasses("SelectorWrapper"),
376
+ children: List
377
+ }
378
+ ),
379
+ params.bottomContent
380
+ ] });
381
+ };
382
+ const Selector = {
383
+ openSelector: (params) => {
384
+ let _a = params, {
385
+ selectorID,
386
+ options,
387
+ selected,
388
+ limit,
389
+ bottomContent,
390
+ onDynamicSearch,
391
+ SelectorCellComponent,
392
+ onUpdated,
393
+ onClosed,
394
+ parent
395
+ } = _a, sheetarams = __objRest(_a, [
396
+ "selectorID",
397
+ "options",
398
+ "selected",
399
+ "limit",
400
+ "bottomContent",
401
+ "onDynamicSearch",
402
+ "SelectorCellComponent",
403
+ "onUpdated",
404
+ "onClosed",
405
+ "parent"
406
+ ]);
407
+ let sheetID = selectorID;
408
+ SelectorCellComponent = SelectorCellComponent || ((params2) => {
409
+ return /* @__PURE__ */ jsx(Row.Left, { children: params2.label });
410
+ });
411
+ Sheet.open(__spreadProps(__spreadValues({
412
+ parent,
413
+ sheetID,
414
+ type: "custom",
415
+ gravityPoint: 22,
416
+ padding: [1, 0],
417
+ hold_state: true,
418
+ close_option: {
419
+ aroundClick: true,
420
+ escapeKeyDown: true
421
+ }
422
+ }, sheetarams), {
423
+ content: /* @__PURE__ */ jsx(
424
+ Box,
425
+ {
426
+ borderRadius: "2.tone.secondary",
427
+ backgroundColor: "1.layer.base",
428
+ border: true,
429
+ boxShadow: "1.normal",
430
+ overflow: "hidden",
431
+ children: /* @__PURE__ */ jsx(
432
+ Component,
433
+ {
434
+ selectorID,
435
+ options,
436
+ limit,
437
+ selected,
438
+ onUpdated,
439
+ SelectorCellComponent,
440
+ bottomContent,
441
+ onDynamicSearch
442
+ },
443
+ JSON.stringify(selected)
444
+ )
445
+ }
446
+ ),
447
+ openAfter: () => {
448
+ $$fromRoot("#" + params.selectorID + "-KeywordInput").focus();
449
+ },
450
+ closeAfter: () => {
451
+ onClosed();
452
+ }
453
+ }));
454
+ },
455
+ closeSelector: (selectorID) => {
456
+ Sheet.close(selectorID);
457
+ },
458
+ updateOptions: (selectorID, options) => {
459
+ let C = useStore.get(selectorID);
460
+ if (C && C.updateOptions)
461
+ C.updateOptions(options);
462
+ },
463
+ updateSelected: (selectorID, selected) => {
464
+ let C = useStore.get(selectorID);
465
+ if (C && C.updateSelected)
466
+ C.updateSelected(selected);
467
+ }
468
+ };
469
+ export {
470
+ Selector,
471
+ Selector as default
472
+ };