amotify 0.1.6 → 0.1.8

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 (286) hide show
  1. package/bundler_style.ts +55 -0
  2. package/dist/@declaration/_.d.ts +5 -109
  3. package/dist/@declaration/_.js +2 -3
  4. package/dist/@declaration/_.js.map +7 -0
  5. package/dist/@declaration/module.d.ts +1 -1
  6. package/dist/@declaration/module.js +1 -1
  7. package/dist/@declaration/module.js.map +7 -0
  8. package/dist/@declaration/property.d.ts +133 -137
  9. package/dist/@declaration/property.js +1 -2
  10. package/dist/@declaration/property.js.map +7 -0
  11. package/dist/@styles/componentClasses/_.css +1499 -0
  12. package/dist/@styles/componentClasses/_.d.ts +22 -0
  13. package/dist/@styles/componentClasses/_.js +392 -0
  14. package/dist/@utils/GenerateClassName.d.ts +11 -0
  15. package/dist/@utils/GenerateClassName.js +2 -0
  16. package/dist/@utils/GenerateClassName.js.map +7 -0
  17. package/dist/@utils/LaunchReactApp.d.ts +19 -0
  18. package/dist/@utils/LaunchReactApp.js +2 -0
  19. package/dist/@utils/LaunchReactApp.js.map +7 -0
  20. package/dist/@utils/_.d.ts +11 -0
  21. package/dist/@utils/_.js +2 -0
  22. package/dist/@utils/_.js.map +7 -0
  23. package/dist/@utils/collectForm.d.ts +11 -0
  24. package/dist/@utils/collectForm.js +2 -0
  25. package/dist/@utils/collectForm.js.map +7 -0
  26. package/dist/{@middleware → @utils}/color.d.ts +3 -3
  27. package/dist/@utils/color.js +2 -0
  28. package/dist/@utils/color.js.map +7 -0
  29. package/dist/@utils/config.d.ts +43 -0
  30. package/dist/@utils/config.js +2 -0
  31. package/dist/@utils/config.js.map +7 -0
  32. package/dist/@utils/fin.d.ts +1 -0
  33. package/dist/@utils/fin.js +2 -0
  34. package/dist/@utils/fin.js.map +7 -0
  35. package/dist/@utils/jsminEx.d.ts +56 -0
  36. package/dist/@utils/jsminEx.js +2 -0
  37. package/dist/@utils/jsminEx.js.map +7 -0
  38. package/dist/@utils/pageTransit.d.ts +11 -0
  39. package/dist/@utils/pageTransit.js +2 -0
  40. package/dist/@utils/pageTransit.js.map +7 -0
  41. package/dist/@utils/useRecycle.d.ts +8 -0
  42. package/dist/@utils/useRecycle.js +2 -0
  43. package/dist/@utils/useRecycle.js.map +7 -0
  44. package/dist/@utils/useStore.d.ts +18 -0
  45. package/dist/@utils/useStore.js +2 -0
  46. package/dist/@utils/useStore.js.map +7 -0
  47. package/dist/atoms/Box.d.ts +9 -0
  48. package/dist/atoms/Box.js +2 -0
  49. package/dist/atoms/Box.js.map +7 -0
  50. package/dist/atoms/FAI.d.ts +18 -0
  51. package/dist/atoms/FAI.js +2 -0
  52. package/dist/atoms/FAI.js.map +7 -0
  53. package/dist/atoms/Flex.d.ts +11 -0
  54. package/dist/atoms/Flex.js +2 -0
  55. package/dist/atoms/Flex.js.map +7 -0
  56. package/dist/atoms/Grid.d.ts +4 -0
  57. package/dist/atoms/Grid.js +2 -0
  58. package/dist/atoms/Grid.js.map +7 -0
  59. package/dist/atoms/Img.d.ts +11 -0
  60. package/dist/atoms/Img.js +2 -0
  61. package/dist/atoms/Img.js.map +7 -0
  62. package/dist/atoms/Logo.d.ts +40 -0
  63. package/dist/atoms/Logo.js +52 -0
  64. package/dist/atoms/Logo.js.map +7 -0
  65. package/dist/atoms/P.d.ts +9 -0
  66. package/dist/atoms/P.js +2 -0
  67. package/dist/atoms/P.js.map +7 -0
  68. package/dist/atoms/Placeholder.d.ts +9 -0
  69. package/dist/atoms/Placeholder.js +2 -0
  70. package/dist/atoms/Placeholder.js.map +7 -0
  71. package/dist/atoms/Span.d.ts +9 -0
  72. package/dist/atoms/Span.js +2 -0
  73. package/dist/atoms/Span.js.map +7 -0
  74. package/dist/atoms/_.d.ts +9 -0
  75. package/dist/atoms/_.js +2 -0
  76. package/dist/atoms/_.js.map +7 -0
  77. package/dist/chunk-E3D4DIO4.js +2 -0
  78. package/dist/chunk-E3D4DIO4.js.map +7 -0
  79. package/dist/fn/Button.d.ts +82 -0
  80. package/dist/fn/Button.js +2 -0
  81. package/dist/fn/Button.js.map +7 -0
  82. package/dist/fn/Cropper.d.ts +27 -0
  83. package/dist/fn/Cropper.js +2 -0
  84. package/dist/fn/Cropper.js.map +7 -0
  85. package/dist/fn/Effect/Fade.d.ts +17 -0
  86. package/dist/fn/Effect/Fade.js +2 -0
  87. package/dist/fn/Effect/Fade.js.map +7 -0
  88. package/dist/fn/Effect/Pudding.d.ts +1 -0
  89. package/dist/fn/Effect/Pudding.js +2 -0
  90. package/dist/fn/Effect/Pudding.js.map +7 -0
  91. package/dist/fn/Effect/Ripple.d.ts +1 -0
  92. package/dist/fn/Effect/Ripple.js +4 -0
  93. package/dist/fn/Effect/Ripple.js.map +7 -0
  94. package/dist/fn/Effect/_.d.ts +9 -0
  95. package/dist/fn/Effect/_.js +2 -0
  96. package/dist/fn/Effect/_.js.map +7 -0
  97. package/dist/fn/Input/Checker.d.ts +17 -0
  98. package/dist/fn/Input/Checker.js +2 -0
  99. package/dist/fn/Input/Checker.js.map +7 -0
  100. package/dist/fn/Input/Chips/Selector.d.ts +44 -0
  101. package/dist/fn/Input/Chips/Selector.js +2 -0
  102. package/dist/fn/Input/Chips/Selector.js.map +7 -0
  103. package/dist/fn/Input/Chips/_.d.ts +60 -0
  104. package/dist/fn/Input/Chips/_.js +2 -0
  105. package/dist/fn/Input/Chips/_.js.map +7 -0
  106. package/dist/fn/Input/Contenteditable.d.ts +17 -0
  107. package/dist/fn/Input/Contenteditable.js +2 -0
  108. package/dist/fn/Input/Contenteditable.js.map +7 -0
  109. package/dist/fn/Input/DigitCharacters.d.ts +17 -0
  110. package/dist/fn/Input/DigitCharacters.js +2 -0
  111. package/dist/fn/Input/DigitCharacters.js.map +7 -0
  112. package/dist/fn/Input/Filer.d.ts +47 -0
  113. package/dist/fn/Input/Filer.js +2 -0
  114. package/dist/fn/Input/Filer.js.map +7 -0
  115. package/dist/fn/Input/Hidden.d.ts +13 -0
  116. package/dist/fn/Input/Hidden.js +2 -0
  117. package/dist/fn/Input/Hidden.js.map +7 -0
  118. package/dist/fn/Input/List.d.ts +50 -0
  119. package/dist/fn/Input/List.js +2 -0
  120. package/dist/fn/Input/List.js.map +7 -0
  121. package/dist/fn/Input/Parts.d.ts +22 -0
  122. package/dist/fn/Input/Parts.js +2 -0
  123. package/dist/fn/Input/Parts.js.map +7 -0
  124. package/dist/fn/Input/Plain.d.ts +7 -0
  125. package/dist/fn/Input/Plain.js +2 -0
  126. package/dist/fn/Input/Plain.js.map +7 -0
  127. package/dist/fn/Input/RichSelect.d.ts +32 -0
  128. package/dist/fn/Input/RichSelect.js +2 -0
  129. package/dist/fn/Input/RichSelect.js.map +7 -0
  130. package/dist/fn/Input/Search.d.ts +6 -0
  131. package/dist/fn/Input/Search.js +2 -0
  132. package/dist/fn/Input/Search.js.map +7 -0
  133. package/dist/fn/Input/Segmented.d.ts +22 -0
  134. package/dist/fn/Input/Segmented.js +2 -0
  135. package/dist/fn/Input/Segmented.js.map +7 -0
  136. package/dist/fn/Input/Select.d.ts +28 -0
  137. package/dist/fn/Input/Select.js +2 -0
  138. package/dist/fn/Input/Select.js.map +7 -0
  139. package/dist/fn/Input/Slider.d.ts +31 -0
  140. package/dist/fn/Input/Slider.js +2 -0
  141. package/dist/fn/Input/Slider.js.map +7 -0
  142. package/dist/fn/Input/Switch.d.ts +17 -0
  143. package/dist/fn/Input/Switch.js +2 -0
  144. package/dist/fn/Input/Switch.js.map +7 -0
  145. package/dist/fn/Input/Text.d.ts +50 -0
  146. package/dist/fn/Input/Text.js +2 -0
  147. package/dist/fn/Input/Text.js.map +7 -0
  148. package/dist/fn/Input/TextArea.d.ts +19 -0
  149. package/dist/fn/Input/TextArea.js +2 -0
  150. package/dist/fn/Input/TextArea.js.map +7 -0
  151. package/dist/fn/Input/Time/Picker.d.ts +37 -0
  152. package/dist/fn/Input/Time/Picker.js +2 -0
  153. package/dist/fn/Input/Time/Picker.js.map +7 -0
  154. package/dist/fn/Input/Time/_.d.ts +78 -0
  155. package/dist/fn/Input/Time/_.js +2 -0
  156. package/dist/fn/Input/Time/_.js.map +7 -0
  157. package/dist/fn/Input/_.d.ts +142 -0
  158. package/dist/fn/Input/_.js +2 -0
  159. package/dist/fn/Input/_.js.map +7 -0
  160. package/dist/fn/Input/core.d.ts +54 -0
  161. package/dist/fn/Input/core.js +2 -0
  162. package/dist/fn/Input/core.js.map +7 -0
  163. package/dist/fn/Layout/PageNotFound.d.ts +6 -0
  164. package/dist/fn/Layout/PageNotFound.js +2 -0
  165. package/dist/fn/Layout/PageNotFound.js.map +7 -0
  166. package/dist/fn/Layout/PageRouter.d.ts +27 -0
  167. package/dist/fn/Layout/PageRouter.js +2 -0
  168. package/dist/fn/Layout/PageRouter.js.map +7 -0
  169. package/dist/fn/Layout/PageViewController.d.ts +13 -0
  170. package/dist/fn/Layout/PageViewController.js +2 -0
  171. package/dist/fn/Layout/PageViewController.js.map +7 -0
  172. package/dist/fn/Layout/Plate.d.ts +9 -0
  173. package/dist/fn/Layout/Plate.js +2 -0
  174. package/dist/fn/Layout/Plate.js.map +7 -0
  175. package/dist/fn/Layout/RootViewController.d.ts +41 -0
  176. package/dist/fn/Layout/RootViewController.js +2 -0
  177. package/dist/fn/Layout/RootViewController.js.map +7 -0
  178. package/dist/fn/Layout/SwipeView.d.ts +40 -0
  179. package/dist/fn/Layout/SwipeView.js +2 -0
  180. package/dist/fn/Layout/SwipeView.js.map +7 -0
  181. package/dist/fn/Layout/TabBar.d.ts +16 -0
  182. package/dist/fn/Layout/TabBar.js +2 -0
  183. package/dist/fn/Layout/TabBar.js.map +7 -0
  184. package/dist/fn/Layout/_.d.ts +27 -0
  185. package/dist/fn/Layout/_.js +2 -0
  186. package/dist/fn/Layout/_.js.map +7 -0
  187. package/dist/fn/Loader/_.d.ts +47 -0
  188. package/dist/fn/Loader/_.js +2 -0
  189. package/dist/fn/Loader/_.js.map +7 -0
  190. package/dist/fn/Loader/corner.d.ts +1 -0
  191. package/dist/fn/Loader/corner.js +2 -0
  192. package/dist/fn/Loader/corner.js.map +7 -0
  193. package/dist/fn/Loader/mini.d.ts +6 -0
  194. package/dist/fn/Loader/mini.js +2 -0
  195. package/dist/fn/Loader/mini.js.map +7 -0
  196. package/dist/fn/Loader/top.d.ts +2 -0
  197. package/dist/fn/Loader/top.js +2 -0
  198. package/dist/fn/Loader/top.js.map +7 -0
  199. package/dist/fn/Sheet.d.ts +75 -0
  200. package/dist/fn/Sheet.js +2 -0
  201. package/dist/fn/Sheet.js.map +7 -0
  202. package/dist/fn/Snackbar.d.ts +24 -0
  203. package/dist/fn/Snackbar.js +2 -0
  204. package/dist/fn/Snackbar.js.map +7 -0
  205. package/dist/fn/Table/Data.d.ts +128 -0
  206. package/dist/fn/Table/Data.js +2 -0
  207. package/dist/fn/Table/Data.js.map +7 -0
  208. package/dist/fn/Table/Drag.d.ts +18 -0
  209. package/dist/fn/Table/Drag.js +2 -0
  210. package/dist/fn/Table/Drag.js.map +7 -0
  211. package/dist/fn/Table/Normal.d.ts +16 -0
  212. package/dist/fn/Table/Normal.js +2 -0
  213. package/dist/fn/Table/Normal.js.map +7 -0
  214. package/dist/fn/Table/Parts.d.ts +24 -0
  215. package/dist/fn/Table/Parts.js +2 -0
  216. package/dist/fn/Table/Parts.js.map +7 -0
  217. package/dist/fn/Table/Wrapper.d.ts +10 -0
  218. package/dist/fn/Table/Wrapper.js +2 -0
  219. package/dist/fn/Table/Wrapper.js.map +7 -0
  220. package/dist/fn/Table/_.d.ts +42 -0
  221. package/dist/fn/Table/_.js +2 -0
  222. package/dist/fn/Table/_.js.map +7 -0
  223. package/dist/fn/Table/cellStyling.d.ts +9 -0
  224. package/dist/fn/Table/cellStyling.js +2 -0
  225. package/dist/fn/Table/cellStyling.js.map +7 -0
  226. package/dist/fn/Tooltips.d.ts +31 -0
  227. package/dist/fn/Tooltips.js +2 -0
  228. package/dist/fn/Tooltips.js.map +7 -0
  229. package/dist/fn/_.d.ts +10 -0
  230. package/dist/fn/_.js +2 -0
  231. package/dist/fn/_.js.map +7 -0
  232. package/dist/index.d.ts +6 -1
  233. package/dist/index.js +2 -17
  234. package/dist/index.js.map +7 -0
  235. package/dist/mols/Accordion.d.ts +25 -0
  236. package/dist/mols/Accordion.js +2 -0
  237. package/dist/mols/Accordion.js.map +7 -0
  238. package/dist/mols/Column.d.ts +7 -0
  239. package/dist/mols/Column.js +2 -0
  240. package/dist/mols/Column.js.map +7 -0
  241. package/dist/mols/LinkifyText.d.ts +10 -0
  242. package/dist/mols/LinkifyText.js +2 -0
  243. package/dist/mols/LinkifyText.js.map +7 -0
  244. package/dist/mols/List.d.ts +11 -0
  245. package/dist/mols/List.js +2 -0
  246. package/dist/mols/List.js.map +7 -0
  247. package/dist/mols/Row.d.ts +16 -0
  248. package/dist/mols/Row.js +2 -0
  249. package/dist/mols/Row.js.map +7 -0
  250. package/dist/mols/Text.d.ts +21 -0
  251. package/dist/mols/Text.js +2 -0
  252. package/dist/mols/Text.js.map +7 -0
  253. package/dist/mols/_.d.ts +6 -0
  254. package/dist/mols/_.js +2 -0
  255. package/dist/mols/_.js.map +7 -0
  256. package/dist/orgs/_.d.ts +1 -0
  257. package/dist/orgs/_.js +1 -0
  258. package/dist/orgs/_.js.map +7 -0
  259. package/dist/style.css +7290 -0
  260. package/dist/style.d.ts +4 -0
  261. package/dist/style.js +392 -0
  262. package/dist/temps/_.d.ts +1 -0
  263. package/dist/temps/_.js +1 -0
  264. package/dist/temps/_.js.map +7 -0
  265. package/package.json +59 -48
  266. package/bundler.ts +0 -68
  267. package/dist/@declaration/amotify.d.ts +0 -1353
  268. package/dist/@declaration/amotify.js +0 -2
  269. package/dist/@middleware/GenerateClassName.d.ts +0 -3
  270. package/dist/@middleware/GenerateClassName.js +0 -282
  271. package/dist/@middleware/_.d.ts +0 -23
  272. package/dist/@middleware/_.js +0 -131
  273. package/dist/@middleware/color.js +0 -99
  274. package/dist/@middleware/pageTransit.d.ts +0 -2
  275. package/dist/@middleware/pageTransit.js +0 -31
  276. package/dist/@middleware/useRecycle.d.ts +0 -2
  277. package/dist/@middleware/useRecycle.js +0 -43
  278. package/dist/@middleware/useStore.d.ts +0 -2
  279. package/dist/@middleware/useStore.js +0 -39
  280. package/dist/@middleware/userAgent.d.ts +0 -14
  281. package/dist/@middleware/userAgent.js +0 -36
  282. package/dist/atoms/Box/index.d.ts +0 -9
  283. package/dist/atoms/Box/index.js +0 -19
  284. package/dist/atoms/index.d.ts +0 -4
  285. package/dist/atoms/index.js +0 -25
  286. package/tsconfig.json +0 -101
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Filer.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty\n} from '@declaration'\n\nimport {\n useState,\n useEffect\n} from 'react'\n\nimport {\n $$,\n useStore,\n Config,\n GenerateClassName\n} from '@utils'\n\nimport Box from '@atoms/Box'\nimport FAI from '@atoms/FAI'\nimport Flex from '@atoms/Flex'\nimport Column from '@mols/Column'\nimport Row from '@mols/Row'\nimport Button from '@fn/Button'\nimport Snackbar from '@fn/Snackbar'\n\nimport {\n Wrapper,\n BoxWrapper,\n CommonEffects,\n DefaultStyles\n} from './core'\n\nimport { InputTypes } from './_'\n\nimport Text from './Text'\nimport { InputFilerClasses } from '@styles/componentClasses/_'\n\nimport { faCloudArrowUp } from '@fortawesome/free-solid-svg-icons/faCloudArrowUp'\n\nnamespace Filer {\n export type Methods = React.FC<Input> & FNs\n export type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLInputElement> & {\n tone?: InputTypes.BoxTone\n tabIndex?: number\n\n id?: string\n disabled?: boolean\n\n value?: CustomFile[]\n limit?: number\n\n fileNameEdit?: boolean\n systemOnly?: boolean\n accept?: Accept\n\n cellStyles?: TagProperty.Params\n cellClassName?: string\n }\n export type CustomFile = File & {\n id: string\n }\n export type Accept = 'image' | string\n export type ListInput = {\n files: File[]\n params: Filer.Input\n val_status: InputTypes.Status.Plain\n set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Plain>>\n }\n export type CellInput = {\n index: number\n file: File\n className?: string\n val_status: InputTypes.Status.Plain\n set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Plain>>\n fileNameEdit?: boolean\n }\n export type FNs = {\n fn: {\n openDialog( params: {\n accept?: Accept\n multiple?: boolean\n } ): Promise<File[]>\n }\n }\n}\n\nfunction DefaultValidation( props: {\n value: any\n params: any\n} ): InputTypes.Validation.Result {\n let { value,params } = props\n let { required } = params as Filer.Input\n let notice: InputTypes.Validation.Notice[] = []\n\n if ( required && !value.length ) {\n notice.push( { type: 'invalid',label: '\u5FC5\u9808\u9805\u76EE\u3067\u3059' } )\n }\n\n return {\n ok: !notice.filter( ( { type } ) => type == 'invalid' ).length,\n notice: notice\n }\n}\n\n\nconst Comps = {\n List: ( props: Filer.ListInput ) => {\n let {\n files,\n params,\n val_status,\n set_status\n } = props\n let Left = ( params.limit || 1 ) - val_status.dataValue.length\n\n let Files = files.map( ( file,index ) => {\n return <Comps.Cell\n key={ file.name }\n index={ index }\n file={ file }\n className={ params.cellClassName }\n val_status={ val_status }\n set_status={ set_status }\n fileNameEdit={ params.fileNameEdit }\n />\n } )\n\n if ( Left > 0 ) {\n Files.push( <label\n key={ 'AddButton' }\n className={ [ params.cellClassName,InputFilerClasses( 'AddButton' ) ].join( ' ' ) }\n data-component-id={ val_status.componentID }\n htmlFor={ params.id }\n tabIndex={ params.tabIndex }\n onKeyDown={ ( event ) => {\n let { key } = event\n if ( params.tabIndex != -1 ) {\n if ( [ ' ','Enter' ].includes( key ) ) {\n $$( Config.get().appRoot )\n .find( '#' + params.id )\n .click()\n }\n }\n } }\n >\n <Row.Center\n padding={ [ '1/3',0 ] }\n >\n <Box\n isRounded\n className={ InputFilerClasses( 'AddIcon' ) }\n >\n <FAI\n icon={ faCloudArrowUp }\n className={ InputFilerClasses( 'Icon' ) }\n fontColor={ 'theme' }\n fontSize='4.thirdTitle'\n backgroundColor={ 'tcOpLow' }\n ssSphere={ 4 }\n />\n </Box>\n <Box>\n <Box\n children={ '\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E' + `\uFF08${ Left }\uFF09` }\n fontColor={ 'theme' }\n fontSize={ '2.normal' }\n isSemiBoldFont\n />\n <Box\n isSemiBoldFont\n fontColor={ '4.thin' }\n fontSize={ '0.xs' }\n >\n \u30D5\u30A1\u30A4\u30EB\u3092\u30C9\u30ED\u30C3\u30D7\n </Box>\n </Box>\n </Row.Center>\n </label> )\n }\n\n return <Column\n flexSizing={ 'auto' }\n className={ params.className }\n children={ Files }\n />\n },\n Cell: ( props: Filer.CellInput ) => {\n let {\n index,\n file,\n className,\n val_status,\n set_status,\n fileNameEdit = true\n } = props\n let {\n name: fileName,\n size,\n type,\n } = file\n\n let [ val_edit,set_edit ] = useState( false )\n let FileID = $$.uuid.gen()\n let Size = size.rank()\n let [ name,extension ] = fileName\n .replace( /\\s/,'' )\n .replace( /(.*)\\.(.*)$/,'$1 $2' ).split( ' ' )\n\n let FileName = '\u30D5\u30A1\u30A4\u30EB'\n if ( type.match( /image/ ) ) {\n FileName = type.replace( /image\\//,'' )\n } else if ( type.match( /pdf/ ) ) {\n FileName = 'PDF'\n } else if ( type.match( /csv/ ) ) {\n FileName = 'CSV'\n } else if ( type.match( /spreadsheet/ ) ) {\n FileName = 'SpreadSheet'\n } else if ( type.match( /presentation/ ) ) {\n FileName = 'PowerPoint'\n } else if ( type.match( /word/ ) ) {\n FileName = 'Word'\n } else if ( type.match( /zip/ ) ) {\n FileName = 'Zip'\n } else if ( type.match( /powerpoint/ ) ) {\n FileName = 'PowerPoint'\n } else if ( type.match( /html/ ) ) {\n FileName = 'HTML'\n } else if ( type.match( /js/ ) ) {\n FileName = 'JavaScript'\n } else if ( type.match( /css/ ) ) {\n FileName = 'CSS'\n } else if ( type.match( /text\\/plain/ ) ) {\n FileName = '\u30C6\u30AD\u30B9\u30C8'\n }\n\n useEffect( () => {\n if ( val_edit ) {\n setTimeout( () => {\n $$( Config.get().appRoot )\n .find( '#' + FileID )\n .focus()\n },100 )\n }\n },[ val_edit ] )\n\n return <Flex\n verticalAlign='center'\n flexWrap={ false }\n gap={ 1 }\n className={ className }\n >\n <FAI.File\n fontSize={ '4.thirdTitle' }\n fontColor={ '4.thin' }\n />\n <Box flexSizing={ 0 }>\n <Box>\n <Flex\n verticalAlign='center'\n gap={ '2/3' }\n flexWrap={ false }\n className={ InputFilerClasses( 'FileName' ) }\n children={ !val_edit ? <>\n { fileName }\n { fileNameEdit ?\n <Button.Button.Clear.R\n ssSphere={ 2.5 }\n flexSizing={ 'none' }\n color='cloud'\n fontColor='4.thin'\n padding={ '1/3' }\n ssEffectsOnActive={ 'expand' }\n onClick={ () => {\n set_edit( true )\n } }\n >\n <FAI.Pen />\n </Button.Button.Clear.R> : null\n }\n </> : <>\n <Column\n gap={ '1/2' }\n flexSizing={ 0 }\n >\n <Flex\n gap={ '2/3' }\n verticalAlign='center'\n >\n <Text.Normal\n tone='border'\n wrapStyles={ {\n flexSizing: 'auto'\n } }\n restrict='fileName'\n name='name'\n required\n id={ FileID }\n form={ 'form-' + FileID }\n enableFormSubmit\n value={ name }\n onKeyDown={ ( event ) => {\n let { key } = event\n if ( key == 'Escape' ) set_edit( false )\n } }\n />\n <Box>\n . { extension }\n </Box>\n </Flex>\n <Flex\n gap={ '2/3' }\n horizontalAlign='right'\n flexWrap={ false }\n >\n <Button.Button.Sub.R\n padding={ [ '2/3',1 ] }\n children={ '\u9589\u3058\u308B' }\n onClick={ () => {\n set_edit( false )\n } }\n />\n <Button.Button.Prime.R\n padding={ [ '2/3',1 ] }\n submitOption={ {\n formName: 'form-' + FileID,\n callback: async ( form ) => {\n let { name } = form\n let nextFiles = [ ...val_status.dataValue ]\n let prevFile = nextFiles[ index ]\n let id = prevFile.id\n if ( !prevFile ) return\n\n let { target } = await prevFile.read()\n if ( !target ) return\n let dataUrl = String( target.result )\n\n let newBlob = await dataUrl.toBlob( file.type )\n if ( !newBlob ) return\n let newFile: any = new File( [ newBlob ],name + '.' + extension,{ type: prevFile.type } )\n newFile.id = id\n\n nextFiles[ index ] = newFile\n\n set_status( {\n ...val_status,\n dataValue: nextFiles,\n eventType: 'update',\n eventID: $$.uuid.gen(),\n } )\n set_edit( false )\n }\n } }\n >\n \u6C7A\u5B9A\n </Button.Button.Prime.R>\n </Flex>\n </Column>\n </>\n }\n />\n </Box>\n { !val_edit ? <>\n <Box\n fontSize={ '1.mini' }\n fontColor={ '4.thin' }\n flexSizing={ 0 }\n children={ FileName + '\u30D5\u30A1\u30A4\u30EB / ' + Size + 'B' }\n />\n </> : null }\n </Box>\n <Button.Button.Sub.R\n color='cloud'\n fontColor='4.thin'\n ssSphere={ 3 }\n onClick={ () => {\n let nextFiles = [ ...val_status.dataValue ]\n let prevFile = nextFiles[ index ]\n if ( !prevFile ) return\n\n nextFiles.splice( index,1 )\n set_status( {\n ...val_status,\n dataValue: nextFiles,\n eventType: 'update',\n eventID: $$.uuid.gen(),\n } )\n } }\n >\n <FAI.Times />\n </Button.Button.Sub.R>\n </Flex>\n }\n}\nconst FileInput: React.FC<Filer.Input> = ( params ) => {\n let {\n tone,\n required,\n form,\n\n fileNameEdit = true,\n systemOnly = false,\n accept = '*',\n limit = 1,\n\n checkValidationAtFirst,\n onChange,\n onValidate,\n onUpdateValue,onUpdateValidValue,\n value = [],\n className,\n\n cellStyles,cellClassName,\n\n componentID,status_id,\n enableFormSubmit,\n\n ...others\n } = params\n\n let Default_Status: InputTypes.Status.Plain = {\n componentID: params.componentID || '',\n dataValue: value,\n eventType: 'init',\n eventID: $$.uuid.gen()\n }\n let [ val_status,set_status ] = useState( Default_Status )\n let [ val_validate,set_validate ] = useState( {\n ok: false,\n notice: []\n } as InputTypes.Validation.Result )\n\n CommonEffects( {\n type: 'file',\n params,\n val_status,\n set_status,\n val_validate,\n set_validate,\n DefaultValidation,\n onUpdateValue,onUpdateValidValue,\n ExtraOverrideParams: {\n dataValue: value,\n formatValue: value,\n },\n ExtraStoreParams: {\n AddFiles: async ( files: any[] ) => {\n let currentFiles = useStore.get( val_status.componentID ).Files\n let newFiles = []\n for ( var i = 0; i < files?.length; i++ ) {\n let file = files[ i ]\n let { type,name } = file\n\n if ( i + 1 + currentFiles.length > limit ) {\n Snackbar.add( {\n componentID: name,\n secondsToClose: 12000,\n children: `\u30D5\u30A1\u30A4\u30EB\u9078\u629E\u4E0A\u9650\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${ name }}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,\n backgroundColor: 'nega'\n } )\n continue\n }\n\n if ( accept ) {\n if ( accept == 'image' ) {\n if ( !type.match( /image/ ) ) {\n Snackbar.add( {\n componentID: name,\n secondsToClose: 12000,\n children: `\u30D5\u30A1\u30A4\u30EB\u5F62\u5F0F\u304C\u7570\u306A\u308B\u305F\u3081\u3001${ name } \u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3002`,\n backgroundColor: 'nega'\n } )\n continue\n }\n }\n }\n newFiles.push( file )\n }\n set_status( {\n ...val_status,\n dataValue: [ ...currentFiles,...newFiles ],\n eventType: 'update',\n eventID: $$.uuid.gen(),\n } )\n }\n }\n } )\n\n let Accept = ''\n if ( accept ) {\n if ( accept == 'image' ) Accept = 'image/png,image/jpeg'\n else Accept = accept\n }\n\n return <BoxWrapper\n val_status={ val_status }\n set_status={ set_status }\n val_validate={ val_validate }\n params={ params }\n >\n <input\n type='file'\n className={ InputFilerClasses( 'Input' ) }\n data-form={ form }\n data-input-type={ 'file' }\n data-component-id={ val_status.componentID }\n data-validation={ val_validate.ok }\n accept={ Accept }\n multiple={ limit == 1 ? false : true }\n onChange={ async ( event ) => {\n let Input = event.target\n let files = Input.files as any\n let newFiles = []\n for ( var i = 0; i < files?.length; i++ ) {\n let file = files[ i ]\n let fileName = file.name\n file.id = $$.uuid.gen()\n\n if ( i + 1 + val_status.dataValue.length > limit ) {\n Snackbar.add( {\n componentID: fileName,\n secondsToClose: 12000,\n children: `\u30D5\u30A1\u30A4\u30EB\u767B\u9332\u6570\u3092\u8D85\u3048\u305F\u305F\u3081\u3001${ fileName }}\u306F\u8FFD\u52A0\u3067\u304D\u307E\u305B\u3093\u3067\u3057\u305F\u3002`,\n backgroundColor: 'nega'\n } )\n continue\n }\n newFiles.push( file )\n }\n set_status( {\n ...val_status,\n dataValue: [ ...val_status.dataValue,...newFiles ],\n eventType: 'update',\n eventID: $$.uuid.gen(),\n } )\n Input.value = ''\n } }\n { ...others }\n tabIndex={ -1 }\n value={ '' }\n />\n { !systemOnly ? <Comps.List\n files={ val_status.dataValue }\n params={ params }\n val_status={ val_status }\n set_status={ set_status }\n /> : null }\n </BoxWrapper>\n}\n\n$$( document ).addEvent( {\n eventType: 'dragover',\n callback: ( event ) => {\n event.preventDefault()\n\n $$( Config.get().appRoot )\n .find( '.' + InputFilerClasses( 'AddButton' ) )\n .addClass( InputFilerClasses( 'Draggable' ) )\n },\n option: {\n passive: false\n }\n} ).addEvent( {\n eventType: 'drop',\n callback: ( event: any ) => {\n event.preventDefault()\n\n $$( Config.get().appRoot )\n .find( '.' + InputFilerClasses( 'AddButton' ) )\n .removeClass( InputFilerClasses( 'Draggable' ) )\n let Files = event.dataTransfer.files\n if ( Files.length ) {\n let Target = event.target as HTMLElement\n\n if ( $$( Config.get().appRoot ).find( Target ).hasClass( InputFilerClasses( 'AddButton' ) ) ) {\n let { componentId } = Target.dataset\n let component = useStore.get( componentId! )\n if ( component && component.AddFiles ) component.AddFiles( Files )\n }\n }\n },\n option: { passive: false }\n} )\n\nconst Filer: Filer.Methods = ( rawParams: Filer.Input ) => {\n rawParams = { ...rawParams }\n rawParams.override = 'force'\n let params = GenerateClassName( rawParams )\n params.cellClassName = [\n params.cellClassName,\n DefaultStyles.Boxish( {\n ...params.cellStyles,\n tone: params.tone\n } ).className,\n ].join( ' ' )\n\n return <Wrapper\n componentID={ rawParams.componentID }\n children={ FileInput }\n params={ params }\n />\n}\nFiler.fn = {\n openDialog: ( params ) => {\n let {\n multiple,\n accept\n } = params\n\n return new Promise( resolve => {\n const input = document.createElement( 'input' )\n input.type = 'file'\n input.multiple = multiple ?? true\n if ( accept ) {\n if ( accept == 'image' ) input.accept = 'image/png,image/jpeg'\n else input.accept = accept\n }\n input.onchange = ( event: any ) => {\n resolve( event.target.files )\n }\n input.click()\n } )\n }\n}\nexport {\n Filer,\n Filer as default\n}"],
5
+ "mappings": "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",
6
+ "names": ["Fragment", "jsx", "jsxs", "useState", "useEffect", "$$", "useStore", "Config", "GenerateClassName", "Box", "FAI", "Flex", "Column", "Row", "Button", "Snackbar", "Wrapper", "BoxWrapper", "CommonEffects", "DefaultStyles", "Text", "InputFilerClasses", "faCloudArrowUp", "DefaultValidation", "props", "value", "params", "required", "notice", "type", "Comps", "files", "val_status", "set_status", "Left", "Files", "file", "index", "event", "key", "className", "fileNameEdit", "fileName", "size", "val_edit", "set_edit", "FileID", "Size", "name", "extension", "FileName", "form", "__async", "nextFiles", "prevFile", "id", "target", "newBlob", "newFile", "__spreadProps", "__spreadValues", "FileInput", "_a", "tone", "systemOnly", "accept", "limit", "checkValidationAtFirst", "onChange", "onValidate", "onUpdateValue", "onUpdateValidValue", "cellStyles", "cellClassName", "componentID", "status_id", "enableFormSubmit", "others", "__objRest", "Default_Status", "val_validate", "set_validate", "currentFiles", "newFiles", "i", "Accept", "Input", "Target", "componentId", "component", "Filer", "rawParams", "multiple", "resolve", "input"]
7
+ }
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ declare namespace Hidden {
3
+ type Input = React.DOMAttributes<HTMLInputElement> & {
4
+ componentID?: string;
5
+ name?: string;
6
+ form?: string;
7
+ enableFormSubmit?: boolean;
8
+ id?: string;
9
+ value?: string | number | plainObject;
10
+ };
11
+ }
12
+ declare const Hidden: (params: Hidden.Input) => import("react/jsx-runtime").JSX.Element;
13
+ export { Hidden, Hidden as default };
@@ -0,0 +1,2 @@
1
+ import{b as i,c as o,d as r}from"../../chunk-E3D4DIO4.js";import{jsx as d}from"react/jsx-runtime";import{Wrapper as l}from"./core";const s=n=>{let e=n,{componentID:p="",enableFormSubmit:c,form:m,value:t=""}=e,u=r(e,["componentID","enableFormSubmit","form","value"]);return d("input",o(i({value:JSON.stringify(t),"data-input-type":"hidden","data-form":m,"data-component-id":p,"data-value":JSON.stringify(t)},u),{type:"hidden"}))},a=n=>d(l,{componentID:n.componentID,children:s,params:n});export{a as Hidden,a as default};
2
+ //# sourceMappingURL=Hidden.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Hidden.tsx"],
4
+ "sourcesContent": ["import {\n Wrapper\n} from './core'\n\nnamespace Hidden {\n export type Input = React.DOMAttributes<HTMLInputElement> & {\n componentID?: string\n name?: string\n form?: string\n\n enableFormSubmit?: boolean\n\n id?: string\n value?: string | number | plainObject\n }\n}\n\nconst HiddenInput: React.FC<Hidden.Input> = ( params ) => {\n let {\n componentID = '',\n enableFormSubmit,\n\n form,\n value = '',\n ...others\n } = params\n\n return <input\n value={ JSON.stringify( value ) }\n data-input-type={ 'hidden' }\n data-form={ form }\n data-component-id={ componentID }\n data-value={ JSON.stringify( value ) }\n { ...others }\n type='hidden'\n />\n}\n\nconst Hidden = ( params: Hidden.Input ) => {\n return <Wrapper\n componentID={ params.componentID }\n children={ HiddenInput }\n params={ params }\n />\n}\nexport {\n Hidden,\n Hidden as default\n}"],
5
+ "mappings": "0DA2BS,cAAAA,MAAA,oBA3BT,OACE,WAAAC,MACK,SAeP,MAAMC,EAAwCC,GAAY,CACxD,IAOIC,EAAAD,EANF,aAAAE,EAAc,GACd,iBAAAC,EAEA,KAAAC,EACA,MAAAC,EAAQ,EAvBZ,EAyBMJ,EADCK,EAAAC,EACDN,EADC,CALH,cACA,mBAEA,OACA,UAIF,OAAOJ,EAAC,QAAAW,EAAAC,EAAA,CACN,MAAQ,KAAK,UAAWJ,CAAM,EAC9B,kBAAkB,SAClB,YAAYD,EACZ,oBAAoBF,EACpB,aAAa,KAAK,UAAWG,CAAM,GAC9BC,GANC,CAON,KAAK,UACP,CACF,EAEMI,EAAWV,GACRH,EAACC,EAAA,CACN,YAAcE,EAAO,YACrB,SAAWD,EACX,OAASC,EACX",
6
+ "names": ["jsx", "Wrapper", "HiddenInput", "params", "_a", "componentID", "enableFormSubmit", "form", "value", "others", "__objRest", "__spreadProps", "__spreadValues", "Hidden"]
7
+ }
@@ -0,0 +1,50 @@
1
+ /// <reference types="react" />
2
+ import { TagProperty, ReactElement } from '../../@declaration/_';
3
+ import { InputTypes } from './_';
4
+ declare namespace List {
5
+ type Tone = 'border' | 'cloud' | 'vivid' | 'normal' | 'plain';
6
+ type Input = InputTypes.CoreInput & {
7
+ tone?: Tone;
8
+ icon?: boolean;
9
+ tabIndex?: number;
10
+ id?: string;
11
+ iconType?: 'radio' | 'checkbox';
12
+ minSelect?: number;
13
+ disabled?: boolean;
14
+ value?: any | any[];
15
+ options: Options[];
16
+ hideInput?: boolean;
17
+ leftIndicator?: ReactElement | false;
18
+ rightIndicator?: ReactElement | false;
19
+ cellStyles?: TagProperty.Params;
20
+ cellClassName?: string;
21
+ cellCheckedStyles?: TagProperty.Params;
22
+ cellCheckedClassName?: string;
23
+ defaultActiveStyling?: boolean;
24
+ };
25
+ type Plain = Input & {
26
+ type: 'radio' | 'checkbox' | 'checker';
27
+ tone: Tone;
28
+ };
29
+ type Options = {
30
+ value: any;
31
+ label: ReactElement;
32
+ disabled?: boolean;
33
+ className?: string;
34
+ checkedStyles?: TagProperty.Params;
35
+ checkedClassName?: string;
36
+ } & TagProperty.Params;
37
+ type ListInput = {
38
+ params: List.Plain;
39
+ val_status: InputTypes.Status.Plain;
40
+ set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Plain>>;
41
+ };
42
+ }
43
+ declare const Radio: React.FC<List.Input>;
44
+ declare const Checkbox: React.FC<List.Input>;
45
+ declare const List: {
46
+ Plain: import("react").FC<List.Plain>;
47
+ Radio: import("react").FC<List.Input>;
48
+ Checkbox: import("react").FC<List.Input>;
49
+ };
50
+ export { List, Radio, Checkbox, List as default };
@@ -0,0 +1,2 @@
1
+ import{b as t,c,d as B}from"../../chunk-E3D4DIO4.js";import{jsx as l,jsxs as te}from"react/jsx-runtime";import{useState as X}from"react";import{$$ as I,Config as ne}from"@utils";import D from"@atoms/Box";import ie from"@atoms/Flex";import oe from"@atoms/FAI";import se from"@fn/Button";import{BoxWrapper as re,SubmitForm as ce,CommonEffects as de,DefaultStyles as ue,Wrapper as pe}from"./core";import fe from"./Hidden";import{InputListClasses as s}from"@styles/componentClasses/_";function me(e){let{value:n,params:i}=e,{type:h,required:d,minSelect:a=0}=i,o=[];return d&&(n.length||h=="radio"&&o.push({type:"invalid",label:"\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093"})),a&&n.length<a&&o.push({type:"invalid",label:`${a}\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044`}),{ok:!o.filter(({type:r})=>r=="invalid").length,notice:o}}const ye=e=>{let{value:n,options:i=[]}=e,h=I.is.exist(n)?I.flatArray(n):[],d=i.map(o=>{let{value:r,label:C}=o;return c(t({},o),{value:JSON.stringify(r),label:C})}),a=[];return h.forEach(o=>{let r=JSON.stringify(o);d.findIndex(k=>k.value==r)!=-1&&a.push(r)}),l(P.Core,c(t({},e),{value:a,options:d}))},P={Core:e=>{let N=e,{type:n,tone:i,required:h,componentID:d="",form:a,override:o,freeCSS:r,icon:C,iconType:k,enableFormSubmit:J,defaultActiveStyling:$,checkValidationAtFirst:W,onValidate:j,onUpdateValue:R,onUpdateValidValue:_,value:A,options:v,leftIndicator:z,rightIndicator:U,className:F,cellStyles:q,cellClassName:w,cellCheckedStyles:H,cellCheckedClassName:K}=N,T=B(N,["type","tone","required","componentID","form","override","freeCSS","icon","iconType","enableFormSubmit","defaultActiveStyling","checkValidationAtFirst","onValidate","onUpdateValue","onUpdateValidValue","value","options","leftIndicator","rightIndicator","className","cellStyles","cellClassName","cellCheckedStyles","cellCheckedClassName"]),g={componentID:d,dataValue:A,eventType:"init",eventID:I.uuid.gen()},[u,b]=X(g),[x,S]=X({ok:!1,notice:[]});return de({type:"list",params:e,val_status:u,set_status:b,val_validate:x,set_validate:S,onUpdateValue:R,onUpdateValidValue:_,DefaultValidation:me}),te(re,{val_status:u,set_status:b,val_validate:x,params:e,children:[l(fe,c(t({"data-value":JSON.stringify(u.dataValue),form:a,"data-input-type":n,"data-validation":x.ok},T),{componentID:u.componentID})),l(P.List,{params:e,val_status:u,set_status:b})]})},List:e=>{let{params:n,val_status:i,set_status:h}=e,{componentID:d,type:a,tone:o,icon:r=!0,options:C,name:k,form:J,tabIndex:$,hideInput:W,disabled:j,className:R,cellStyles:_,cellClassName:A="",cellCheckedStyles:v,cellCheckedClassName:z="",enableFormSubmit:U,defaultActiveStyling:F=!0}=n,{dataValue:q}=i,w=r?l(D,{flexSizing:"none",children:n.iconType=="radio"?l(P.RadioIcon,{}):n.iconType=="checkbox"?l(P.CheckboxIcon,{}):null}):null,H=C.map((K,T)=>{let Q=K,{value:g,label:u,disabled:b=j,className:x="",checkedStyles:S,checkedClassName:N=""}=Q,ae=B(Q,["value","label","disabled","className","checkedStyles","checkedClassName"]),G=I.uuid.gen(),M=q.findIndex(p=>p===g)!=-1,L=t(t({},_),ae),O=[s("Label"),s("defaultActiveStyling_"+!!F),A,x];return M&&(L=c(t(t(t({},L),v),S),{freeCSS:t(t(t({},L.freeCSS),v==null?void 0:v.freeCSS),S==null?void 0:S.freeCSS)}),O=[...O,z,N]),[l("input",{type:a=="radio"?"radio":"checkbox",className:[s("Input"),s("defaultActiveStyling_"+!!F)].join(" "),name:"RadioCheckbox-"+k,"data-list-index":d+"-"+T,id:G,value:String(g),"data-form-name":J,disabled:b,checked:M,onFocus:p=>{if(b||a!="radio"||i.dataValue.length)return;let{value:f,checked:V}=p.target,m=[f];h(c(t({},i),{dataValue:m,eventType:"update",eventID:I.uuid.gen()}))},onChange:p=>{if(b)return;let{value:f,checked:V}=p.target,m=[];if(a=="radio")m=[f];else if(a=="checkbox"||a=="checker")if(V)m=[...i.dataValue,f];else{let y=[...i.dataValue];y.splice(i.dataValue.findIndex(le=>le==f),1),m=y}h(c(t({},i),{dataValue:m,eventType:"update",eventID:I.uuid.gen()}))},onKeyDown:p=>{let{key:f,shiftKey:V}=p;if((a=="checkbox"||a=="checker")&&f!="Tab"){if(f.match(/Arrow/)){p.preventDefault();let m=["ArrowLeft","ArrowUp"].includes(f)?-1:1,y=T+m;y<0?y=C.length-1:y>=C.length&&(y=0),I(ne.get().appRoot).find(`input[data-list-index="${d}-${y}"]`).focus()}}U&&ce(p)},tabIndex:$},"List-"+JSON.stringify(g)),te(se.Label.Plain,c(t({htmlFor:G,className:O.join(" "),tabIndex:-1,display:"flex",ssEffectsOnActive:!1,verticalAlign:"center",gap:"1/3",flexWrap:!1},L),{children:[w,I.is.string(u)?l(D,{children:u}):u]}),"ListTrigger-"+JSON.stringify(g))]});return l(ie,{flexSizing:"auto",freeCSS:t({},n.freeCSS),className:[R,s("CellBase"),s("HideInput_"+W),s("IconIndicator_"+!!r),s("Tone_"+o)].join(" "),children:H})},RadioIcon:()=>l(D,{className:s("Icon"),backgroundColor:"1.layer.base",border:!0,transition:"middle",position:"relative",borderRadius:"sphere",flexCenter:!0}),CheckboxIcon:()=>l(D,{className:[s("Icon"),s("CheckboxIcon")].join(" "),borderRadius:"3.tone.tertiary",backgroundColor:"1.layer.base",border:!0,transition:"middle",fontColor:"white",position:"relative",flexCenter:!0,children:l(oe.Check,{className:s("I"),transition:"middle",opacity:"trans",freeCSS:{zIndex:8}})})},E=e=>{e=t({},e);let n=ue.ListCell(e);return l(pe,{componentID:e.componentID,children:ye,params:n})},Y=e=>l(E,c(t({iconType:"radio",tone:e.tone},e),{type:"radio"})),Z=e=>l(E,c(t({iconType:"checkbox",tone:e.tone},e),{type:"checkbox"})),ee={Plain:E,Radio:Y,Checkbox:Z};export{Z as Checkbox,ee as List,Y as Radio,ee as default};
2
+ //# sourceMappingURL=List.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/List.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty,\n ReactElement,\n} from '@declaration'\n\nimport {\n useState,\n useEffect\n} from 'react'\n\nimport {\n $$,\n Config\n} from '@utils'\n\nimport Box from '@atoms/Box'\nimport Flex from '@atoms/Flex'\nimport FAI from '@atoms/FAI'\nimport Button from '@fn/Button'\n\nimport {\n BoxWrapper,\n SubmitForm,\n CommonEffects,\n DefaultStyles,\n Wrapper\n} from './core'\n\nimport { InputTypes } from './_'\n\nimport Hidden from './Hidden'\n\nimport { InputListClasses } from '@styles/componentClasses/_'\n\nnamespace List {\n export type Tone = 'border' | 'cloud' | 'vivid' | 'normal' | 'plain'\n export type Input = InputTypes.CoreInput & {\n tone?: Tone\n icon?: boolean\n\n tabIndex?: number\n id?: string\n\n iconType?: 'radio' | 'checkbox'\n minSelect?: number\n\n\n disabled?: boolean\n value?: any | any[]\n options: Options[]\n\n hideInput?: boolean\n\n leftIndicator?: ReactElement | false\n rightIndicator?: ReactElement | false\n\n cellStyles?: TagProperty.Params\n cellClassName?: string\n cellCheckedStyles?: TagProperty.Params\n cellCheckedClassName?: string\n defaultActiveStyling?: boolean\n }\n export type Plain = Input & {\n type: 'radio' | 'checkbox' | 'checker'\n tone: Tone\n }\n export type Options = {\n value: any\n label: ReactElement\n disabled?: boolean\n className?: string\n checkedStyles?: TagProperty.Params\n checkedClassName?: string\n } & TagProperty.Params\n export type ListInput = {\n params: List.Plain\n val_status: InputTypes.Status.Plain\n set_status: React.Dispatch<React.SetStateAction<InputTypes.Status.Plain>>\n }\n}\n\nfunction DefaultValidation( props: {\n value: any\n params: any\n} ): InputTypes.Validation.Result {\n let { value,params } = props\n let {\n type,\n required,\n minSelect = 0\n } = params as List.Plain\n let notice: InputTypes.Validation.Notice[] = []\n\n if ( required ) {\n if ( !value.length ) {\n if ( type == 'radio' ) {\n notice.push( { type: 'invalid',label: '\u9078\u629E\u3055\u308C\u3066\u3044\u307E\u305B\u3093' } )\n }\n }\n }\n\n if ( minSelect ) {\n if ( value.length < minSelect ) {\n notice.push( { type: 'invalid',label: `${ minSelect }\u500B\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044` } )\n }\n }\n\n return {\n ok: !notice.filter( ( { type } ) => type == 'invalid' ).length,\n notice: notice\n }\n}\nconst ListInput: React.FC<List.Plain> = ( props ) => {\n let { value,options = [] } = props\n let Values = $$.is.exist( value ) ? $$.flatArray( value ) : []\n let DefaultOptions = options.map( ( option ) => {\n let { value,label } = option\n\n return {\n ...option,\n value: JSON.stringify( value ),\n label\n }\n } )\n let DefaultValues: string[] = []\n Values.forEach( ( value ) => {\n let Val = JSON.stringify( value )\n let Index = DefaultOptions.findIndex( ( option ) => option.value == Val )\n if ( Index == -1 ) return\n DefaultValues.push( Val )\n } )\n\n return <Comps.Core\n { ...props }\n value={ DefaultValues }\n options={ DefaultOptions }\n />\n}\nconst Comps = {\n Core: ( params: List.Plain ) => {\n let {\n type,\n tone,\n required,\n componentID = '',\n form,\n override,\n\n freeCSS,\n icon,\n iconType,\n\n enableFormSubmit,\n defaultActiveStyling,\n checkValidationAtFirst,\n onValidate,\n onUpdateValue,onUpdateValidValue,\n value,\n options,\n leftIndicator,rightIndicator,\n\n className,\n\n cellStyles,cellClassName,\n cellCheckedStyles,cellCheckedClassName,\n\n ...others\n } = params\n\n let Default_Status: InputTypes.Status.Plain = {\n componentID,\n dataValue: value,\n eventType: 'init',\n eventID: $$.uuid.gen()\n }\n let [ val_status,set_status ] = useState( Default_Status )\n let [ val_validate,set_validate ] = useState( {\n ok: false,\n notice: []\n } as InputTypes.Validation.Result )\n\n CommonEffects( {\n type: 'list',\n params,\n val_status,\n set_status,\n val_validate,\n set_validate,\n onUpdateValue,onUpdateValidValue,\n DefaultValidation\n } )\n\n return <BoxWrapper\n val_status={ val_status }\n set_status={ set_status }\n val_validate={ val_validate }\n params={ params }\n >\n <Hidden\n data-value={ JSON.stringify( val_status.dataValue ) }\n form={ form }\n data-input-type={ type }\n data-validation={ val_validate.ok }\n { ...others }\n componentID={ val_status.componentID }\n />\n <Comps.List\n params={ params }\n val_status={ val_status }\n set_status={ set_status }\n />\n </BoxWrapper>\n },\n List: ( props: List.ListInput ) => {\n let {\n params,\n val_status,\n set_status\n } = props\n\n let {\n componentID,\n type,\n tone,\n icon = true,\n options,\n name,\n form,\n tabIndex,\n hideInput,\n disabled: DefaultDisabled,\n className: ListClassName,\n\n cellStyles: DefaultCellStyles,\n cellClassName: DefaultCellClassName = '',\n cellCheckedStyles: DefaultCellCheckedStyles,\n cellCheckedClassName: DefaultCellCheckedClassName = '',\n\n enableFormSubmit,\n defaultActiveStyling = true\n } = params\n let {\n dataValue\n } = val_status\n\n let IconBox = icon ? <Box\n flexSizing={ 'none' }\n children={ params.iconType == 'radio' ? <Comps.RadioIcon /> :\n params.iconType == 'checkbox' ? <Comps.CheckboxIcon /> : null }\n /> : null\n\n let Cells = options.map( ( option,index ) => {\n let {\n value,\n label,\n disabled = DefaultDisabled,\n className = '',\n checkedStyles,\n checkedClassName = '',\n ...styles\n } = option\n\n let CellID = $$.uuid.gen()\n let Checked = dataValue.findIndex( ( v: string ) => v === value ) != -1\n\n let Styles = {\n ...DefaultCellStyles,\n ...styles\n } as TagProperty.Params\n let ClassName = [\n InputListClasses( 'Label' ),\n InputListClasses( 'defaultActiveStyling_' + !!defaultActiveStyling ),\n DefaultCellClassName,\n className\n ]\n\n if ( Checked ) {\n Styles = {\n ...Styles,\n ...DefaultCellCheckedStyles,\n ...checkedStyles,\n freeCSS: {\n ...Styles.freeCSS,\n ...DefaultCellCheckedStyles?.freeCSS,\n ...checkedStyles?.freeCSS\n }\n }\n\n ClassName = [\n ...ClassName,\n DefaultCellCheckedClassName,\n checkedClassName\n ]\n }\n\n return [\n <input\n key={ 'List-' + JSON.stringify( value ) }\n type={ type == 'radio' ? 'radio' : 'checkbox' }\n className={ [\n InputListClasses( 'Input' ),\n InputListClasses( 'defaultActiveStyling_' + !!defaultActiveStyling )\n ].join( ' ' ) }\n name={ 'RadioCheckbox-' + name }\n data-list-index={ componentID + '-' + index }\n id={ CellID }\n value={ String( value ) }\n data-form-name={ form }\n disabled={ disabled }\n checked={ Checked }\n onFocus={ ( event ) => {\n if ( disabled ) return\n if ( type != 'radio' ) return\n if ( val_status.dataValue.length ) return\n let { value,checked } = event.target\n let nextValue: any = [ value ]\n\n set_status( {\n ...val_status,\n dataValue: nextValue,\n eventType: 'update',\n eventID: $$.uuid.gen()\n } )\n } }\n onChange={ ( event ) => {\n if ( disabled ) return\n let { value,checked } = event.target\n let nextValue = []\n if ( type == 'radio' ) {\n nextValue = [ value ]\n } else if ( type == 'checkbox' || type == 'checker' ) {\n if ( checked ) {\n nextValue = [ ...val_status.dataValue,value ]\n } else {\n let prevValue = [ ...val_status.dataValue ]\n prevValue.splice( val_status.dataValue.findIndex( ( v: any ) => v == value ),1 )\n nextValue = prevValue\n }\n }\n\n set_status( {\n ...val_status,\n dataValue: nextValue,\n eventType: 'update',\n eventID: $$.uuid.gen()\n } )\n } }\n onKeyDown={ ( event ) => {\n let { key,shiftKey } = event\n if ( type == 'checkbox' || type == 'checker' ) {\n if ( key == 'Tab' ) {\n if ( shiftKey ) { } else { }\n } else if ( key.match( /Arrow/ ) ) {\n event.preventDefault()\n\n let dir = [ 'ArrowLeft','ArrowUp' ].includes( key ) ? -1 : 1\n let nextIndex = index + dir\n\n if ( nextIndex < 0 ) {\n nextIndex = options.length - 1\n } else if ( nextIndex >= options.length ) {\n nextIndex = 0\n }\n\n $$( Config.get().appRoot )\n .find( `input[data-list-index=\"${ componentID }-${ nextIndex }\"]` )\n .focus()\n }\n }\n\n if ( enableFormSubmit ) SubmitForm( event )\n } }\n tabIndex={ tabIndex }\n />,\n <Button.Label.Plain\n key={ 'ListTrigger-' + JSON.stringify( value ) }\n htmlFor={ CellID }\n className={ ClassName.join( ' ' ) }\n tabIndex={ -1 }\n display='flex'\n ssEffectsOnActive={ false }\n verticalAlign='center'\n gap={ '1/3' }\n flexWrap={ false }\n { ...Styles }\n >\n { IconBox }\n { $$.is.string( label ) ? <Box children={ label } /> : label }\n </Button.Label.Plain>\n ]\n } )\n\n return <Flex\n flexSizing={ 'auto' }\n freeCSS={ {\n ...params.freeCSS\n } }\n className={ [\n ListClassName,\n InputListClasses( 'CellBase' ),\n InputListClasses( 'HideInput_' + hideInput ),\n InputListClasses( 'IconIndicator_' + !!icon ),\n InputListClasses( 'Tone_' + tone )\n ].join( ' ' ) }\n children={ Cells }\n />\n },\n RadioIcon: () => ( <Box\n className={ InputListClasses( 'Icon' ) }\n backgroundColor={ '1.layer.base' }\n border\n transition='middle'\n position='relative'\n borderRadius={ 'sphere' }\n flexCenter\n /> ),\n CheckboxIcon: () => ( <Box\n className={ [\n InputListClasses( 'Icon' ),\n InputListClasses( 'CheckboxIcon' )\n ].join( ' ' ) }\n borderRadius={ '3.tone.tertiary' }\n backgroundColor={ '1.layer.base' }\n border\n transition='middle'\n fontColor={ 'white' }\n position='relative'\n flexCenter\n >\n <FAI.Check\n className={ InputListClasses( 'I' ) }\n transition='middle'\n opacity='trans'\n freeCSS={ {\n zIndex: 8\n } }\n />\n </Box> ),\n}\n\n\nconst Plain: React.FC<List.Plain> = ( rawParams ) => {\n rawParams = { ...rawParams }\n let params = DefaultStyles.ListCell( rawParams )\n return <Wrapper\n componentID={ rawParams.componentID }\n children={ ListInput }\n params={ params }\n />\n}\nconst Radio: React.FC<List.Input> = ( params ) => ( <Plain\n iconType='radio'\n tone={ params.tone as any }\n { ...params }\n type='radio'\n/> )\nconst Checkbox: React.FC<List.Input> = ( params ) => ( <Plain\n iconType='checkbox'\n tone={ params.tone as any }\n { ...params }\n type='checkbox'\n/> )\nconst List = {\n Plain,\n Radio,\n Checkbox\n}\nexport {\n List,\n Radio,\n Checkbox,\n List as default\n}"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "jsxs", "useState", "$$", "Config", "Box", "Flex", "FAI", "Button", "BoxWrapper", "SubmitForm", "CommonEffects", "DefaultStyles", "Wrapper", "Hidden", "InputListClasses", "DefaultValidation", "props", "value", "params", "type", "required", "minSelect", "notice", "ListInput", "options", "Values", "DefaultOptions", "option", "label", "__spreadProps", "__spreadValues", "DefaultValues", "Val", "Comps", "_a", "tone", "componentID", "form", "override", "freeCSS", "icon", "iconType", "enableFormSubmit", "defaultActiveStyling", "checkValidationAtFirst", "onValidate", "onUpdateValue", "onUpdateValidValue", "leftIndicator", "rightIndicator", "className", "cellStyles", "cellClassName", "cellCheckedStyles", "cellCheckedClassName", "others", "__objRest", "Default_Status", "val_status", "set_status", "val_validate", "set_validate", "name", "tabIndex", "hideInput", "DefaultDisabled", "ListClassName", "DefaultCellStyles", "DefaultCellClassName", "DefaultCellCheckedStyles", "DefaultCellCheckedClassName", "dataValue", "IconBox", "Cells", "index", "disabled", "checkedStyles", "checkedClassName", "styles", "CellID", "Checked", "v", "Styles", "ClassName", "event", "checked", "nextValue", "prevValue", "key", "shiftKey", "dir", "nextIndex", "Plain", "rawParams", "Radio", "Checkbox", "List"]
7
+ }
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ import { TagProperty, ReactElement } from '../../@declaration/_';
3
+ import Span from '../../atoms/Span';
4
+ import { InputTypes } from './_';
5
+ declare namespace Parts {
6
+ type Methods = {
7
+ RequiredSign: React.FC<Span.Input>;
8
+ RequiredShortSign: React.FC<Span.Input>;
9
+ OmitSign: React.FC<Span.Input>;
10
+ LeftIndicator: React.FC<Input>;
11
+ RightIndicator: React.FC<Input>;
12
+ LeftIcon: React.FC<Input>;
13
+ RightIcon: React.FC<Input>;
14
+ };
15
+ type Input = TagProperty.Params & {
16
+ tone?: InputTypes.BoxTone;
17
+ className?: string;
18
+ children: ReactElement;
19
+ };
20
+ }
21
+ declare const Parts: Parts.Methods;
22
+ export { Parts, Parts as default };
@@ -0,0 +1,2 @@
1
+ import{b as t,c as n,d}from"../../chunk-E3D4DIO4.js";import{jsx as a}from"react/jsx-runtime";import p from"@atoms/Box";import s from"@atoms/Span";import{DefaultStyles as c}from"./core";import{InputClasses as u}from"@styles/componentClasses/_";const I={RequiredSign:e=>a(s,t({fontColor:"white",fontSize:"0.xs",padding:["1/4","1/3"],backgroundColor:"nega",borderRadius:"3.tone.tertiary",children:"\u5FC5\u9808"},e)),RequiredShortSign:e=>a(s,t({fontColor:"nega",padding:["1/4","1/3"],borderRadius:"3.tone.tertiary",children:"*"},e)),OmitSign:e=>a(s,t({fontColor:"white",fontSize:"0.xs",padding:["1/4","1/3"],borderRadius:"3.tone.tertiary",backgroundColor:"6.layer.darkest",children:"\u7701\u7565\u53EF"},e)),LeftIndicator:e=>{let r=e,{tone:i}=r,o=d(r,["tone"]);return a(p,t(n(t({},c.Indicator(i)),{borderTopRightRadius:"2/3",borderBottomRightRadius:"2/3"}),o))},RightIndicator:e=>{let r=e,{tone:i}=r,o=d(r,["tone"]);return a(p,t(n(t({},c.Indicator(i)),{borderTopLeftRadius:"2/3",borderBottomLeftRadius:"2/3"}),o))},RightIcon:e=>{let r=e,{tone:i="border"}=r,o=d(r,["tone"]);return a(p,n(t(n(t({},c.IndicatorIcon),{right:"3/4",className:u("IndicatorIcon")}),o),{freeCSS:t({zIndex:6,pointerEvents:"none"},o.freeCSS)}))},LeftIcon:e=>{let r=e,{tone:i="border"}=r,o=d(r,["tone"]);return a(p,n(t(n(t({},c.IndicatorIcon),{left:"3/4",className:u("IndicatorIcon")}),o),{freeCSS:t({zIndex:6,pointerEvents:"none"},o.freeCSS)}))}};export{I as Parts,I as default};
2
+ //# sourceMappingURL=Parts.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Parts.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty,\n ReactElement,\n} from '@declaration'\n\nimport Box from '@atoms/Box'\nimport Span from '@atoms/Span'\n\nimport {\n DefaultStyles\n} from './core'\nimport { InputTypes } from './_'\n\nimport { InputClasses } from '@styles/componentClasses/_'\n\nnamespace Parts {\n export type Methods = {\n RequiredSign: React.FC<Span.Input>\n RequiredShortSign: React.FC<Span.Input>\n OmitSign: React.FC<Span.Input>\n LeftIndicator: React.FC<Input>\n RightIndicator: React.FC<Input>\n LeftIcon: React.FC<Input>\n RightIcon: React.FC<Input>\n }\n\n export type Input = TagProperty.Params & {\n tone?: InputTypes.BoxTone\n className?: string\n children: ReactElement\n }\n}\n\nconst Parts: Parts.Methods = {\n RequiredSign: ( params ) => {\n return <Span\n fontColor='white'\n fontSize={ '0.xs' }\n padding={ [ '1/4','1/3' ] }\n backgroundColor='nega'\n borderRadius={ '3.tone.tertiary' }\n children={ '\u5FC5\u9808' }\n { ...params }\n />\n },\n RequiredShortSign: ( params ) => {\n return <Span\n fontColor='nega'\n padding={ [ '1/4','1/3' ] }\n borderRadius={ '3.tone.tertiary' }\n children={ '*' }\n { ...params }\n />\n },\n OmitSign: ( params ) => {\n return <Span\n fontColor='white'\n fontSize={ '0.xs' }\n padding={ [ '1/4','1/3' ] }\n borderRadius={ '3.tone.tertiary' }\n backgroundColor='6.layer.darkest'\n children={ '\u7701\u7565\u53EF' }\n { ...params }\n />\n },\n LeftIndicator: ( params ) => {\n let {\n tone,\n ...others\n } = params\n\n return <Box\n { ...DefaultStyles.Indicator( tone! ) }\n borderTopRightRadius={ '2/3' }\n borderBottomRightRadius={ '2/3' }\n { ...others }\n />\n },\n RightIndicator: ( params ) => {\n let {\n tone,\n ...others\n } = params\n\n return <Box\n { ...DefaultStyles.Indicator( tone! ) }\n borderTopLeftRadius={ '2/3' }\n borderBottomLeftRadius={ '2/3' }\n { ...others }\n />\n },\n RightIcon: ( params ) => {\n let {\n tone = 'border',\n ...others\n } = params\n\n return <Box\n { ...DefaultStyles.IndicatorIcon }\n right={ '3/4' }\n className={ InputClasses( 'IndicatorIcon' ) }\n { ...others }\n freeCSS={ {\n zIndex: 6,\n pointerEvents: 'none',\n ...others.freeCSS\n } }\n />\n },\n LeftIcon: ( params ) => {\n let {\n tone = 'border',\n ...others\n } = params\n\n return <Box\n { ...DefaultStyles.IndicatorIcon }\n left={ '3/4' }\n className={ InputClasses( 'IndicatorIcon' ) }\n { ...others }\n freeCSS={ {\n zIndex: 6,\n pointerEvents: 'none',\n ...others.freeCSS\n } }\n />\n },\n}\nexport {\n Parts,\n Parts as default\n}"],
5
+ "mappings": "qDAmCW,cAAAA,MAAA,oBA9BX,OAAOC,MAAS,aAChB,OAAOC,MAAU,cAEjB,OACE,iBAAAC,MACK,SAGP,OAAS,gBAAAC,MAAoB,6BAoB7B,MAAMC,EAAuB,CAC3B,aAAgBC,GACPN,EAACE,EAAAK,EAAA,CACN,UAAU,QACV,SAAW,OACX,QAAU,CAAE,MAAM,KAAM,EACxB,gBAAgB,OAChB,aAAe,kBACf,SAAW,gBACND,EACP,EAEF,kBAAqBA,GACZN,EAACE,EAAAK,EAAA,CACN,UAAU,OACV,QAAU,CAAE,MAAM,KAAM,EACxB,aAAe,kBACf,SAAW,KACND,EACP,EAEF,SAAYA,GACHN,EAACE,EAAAK,EAAA,CACN,UAAU,QACV,SAAW,OACX,QAAU,CAAE,MAAM,KAAM,EACxB,aAAe,kBACf,gBAAgB,kBAChB,SAAW,sBACND,EACP,EAEF,cAAiBA,GAAY,CAC3B,IAGIE,EAAAF,EAFF,MAAAG,CAnEN,EAqEQD,EADCE,EAAAC,EACDH,EADC,CADH,SAIF,OAAOR,EAACC,EAAAM,EAAAK,EAAAL,EAAA,GACDJ,EAAc,UAAWM,CAAM,GAD9B,CAEN,qBAAuB,MACvB,wBAA0B,QACrBC,EACP,CACF,EACA,eAAkBJ,GAAY,CAC5B,IAGIE,EAAAF,EAFF,MAAAG,CAhFN,EAkFQD,EADCE,EAAAC,EACDH,EADC,CADH,SAIF,OAAOR,EAACC,EAAAM,EAAAK,EAAAL,EAAA,GACDJ,EAAc,UAAWM,CAAM,GAD9B,CAEN,oBAAsB,MACtB,uBAAyB,QACpBC,EACP,CACF,EACA,UAAaJ,GAAY,CACvB,IAGIE,EAAAF,EAFF,MAAAG,EAAO,QA7Fb,EA+FQD,EADCE,EAAAC,EACDH,EADC,CADH,SAIF,OAAOR,EAACC,EAAAW,EAAAL,EAAAK,EAAAL,EAAA,GACDJ,EAAc,eADb,CAEN,MAAQ,MACR,UAAYC,EAAc,eAAgB,IACrCM,GAJC,CAKN,QAAUH,EAAA,CACR,OAAQ,EACR,cAAe,QACZG,EAAO,UAEd,CACF,EACA,SAAYJ,GAAY,CACtB,IAGIE,EAAAF,EAFF,MAAAG,EAAO,QA/Gb,EAiHQD,EADCE,EAAAC,EACDH,EADC,CADH,SAIF,OAAOR,EAACC,EAAAW,EAAAL,EAAAK,EAAAL,EAAA,GACDJ,EAAc,eADb,CAEN,KAAO,MACP,UAAYC,EAAc,eAAgB,IACrCM,GAJC,CAKN,QAAUH,EAAA,CACR,OAAQ,EACR,cAAe,QACZG,EAAO,UAEd,CACF,CACF",
6
+ "names": ["jsx", "Box", "Span", "DefaultStyles", "InputClasses", "Parts", "params", "__spreadValues", "_a", "tone", "others", "__objRest", "__spreadProps"]
7
+ }
@@ -0,0 +1,7 @@
1
+ /// <reference types="react" />
2
+ import { TagProperty } from '../../@declaration/_';
3
+ declare namespace _Plain {
4
+ type Input = TagProperty.Params & React.InputHTMLAttributes<HTMLInputElement>;
5
+ }
6
+ declare const _Plain: (params: _Plain.Input) => import("react/jsx-runtime").JSX.Element;
7
+ export { _Plain, _Plain as default };
@@ -0,0 +1,2 @@
1
+ import{b as t}from"../../chunk-E3D4DIO4.js";import{jsx as n}from"react/jsx-runtime";import{GenerateClassName as p}from"@utils";const a=e=>n("input",t({},p(e)));export{a as _Plain,a as default};
2
+ //# sourceMappingURL=Plain.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Plain.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty\n} from '@declaration'\n\nimport {\n GenerateClassName\n} from '@utils'\n\nnamespace _Plain {\n export type Input = TagProperty.Params & React.InputHTMLAttributes<HTMLInputElement>\n}\nconst _Plain = ( params: _Plain.Input ) => ( <input { ...GenerateClassName( params ) } /> )\n\nexport {\n _Plain,\n _Plain as default\n}"],
5
+ "mappings": "4CAW6C,cAAAA,MAAA,oBAP7C,OACE,qBAAAC,MACK,SAKP,MAAMC,EAAWC,GAA4BH,EAAC,QAAAI,EAAA,GAAWH,EAAmBE,CAAO,EAAI",
6
+ "names": ["jsx", "GenerateClassName", "_Plain", "params", "__spreadValues"]
7
+ }
@@ -0,0 +1,32 @@
1
+ /// <reference types="react" />
2
+ import { TagProperty, ReactElement } from '../../@declaration/_';
3
+ import { InputTypes } from './_';
4
+ declare namespace RichSelect {
5
+ type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLInputElement> & {
6
+ tone?: InputTypes.BoxTone;
7
+ tabIndex?: number;
8
+ id?: string;
9
+ disabled?: boolean;
10
+ value?: Value;
11
+ options: Option[];
12
+ placeholder?: string;
13
+ leftIndicator?: ReactElement | false;
14
+ rightIndicator?: ReactElement | false;
15
+ leftIcon?: ReactElement | false;
16
+ rightIcon?: ReactElement | false;
17
+ enableUnSelected?: boolean;
18
+ rightIconStyles?: TagProperty.Params;
19
+ cellStyles?: TagProperty.Params;
20
+ sheetStyles?: TagProperty.Params;
21
+ gravityPoint?: number;
22
+ };
23
+ type Value = string | number | boolean | plainObject | void | null;
24
+ type Option = {
25
+ type?: 'button' | 'label';
26
+ value: Value;
27
+ label: ReactElement;
28
+ selectedLabel?: ReactElement;
29
+ };
30
+ }
31
+ declare const RichSelect: React.FC<RichSelect.Input>;
32
+ export { RichSelect, RichSelect as default };
@@ -0,0 +1,2 @@
1
+ import{b as t,c as a,d as O}from"../../chunk-E3D4DIO4.js";import{jsx as n}from"react/jsx-runtime";import{useState as R}from"react";import{$$ as s}from"@utils";import M from"@atoms/Box";import P from"@atoms/FAI";import $ from"@mols/Column";import j from"@fn/Button";import _ from"@fn/Tooltips";import{Wrapper as K,BoxWrapper as z,CommonEffects as G,DefaultStyles as Q}from"./core";import X from"./Parts";import{InputRichSelectClasses as Y,InputClasses as Z}from"@styles/componentClasses/_";function w(e){let{value:l,params:r}=e,{required:o,options:i}=r,p=[];return o&&(!i.length||i.length&&s.is.nullish(JSON.parse(l)))&&p.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!p.filter(({type:d})=>d=="invalid").length,notice:p}}const ee=e=>{let E=e,{tone:l,required:r,form:o,className:i,enableFormSubmit:p,enableUnSelected:d,checkValidationAtFirst:b,onChange:I,onKeyDown:V,onValidate:C,onUpdateValue:f,onUpdateValidValue:h,value:y="",options:x,placeholder:k,leftIndicator:le,rightIndicator:ne,leftIcon:oe,rightIcon:ae,componentID:ie,status_id:ue,cellStyles:A,sheetStyles:m,gravityPoint:F}=E,L=O(E,["tone","required","form","className","enableFormSubmit","enableUnSelected","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","options","placeholder","leftIndicator","rightIndicator","leftIcon","rightIcon","componentID","status_id","cellStyles","sheetStyles","gravityPoint"]),H={componentID:e.componentID||"",dataValue:y,eventType:"init",eventID:s.uuid.gen()},[D]=R(s.uuid.gen()),[u,S]=R(H),[v,J]=R({ok:!1,notice:[]});G({type:"richSelect",params:e,val_status:u,set_status:S,ExtraOverrideParams:{dataValue:y,formatValue:y},val_validate:v,set_validate:J,DefaultValidation:w,onUpdateValue:f,onUpdateValidValue:h});let T=n(M,{fontColor:"4.thin",textAlign:"left",children:k||"\u9078\u629E"});if(u.dataValue){let c=x.find(g=>g.type=="button"&&g.value==u.dataValue);c&&(T=c.selectedLabel||c.label)}return n(z,{val_status:u,set_status:S,val_validate:v,params:e,children:n("button",a(t({},L),{"data-form":o,"data-validation":v.ok,"data-component-id":u.componentID,"data-value":u.dataValue,"data-input-type":"richSelect",className:[i,Y("SelectLegend"),Z("InputCover")].join(" "),onClick:c=>{_.open({tipsID:D,parent:c.currentTarget,gravityPoint:F||13,close_option:{elementBlur:""},content:()=>{let g=x.map(U=>{let{type:W,value:q,label:B}=U;return W=="button"?n(j.Button.Clear.R,a(t({color:"cloud",borderRadius:0,fontColor:"2.normal",textAlign:"left",padding:0,onClick:()=>{S(a(t({},u),{dataValue:q,eventType:"update",eventID:s.uuid.gen()})),_.close(D)}},A),{children:B})):B});return n($,a(t({ssCardBox:!0,padding:[1,0],gap:0,overflow:"auto"},m),{freeCSS:t({minWidth:12*20,maxHeight:"90vh"},m==null?void 0:m.freeCSS),children:g}))}})},children:T}))})},te=e=>{let{value:l=null,placeholder:r,options:o=[]}=e,i=0,p=JSON.stringify(l),d=o.map(I=>{let{type:V,value:C}=I,f=JSON.stringify(C),h=f==p;return i|=Number(h),a(t({},I),{type:V||"button",value:f})});i||(l=null);let b=JSON.stringify(l);return n(ee,a(t({},e),{value:b,options:d}))},N=e=>{var r,o;e=t({},e),s.is.nullish(e.rightIcon)&&(e.rightIcon=n(X.RightIcon,a(t({flexType:"col"},e.rightIconStyles),{children:n(P.AngleDown,{})}))),e.rightIcon&&(e.paddingRight=(r=e.paddingRight)!=null?r:3),e.leftIcon&&(e.paddingLeft=(o=e.paddingLeft)!=null?o:3);let l=Q.Boxish(e);return delete l.rightIconStyles,n(K,{componentID:e.componentID,children:te,params:l})};export{N as RichSelect,N as default};
2
+ //# sourceMappingURL=RichSelect.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/RichSelect.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty,\n ReactElement,\n} from '@declaration'\nimport {\n useState,\n useEffect\n} from 'react'\n\nimport {\n $$\n} from '@utils'\n\nimport Box from '@atoms/Box'\nimport FAI from '@atoms/FAI'\nimport Column from '@mols/Column'\nimport Button from '@fn/Button'\nimport Tooltips from '@fn/Tooltips'\n\nimport {\n Wrapper,\n BoxWrapper,\n CommonEffects,\n DefaultStyles\n} from './core'\n\nimport { InputTypes } from './_'\n\nimport Parts from './Parts'\nimport {\n InputRichSelectClasses,\n InputClasses\n} from '@styles/componentClasses/_'\n\nnamespace RichSelect {\n export type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLInputElement> & {\n tone?: InputTypes.BoxTone\n\n tabIndex?: number\n\n id?: string\n\n disabled?: boolean\n\n value?: Value\n options: Option[]\n\n placeholder?: string\n\n leftIndicator?: ReactElement | false\n rightIndicator?: ReactElement | false\n leftIcon?: ReactElement | false\n rightIcon?: ReactElement | false\n\n enableUnSelected?: boolean\n\n rightIconStyles?: TagProperty.Params\n\n cellStyles?: TagProperty.Params\n sheetStyles?: TagProperty.Params\n\n gravityPoint?: number\n }\n export type Value = string | number | boolean | plainObject | void | null\n export type Option = {\n type?: 'button' | 'label'\n value: Value\n label: ReactElement\n selectedLabel?: ReactElement\n }\n}\n\nfunction DefaultValidation( props: {\n value: any\n params: any\n} ): InputTypes.Validation.Result {\n let {\n value,\n params\n } = props\n let {\n required,\n options\n } = params as RichSelect.Input\n let notice: InputTypes.Validation.Notice[] = []\n\n if ( required ) {\n if ( !options.length || ( options.length && $$.is.nullish( JSON.parse( value ) ) ) ) {\n notice.push( { type: 'invalid',label: '\u5FC5\u9808\u9805\u76EE\u3067\u3059' } )\n }\n }\n\n return {\n ok: !notice.filter( ( { type } ) => type == 'invalid' ).length,\n notice: notice\n }\n}\nconst Core: React.FC<RichSelect.Input> = ( params ) => {\n let {\n tone,\n required,\n form,\n className,\n\n enableFormSubmit,\n enableUnSelected,\n\n checkValidationAtFirst,\n onChange,onKeyDown,\n onValidate,\n onUpdateValue,\n onUpdateValidValue,\n value = '',\n options,\n placeholder,\n\n leftIndicator,rightIndicator,leftIcon,rightIcon,\n componentID,status_id,\n\n cellStyles,\n sheetStyles,\n\n gravityPoint,\n ...others\n } = params\n\n let Default_Status: InputTypes.Status.Plain = {\n componentID: params.componentID || '',\n dataValue: value,\n eventType: 'init',\n eventID: $$.uuid.gen()\n }\n let [ val_tipID ] = useState( $$.uuid.gen() )\n let [ val_status,set_status ] = useState( Default_Status )\n let [ val_validate,set_validate ] = useState( {\n ok: false,\n notice: []\n } as InputTypes.Validation.Result )\n\n CommonEffects( {\n type: 'richSelect',\n params,\n val_status,\n set_status,\n ExtraOverrideParams: {\n dataValue: value,\n formatValue: value,\n },\n val_validate,\n set_validate,\n DefaultValidation,\n onUpdateValue,\n onUpdateValidValue\n } )\n\n let SelectedElement: ReactElement = <Box fontColor='4.thin' textAlign='left'>{ placeholder || '\u9078\u629E' }</Box>\n if ( val_status.dataValue ) {\n let Selected = options.find( ( option ) => option.type == 'button' && option.value == val_status.dataValue )\n if ( Selected ) {\n SelectedElement = Selected.selectedLabel || Selected.label\n }\n }\n\n return <BoxWrapper\n val_status={ val_status }\n set_status={ set_status }\n val_validate={ val_validate }\n params={ params }\n >\n <button\n { ...others as any }\n data-form={ form }\n data-validation={ val_validate.ok }\n data-component-id={ val_status.componentID }\n data-value={ val_status.dataValue }\n data-input-type={ 'richSelect' }\n className={ [\n className,\n InputRichSelectClasses( 'SelectLegend' ),\n InputClasses( 'InputCover' )\n ].join( ' ' ) }\n onClick={ ( e ) => {\n Tooltips.open( {\n tipsID: val_tipID,\n parent: e.currentTarget,\n gravityPoint: gravityPoint || 13,\n close_option: {\n elementBlur: ''\n },\n content: () => {\n let Options = options.map( ( option ) => {\n let {\n type,\n value,\n label\n } = option\n\n if ( type == 'button' ) {\n return <Button.Button.Clear.R\n color='cloud'\n borderRadius={ 0 }\n fontColor='2.normal'\n textAlign='left'\n padding={ 0 }\n onClick={ () => {\n set_status( {\n ...val_status,\n dataValue: value,\n eventType: 'update',\n eventID: $$.uuid.gen()\n } )\n Tooltips.close( val_tipID )\n } }\n { ...cellStyles }\n >\n { label }\n </Button.Button.Clear.R>\n } else {\n return label\n }\n } )\n return <Column\n ssCardBox\n padding={ [ 1,0 ] }\n gap={ 0 }\n // maxHeight={ 'viewHeight' }\n overflow={ 'auto' }\n { ...sheetStyles }\n freeCSS={ {\n minWidth: 12 * 20,\n maxHeight: '90vh',\n ...sheetStyles?.freeCSS\n } }\n >\n { Options }\n </Column>\n }\n } )\n } }\n >\n { SelectedElement }\n </button>\n </BoxWrapper>\n}\n\nconst RichSelectInput: React.FC<RichSelect.Input> = ( params ) => {\n let {\n value = null,\n placeholder,\n options = []\n } = params\n\n let SelectedExist = 0\n let SelectedValue = JSON.stringify( value )\n let DefaultOptions = options.map( ( option ) => {\n let { type,value } = option\n let Value = JSON.stringify( value )\n let Selected = Value == SelectedValue\n SelectedExist |= Number( Selected )\n\n return {\n ...option,\n type: type || 'button',\n value: Value\n }\n } )\n if ( !SelectedExist ) value = null\n let DefaultValue = JSON.stringify( value )\n\n return <Core\n { ...params }\n value={ DefaultValue }\n options={ DefaultOptions }\n />\n}\n\nconst RichSelect: React.FC<RichSelect.Input> = ( rawParams ) => {\n rawParams = { ...rawParams }\n if ( $$.is.nullish( rawParams.rightIcon ) ) {\n rawParams.rightIcon = <Parts.RightIcon\n flexType='col'\n { ...rawParams.rightIconStyles }\n >\n <FAI.AngleDown />\n </Parts.RightIcon>\n }\n if ( rawParams.rightIcon ) rawParams.paddingRight = rawParams.paddingRight ?? 3\n if ( rawParams.leftIcon ) rawParams.paddingLeft = rawParams.paddingLeft ?? 3\n\n let params = DefaultStyles.Boxish( rawParams ) as RichSelect.Input\n delete params.rightIconStyles\n return <Wrapper\n componentID={ rawParams.componentID }\n children={ RichSelectInput }\n params={ params }\n />\n}\n\nexport {\n RichSelect,\n RichSelect as default\n}"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "useState", "$$", "Box", "FAI", "Column", "Button", "Tooltips", "Wrapper", "BoxWrapper", "CommonEffects", "DefaultStyles", "Parts", "InputRichSelectClasses", "InputClasses", "DefaultValidation", "props", "value", "params", "required", "options", "notice", "type", "Core", "_a", "tone", "form", "className", "enableFormSubmit", "enableUnSelected", "checkValidationAtFirst", "onChange", "onKeyDown", "onValidate", "onUpdateValue", "onUpdateValidValue", "placeholder", "leftIndicator", "rightIndicator", "leftIcon", "rightIcon", "componentID", "status_id", "cellStyles", "sheetStyles", "gravityPoint", "others", "__objRest", "Default_Status", "val_tipID", "val_status", "set_status", "val_validate", "set_validate", "SelectedElement", "Selected", "option", "__spreadProps", "__spreadValues", "e", "Options", "label", "RichSelectInput", "SelectedExist", "SelectedValue", "DefaultOptions", "Value", "DefaultValue", "RichSelect", "rawParams", "_b"]
7
+ }
@@ -0,0 +1,6 @@
1
+ import Chips from './Chips/_';
2
+ declare namespace Search {
3
+ type Input = Chips.Input;
4
+ }
5
+ declare const Search: (params: Search.Input) => import("react/jsx-runtime").JSX.Element;
6
+ export { Search, Search as default };
@@ -0,0 +1,2 @@
1
+ import{b as e}from"../../chunk-E3D4DIO4.js";import{jsx as t,jsxs as p}from"react/jsx-runtime";import r from"@atoms/Box";import n from"@atoms/FAI";import i from"@mols/Row";import f from"@mols/Column";import{faAngleUp as l}from"@fortawesome/free-solid-svg-icons/faAngleUp";import{faAngleDown as u}from"@fortawesome/free-solid-svg-icons/faAngleDown";import c from"./Chips/_";import d from"./Parts";const m=a=>t(c,e({AddButtonComponent:o=>o.selected.length?null:t(r,{children:"\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044"}),SelectedCellComponent:o=>t(r,{width:1,textAlign:"left",children:p(i.Separate,{children:[o.label,o.defaultRemoveButton]})}),paddingLeft:3,rightIcon:t(d.LeftIcon,{children:p(f,{gap:0,children:[t(n,{icon:l}),t(n,{icon:u,freeCSS:{marginTop:-6}})]})}),limit:1},a));export{m as Search,m as default};
2
+ //# sourceMappingURL=Search.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Search.tsx"],
4
+ "sourcesContent": ["import Box from '@atoms/Box'\nimport FAI from '@atoms/FAI'\nimport Row from '@mols/Row'\nimport Column from '@mols/Column'\n\nimport { faAngleUp } from '@fortawesome/free-solid-svg-icons/faAngleUp'\nimport { faAngleDown } from '@fortawesome/free-solid-svg-icons/faAngleDown'\n\nimport Chips from './Chips/_'\nimport Parts from './Parts'\n\nnamespace Search {\n export type Input = Chips.Input\n}\n\nconst Search = ( params: Search.Input ) => {\n return <Chips\n AddButtonComponent={ ( props ) => {\n if ( props.selected.length ) return null\n return <Box>\n \u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\n </Box>\n } }\n SelectedCellComponent={ ( props ) => {\n return <Box\n width={ 1 }\n textAlign='left'\n >\n <Row.Separate>\n { props.label }\n { props.defaultRemoveButton }\n </Row.Separate>\n </Box>\n } }\n paddingLeft={ 3 }\n rightIcon={ <Parts.LeftIcon>\n <Column\n gap={ 0 }\n >\n <FAI icon={ faAngleUp } />\n <FAI icon={ faAngleDown } freeCSS={ { marginTop: -6 } } />\n </Column>\n </Parts.LeftIcon> }\n limit={ 1 }\n { ...params }\n />\n}\n\nexport {\n Search,\n Search as default\n}"],
5
+ "mappings": "4CAmBa,cAAAA,EASL,QAAAC,MATK,oBAnBb,OAAOC,MAAS,aAChB,OAAOC,MAAS,aAChB,OAAOC,MAAS,YAChB,OAAOC,MAAY,eAEnB,OAAS,aAAAC,MAAiB,8CAC1B,OAAS,eAAAC,MAAmB,gDAE5B,OAAOC,MAAW,YAClB,OAAOC,MAAW,UAMlB,MAAMC,EAAWC,GACRX,EAACQ,EAAAI,EAAA,CACN,mBAAuBC,GAChBA,EAAM,SAAS,OAAgB,KAC7Bb,EAACE,EAAA,CAAI,4DAEZ,EAEF,sBAA0BW,GACjBb,EAACE,EAAA,CACN,MAAQ,EACR,UAAU,OAEV,SAAAD,EAACG,EAAI,SAAJ,CACG,UAAAS,EAAM,MACNA,EAAM,qBACV,EACF,EAEF,YAAc,EACd,UAAYb,EAACS,EAAM,SAAN,CACX,SAAAR,EAACI,EAAA,CACC,IAAM,EAEN,UAAAL,EAACG,EAAA,CAAI,KAAOG,EAAY,EACxBN,EAACG,EAAA,CAAI,KAAOI,EAAc,QAAU,CAAE,UAAW,EAAG,EAAI,GAC1D,EACF,EACA,MAAQ,GACHI,EACP",
6
+ "names": ["jsx", "jsxs", "Box", "FAI", "Row", "Column", "faAngleUp", "faAngleDown", "Chips", "Parts", "Search", "params", "__spreadValues", "props"]
7
+ }
@@ -0,0 +1,22 @@
1
+ /// <reference types="react" />
2
+ import List from './List';
3
+ declare namespace Segmented {
4
+ type Tones = 'Border' | 'ThemeBorder' | 'BottomLine' | 'Cloud' | 'ThemeCloud' | 'WhiteCloud';
5
+ type CoreInput = Segmented.Input & {
6
+ appearance: Segmented.Tones;
7
+ };
8
+ type ListInput = List.Options[];
9
+ type Input = List.Input;
10
+ type Methods = {
11
+ Auto: (params: Input) => JSX.Element;
12
+ Normal: (params: Input) => JSX.Element;
13
+ Cloud: (params: Input) => JSX.Element;
14
+ Cloud2: (params: Input) => JSX.Element;
15
+ Cloud3: (params: Input) => JSX.Element;
16
+ Border: (params: Input) => JSX.Element;
17
+ Border2: (params: Input) => JSX.Element;
18
+ BottomLine: (params: Input) => JSX.Element;
19
+ };
20
+ }
21
+ declare const Segmented: Segmented.Methods;
22
+ export { Segmented, Segmented as default };
@@ -0,0 +1,2 @@
1
+ import{b as o,c as l,d as a}from"../../chunk-E3D4DIO4.js";import{jsx as t}from"react/jsx-runtime";import{$$ as R}from"@utils";import{useState as c}from"react";import x from"./List";import{InputSegmentedClasses as u}from"@styles/componentClasses/_";const n=e=>{let S=e,{tone:E,appearance:i,value:r,options:f,onUpdateValue:b,onUpdateValidValue:C,freeCSS:p,cellStyles:g,cellClassName:k,cellCheckedClassName:B,cellCheckedStyles:I}=S,m=a(S,["tone","appearance","value","options","onUpdateValue","onUpdateValidValue","freeCSS","cellStyles","cellClassName","cellCheckedClassName","cellCheckedStyles"]),[v]=c(R.uuid.gen()),[s,L]=c(r),[w,h]=c(s);return s!=r&&(L(r),h(r)),t(x.Radio,l(o({defaultActiveStyling:!1,flexWrap:!1,borderRadius:"2.tone.secondary",position:"relative",options:f,value:w,componentID:v,icon:!1},m),{freeCSS:o({whiteSpace:"nowrap"},p),cellStyles:o({flexCenter:!0,ssPushable:!0,boxShadow:"none"},g),cellClassName:[k,u("Label"),u("Tone_"+i)].join(" "),cellCheckedStyles:o({isSemiBoldFont:!0},I),cellCheckedClassName:[B,u("Checked")].join(" "),tone:"custom",onUpdateValue:b,onUpdateValidValue:y=>{C&&C(y),i=="BottomLine"&&h(y.value[0])}}))},d={Auto:e=>(e=o({},e),e=l(o({padding:"1/3",gap:"1/3",ssCardBox:!0},e),{cellStyles:o({borderRadius:"inherit",position:"relative"},e.cellStyles),cellCheckedStyles:o({backgroundColor:"theme",fontColor:"white"},e.cellCheckedStyles)}),t(n,o({appearance:e.tone||"Auto"},e))),Normal:e=>(e=o({},e),e=l(o({border:!0,borderColor:"theme",overflow:"hidden",gap:0,ssLastChildLossBorder:"right",fontColor:"3.blur"},e),{cellStyles:o({borderRadius:0,borderRight:!0,borderColor:"theme"},e.cellStyles),cellCheckedStyles:o({backgroundColor:"theme",fontColor:"white"},e.cellCheckedStyles)}),e.tone="ThemeBorder",t(n,o({appearance:"Border"},e))),Cloud:e=>(e=o({},e),e=l(o({padding:"1/3",gap:"1/3",backgroundColor:"cloud"},e),{cellStyles:o({borderRadius:"inherit",position:"relative"},e.cellStyles),cellCheckedStyles:o({backgroundColor:"theme",fontColor:"white"},e.cellCheckedStyles)}),t(n,o({appearance:e.tone||"Cloud"},e))),Cloud2:e=>(e=o({},e),e.tone="WhiteCloud",t(d.Cloud,l(o({fontColor:"3.blur"},e),{cellCheckedStyles:o({fontColor:"1.clear"},e.cellCheckedStyles)}))),Cloud3:e=>(e=o({},e),e.tone="ThemeCloud",t(d.Cloud,l(o({backgroundColor:"tcOpFew",fontColor:"theme"},e),{cellStyles:o({},e.cellStyles)}))),Border:e=>(e=o({},e),e=l(o({backgroundColor:"1.layer.base",border:"2.normal",overflow:"hidden",gap:0,ssLastChildLossBorder:"right",boxShadow:"0.thin"},e),{cellStyles:o({borderRadius:0,borderRight:"2.normal"},e.cellStyles),cellCheckedStyles:o({backgroundColor:"tcOpFew",fontColor:"theme"},e.cellCheckedStyles)}),t(n,o({appearance:e.tone||"Border"},e))),Border2:e=>(e=o({},e),e=l(o({border:!0,borderColor:"theme",overflow:"hidden",gap:0,ssLastChildLossBorder:"right",boxShadow:"0.thin",fontColor:"3.blur"},e),{cellStyles:o({borderRadius:0,borderRight:!0,borderColor:"theme"},e.cellStyles),cellCheckedStyles:o({backgroundColor:"theme",fontColor:"white"},e.cellCheckedStyles)}),e.tone="ThemeBorder",t(n,o({appearance:"Border"},e))),BottomLine:e=>(e=o({},e),e=l(o({gap:0,fontColor:"3.blur"},e),{cellStyles:o({ssEffectsOnActive:"ripple.theme",borderRadius:0,padding:1},e.cellStyles),cellCheckedStyles:o({fontColor:"theme"},e.cellCheckedStyles)}),t(n,o({appearance:"BottomLine"},e)))};export{d as Segmented,d as default};
2
+ //# sourceMappingURL=Segmented.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Segmented.tsx"],
4
+ "sourcesContent": ["import {\n $$\n} from '@utils'\nimport {\n useState,\n useEffect\n} from 'react'\nimport List from './List'\n\nimport { InputSegmentedClasses } from '@styles/componentClasses/_'\n\nnamespace Segmented {\n export type Tones = 'Border' | 'ThemeBorder' | 'BottomLine' | 'Cloud' | 'ThemeCloud' | 'WhiteCloud'\n export type CoreInput = Segmented.Input & {\n appearance: Segmented.Tones\n }\n export type ListInput = List.Options[]\n export type Input = List.Input\n export type Methods = {\n Auto: ( params: Input ) => JSX.Element\n Normal: ( params: Input ) => JSX.Element\n\n Cloud: ( params: Input ) => JSX.Element\n Cloud2: ( params: Input ) => JSX.Element\n Cloud3: ( params: Input ) => JSX.Element\n\n Border: ( params: Input ) => JSX.Element\n Border2: ( params: Input ) => JSX.Element\n BottomLine: ( params: Input ) => JSX.Element\n }\n}\n\nconst Core: React.FC<Segmented.CoreInput> = ( params ) => {\n let {\n tone,\n appearance,\n value,\n options,\n onUpdateValue,onUpdateValidValue,\n freeCSS,\n cellStyles,\n cellClassName,\n cellCheckedClassName,\n cellCheckedStyles,\n ...others\n } = params\n\n let [ val_componentID ] = useState( $$.uuid.gen() )\n\n let [ val_defValue,set_defValue ] = useState( value )\n let [ val_value,set_value ] = useState( val_defValue )\n if ( val_defValue != value ) {\n set_defValue( value )\n set_value( value )\n }\n\n return <List.Radio\n // hideInput\n defaultActiveStyling={ false }\n flexWrap={ false }\n borderRadius={ '2.tone.secondary' }\n position='relative'\n options={ options }\n value={ val_value }\n componentID={ val_componentID }\n icon={ false }\n { ...others }\n freeCSS={ {\n whiteSpace: 'nowrap',\n ...freeCSS\n } }\n cellStyles={ {\n flexCenter: true,\n ssPushable: true,\n boxShadow: 'none',\n ...cellStyles\n } }\n cellClassName={ [\n cellClassName,\n InputSegmentedClasses( 'Label' ),\n InputSegmentedClasses( 'Tone_' + appearance )\n ].join( ' ' ) }\n cellCheckedStyles={ {\n isSemiBoldFont: true,\n ...cellCheckedStyles,\n } }\n cellCheckedClassName={ [\n cellCheckedClassName,\n InputSegmentedClasses( 'Checked' )\n ].join( ' ' ) }\n tone={ 'custom' as any }\n onUpdateValue={ onUpdateValue }\n onUpdateValidValue={ ( args ) => {\n if ( onUpdateValidValue ) onUpdateValidValue( args )\n if ( appearance == 'BottomLine' ) {\n set_value( args.value[ 0 ] )\n }\n } }\n />\n}\n\nconst Segmented: Segmented.Methods = {\n Auto: ( params ) => {\n params = { ...params }\n params = {\n padding: '1/3',\n gap: '1/3',\n ssCardBox: true,\n ...params,\n cellStyles: {\n borderRadius: 'inherit',\n position: 'relative',\n ...params.cellStyles\n },\n cellCheckedStyles: {\n backgroundColor: 'theme',\n fontColor: 'white',\n ...params.cellCheckedStyles\n },\n }\n\n return <Core appearance={ ( params as any ).tone || 'Auto' } { ...params } />\n },\n Normal: ( params ) => {\n params = { ...params }\n params = {\n border: true,\n borderColor: 'theme',\n overflow: 'hidden',\n gap: 0,\n ssLastChildLossBorder: 'right',\n fontColor: '3.blur',\n ...params,\n cellStyles: {\n borderRadius: 0,\n borderRight: true,\n borderColor: 'theme',\n ...params.cellStyles\n },\n cellCheckedStyles: {\n backgroundColor: 'theme',\n fontColor: 'white',\n ...params.cellCheckedStyles\n }\n };\n ( params as any ).tone = 'ThemeBorder'\n\n return <Core appearance={ 'Border' } { ...params } />\n },\n Cloud: ( params ) => {\n params = { ...params }\n params = {\n padding: '1/3',\n gap: '1/3',\n backgroundColor: 'cloud',\n ...params,\n cellStyles: {\n borderRadius: 'inherit',\n position: 'relative',\n ...params.cellStyles\n },\n cellCheckedStyles: {\n backgroundColor: 'theme',\n fontColor: 'white',\n ...params.cellCheckedStyles\n },\n }\n\n return <Core appearance={ ( params as any ).tone || 'Cloud' } { ...params } />\n },\n Cloud2: ( params ) => {\n params = { ...params };\n ( params as any ).tone = 'WhiteCloud'\n return <Segmented.Cloud\n fontColor='3.blur'\n { ...params }\n cellCheckedStyles={ {\n fontColor: '1.clear',\n ...params.cellCheckedStyles\n } }\n />\n },\n Cloud3: ( params ) => {\n params = { ...params };\n ( params as any ).tone = 'ThemeCloud'\n return <Segmented.Cloud\n backgroundColor='tcOpFew'\n fontColor='theme'\n { ...params }\n cellStyles={ {\n ...params.cellStyles\n } }\n />\n },\n Border: ( params ) => {\n params = { ...params }\n params = {\n backgroundColor: '1.layer.base',\n border: '2.normal',\n overflow: 'hidden',\n gap: 0,\n ssLastChildLossBorder: 'right',\n boxShadow: '0.thin',\n ...params,\n cellStyles: {\n borderRadius: 0,\n borderRight: '2.normal',\n ...params.cellStyles\n },\n cellCheckedStyles: {\n backgroundColor: 'tcOpFew',\n fontColor: 'theme',\n ...params.cellCheckedStyles\n },\n }\n\n return <Core appearance={ ( params as any ).tone || 'Border' } { ...params } />\n },\n Border2: ( params ) => {\n params = { ...params }\n params = {\n border: true,\n borderColor: 'theme',\n overflow: 'hidden',\n gap: 0,\n ssLastChildLossBorder: 'right',\n boxShadow: '0.thin',\n fontColor: '3.blur',\n ...params,\n cellStyles: {\n borderRadius: 0,\n borderRight: true,\n borderColor: 'theme',\n ...params.cellStyles\n },\n cellCheckedStyles: {\n backgroundColor: 'theme',\n fontColor: 'white',\n ...params.cellCheckedStyles\n }\n };\n ( params as any ).tone = 'ThemeBorder'\n\n return <Core appearance={ 'Border' } { ...params } />\n },\n BottomLine: ( params ) => {\n params = { ...params }\n params = {\n gap: 0,\n fontColor: '3.blur',\n ...params,\n cellStyles: {\n ssEffectsOnActive: 'ripple.theme',\n borderRadius: 0,\n padding: 1,\n ...params.cellStyles\n },\n cellCheckedStyles: {\n fontColor: 'theme',\n ...params.cellCheckedStyles\n }\n }\n\n return <Core appearance={ 'BottomLine' } { ...params } />\n },\n}\n\nexport {\n Segmented,\n Segmented as default\n}"],
5
+ "mappings": "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",
6
+ "names": ["jsx", "$$", "useState", "List", "InputSegmentedClasses", "Core", "params", "_a", "tone", "appearance", "value", "options", "onUpdateValue", "onUpdateValidValue", "freeCSS", "cellStyles", "cellClassName", "cellCheckedClassName", "cellCheckedStyles", "others", "__objRest", "val_componentID", "val_defValue", "set_defValue", "val_value", "set_value", "__spreadProps", "__spreadValues", "args", "Segmented"]
7
+ }
@@ -0,0 +1,28 @@
1
+ /// <reference types="react" />
2
+ import { TagProperty, ReactElement } from '../../@declaration/_';
3
+ import { InputTypes } from './_';
4
+ declare namespace Select {
5
+ type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLSelectElement> & {
6
+ tone?: InputTypes.BoxTone;
7
+ tabIndex?: number;
8
+ id?: string;
9
+ disabled?: boolean;
10
+ value?: Value;
11
+ options: Options[];
12
+ placeholder?: string;
13
+ leftIndicator?: ReactElement | false;
14
+ rightIndicator?: ReactElement | false;
15
+ leftIcon?: ReactElement | false;
16
+ rightIcon?: ReactElement | false;
17
+ enableUnSelected?: boolean;
18
+ rightIconStyles?: TagProperty.Params;
19
+ };
20
+ type Value = string | number | boolean | plainObject | void | null;
21
+ type Options = {
22
+ value: Value;
23
+ label: string;
24
+ displayLabel?: ReactElement;
25
+ };
26
+ }
27
+ declare const Select: React.FC<Select.Input>;
28
+ export { Select, Select as default };
@@ -0,0 +1,2 @@
1
+ import{b as c,c as d,d as T}from"../../chunk-E3D4DIO4.js";import{Fragment as Q,jsx as l,jsxs as G}from"react/jsx-runtime";import{useState as C}from"react";import{$$ as S}from"@utils";import E from"@atoms/Box";import J from"@atoms/FAI";import{Wrapper as U,BoxWrapper as W,SubmitForm as q,CommonEffects as K,DefaultStyles as M}from"./core";import $ from"./Parts";import{InputClasses as j,InputSelectClasses as N}from"@styles/componentClasses/_";function H(e){let{value:t,params:u}=e,{required:n,options:a}=u,o=[];return n&&(!a.length||a.length&&S.is.nullish(JSON.parse(t)))&&o.push({type:"invalid",label:"\u5FC5\u9808\u9805\u76EE\u3067\u3059"}),{ok:!o.filter(({type:r})=>r=="invalid").length,notice:o}}const _={Core:e=>{var O;let x=e,{tone:t,required:u,form:n,className:a,enableFormSubmit:o,enableUnSelected:r,checkValidationAtFirst:f,onChange:p,onKeyDown:I,onValidate:b,onUpdateValue:m,onUpdateValidValue:y,value:h="",options:B,placeholder:F,leftIndicator:X,rightIndicator:Y,leftIcon:Z,rightIcon:P,componentID:w,status_id:ee}=x,L=T(x,["tone","required","form","className","enableFormSubmit","enableUnSelected","checkValidationAtFirst","onChange","onKeyDown","onValidate","onUpdateValue","onUpdateValidValue","value","options","placeholder","leftIndicator","rightIndicator","leftIcon","rightIcon","componentID","status_id"]),A={componentID:e.componentID||"",dataValue:h,eventType:"init",eventID:S.uuid.gen()},[s,v]=C(A),[g,D]=C({ok:!1,notice:[]});K({type:"select",params:e,val_status:s,set_status:v,ExtraOverrideParams:{dataValue:h,formatValue:h},val_validate:g,set_validate:D,DefaultValidation:H,onUpdateValue:m,onUpdateValidValue:y});let R=l(E,{fontColor:"4.thin",textAlign:"left",children:F||"\u9078\u629E"});if(s.dataValue){let i=B.find(V=>V.value==s.dataValue);i&&(R=(O=i.displayLabel)!=null?O:i.label)}return l(W,{val_status:s,set_status:v,val_validate:g,params:e,children:G(E,{className:[a,N("SelectLegend"),j("InputCover")].join(" "),children:[R,l("select",d(c({"data-form":n,"data-input-type":"select","data-validation":g.ok,"data-component-id":s.componentID,"data-value":s.dataValue,value:s.dataValue,onKeyDown:i=>{I&&I(i),o&&q(i)},onChange:i=>{let{value:V}=i.target;g.ok&&D({ok:!1,notice:[]}),v(d(c({},s),{dataValue:V,eventType:"update",eventID:S.uuid.gen()})),p&&p(i)}},L),{className:N("Select"),children:l(_.Options,c({},e))}))]})})},Options:e=>{let{options:t=[],placeholder:u="\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044",enableUnSelected:n=!0}=e,a=t.map(o=>{let{value:r,label:f}=o,p=String(r);return l("option",{value:p,children:f},p)});return n&&a.unshift(l("option",{value:JSON.stringify(null),children:u},0)),l(Q,{children:a})}},z=e=>{let{value:t=null,placeholder:u,options:n=[]}=e,a=0,o=JSON.stringify(t),r=n.map(p=>{let{value:I,label:b}=p,m=JSON.stringify(I),y=m==o;return a|=Number(y),d(c({},p),{value:m,label:b})});a||(t=null);let f=JSON.stringify(t);return l(_.Core,d(c({},e),{value:f,options:r}))},k=e=>{var u,n;e=c({},e),S.is.nullish(e.rightIcon)&&(e.rightIcon=l($.RightIcon,d(c({flexType:"col"},e.rightIconStyles),{children:l(J.AngleDown,{})}))),e.rightIcon&&(e.paddingRight=(u=e.paddingRight)!=null?u:3),e.leftIcon&&(e.paddingLeft=(n=e.paddingLeft)!=null?n:3);let t=M.Boxish(e);return delete t.rightIconStyles,l(U,{componentID:e.componentID,children:z,params:t})};export{k as Select,k as default};
2
+ //# sourceMappingURL=Select.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/fn/Input/Select.tsx"],
4
+ "sourcesContent": ["import {\n TagProperty,\n ReactElement,\n} from '@declaration'\nimport {\n useState,\n useEffect\n} from 'react'\nimport {\n $$\n} from '@utils'\n\nimport Box from '@atoms/Box'\nimport FAI from '@atoms/FAI'\n\nimport {\n Wrapper,\n BoxWrapper,\n SubmitForm,\n CommonEffects,\n DefaultStyles\n} from './core'\n\nimport { InputTypes } from './_'\n\nimport Parts from './Parts'\nimport {\n InputClasses,\n InputSelectClasses\n} from '@styles/componentClasses/_'\n\nnamespace Select {\n export type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLSelectElement> & {\n tone?: InputTypes.BoxTone\n\n tabIndex?: number\n\n id?: string\n\n disabled?: boolean\n\n\n value?: Value\n options: Options[]\n\n placeholder?: string\n\n leftIndicator?: ReactElement | false\n rightIndicator?: ReactElement | false\n leftIcon?: ReactElement | false\n rightIcon?: ReactElement | false\n\n enableUnSelected?: boolean\n\n rightIconStyles?: TagProperty.Params\n }\n export type Value = string | number | boolean | plainObject | void | null\n export type Options = {\n value: Value\n label: string\n displayLabel?: ReactElement\n }\n}\n\nfunction DefaultValidation( props: {\n value: any\n params: any\n} ): InputTypes.Validation.Result {\n let {\n value,\n params\n } = props\n let {\n required,\n options\n } = params as Select.Input\n let notice: InputTypes.Validation.Notice[] = []\n\n if ( required ) {\n if ( !options.length || ( options.length && $$.is.nullish( JSON.parse( value ) ) ) ) {\n notice.push( { type: 'invalid',label: '\u5FC5\u9808\u9805\u76EE\u3067\u3059' } )\n }\n }\n\n return {\n ok: !notice.filter( ( { type } ) => type == 'invalid' ).length,\n notice: notice\n }\n}\n\nconst Comps = {\n Core: ( params: Select.Input ) => {\n let {\n tone,\n required,\n form,\n className,\n\n enableFormSubmit,\n enableUnSelected,\n\n checkValidationAtFirst,\n onChange,onKeyDown,\n onValidate,\n onUpdateValue,\n onUpdateValidValue,\n value = '',\n options,\n placeholder,\n\n leftIndicator,rightIndicator,leftIcon,rightIcon,\n componentID,status_id,\n\n ...others\n } = params\n\n let Default_Status: InputTypes.Status.Plain = {\n componentID: params.componentID || '',\n dataValue: value,\n eventType: 'init',\n eventID: $$.uuid.gen()\n }\n let [ val_status,set_status ] = useState( Default_Status )\n let [ val_validate,set_validate ] = useState( {\n ok: false,\n notice: []\n } as InputTypes.Validation.Result )\n\n CommonEffects( {\n type: 'select',\n params,\n val_status,\n set_status,\n ExtraOverrideParams: {\n dataValue: value,\n formatValue: value,\n },\n val_validate,\n set_validate,\n DefaultValidation,\n onUpdateValue,\n onUpdateValidValue\n } )\n\n let SelectedElement: ReactElement = <Box fontColor='4.thin' textAlign='left'>{ placeholder || '\u9078\u629E' }</Box>\n if ( val_status.dataValue ) {\n let Selected = options.find( ( option ) => option.value == val_status.dataValue )\n if ( Selected ) SelectedElement = Selected.displayLabel ?? Selected.label\n }\n\n return <BoxWrapper\n val_status={ val_status }\n set_status={ set_status }\n val_validate={ val_validate }\n params={ params }\n >\n <Box\n className={ [\n className,\n InputSelectClasses( 'SelectLegend' ),\n InputClasses( 'InputCover' )\n ].join( ' ' ) }\n >\n { SelectedElement }\n <select\n data-form={ form }\n data-input-type={ 'select' }\n data-validation={ val_validate.ok }\n data-component-id={ val_status.componentID }\n data-value={ val_status.dataValue }\n value={ val_status.dataValue }\n onKeyDown={ ( event ) => {\n if ( onKeyDown ) onKeyDown( event )\n if ( enableFormSubmit ) SubmitForm( event )\n } }\n onChange={ ( event ) => {\n let {\n value: rawValue\n } = event.target\n\n if ( val_validate.ok ) set_validate( { ok: false,notice: [] } )\n set_status( {\n ...val_status,\n dataValue: rawValue,\n eventType: 'update',\n eventID: $$.uuid.gen(),\n } )\n\n if ( onChange ) onChange( event )\n } }\n { ...others as any }\n className={ InputSelectClasses( 'Select' ) }\n >\n <Comps.Options { ...params } />\n </select>\n </Box>\n </BoxWrapper>\n },\n Options: ( params: Select.Input ) => {\n let {\n options = [],\n placeholder = '\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044',\n enableUnSelected = true\n } = params\n\n let Options = options.map( ( option: Select.Options ) => {\n let {\n value,\n label,\n } = option\n let Value = String( value )\n return <option\n value={ Value }\n key={ Value }\n children={ label }\n />\n } )\n\n if ( enableUnSelected ) {\n Options.unshift( <option\n key={ 0 }\n value={ JSON.stringify( null ) }\n children={ placeholder }\n /> )\n }\n\n return <>\n { Options }\n </>\n }\n}\nconst SelectInput: React.FC<Select.Input> = ( params ) => {\n let {\n value = null,\n placeholder,\n options = []\n } = params\n\n let SelectedExist = 0\n let SelectedValue = JSON.stringify( value )\n let DefaultOptions = options.map( ( option ) => {\n let { value,label } = option\n let Value = JSON.stringify( value )\n let Selected = Value == SelectedValue\n SelectedExist |= Number( Selected )\n\n return {\n ...option,\n value: Value,\n label\n }\n } )\n if ( !SelectedExist ) value = null\n let DefaultValue = JSON.stringify( value )\n\n return <Comps.Core\n { ...params }\n value={ DefaultValue }\n options={ DefaultOptions }\n />\n}\nconst Select: React.FC<Select.Input> = ( rawParams ) => {\n rawParams = { ...rawParams }\n if ( $$.is.nullish( rawParams.rightIcon ) ) {\n rawParams.rightIcon = <Parts.RightIcon\n flexType='col'\n { ...rawParams.rightIconStyles }\n >\n <FAI.AngleDown />\n </Parts.RightIcon>\n }\n if ( rawParams.rightIcon ) rawParams.paddingRight = rawParams.paddingRight ?? 3\n if ( rawParams.leftIcon ) rawParams.paddingLeft = rawParams.paddingLeft ?? 3\n\n let params = DefaultStyles.Boxish( rawParams ) as Select.Input\n delete params.rightIconStyles\n return <Wrapper\n componentID={ rawParams.componentID }\n children={ SelectInput }\n params={ params }\n />\n}\nexport {\n Select,\n Select as default\n}"],
5
+ "mappings": "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",
6
+ "names": ["Fragment", "jsx", "jsxs", "useState", "$$", "Box", "FAI", "Wrapper", "BoxWrapper", "SubmitForm", "CommonEffects", "DefaultStyles", "Parts", "InputClasses", "InputSelectClasses", "DefaultValidation", "props", "value", "params", "required", "options", "notice", "type", "Comps", "_b", "_a", "tone", "form", "className", "enableFormSubmit", "enableUnSelected", "checkValidationAtFirst", "onChange", "onKeyDown", "onValidate", "onUpdateValue", "onUpdateValidValue", "placeholder", "leftIndicator", "rightIndicator", "leftIcon", "rightIcon", "componentID", "status_id", "others", "__objRest", "Default_Status", "val_status", "set_status", "val_validate", "set_validate", "SelectedElement", "Selected", "option", "__spreadProps", "__spreadValues", "event", "rawValue", "Options", "label", "Value", "SelectInput", "SelectedExist", "SelectedValue", "DefaultOptions", "DefaultValue", "Select", "rawParams"]
7
+ }
@@ -0,0 +1,31 @@
1
+ /// <reference types="react" />
2
+ import { ReactElement, ThemeColor } from '../../@declaration/_';
3
+ import { InputTypes } from './_';
4
+ declare namespace Slider {
5
+ type Input = InputTypes.CoreInput & React.DOMAttributes<HTMLInputElement> & {
6
+ tabIndex?: number;
7
+ id?: string;
8
+ disabled?: boolean;
9
+ value?: number;
10
+ color?: Color;
11
+ min: number;
12
+ max: number;
13
+ step: number;
14
+ legends?: {
15
+ enable?: boolean;
16
+ custom?: LegendsCallback;
17
+ showAlways?: boolean;
18
+ };
19
+ };
20
+ type Color = ThemeColor | 'theme' | 'posi' | 'nega' | 'warn';
21
+ type LegendsCallback = {
22
+ (value: number): ReactElement;
23
+ };
24
+ type DataLevelingResult = {
25
+ stepValue: number;
26
+ stepIndex: number;
27
+ positionLeft: string;
28
+ };
29
+ }
30
+ declare const Slider: React.FC<Slider.Input>;
31
+ export { Slider, Slider as default };