@sealcode/sealgen 0.11.7 → 0.12.0

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 (694) hide show
  1. package/.madgerc +7 -0
  2. package/@types/components/components.d.ts +2 -2
  3. package/@types/components/toggle-modal.d.ts +1 -1
  4. package/@types/example.test.d.ts +1 -0
  5. package/@types/forms/controls/array.d.ts +7 -7
  6. package/@types/forms/controls/autocomplete.d.ts +3 -3
  7. package/@types/forms/controls/big-radio-group.d.ts +3 -3
  8. package/@types/forms/controls/checkbox-group.d.ts +4 -4
  9. package/@types/forms/controls/checkbox.d.ts +3 -3
  10. package/@types/forms/controls/checkboxed-list-input.d.ts +4 -4
  11. package/@types/forms/controls/collapsible-checkbox-group.d.ts +3 -3
  12. package/@types/forms/controls/collapsible-field-group.d.ts +2 -2
  13. package/@types/forms/controls/controls.d.ts +29 -29
  14. package/@types/forms/controls/derived-frame.d.ts +6 -6
  15. package/@types/forms/controls/derived.d.ts +3 -3
  16. package/@types/forms/controls/dropdown.d.ts +4 -4
  17. package/@types/forms/controls/editable-collection-subset.d.ts +3 -3
  18. package/@types/forms/controls/field-group.d.ts +2 -2
  19. package/@types/forms/controls/file.d.ts +5 -5
  20. package/@types/forms/controls/form-control.d.ts +2 -2
  21. package/@types/forms/controls/form-field-control.d.ts +3 -3
  22. package/@types/forms/controls/form-header.d.ts +2 -2
  23. package/@types/forms/controls/form-paragraph.d.ts +1 -1
  24. package/@types/forms/controls/frame.d.ts +1 -1
  25. package/@types/forms/controls/hidden-input.d.ts +3 -3
  26. package/@types/forms/controls/html.d.ts +2 -2
  27. package/@types/forms/controls/multiple-files.d.ts +5 -5
  28. package/@types/forms/controls/multiple-photos.d.ts +5 -5
  29. package/@types/forms/controls/number.d.ts +3 -3
  30. package/@types/forms/controls/photo.d.ts +7 -7
  31. package/@types/forms/controls/radio.d.ts +3 -3
  32. package/@types/forms/controls/reverse-single-reference.d.ts +1 -0
  33. package/@types/forms/controls/simple-input.d.ts +4 -4
  34. package/@types/forms/controls/textarea.d.ts +4 -4
  35. package/@types/forms/controls/tickable.d.ts +4 -4
  36. package/@types/forms/fields/boolean.d.ts +2 -2
  37. package/@types/forms/fields/checkboxed-list.d.ts +2 -2
  38. package/@types/forms/fields/collection-field.d.ts +2 -2
  39. package/@types/forms/fields/email.d.ts +1 -1
  40. package/@types/forms/fields/enum-multiple.d.ts +2 -2
  41. package/@types/forms/fields/enum.d.ts +2 -2
  42. package/@types/forms/fields/existing-sealious-value.d.ts +1 -1
  43. package/@types/forms/fields/field.d.ts +16 -16
  44. package/@types/forms/fields/file.d.ts +2 -2
  45. package/@types/forms/fields/multiple-files.d.ts +1 -1
  46. package/@types/forms/fields/number.d.ts +2 -2
  47. package/@types/forms/fields/pick-from-list.d.ts +3 -3
  48. package/@types/forms/fields/proxy-field.d.ts +1 -1
  49. package/@types/forms/fields/regexp.d.ts +2 -2
  50. package/@types/forms/fields/reverse-single-reference.d.ts +1 -1
  51. package/@types/forms/fields/simple-form-field.d.ts +2 -2
  52. package/@types/forms/fields/structured-array.d.ts +2 -2
  53. package/@types/forms/form.d.ts +3 -3
  54. package/@types/forms/form.test.d.ts +1 -1
  55. package/@types/forms/multiform.d.ts +4 -4
  56. package/@types/index.d.ts +17 -17
  57. package/@types/make-hidden-inputs.d.ts +2 -2
  58. package/@types/mount.d.ts +2 -2
  59. package/@types/page/list.d.ts +4 -4
  60. package/@types/page/mountable-with-fields.d.ts +4 -4
  61. package/@types/page/mountable.d.ts +1 -1
  62. package/@types/page/page.d.ts +4 -4
  63. package/@types/page/props-parser.d.ts +2 -2
  64. package/@types/page/sealious-list.d.ts +1 -1
  65. package/@types/page/stateful-page.d.ts +3 -3
  66. package/@types/remove-named-imports.d.ts +4 -0
  67. package/@types/run.d.ts +1 -0
  68. package/@types/src/add-collection.d.ts +1 -0
  69. package/@types/src/add-jdd-component.d.ts +1 -0
  70. package/@types/src/add-route.d.ts +3 -0
  71. package/@types/src/add-route.test.d.ts +1 -0
  72. package/@types/src/build.d.ts +3 -0
  73. package/@types/src/cli.d.ts +2 -0
  74. package/@types/src/components/components.d.ts +2 -0
  75. package/@types/src/components/tabs.d.ts +2 -0
  76. package/@types/src/components/toggle-modal.d.ts +7 -0
  77. package/@types/src/example.test.d.ts +1 -0
  78. package/@types/src/find-css-includes.d.ts +1 -0
  79. package/@types/src/forms/controls/array.d.ts +35 -0
  80. package/@types/src/forms/controls/autocomplete.d.ts +22 -0
  81. package/@types/src/forms/controls/big-radio-group.d.ts +14 -0
  82. package/@types/src/forms/controls/checkbox-group.d.ts +22 -0
  83. package/@types/src/forms/controls/checkbox.d.ts +15 -0
  84. package/@types/src/forms/controls/checkboxed-list-input.d.ts +14 -0
  85. package/@types/src/forms/controls/collapsible-checkbox-group.d.ts +11 -0
  86. package/@types/src/forms/controls/collapsible-field-group.d.ts +21 -0
  87. package/@types/src/forms/controls/controls.d.ts +29 -0
  88. package/@types/src/forms/controls/derived-frame.d.ts +22 -0
  89. package/@types/src/forms/controls/derived.d.ts +13 -0
  90. package/@types/src/forms/controls/dropdown.d.ts +30 -0
  91. package/@types/src/forms/controls/editable-collection-subset.d.ts +20 -0
  92. package/@types/src/forms/controls/field-group.d.ts +23 -0
  93. package/@types/src/forms/controls/file.d.ts +16 -0
  94. package/@types/src/forms/controls/form-control.d.ts +19 -0
  95. package/@types/src/forms/controls/form-field-control.d.ts +13 -0
  96. package/@types/src/forms/controls/form-header.d.ts +8 -0
  97. package/@types/src/forms/controls/form-paragraph.d.ts +7 -0
  98. package/@types/src/forms/controls/frame.d.ts +17 -0
  99. package/@types/src/forms/controls/hidden-input.d.ts +9 -0
  100. package/@types/src/forms/controls/html.d.ts +11 -0
  101. package/@types/src/forms/controls/multiple-files.d.ts +40 -0
  102. package/@types/src/forms/controls/multiple-photos.d.ts +18 -0
  103. package/@types/src/forms/controls/number.d.ts +13 -0
  104. package/@types/src/forms/controls/photo.d.ts +22 -0
  105. package/@types/src/forms/controls/radio.d.ts +16 -0
  106. package/@types/src/forms/controls/reverse-single-reference.d.ts +1 -0
  107. package/@types/src/forms/controls/simple-input.d.ts +32 -0
  108. package/@types/src/forms/controls/textarea.d.ts +25 -0
  109. package/@types/src/forms/controls/tickable.d.ts +24 -0
  110. package/@types/src/forms/fields/boolean.d.ts +17 -0
  111. package/@types/src/forms/fields/boolean.test.d.ts +1 -0
  112. package/@types/src/forms/fields/checkboxed-list.d.ts +20 -0
  113. package/@types/src/forms/fields/collection-field.d.ts +15 -0
  114. package/@types/src/forms/fields/email.d.ts +7 -0
  115. package/@types/src/forms/fields/email.test.d.ts +1 -0
  116. package/@types/src/forms/fields/enum-multiple.d.ts +18 -0
  117. package/@types/src/forms/fields/enum-multiple.test.d.ts +1 -0
  118. package/@types/src/forms/fields/enum.d.ts +18 -0
  119. package/@types/src/forms/fields/enum.test.d.ts +1 -0
  120. package/@types/src/forms/fields/existing-sealious-value.d.ts +6 -0
  121. package/@types/src/forms/fields/field.d.ts +43 -0
  122. package/@types/src/forms/fields/fields.d.ts +15 -0
  123. package/@types/src/forms/fields/file.d.ts +16 -0
  124. package/@types/src/forms/fields/multiple-files.d.ts +14 -0
  125. package/@types/src/forms/fields/number.d.ts +23 -0
  126. package/@types/src/forms/fields/number.test.d.ts +1 -0
  127. package/@types/src/forms/fields/pick-from-list.d.ts +14 -0
  128. package/@types/src/forms/fields/pick-from-list.test.d.ts +1 -0
  129. package/@types/src/forms/fields/proxy-field.d.ts +13 -0
  130. package/@types/src/forms/fields/regexp.d.ts +16 -0
  131. package/@types/src/forms/fields/regexp.test.d.ts +1 -0
  132. package/@types/src/forms/fields/reverse-single-reference.d.ts +13 -0
  133. package/@types/src/forms/fields/simple-form-field.d.ts +9 -0
  134. package/@types/src/forms/fields/structured-array.d.ts +14 -0
  135. package/@types/src/forms/form-types.d.ts +26 -0
  136. package/@types/src/forms/form.d.ts +31 -0
  137. package/@types/src/forms/form.test.d.ts +6 -0
  138. package/@types/src/forms/multiform.d.ts +24 -0
  139. package/@types/src/forms/multiform.test.d.ts +1 -0
  140. package/@types/src/generate-collections.d.ts +2 -0
  141. package/@types/src/generate-components.d.ts +1 -0
  142. package/@types/src/generate-routes.d.ts +1 -0
  143. package/@types/src/hehe.test.d.ts +1 -0
  144. package/@types/src/index.d.ts +27 -0
  145. package/@types/src/make-env.d.ts +1 -0
  146. package/@types/src/make-hidden-inputs.d.ts +5 -0
  147. package/@types/src/mount.d.ts +6 -0
  148. package/@types/src/notifier.d.ts +1 -0
  149. package/@types/src/page/access-control.d.ts +6 -0
  150. package/@types/src/page/default-list-filters.d.ts +6 -0
  151. package/@types/src/page/list.d.ts +47 -0
  152. package/@types/src/page/mountable-with-fields.d.ts +36 -0
  153. package/@types/src/page/mountable.d.ts +11 -0
  154. package/@types/src/page/page.d.ts +19 -0
  155. package/@types/src/page/props-parser.d.ts +16 -0
  156. package/@types/src/page/sealious-list.d.ts +19 -0
  157. package/@types/src/page/stateful-page.d.ts +34 -0
  158. package/@types/src/run.d.ts +1 -0
  159. package/@types/src/sample-index.d.ts +1 -0
  160. package/@types/src/sample-lib.d.ts +3 -0
  161. package/@types/src/sanitize.d.ts +1 -0
  162. package/@types/src/templates/collection.d.ts +1 -0
  163. package/@types/src/templates/form.d.ts +1 -0
  164. package/@types/src/templates/jdd-component.d.ts +1 -0
  165. package/@types/src/templates/list.d.ts +1 -0
  166. package/@types/src/templates/long-running-process.d.ts +1 -0
  167. package/@types/src/templates/multiform.d.ts +1 -0
  168. package/@types/src/templates/page.d.ts +1 -0
  169. package/@types/src/templates/post.d.ts +1 -0
  170. package/@types/src/templates/redirect.d.ts +1 -0
  171. package/@types/src/templates/route-test.d.ts +1 -0
  172. package/@types/src/templates/stateful-page.d.ts +1 -0
  173. package/@types/src/templates/templates.d.ts +19 -0
  174. package/@types/src/test_utils/locator_is_visible.d.ts +2 -0
  175. package/@types/src/utils/assert-throws.d.ts +1 -0
  176. package/@types/src/utils/base64.d.ts +2 -0
  177. package/@types/src/utils/browser-creator.d.ts +1 -0
  178. package/@types/src/utils/escape-url-params.d.ts +2 -0
  179. package/@types/src/utils/exec.d.ts +5 -0
  180. package/@types/src/utils/extract-fields-from-collection.d.ts +4 -0
  181. package/@types/src/utils/format-external-url.d.ts +1 -0
  182. package/@types/src/utils/import-path.d.ts +2 -0
  183. package/@types/src/utils/input-wrapper.d.ts +5 -0
  184. package/@types/src/utils/list-collections.d.ts +1 -0
  185. package/@types/src/utils/make-slug.d.ts +1 -0
  186. package/@types/src/utils/natural-numbers.d.ts +1 -0
  187. package/@types/src/utils/prettier.d.ts +2 -0
  188. package/@types/src/utils/question.d.ts +1 -0
  189. package/@types/src/utils/render-attributes.d.ts +1 -0
  190. package/@types/src/utils/sleep.d.ts +1 -0
  191. package/@types/src/utils/translate.d.ts +3 -0
  192. package/@types/src/utils/url-with-new-params.d.ts +2 -0
  193. package/@types/src/utils/utils.d.ts +16 -0
  194. package/@types/src/utils/walk.d.ts +1 -0
  195. package/@types/src/vitest.config.d.ts +2 -0
  196. package/@types/templates/templates.d.ts +8 -8
  197. package/@types/utils/input-wrapper.d.ts +1 -1
  198. package/@types/utils/utils.d.ts +12 -12
  199. package/@types/vitest.config.d.ts +2 -0
  200. package/build.js +18 -0
  201. package/coverage/.tmp/coverage-15.json +1 -0
  202. package/coverage/.tmp/coverage-16.json +1 -0
  203. package/coverage/.tmp/coverage-17.json +1 -0
  204. package/coverage/.tmp/coverage-18.json +1 -0
  205. package/coverage/.tmp/coverage-19.json +1 -0
  206. package/coverage/.tmp/coverage-20.json +1 -0
  207. package/coverage/.tmp/coverage-21.json +1 -0
  208. package/coverage/.tmp/coverage-22.json +1 -0
  209. package/coverage/.tmp/coverage-23.json +1 -0
  210. package/coverage/.tmp/coverage-24.json +1 -0
  211. package/coverage/.tmp/coverage-25.json +1 -0
  212. package/coverage/.tmp/coverage-26.json +1 -0
  213. package/dist/add-collection.js +31 -0
  214. package/dist/add-jdd-component.js +42 -0
  215. package/dist/add-route.js +67 -0
  216. package/dist/add-route.test.js +90 -0
  217. package/dist/back/routes/sample.page.js +17 -0
  218. package/dist/back/routes/sample.test.js +39 -0
  219. package/dist/build.js +149 -0
  220. package/dist/cli.js +35 -0
  221. package/dist/components/components.js +3 -0
  222. package/dist/components/tabs.js +101 -0
  223. package/dist/components/toggle-modal.js +49 -0
  224. package/dist/example.test.js +5 -0
  225. package/dist/find-css-includes.js +27 -0
  226. package/dist/forms/controls/array.js +171 -0
  227. package/dist/forms/controls/autocomplete.js +34 -0
  228. package/dist/forms/controls/big-radio-group.js +38 -0
  229. package/dist/forms/controls/checkbox-group.js +46 -0
  230. package/dist/forms/controls/checkbox.js +28 -0
  231. package/dist/forms/controls/checkboxed-list-input.js +44 -0
  232. package/dist/forms/controls/collapsible-checkbox-group.js +16 -0
  233. package/dist/forms/controls/collapsible-field-group.js +87 -0
  234. package/dist/forms/controls/controls.js +44 -0
  235. package/dist/forms/controls/derived-frame.js +77 -0
  236. package/dist/forms/controls/derived.js +81 -0
  237. package/dist/forms/controls/dropdown.js +62 -0
  238. package/dist/forms/controls/editable-collection-subset.js +82 -0
  239. package/dist/forms/controls/field-group.js +52 -0
  240. package/dist/forms/controls/file.js +38 -0
  241. package/dist/forms/controls/form-control.js +19 -0
  242. package/dist/forms/controls/form-field-control.js +12 -0
  243. package/dist/forms/controls/form-header.js +17 -0
  244. package/dist/forms/controls/form-paragraph.js +15 -0
  245. package/dist/forms/controls/frame.js +22 -0
  246. package/dist/forms/controls/hidden-input.js +17 -0
  247. package/dist/forms/controls/html.js +23 -0
  248. package/dist/forms/controls/multiple-files.js +190 -0
  249. package/dist/forms/controls/multiple-photos.js +36 -0
  250. package/dist/forms/controls/number.js +24 -0
  251. package/dist/forms/controls/photo.js +56 -0
  252. package/dist/forms/controls/radio.js +28 -0
  253. package/dist/forms/controls/reverse-single-reference.js +1 -0
  254. package/dist/forms/controls/simple-input.js +85 -0
  255. package/dist/forms/controls/textarea.js +40 -0
  256. package/dist/forms/controls/tickable.js +72 -0
  257. package/dist/forms/fields/boolean.js +49 -0
  258. package/dist/forms/fields/boolean.test.js +33 -0
  259. package/dist/forms/fields/checkboxed-list.js +49 -0
  260. package/dist/forms/fields/collection-field.js +47 -0
  261. package/dist/forms/fields/email.js +19 -0
  262. package/dist/forms/fields/email.test.js +20 -0
  263. package/dist/forms/fields/enum-multiple.js +47 -0
  264. package/dist/forms/fields/enum-multiple.test.js +27 -0
  265. package/dist/forms/fields/enum.js +41 -0
  266. package/dist/forms/fields/enum.test.js +21 -0
  267. package/dist/forms/fields/existing-sealious-value.js +21 -0
  268. package/dist/forms/fields/field.js +82 -0
  269. package/dist/forms/fields/fields.js +16 -0
  270. package/dist/forms/fields/file.js +63 -0
  271. package/dist/forms/fields/multiple-files.js +18 -0
  272. package/dist/forms/fields/number.js +42 -0
  273. package/dist/forms/fields/number.test.js +31 -0
  274. package/dist/forms/fields/pick-from-list.js +34 -0
  275. package/dist/forms/fields/pick-from-list.test.js +17 -0
  276. package/dist/forms/fields/proxy-field.js +23 -0
  277. package/dist/forms/fields/regexp.js +42 -0
  278. package/dist/forms/fields/regexp.test.js +21 -0
  279. package/dist/forms/fields/reverse-single-reference.js +17 -0
  280. package/dist/forms/fields/simple-form-field.js +22 -0
  281. package/dist/forms/fields/structured-array.js +21 -0
  282. package/dist/forms/form-types.js +1 -0
  283. package/dist/forms/form.js +203 -0
  284. package/dist/forms/form.test.js +316 -0
  285. package/dist/forms/multiform.js +200 -0
  286. package/dist/forms/multiform.test.js +486 -0
  287. package/dist/generate-collections.js +65 -0
  288. package/dist/generate-components.js +41 -0
  289. package/dist/generate-routes.js +90 -0
  290. package/dist/hehe.test.js +7 -0
  291. package/dist/index.js +26 -0
  292. package/dist/make-env.js +17 -0
  293. package/dist/make-hidden-inputs.js +15 -0
  294. package/dist/mount.js +66 -0
  295. package/dist/notifier.js +21 -0
  296. package/dist/page/access-control.js +19 -0
  297. package/dist/page/default-list-filters.js +46 -0
  298. package/dist/page/list.js +199 -0
  299. package/dist/page/mountable-with-fields.js +106 -0
  300. package/dist/page/mountable.js +9 -0
  301. package/dist/page/page.js +31 -0
  302. package/dist/page/props-parser.js +24 -0
  303. package/dist/page/sealious-list.js +61 -0
  304. package/dist/page/stateful-page.js +123 -0
  305. package/dist/run.js +1 -0
  306. package/dist/sample-index.js +3 -0
  307. package/dist/sample-lib.js +9 -0
  308. package/dist/sanitize.js +10 -0
  309. package/dist/templates/collection.js +15 -0
  310. package/dist/templates/form.js +60 -0
  311. package/dist/templates/jdd-component.js +44 -0
  312. package/dist/templates/list.js +144 -0
  313. package/dist/templates/long-running-process.js +63 -0
  314. package/dist/templates/multiform.js +58 -0
  315. package/dist/templates/page.js +26 -0
  316. package/dist/templates/post.js +25 -0
  317. package/dist/templates/redirect.js +26 -0
  318. package/dist/templates/route-test.js +61 -0
  319. package/dist/templates/stateful-page.js +69 -0
  320. package/dist/templates/templates.js +24 -0
  321. package/dist/test_utils/locator_is_visible.js +14 -0
  322. package/dist/utils/assert-throws.js +18 -0
  323. package/dist/utils/base64.js +11 -0
  324. package/dist/utils/browser-creator.js +11 -0
  325. package/dist/utils/escape-url-params.js +11 -0
  326. package/dist/utils/exec.js +29 -0
  327. package/dist/utils/extract-fields-from-collection.js +33 -0
  328. package/dist/utils/format-external-url.js +11 -0
  329. package/dist/utils/import-path.js +23 -0
  330. package/dist/utils/input-wrapper.js +19 -0
  331. package/dist/utils/list-collections.js +13 -0
  332. package/dist/utils/make-slug.js +7 -0
  333. package/dist/utils/natural-numbers.js +9 -0
  334. package/dist/utils/prettier.js +15 -0
  335. package/dist/utils/question.js +20 -0
  336. package/dist/utils/render-attributes.js +18 -0
  337. package/dist/utils/sleep.js +7 -0
  338. package/dist/utils/translate.js +12 -0
  339. package/dist/utils/url-with-new-params.js +8 -0
  340. package/dist/utils/utils.js +28 -0
  341. package/dist/utils/walk.js +23 -0
  342. package/dist/vitest.config.js +23 -0
  343. package/lib/add-collection.js +14 -21
  344. package/lib/add-jdd-component.js +17 -24
  345. package/lib/add-route.js +18 -25
  346. package/lib/add-route.test.js +15 -21
  347. package/lib/build.js +51 -56
  348. package/lib/cli.js +20 -21
  349. package/lib/components/components.js +2 -18
  350. package/lib/components/tabs.js +4 -8
  351. package/lib/components/toggle-modal.js +5 -9
  352. package/lib/example.test.js +1 -0
  353. package/lib/find-css-includes.js +9 -16
  354. package/lib/forms/controls/array.js +16 -24
  355. package/lib/forms/controls/autocomplete.js +2 -6
  356. package/lib/forms/controls/big-radio-group.js +5 -9
  357. package/lib/forms/controls/checkbox-group.js +6 -10
  358. package/lib/forms/controls/checkbox.js +3 -8
  359. package/lib/forms/controls/checkboxed-list-input.js +8 -12
  360. package/lib/forms/controls/collapsible-checkbox-group.js +4 -8
  361. package/lib/forms/controls/collapsible-field-group.js +4 -8
  362. package/lib/forms/controls/controls.js +29 -58
  363. package/lib/forms/controls/derived-frame.js +13 -17
  364. package/lib/forms/controls/derived.js +6 -10
  365. package/lib/forms/controls/dropdown.js +7 -12
  366. package/lib/forms/controls/editable-collection-subset.js +7 -11
  367. package/lib/forms/controls/field-group.js +4 -8
  368. package/lib/forms/controls/file.js +4 -8
  369. package/lib/forms/controls/form-control.js +2 -7
  370. package/lib/forms/controls/form-field-control.js +2 -6
  371. package/lib/forms/controls/form-header.js +2 -6
  372. package/lib/forms/controls/form-paragraph.js +2 -6
  373. package/lib/forms/controls/frame.js +2 -6
  374. package/lib/forms/controls/hidden-input.js +5 -9
  375. package/lib/forms/controls/html.js +2 -6
  376. package/lib/forms/controls/multiple-files.js +13 -17
  377. package/lib/forms/controls/multiple-photos.js +4 -8
  378. package/lib/forms/controls/number.js +2 -6
  379. package/lib/forms/controls/photo.js +6 -10
  380. package/lib/forms/controls/radio.js +2 -6
  381. package/lib/forms/controls/reverse-single-reference.js +1 -0
  382. package/lib/forms/controls/simple-input.js +7 -11
  383. package/lib/forms/controls/textarea.js +2 -6
  384. package/lib/forms/controls/tickable.js +7 -11
  385. package/lib/forms/fields/boolean.js +7 -11
  386. package/lib/forms/fields/boolean.test.js +19 -24
  387. package/lib/forms/fields/checkboxed-list.js +7 -11
  388. package/lib/forms/fields/collection-field.js +4 -8
  389. package/lib/forms/fields/email.js +4 -8
  390. package/lib/forms/fields/email.test.js +10 -15
  391. package/lib/forms/fields/enum-multiple.js +7 -11
  392. package/lib/forms/fields/enum-multiple.test.js +15 -20
  393. package/lib/forms/fields/enum.js +6 -10
  394. package/lib/forms/fields/enum.test.js +11 -16
  395. package/lib/forms/fields/existing-sealious-value.js +2 -6
  396. package/lib/forms/fields/field.js +21 -40
  397. package/lib/forms/fields/file.js +15 -19
  398. package/lib/forms/fields/multiple-files.js +2 -6
  399. package/lib/forms/fields/number.js +9 -13
  400. package/lib/forms/fields/number.test.js +18 -23
  401. package/lib/forms/fields/pick-from-list.js +5 -9
  402. package/lib/forms/fields/pick-from-list.test.js +6 -11
  403. package/lib/forms/fields/proxy-field.js +2 -6
  404. package/lib/forms/fields/regexp.js +6 -10
  405. package/lib/forms/fields/regexp.test.js +11 -16
  406. package/lib/forms/fields/reverse-single-reference.js +2 -6
  407. package/lib/forms/fields/simple-form-field.js +5 -8
  408. package/lib/forms/fields/structured-array.js +2 -6
  409. package/lib/forms/form.js +16 -23
  410. package/lib/forms/form.test.js +1 -275
  411. package/lib/forms/multiform.js +10 -14
  412. package/lib/forms/multiform.test.js +65 -70
  413. package/lib/generate-collections.js +12 -43
  414. package/lib/generate-components.js +14 -44
  415. package/lib/generate-routes.js +22 -52
  416. package/lib/index.js +16 -45
  417. package/lib/make-env.js +7 -14
  418. package/lib/make-hidden-inputs.js +6 -10
  419. package/lib/mount.js +5 -9
  420. package/lib/notifier.js +3 -10
  421. package/lib/page/access-control.js +1 -5
  422. package/lib/page/default-list-filters.js +6 -11
  423. package/lib/page/list.js +24 -31
  424. package/lib/page/mountable-with-fields.js +7 -11
  425. package/lib/page/mountable.js +1 -5
  426. package/lib/page/page.js +6 -10
  427. package/lib/page/props-parser.js +4 -12
  428. package/lib/page/sealious-list.js +8 -15
  429. package/lib/page/stateful-page.js +18 -25
  430. package/lib/remove-named-imports.js +47 -0
  431. package/lib/run.js +1 -0
  432. package/lib/sanitize.js +1 -5
  433. package/lib/src/add-collection.js +24 -0
  434. package/lib/src/add-jdd-component.js +27 -0
  435. package/lib/src/add-route.js +65 -0
  436. package/lib/src/add-route.test.js +72 -0
  437. package/lib/src/build.js +142 -0
  438. package/lib/src/cli.js +37 -0
  439. package/lib/src/components/components.js +3 -0
  440. package/lib/src/components/tabs.js +88 -0
  441. package/lib/src/components/toggle-modal.js +46 -0
  442. package/lib/src/example.test.js +5 -0
  443. package/lib/src/find-css-includes.js +23 -0
  444. package/lib/src/forms/controls/array.js +141 -0
  445. package/lib/src/forms/controls/autocomplete.js +23 -0
  446. package/lib/src/forms/controls/big-radio-group.js +34 -0
  447. package/lib/src/forms/controls/checkbox-group.js +30 -0
  448. package/lib/src/forms/controls/checkbox.js +24 -0
  449. package/lib/src/forms/controls/checkboxed-list-input.js +35 -0
  450. package/lib/src/forms/controls/collapsible-checkbox-group.js +13 -0
  451. package/lib/src/forms/controls/collapsible-field-group.js +78 -0
  452. package/lib/src/forms/controls/controls.js +31 -0
  453. package/lib/src/forms/controls/derived-frame.js +52 -0
  454. package/lib/src/forms/controls/derived.js +77 -0
  455. package/lib/src/forms/controls/dropdown.js +55 -0
  456. package/lib/src/forms/controls/editable-collection-subset.js +68 -0
  457. package/lib/src/forms/controls/field-group.js +53 -0
  458. package/lib/src/forms/controls/file.js +35 -0
  459. package/lib/src/forms/controls/form-control.js +14 -0
  460. package/lib/src/forms/controls/form-field-control.js +9 -0
  461. package/lib/src/forms/controls/form-header.js +14 -0
  462. package/lib/src/forms/controls/form-paragraph.js +12 -0
  463. package/lib/src/forms/controls/frame.js +25 -0
  464. package/lib/src/forms/controls/hidden-input.js +14 -0
  465. package/lib/src/forms/controls/html.js +23 -0
  466. package/lib/src/forms/controls/multiple-files.js +160 -0
  467. package/lib/src/forms/controls/multiple-photos.js +33 -0
  468. package/lib/src/forms/controls/number.js +25 -0
  469. package/lib/src/forms/controls/photo.js +57 -0
  470. package/lib/src/forms/controls/radio.js +25 -0
  471. package/lib/src/forms/controls/reverse-single-reference.js +47 -0
  472. package/lib/src/forms/controls/simple-input.js +78 -0
  473. package/lib/src/forms/controls/textarea.js +33 -0
  474. package/lib/src/forms/controls/tickable.js +75 -0
  475. package/lib/src/forms/fields/boolean.js +51 -0
  476. package/lib/src/forms/fields/boolean.test.js +33 -0
  477. package/lib/src/forms/fields/checkboxed-list.js +40 -0
  478. package/lib/src/forms/fields/collection-field.js +29 -0
  479. package/lib/src/forms/fields/email.js +11 -0
  480. package/lib/src/forms/fields/email.test.js +20 -0
  481. package/lib/src/forms/fields/enum-multiple.js +47 -0
  482. package/lib/src/forms/fields/enum-multiple.test.js +27 -0
  483. package/lib/src/forms/fields/enum.js +39 -0
  484. package/lib/src/forms/fields/enum.test.js +21 -0
  485. package/lib/src/forms/fields/existing-sealious-value.js +16 -0
  486. package/lib/src/forms/fields/field.js +66 -0
  487. package/lib/src/forms/fields/fields.js +16 -0
  488. package/lib/src/forms/fields/file.js +53 -0
  489. package/lib/src/forms/fields/multiple-files.js +15 -0
  490. package/lib/src/forms/fields/number.js +45 -0
  491. package/lib/src/forms/fields/number.test.js +31 -0
  492. package/lib/src/forms/fields/pick-from-list.js +31 -0
  493. package/lib/src/forms/fields/pick-from-list.test.js +17 -0
  494. package/lib/src/forms/fields/proxy-field.js +20 -0
  495. package/lib/src/forms/fields/regexp.js +40 -0
  496. package/lib/src/forms/fields/regexp.test.js +21 -0
  497. package/lib/src/forms/fields/reverse-single-reference.js +14 -0
  498. package/lib/src/forms/fields/simple-form-field.js +19 -0
  499. package/lib/src/forms/fields/structured-array.js +18 -0
  500. package/lib/src/forms/form-types.js +2 -0
  501. package/lib/src/forms/form.js +176 -0
  502. package/lib/src/forms/form.test.js +271 -0
  503. package/lib/src/forms/multiform.js +174 -0
  504. package/lib/src/forms/multiform.test.js +430 -0
  505. package/lib/src/generate-collections.js +52 -0
  506. package/lib/src/generate-components.js +33 -0
  507. package/lib/src/generate-routes.js +75 -0
  508. package/lib/src/hehe.test.js +7 -0
  509. package/lib/src/index.js +19 -0
  510. package/lib/src/make-env.js +14 -0
  511. package/lib/src/make-hidden-inputs.js +14 -0
  512. package/lib/src/mount.js +70 -0
  513. package/lib/src/notifier.js +19 -0
  514. package/lib/src/page/access-control.js +16 -0
  515. package/lib/src/page/default-list-filters.js +40 -0
  516. package/lib/src/page/list.js +184 -0
  517. package/lib/src/page/mountable-with-fields.js +85 -0
  518. package/lib/src/page/mountable.js +5 -0
  519. package/lib/src/page/page.js +26 -0
  520. package/lib/src/page/props-parser.js +23 -0
  521. package/lib/src/page/sealious-list.js +59 -0
  522. package/lib/src/page/stateful-page.js +97 -0
  523. package/lib/src/run.js +2 -0
  524. package/lib/src/sample-index.js +3 -0
  525. package/lib/src/sample-lib.js +6 -0
  526. package/lib/src/sanitize.js +10 -0
  527. package/lib/src/templates/collection.js +12 -0
  528. package/lib/src/templates/form.js +57 -0
  529. package/lib/src/templates/jdd-component.js +39 -0
  530. package/lib/src/templates/list.js +139 -0
  531. package/lib/src/templates/long-running-process.js +60 -0
  532. package/lib/src/templates/multiform.js +55 -0
  533. package/lib/src/templates/page.js +23 -0
  534. package/lib/src/templates/post.js +22 -0
  535. package/lib/src/templates/redirect.js +23 -0
  536. package/lib/src/templates/route-test.js +54 -0
  537. package/lib/src/templates/stateful-page.js +66 -0
  538. package/lib/src/templates/templates.js +21 -0
  539. package/lib/src/test_utils/locator_is_visible.js +11 -0
  540. package/lib/src/utils/assert-throws.js +17 -0
  541. package/lib/src/utils/base64.js +7 -0
  542. package/lib/src/utils/browser-creator.js +10 -0
  543. package/lib/src/utils/escape-url-params.js +14 -0
  544. package/lib/src/utils/exec.js +22 -0
  545. package/lib/src/utils/extract-fields-from-collection.js +26 -0
  546. package/lib/src/utils/format-external-url.js +11 -0
  547. package/lib/src/utils/import-path.js +16 -0
  548. package/lib/src/utils/input-wrapper.js +15 -0
  549. package/lib/src/utils/list-collections.js +13 -0
  550. package/lib/src/utils/make-slug.js +6 -0
  551. package/lib/src/utils/natural-numbers.js +6 -0
  552. package/lib/src/utils/prettier.js +10 -0
  553. package/lib/src/utils/question.js +19 -0
  554. package/lib/src/utils/render-attributes.js +19 -0
  555. package/lib/src/utils/sleep.js +4 -0
  556. package/lib/src/utils/translate.js +6 -0
  557. package/lib/src/utils/url-with-new-params.js +5 -0
  558. package/lib/src/utils/utils.js +16 -0
  559. package/lib/src/utils/walk.js +23 -0
  560. package/lib/src/vitest.config.js +20 -0
  561. package/lib/templates/collection.js +1 -5
  562. package/lib/templates/form.js +3 -7
  563. package/lib/templates/jdd-component.js +5 -9
  564. package/lib/templates/list.js +14 -21
  565. package/lib/templates/long-running-process.js +3 -7
  566. package/lib/templates/multiform.js +3 -7
  567. package/lib/templates/page.js +3 -7
  568. package/lib/templates/post.js +1 -5
  569. package/lib/templates/redirect.js +1 -5
  570. package/lib/templates/route-test.js +3 -7
  571. package/lib/templates/stateful-page.js +3 -7
  572. package/lib/templates/templates.js +19 -22
  573. package/lib/test_utils/locator_is_visible.js +3 -7
  574. package/lib/utils/assert-throws.js +3 -10
  575. package/lib/utils/base64.js +2 -7
  576. package/lib/utils/browser-creator.js +3 -7
  577. package/lib/utils/escape-url-params.js +2 -7
  578. package/lib/utils/exec.js +3 -7
  579. package/lib/utils/extract-fields-from-collection.js +9 -15
  580. package/lib/utils/format-external-url.js +1 -5
  581. package/lib/utils/import-path.js +6 -14
  582. package/lib/utils/input-wrapper.js +4 -9
  583. package/lib/utils/list-collections.js +5 -12
  584. package/lib/utils/make-slug.js +1 -5
  585. package/lib/utils/natural-numbers.js +1 -5
  586. package/lib/utils/prettier.js +4 -34
  587. package/lib/utils/question.js +3 -7
  588. package/lib/utils/render-attributes.js +3 -7
  589. package/lib/utils/sleep.js +1 -5
  590. package/lib/utils/translate.js +1 -5
  591. package/lib/utils/url-with-new-params.js +3 -10
  592. package/lib/utils/utils.js +13 -40
  593. package/lib/utils/walk.js +6 -10
  594. package/lib/vitest.config.js +22 -0
  595. package/package.json +23 -22
  596. package/remove-named-imports.js +65 -0
  597. package/src/add-collection.ts +3 -3
  598. package/src/add-jdd-component.ts +3 -3
  599. package/src/add-route.test.ts +38 -10
  600. package/src/add-route.ts +5 -5
  601. package/src/build.ts +46 -90
  602. package/src/cli.ts +14 -13
  603. package/src/components/components.ts +2 -2
  604. package/src/components/toggle-modal.ts +1 -1
  605. package/src/find-css-includes.ts +1 -1
  606. package/src/forms/controls/array.ts +9 -8
  607. package/src/forms/controls/autocomplete.ts +4 -4
  608. package/src/forms/controls/big-radio-group.ts +3 -3
  609. package/src/forms/controls/checkbox-group.ts +7 -6
  610. package/src/forms/controls/checkbox.ts +3 -3
  611. package/src/forms/controls/checkboxed-list-input.ts +4 -6
  612. package/src/forms/controls/collapsible-checkbox-group.ts +4 -7
  613. package/src/forms/controls/collapsible-field-group.ts +2 -2
  614. package/src/forms/controls/controls.ts +29 -29
  615. package/src/forms/controls/derived-frame.ts +4 -4
  616. package/src/forms/controls/derived.ts +3 -3
  617. package/src/forms/controls/dropdown.ts +6 -5
  618. package/src/forms/controls/editable-collection-subset.ts +4 -4
  619. package/src/forms/controls/field-group.ts +2 -4
  620. package/src/forms/controls/file.ts +4 -4
  621. package/src/forms/controls/form-control.ts +1 -1
  622. package/src/forms/controls/form-field-control.ts +3 -4
  623. package/src/forms/controls/form-header.ts +1 -3
  624. package/src/forms/controls/form-paragraph.ts +1 -1
  625. package/src/forms/controls/frame.ts +2 -2
  626. package/src/forms/controls/hidden-input.ts +5 -5
  627. package/src/forms/controls/html.ts +1 -4
  628. package/src/forms/controls/multiple-files.ts +24 -26
  629. package/src/forms/controls/multiple-photos.ts +4 -4
  630. package/src/forms/controls/number.ts +3 -6
  631. package/src/forms/controls/photo.ts +9 -8
  632. package/src/forms/controls/radio.ts +3 -3
  633. package/src/forms/controls/simple-input.ts +6 -6
  634. package/src/forms/controls/textarea.ts +4 -4
  635. package/src/forms/controls/tickable.ts +6 -6
  636. package/src/forms/fields/boolean.test.ts +2 -1
  637. package/src/forms/fields/boolean.ts +2 -2
  638. package/src/forms/fields/checkboxed-list.ts +2 -2
  639. package/src/forms/fields/collection-field.ts +2 -2
  640. package/src/forms/fields/email.test.ts +1 -1
  641. package/src/forms/fields/email.ts +1 -1
  642. package/src/forms/fields/enum-multiple.test.ts +1 -1
  643. package/src/forms/fields/enum-multiple.ts +2 -2
  644. package/src/forms/fields/enum.test.ts +1 -1
  645. package/src/forms/fields/enum.ts +2 -2
  646. package/src/forms/fields/existing-sealious-value.ts +1 -1
  647. package/src/forms/fields/field.ts +2 -18
  648. package/src/forms/fields/fields.ts +15 -0
  649. package/src/forms/fields/file.ts +8 -9
  650. package/src/forms/fields/multiple-files.ts +1 -1
  651. package/src/forms/fields/number.test.ts +2 -1
  652. package/src/forms/fields/number.ts +2 -2
  653. package/src/forms/fields/pick-from-list.test.ts +1 -1
  654. package/src/forms/fields/pick-from-list.ts +3 -3
  655. package/src/forms/fields/proxy-field.ts +1 -1
  656. package/src/forms/fields/regexp.test.ts +1 -1
  657. package/src/forms/fields/regexp.ts +2 -2
  658. package/src/forms/fields/reverse-single-reference.ts +1 -1
  659. package/src/forms/fields/simple-form-field.ts +2 -2
  660. package/src/forms/fields/structured-array.ts +2 -2
  661. package/src/forms/form-types.ts +30 -0
  662. package/src/forms/form.test.ts +16 -13
  663. package/src/forms/form.ts +11 -31
  664. package/src/forms/multiform.test.ts +33 -28
  665. package/src/forms/multiform.ts +4 -3
  666. package/src/generate-collections.ts +1 -1
  667. package/src/generate-components.ts +3 -1
  668. package/src/generate-routes.ts +5 -5
  669. package/src/index.ts +19 -17
  670. package/src/make-hidden-inputs.ts +3 -3
  671. package/src/mount.ts +5 -5
  672. package/src/page/list.ts +8 -6
  673. package/src/page/mountable-with-fields.ts +8 -4
  674. package/src/page/page.ts +3 -4
  675. package/src/page/props-parser.ts +2 -2
  676. package/src/page/sealious-list.ts +2 -2
  677. package/src/page/stateful-page.ts +3 -3
  678. package/src/templates/form.ts +1 -1
  679. package/src/templates/list.ts +6 -6
  680. package/src/templates/long-running-process.ts +1 -1
  681. package/src/templates/multiform.ts +1 -1
  682. package/src/templates/page.ts +1 -1
  683. package/src/templates/route-test.ts +1 -1
  684. package/src/templates/stateful-page.ts +1 -1
  685. package/src/templates/templates.ts +9 -9
  686. package/src/test_utils/locator_is_visible.ts +1 -1
  687. package/src/utils/extract-fields-from-collection.ts +1 -1
  688. package/src/utils/list-collections.ts +1 -1
  689. package/src/utils/prettier.ts +2 -2
  690. package/src/utils/render-attributes.ts +1 -1
  691. package/src/utils/utils.ts +12 -12
  692. package/src/vitest.config.ts +21 -0
  693. package/tsconfig.json +12 -5
  694. package/lib/find-scss-includes.js +0 -30
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.EditableCollectionSubset = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const sanitize_1 = require("../../sanitize");
6
- const controls_1 = require("./controls");
1
+ import { tempstream } from "tempstream";
2
+ import { attribute } from "../../sanitize.js";
3
+ import { FormFieldControl } from "./controls.js";
7
4
  /**
8
5
  * This control has own forms in it so if you want to use it you
9
6
  * probably shouldn't use `await super.render(ctx, data, path)` in
@@ -11,7 +8,7 @@ const controls_1 = require("./controls");
11
8
  * your own implementation of this method. See forms that uses
12
9
  * this control for reference.
13
10
  */
14
- class EditableCollectionSubset extends controls_1.FormFieldControl {
11
+ export class EditableCollectionSubset extends FormFieldControl {
15
12
  constructor(field, actionname, listLabel, selectLabel) {
16
13
  super([field]);
17
14
  this.field = field;
@@ -22,7 +19,7 @@ class EditableCollectionSubset extends controls_1.FormFieldControl {
22
19
  }
23
20
  async render(fctx) {
24
21
  const { parsed: values } = await this.field.getValue(fctx.ctx, fctx.data);
25
- return (0, tempstream_1.tempstream /* HTML */) `<div>
22
+ return tempstream /* HTML */ `<div>
26
23
  <ul>
27
24
  ${Promise.resolve(this.field.generateOptions(fctx.ctx)).then((options) => Object.entries(options)
28
25
  .filter(([value]) => (values || []).includes(value))
@@ -36,7 +33,7 @@ class EditableCollectionSubset extends controls_1.FormFieldControl {
36
33
  <input
37
34
  type="hidden"
38
35
  name="${this.field.name}"
39
- value="${(0, sanitize_1.attribute)(value)}"
36
+ value="${attribute(value)}"
40
37
  />
41
38
  <input
42
39
  type="hidden"
@@ -57,7 +54,7 @@ class EditableCollectionSubset extends controls_1.FormFieldControl {
57
54
  <select name="${this.field.name}">
58
55
  ${Promise.resolve(this.field.generateOptions(fctx.ctx)).then((options) => Object.entries(options)
59
56
  .filter(([value]) => !(values || []).includes(value))
60
- .map(([value, text]) => `<option value="${(0, sanitize_1.attribute)(value)}">${text}</option>`))}
57
+ .map(([value, text]) => `<option value="${attribute(value)}">${text}</option>`))}
61
58
  </select>
62
59
  <input type="hidden" name="${this.actionname}" value="select" />
63
60
  <input
@@ -68,5 +65,4 @@ class EditableCollectionSubset extends controls_1.FormFieldControl {
68
65
  </div>`;
69
66
  }
70
67
  }
71
- exports.EditableCollectionSubset = EditableCollectionSubset;
72
68
  //# sourceMappingURL=editable-collection-subset.js.map
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FieldGroup = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const form_field_control_1 = require("./form-field-control");
6
- class FieldGroup extends form_field_control_1.FormFieldControl {
1
+ import { tempstream } from "tempstream";
2
+ import { FormFieldControl } from "./form-field-control.js";
3
+ export class FieldGroup extends FormFieldControl {
7
4
  constructor(controls, options = {}) {
8
5
  super([]);
9
6
  this.controls = controls;
@@ -29,7 +26,7 @@ class FieldGroup extends form_field_control_1.FormFieldControl {
29
26
  }
30
27
  async render(fctx) {
31
28
  const { label, classes } = this.options;
32
- return (0, tempstream_1.tempstream /* HTML */) `
29
+ return tempstream /* HTML */ `
33
30
  <div
34
31
  class="field-group ${(classes || []).join(" ")}"
35
32
  ${this.options.containerID
@@ -53,5 +50,4 @@ class FieldGroup extends form_field_control_1.FormFieldControl {
53
50
  `;
54
51
  }
55
52
  }
56
- exports.FieldGroup = FieldGroup;
57
53
  //# sourceMappingURL=field-group.js.map
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.File = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const simple_input_1 = require("./simple-input");
6
- class File extends simple_input_1.SimpleInput {
1
+ import { tempstream } from "tempstream";
2
+ import { SimpleInput } from "./simple-input.js";
3
+ export class File extends SimpleInput {
7
4
  getType() {
8
5
  return "file";
9
6
  }
@@ -12,7 +9,7 @@ class File extends simple_input_1.SimpleInput {
12
9
  }
13
10
  async preInput(ctx, data) {
14
11
  const { parsed } = await this.field.getValue(ctx, data);
15
- return (0, tempstream_1.tempstream /* HTML */) `${this.renderFilePreview(ctx, parsed.old)}
12
+ return tempstream /* HTML */ `${this.renderFilePreview(ctx, parsed.old)}
16
13
  <input
17
14
  type="hidden"
18
15
  name="${this.field.name}[old][id]"
@@ -35,5 +32,4 @@ class File extends simple_input_1.SimpleInput {
35
32
  };
36
33
  }
37
34
  }
38
- exports.File = File;
39
35
  //# sourceMappingURL=file.js.map
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FormControl = exports.FormControlContext = void 0;
4
- class FormControlContext {
1
+ export class FormControlContext {
5
2
  constructor(ctx, data, messages, field_name_prefix, form_id, validate) {
6
3
  this.ctx = ctx;
7
4
  this.data = data;
@@ -11,9 +8,7 @@ class FormControlContext {
11
8
  this.validate = validate;
12
9
  }
13
10
  }
14
- exports.FormControlContext = FormControlContext;
15
- class FormControl {
11
+ export class FormControl {
16
12
  mount(router) { }
17
13
  }
18
- exports.FormControl = FormControl;
19
14
  //# sourceMappingURL=form-control.js.map
@@ -1,13 +1,9 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FormFieldControl = void 0;
4
- const form_control_1 = require("./form-control");
5
- class FormFieldControl extends form_control_1.FormControl {
1
+ import { FormControl } from "./form-control.js";
2
+ export class FormFieldControl extends FormControl {
6
3
  constructor(fields) {
7
4
  super();
8
5
  this.fields = fields;
9
6
  this.role = "input";
10
7
  }
11
8
  }
12
- exports.FormFieldControl = FormFieldControl;
13
9
  //# sourceMappingURL=form-field-control.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FormHeader = void 0;
4
- const controls_1 = require("./controls");
5
- class FormHeader extends controls_1.FormControl {
1
+ import { FormControl } from "./controls.js";
2
+ export class FormHeader extends FormControl {
6
3
  constructor(text, isVisible = async () => true) {
7
4
  super();
8
5
  this.text = text;
@@ -14,5 +11,4 @@ class FormHeader extends controls_1.FormControl {
14
11
  return isVsbl ? `<h2>${this.text}</h2>` : "";
15
12
  }
16
13
  }
17
- exports.FormHeader = FormHeader;
18
14
  //# sourceMappingURL=form-header.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.FormParagraph = void 0;
4
- const controls_1 = require("./controls");
5
- class FormParagraph extends controls_1.FormControl {
1
+ import { FormControl } from "./controls.js";
2
+ export class FormParagraph extends FormControl {
6
3
  constructor(text) {
7
4
  super();
8
5
  this.text = text;
@@ -12,5 +9,4 @@ class FormParagraph extends controls_1.FormControl {
12
9
  return `<p>${this.text}</p>`;
13
10
  }
14
11
  }
15
- exports.FormParagraph = FormParagraph;
16
12
  //# sourceMappingURL=form-paragraph.js.map
@@ -1,7 +1,4 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Frame = void 0;
4
- const controls_1 = require("./controls");
1
+ import { FormControl } from "./controls.js";
5
2
  /**
6
3
  * This class will render `turbo-frame` tag so that u can
7
4
  * embed other route inside your form. This will require
@@ -11,7 +8,7 @@ const controls_1 = require("./controls");
11
8
  * this value wont be provided frame will redner empty string.
12
9
  * See `src/back/routes/profile/[id].form.ts` for an example.
13
10
  */
14
- class Frame extends controls_1.FormControl {
11
+ export class Frame extends FormControl {
15
12
  constructor(src) {
16
13
  super();
17
14
  this.src = src;
@@ -25,5 +22,4 @@ class Frame extends controls_1.FormControl {
25
22
  ></turbo-frame>`;
26
23
  }
27
24
  }
28
- exports.Frame = Frame;
29
25
  //# sourceMappingURL=frame.js.map
@@ -1,18 +1,14 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HiddenInput = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const sanitize_1 = require("../../sanitize");
6
- const form_field_control_1 = require("./form-field-control");
7
- class HiddenInput extends form_field_control_1.FormFieldControl {
1
+ import { tempstream } from "tempstream";
2
+ import { attribute } from "../../sanitize.js";
3
+ import { FormFieldControl } from "./form-field-control.js";
4
+ export class HiddenInput extends FormFieldControl {
8
5
  constructor(field) {
9
6
  super([field]);
10
7
  this.field = field;
11
8
  }
12
9
  async render(fctx) {
13
10
  const { raw } = await this.field.getValue(fctx.ctx, fctx.data);
14
- return (0, tempstream_1.tempstream) `<input type="hidden" name="${this.field.name}" value="${(0, sanitize_1.attribute)((raw || "").toString())}" form="${fctx.form_id}">`;
11
+ return tempstream `<input type="hidden" name="${this.field.name}" value="${attribute((raw || "").toString())}" form="${fctx.form_id}">`;
15
12
  }
16
13
  }
17
- exports.HiddenInput = HiddenInput;
18
14
  //# sourceMappingURL=hidden-input.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.HTML = void 0;
4
- const controls_1 = require("./controls");
5
- class HTML extends controls_1.FormControl {
1
+ import { FormControl } from "./controls.js";
2
+ export class HTML extends FormControl {
6
3
  constructor(role_or_renderer, renderer_or_undefined) {
7
4
  super();
8
5
  this.role = "decoration";
@@ -23,5 +20,4 @@ class HTML extends controls_1.FormControl {
23
20
  : this.renderer;
24
21
  }
25
22
  }
26
- exports.HTML = HTML;
27
23
  //# sourceMappingURL=html.js.map
@@ -1,13 +1,10 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MultipleFiles = void 0;
4
- const sealious_1 = require("sealious");
5
- const input_wrapper_1 = require("../../utils/input-wrapper");
6
- const tempstream_1 = require("tempstream");
7
- const form_field_control_1 = require("./form-field-control");
8
- const ts_predicates_1 = require("@sealcode/ts-predicates");
9
- const render_attributes_1 = require("../../utils/render-attributes");
10
- class MultipleFiles extends form_field_control_1.FormFieldControl {
1
+ import { File as SealiousFile, } from "sealious";
2
+ import { inputWrapper } from "../../utils/input-wrapper.js";
3
+ import { tempstream } from "tempstream";
4
+ import { FormFieldControl } from "./form-field-control.js";
5
+ import { is, predicates } from "@sealcode/ts-predicates";
6
+ import { renderAttributes } from "../../utils/render-attributes.js";
7
+ export class MultipleFiles extends FormFieldControl {
11
8
  constructor(field, options) {
12
9
  super([field]);
13
10
  this.field = field;
@@ -26,7 +23,7 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
26
23
  });
27
24
  router.post(this.getFrameRelativeURL() + "/add", async (ctx) => {
28
25
  let files = ctx.$body.files;
29
- if (!files || !(0, ts_predicates_1.is)(files, ts_predicates_1.predicates.object)) {
26
+ if (!files || !is(files, predicates.object)) {
30
27
  ctx.body = "Missing files";
31
28
  return;
32
29
  }
@@ -60,7 +57,7 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
60
57
  return `A${this.field.name}__multiple-fields-control`;
61
58
  }
62
59
  renderFrame(ctx, content) {
63
- return (0, tempstream_1.tempstream /* HTML */) `<turbo-frame
60
+ return tempstream /* HTML */ `<turbo-frame
64
61
  ${content ? "" : `src="./${this.getFrameRelativeURL()}"`}
65
62
  id="${this.getFrameID()}"
66
63
  target="_top"
@@ -88,13 +85,13 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
88
85
  if (!sealious_field) {
89
86
  return null;
90
87
  }
91
- return await sealious_1.File.fromID(item.collection.app, item.get(sealious_field.name).id);
88
+ return await SealiousFile.fromID(item.collection.app, item.get(sealious_field.name).id);
92
89
  }
93
90
  async renderFileItemPreview(_fileItem, file) {
94
91
  return file.filename || "no filename";
95
92
  }
96
93
  async renderFileItem(fileItem, file) {
97
- return (0, tempstream_1.tempstream /* HTML */) `<li class="file-list-item">
94
+ return tempstream /* HTML */ `<li class="file-list-item">
98
95
  <a
99
96
  class="file-list-item__preview"
100
97
  href="${file.getURL()}"
@@ -139,7 +136,7 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
139
136
  item,
140
137
  await this.extractFileFromItem(item),
141
138
  ]))).filter(([_, f]) => f !== null);
142
- return (0, input_wrapper_1.inputWrapper)(["multiple-files", this.field.name, ...this.getClassModifiers()], (0, tempstream_1.tempstream /* HTML */) `
139
+ return inputWrapper(["multiple-files", this.field.name, ...this.getClassModifiers()], tempstream /* HTML */ `
143
140
  <label>${this.options.label || this.field.name}</label>
144
141
  <ul class="multiple-files__list">
145
142
  ${files.map(([item, file]) => this.renderFileItem(item, file))}
@@ -150,7 +147,7 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
150
147
  enctype="multipart/form-data"
151
148
  data-turbo-frame="${this.getFrameID()}"
152
149
  >
153
- <input ${(0, render_attributes_1.renderAttributes)(this.getInputAttributes())} />
150
+ <input ${renderAttributes(this.getInputAttributes())} />
154
151
  <input
155
152
  type="submit"
156
153
  value="${this.options.uploadLabel || "Upload"}"
@@ -160,5 +157,4 @@ class MultipleFiles extends form_field_control_1.FormFieldControl {
160
157
  `);
161
158
  }
162
159
  }
163
- exports.MultipleFiles = MultipleFiles;
164
160
  //# sourceMappingURL=multiple-files.js.map
@@ -1,9 +1,6 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.MultiplePhotos = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const multiple_files_1 = require("./multiple-files");
6
- class MultiplePhotos extends multiple_files_1.MultipleFiles {
1
+ import { tempstream } from "tempstream";
2
+ import { MultipleFiles } from "./multiple-files.js";
3
+ export class MultiplePhotos extends MultipleFiles {
7
4
  constructor(field, imageRouter, options) {
8
5
  super(field, options);
9
6
  this.field = field;
@@ -20,7 +17,7 @@ class MultiplePhotos extends multiple_files_1.MultipleFiles {
20
17
  if (!path) {
21
18
  return "missing file";
22
19
  }
23
- return (0, tempstream_1.tempstream /* HTML */) `<li>
20
+ return tempstream /* HTML */ `<li>
24
21
  <a href="${file.getURL()}" data-turbo="false">
25
22
  ${this.imageRouter.image({
26
23
  path,
@@ -33,5 +30,4 @@ class MultiplePhotos extends multiple_files_1.MultipleFiles {
33
30
  </li>`;
34
31
  }
35
32
  }
36
- exports.MultiplePhotos = MultiplePhotos;
37
33
  //# sourceMappingURL=multiple-photos.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Number = void 0;
4
- const simple_input_1 = require("./simple-input");
5
- class Number extends simple_input_1.SimpleInput {
1
+ import { SimpleInput } from "./simple-input.js";
2
+ export class Number extends SimpleInput {
6
3
  constructor(field, options) {
7
4
  super(field, options);
8
5
  }
@@ -25,5 +22,4 @@ class Number extends simple_input_1.SimpleInput {
25
22
  };
26
23
  }
27
24
  }
28
- exports.Number = Number;
29
25
  //# sourceMappingURL=number.js.map
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Photo = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const file_1 = require("./file");
6
- const sealious_1 = require("sealious");
7
- class Photo extends file_1.File {
1
+ import { tempstream } from "tempstream";
2
+ import { File } from "./file.js";
3
+ import { File as SealiousFile } from "sealious";
4
+ export class Photo extends File {
8
5
  constructor(field, imageRouter, options) {
9
6
  super(field, options);
10
7
  this.field = field;
@@ -23,8 +20,8 @@ class Photo extends file_1.File {
23
20
  if (!id) {
24
21
  return empty_container;
25
22
  }
26
- const file = await sealious_1.File.fromID(ctx.$app, id);
27
- return (0, tempstream_1.tempstream /* HTML */) `<div class="${class_name}">
23
+ const file = await SealiousFile.fromID(ctx.$app, id);
24
+ return tempstream /* HTML */ `<div class="${class_name}">
28
25
  ${this.imageRouter.image({
29
26
  resolutions: [100],
30
27
  sizes_attr: "100px",
@@ -57,5 +54,4 @@ class Photo extends file_1.File {
57
54
  };
58
55
  }
59
56
  }
60
- exports.Photo = Photo;
61
57
  //# sourceMappingURL=photo.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Radio = void 0;
4
- const tickable_1 = require("./tickable");
5
- class Radio extends tickable_1.Tickable {
1
+ import { Tickable } from "./tickable.js";
2
+ export class Radio extends Tickable {
6
3
  constructor(field, value, options) {
7
4
  super(field, options);
8
5
  this.field = field;
@@ -25,5 +22,4 @@ class Radio extends tickable_1.Tickable {
25
22
  return this.value === value;
26
23
  }
27
24
  }
28
- exports.Radio = Radio;
29
25
  //# sourceMappingURL=radio.js.map
@@ -4,6 +4,7 @@
4
4
  // import { Context } from "koa";
5
5
  // import { Fields } from "../..";
6
6
  // import { ArrayControl } from "./array";
7
+ export {};
7
8
  // export class ReverseSingleReference extends ArrayControl {
8
9
  // //
9
10
  // //
@@ -1,11 +1,8 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SimpleInput = void 0;
4
- const tempstream_1 = require("tempstream");
5
- const input_wrapper_1 = require("../../utils/input-wrapper");
6
- const render_attributes_1 = require("../../utils/render-attributes");
7
- const controls_1 = require("./controls");
8
- class SimpleInput extends controls_1.FormFieldControl {
1
+ import { tempstream } from "tempstream";
2
+ import { getRequiredClass, inputWrapper } from "../../utils/input-wrapper.js";
3
+ import { renderAttributes } from "../../utils/render-attributes.js";
4
+ import { FormFieldControl } from "./controls.js";
5
+ export class SimpleInput extends FormFieldControl {
9
6
  constructor(field, options) {
10
7
  super([field]);
11
8
  this.field = field;
@@ -67,10 +64,10 @@ class SimpleInput extends controls_1.FormFieldControl {
67
64
  const label = this.getLabel();
68
65
  const type = this.getType();
69
66
  const { valid, message } = await this.field.getValue(fctx.ctx, fctx.data);
70
- return (0, input_wrapper_1.inputWrapper)([id, type, (0, input_wrapper_1.getRequiredClass)(this.field.required)], (0, tempstream_1.tempstream /* HTML */) `
67
+ return inputWrapper([id, type, getRequiredClass(this.field.required)], tempstream /* HTML */ `
71
68
  ${label ? `<label for="${id}">${label}</label>` : ""}
72
69
  ${await this.preInput(fctx.ctx, fctx.data)}
73
- ${this.renderInput(fctx.ctx, (0, render_attributes_1.renderAttributes)(await this.getInputAttributes(fctx)), fctx.data)}
70
+ ${this.renderInput(fctx.ctx, renderAttributes(await this.getInputAttributes(fctx)), fctx.data)}
74
71
  ${this.postInput(fctx.ctx)}
75
72
  ${~valid && !this.options.hide_errors && fctx.validate
76
73
  ? `<div class="input__error">${message}</div>`
@@ -78,5 +75,4 @@ class SimpleInput extends controls_1.FormFieldControl {
78
75
  `);
79
76
  }
80
77
  }
81
- exports.SimpleInput = SimpleInput;
82
78
  //# sourceMappingURL=simple-input.js.map
@@ -1,8 +1,5 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Textarea = void 0;
4
- const simple_input_1 = require("./simple-input");
5
- class Textarea extends simple_input_1.SimpleInput {
1
+ import { SimpleInput } from "./simple-input.js";
2
+ export class Textarea extends SimpleInput {
6
3
  constructor(field, options = {}) {
7
4
  super(field, options);
8
5
  this.field = field;
@@ -33,5 +30,4 @@ class Textarea extends simple_input_1.SimpleInput {
33
30
  return /* HTML */ `<textarea ${attributes}>${value}</textarea>`;
34
31
  }
35
32
  }
36
- exports.Textarea = Textarea;
37
33
  //# sourceMappingURL=textarea.js.map
@@ -1,10 +1,7 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Tickable = void 0;
4
- const sanitize_1 = require("../../sanitize");
5
- const input_wrapper_1 = require("../../utils/input-wrapper");
6
- const controls_1 = require("./controls");
7
- class Tickable extends controls_1.FormFieldControl {
1
+ import { attribute } from "../../sanitize.js";
2
+ import { getRequiredClass, inputWrapper } from "../../utils/input-wrapper.js";
3
+ import { FormFieldControl } from "./controls.js";
4
+ export class Tickable extends FormFieldControl {
8
5
  constructor(field, options = {}) {
9
6
  super([field]);
10
7
  this.field = field;
@@ -20,7 +17,7 @@ class Tickable extends controls_1.FormFieldControl {
20
17
  this.makeInputID(ctx, data, value),
21
18
  this.type,
22
19
  this.field.name.replaceAll(/\W/g, "-"),
23
- (0, input_wrapper_1.getRequiredClass)(this.field.required),
20
+ getRequiredClass(this.field.required),
24
21
  ...(this.isChecked(ctx, data, value) ? ["checked"] : []),
25
22
  ];
26
23
  }
@@ -35,14 +32,14 @@ class Tickable extends controls_1.FormFieldControl {
35
32
  // eslint-disable-next-line @typescript-eslint/consistent-type-assertions
36
33
  const readonly = this.options.readonly || false;
37
34
  const required = this.field.required;
38
- return (0, input_wrapper_1.inputWrapper)(this.getWrapperClasses(fctx.ctx, fctx.data, parsed),
35
+ return inputWrapper(this.getWrapperClasses(fctx.ctx, fctx.data, parsed),
39
36
  /* HTML */ `
40
37
  <input
41
38
  id="${id}"
42
39
  type="${this.type}"
43
40
  name="${fctx.field_name_prefix}${this.options.name ||
44
41
  this.field.name}"
45
- ${value ? `value="${(0, sanitize_1.attribute)(value)}"` : ""}
42
+ ${value ? `value="${attribute(value)}"` : ""}
46
43
  ${fctx.form_id ? `form="${fctx.form_id}"` : ""}
47
44
  ${this.isChecked(fctx.ctx, fctx.data, parsed)
48
45
  ? "checked"
@@ -75,5 +72,4 @@ class Tickable extends controls_1.FormFieldControl {
75
72
  `);
76
73
  }
77
74
  }
78
- exports.Tickable = Tickable;
79
75
  //# sourceMappingURL=tickable.js.map
@@ -1,15 +1,12 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.Boolean = void 0;
4
- const ts_predicates_1 = require("@sealcode/ts-predicates");
5
- const field_1 = require("./field");
1
+ import { is, predicates } from "@sealcode/ts-predicates";
2
+ import { FormField } from "./field.js";
6
3
  const truthy = ["true", "on", "yes", "1"];
7
4
  const falsy = ["false", "off", "no", "0"];
8
- class Boolean extends field_1.FormField {
5
+ export class Boolean extends FormField {
9
6
  constructor(required, error_message = "") {
10
7
  super(required);
11
8
  this.error_message = error_message;
12
- this.predicate = ts_predicates_1.predicates.boolean;
9
+ this.predicate = predicates.boolean;
13
10
  }
14
11
  async isValueValid(_, value) {
15
12
  if (this.required && !value) {
@@ -18,10 +15,10 @@ class Boolean extends field_1.FormField {
18
15
  return { valid: true, message: "" };
19
16
  }
20
17
  async parse(_, value) {
21
- if ((0, ts_predicates_1.is)(value, ts_predicates_1.predicates.boolean)) {
18
+ if (is(value, predicates.boolean)) {
22
19
  return { parsable: true, parsed_value: value, error: null };
23
20
  }
24
- else if ((0, ts_predicates_1.is)(value, ts_predicates_1.predicates.string) &&
21
+ else if (is(value, predicates.string) &&
25
22
  [...truthy, ...falsy].includes(value)) {
26
23
  return {
27
24
  parsable: true,
@@ -29,7 +26,7 @@ class Boolean extends field_1.FormField {
29
26
  error: null,
30
27
  };
31
28
  }
32
- else if ((0, ts_predicates_1.is)(value, ts_predicates_1.predicates.undefined)) {
29
+ else if (is(value, predicates.undefined)) {
33
30
  return {
34
31
  parsable: true,
35
32
  parsed_value: false,
@@ -51,5 +48,4 @@ class Boolean extends field_1.FormField {
51
48
  return false;
52
49
  }
53
50
  }
54
- exports.Boolean = Boolean;
55
51
  //# sourceMappingURL=boolean.js.map
@@ -1,37 +1,32 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- const assert_1 = __importDefault(require("assert"));
7
- const index_1 = require("../../index");
1
+ import assert from "assert";
2
+ import { Fields } from "../../index.js";
8
3
  describe("boolean field", () => {
9
4
  const ctx = {};
10
5
  it("validation logic", async () => {
11
- const required = new index_1.Fields.Boolean(true);
12
- const not_required = new index_1.Fields.Boolean(false);
13
- assert_1.default.strictEqual((await required.isValueValid(ctx, true)).valid, true);
14
- assert_1.default.strictEqual((await required.isValueValid(ctx, false)).valid, false);
15
- assert_1.default.strictEqual((await not_required.isValueValid(ctx, true)).valid, true);
16
- assert_1.default.strictEqual((await not_required.isValueValid(ctx, false)).valid, true);
6
+ const required = new Fields.Boolean(true);
7
+ const not_required = new Fields.Boolean(false);
8
+ assert.strictEqual((await required.isValueValid(ctx, true)).valid, true);
9
+ assert.strictEqual((await required.isValueValid(ctx, false)).valid, false);
10
+ assert.strictEqual((await not_required.isValueValid(ctx, true)).valid, true);
11
+ assert.strictEqual((await not_required.isValueValid(ctx, false)).valid, true);
17
12
  });
18
13
  it("parse function", async () => {
19
- const field = new index_1.Fields.Boolean(true);
14
+ const field = new Fields.Boolean(true);
20
15
  const true_response = await field.parse(ctx, true);
21
16
  const null_response = await field.parse(ctx, null);
22
17
  const true_as_string_response = await field.parse(ctx, "true");
23
18
  const undefined_response = await field.parse(ctx, undefined);
24
19
  const number_response = await field.parse(ctx, 42);
25
- assert_1.default.strictEqual(true_response.parsable, true);
26
- assert_1.default.strictEqual(true_response.parsed_value, true);
27
- assert_1.default.strictEqual(null_response.parsable, true);
28
- assert_1.default.strictEqual(null_response.parsed_value, false);
29
- assert_1.default.strictEqual(true_as_string_response.parsable, true);
30
- assert_1.default.strictEqual(true_as_string_response.parsed_value, true);
31
- assert_1.default.strictEqual(undefined_response.parsable, true);
32
- assert_1.default.strictEqual(undefined_response.parsed_value, false);
33
- assert_1.default.strictEqual(number_response.parsable, false);
34
- assert_1.default.strictEqual(number_response.error, "Please enter a boolean");
20
+ assert.strictEqual(true_response.parsable, true);
21
+ assert.strictEqual(true_response.parsed_value, true);
22
+ assert.strictEqual(null_response.parsable, true);
23
+ assert.strictEqual(null_response.parsed_value, false);
24
+ assert.strictEqual(true_as_string_response.parsable, true);
25
+ assert.strictEqual(true_as_string_response.parsed_value, true);
26
+ assert.strictEqual(undefined_response.parsable, true);
27
+ assert.strictEqual(undefined_response.parsed_value, false);
28
+ assert.strictEqual(number_response.parsable, false);
29
+ assert.strictEqual(number_response.error, "Please enter a boolean");
35
30
  });
36
31
  });
37
32
  //# sourceMappingURL=boolean.test.js.map