@flickfyi/flkr 0.0.182 → 0.0.185

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 (243) hide show
  1. package/dist/{api-client-CAg1b8Bh.js → api-client-nn4U_Vfn.js} +1 -1
  2. package/dist/{app-DpM5nhb9.js → app-COXGJhrt.js} +3 -3
  3. package/dist/{bundler-DNrDcqyk.js → bundler-CW4YC73e.js} +4 -2
  4. package/dist/cli.js +11 -11
  5. package/dist/{delegate-DcVye0KE.js → delegate-aUVluBjB.js} +2 -2
  6. package/dist/{generate-B1l1z_FZ.js → generate-BeL1QPDi.js} +1 -1
  7. package/dist/{preview-Dqn_Tq6K.js → preview-DTVM8Csb.js} +2 -2
  8. package/dist/{publish-BmDqO1xU.js → publish-BJG-s-w5.js} +4 -4
  9. package/dist/{pull-CO80DMn8.js → pull-B_Yfjpi2.js} +1 -1
  10. package/dist/{save-8crfOeo1.js → save-UrfgmK2-.js} +2 -2
  11. package/dist/{sdk-app-BXWrf_pf.js → sdk-app-BAxznAf9.js} +3 -3
  12. package/dist/{sdk-deploy-CaEonlvx.js → sdk-deploy-D1wgQxse.js} +3 -3
  13. package/dist/{sdk-generation-CF8ATbrL.js → sdk-generation-CLQ-QrVM.js} +1 -1
  14. package/dist/{sdk-project-CKV3U3u9.js → sdk-project-BaO0fqhW.js} +1 -1
  15. package/dist/{use-auth-B6nwU2rp.js → use-auth-CtM4_BAY.js} +1 -1
  16. package/node_modules/@flickfyi/biscuit/.turbo/turbo-build.log +4 -4
  17. package/node_modules/@flickfyi/core/README.md +19 -9
  18. package/node_modules/@flickfyi/core/dist/chunks/{default-CuxDsQoM.js → default-BTmKidHV.js} +1 -1
  19. package/node_modules/@flickfyi/core/dist/chunks/{default-BB6YexEH.cjs → default-JhTq5I_y.cjs} +1 -1
  20. package/node_modules/@flickfyi/core/dist/chunks/{define-CUJRqVKY.cjs → define-BKCRhpuY.cjs} +1 -1
  21. package/node_modules/@flickfyi/core/dist/chunks/{define-e_VqSs4M.js → define-DZXgUsy7.js} +5 -5
  22. package/node_modules/@flickfyi/core/dist/kowalski/catalog.cjs +1 -1
  23. package/node_modules/@flickfyi/core/dist/kowalski/catalog.js +728 -549
  24. package/node_modules/@flickfyi/core/dist/kowalski/index.cjs +5 -5
  25. package/node_modules/@flickfyi/core/dist/kowalski/index.js +4297 -3700
  26. package/node_modules/@flickfyi/core/dist/kowalski/schemas.cjs +1 -0
  27. package/node_modules/@flickfyi/core/dist/kowalski/schemas.js +637 -0
  28. package/node_modules/@flickfyi/core/dist/kowalski-catalog.css +516 -0
  29. package/node_modules/@flickfyi/core/dist/kowalski.css +10 -0
  30. package/node_modules/@flickfyi/core/dist/themes/athletic/athletic.cjs +1 -1
  31. package/node_modules/@flickfyi/core/dist/themes/athletic/athletic.js +1 -1
  32. package/node_modules/@flickfyi/core/dist/themes/compact/compact.cjs +1 -1
  33. package/node_modules/@flickfyi/core/dist/themes/compact/compact.js +1 -1
  34. package/node_modules/@flickfyi/core/dist/themes/default/default.cjs +1 -1
  35. package/node_modules/@flickfyi/core/dist/themes/default/default.js +1 -1
  36. package/node_modules/@flickfyi/core/dist/themes/editorial/editorial.cjs +1 -1
  37. package/node_modules/@flickfyi/core/dist/themes/editorial/editorial.js +1 -1
  38. package/node_modules/@flickfyi/core/dist/themes/handwritten/handwritten.cjs +1 -1
  39. package/node_modules/@flickfyi/core/dist/themes/handwritten/handwritten.js +1 -1
  40. package/node_modules/@flickfyi/core/dist/themes/index.cjs +1 -1
  41. package/node_modules/@flickfyi/core/dist/themes/index.js +1 -1
  42. package/node_modules/@flickfyi/core/dist/themes/kids/kids.cjs +1 -1
  43. package/node_modules/@flickfyi/core/dist/themes/kids/kids.js +1 -1
  44. package/node_modules/@flickfyi/core/dist/themes/rounded/rounded.cjs +1 -1
  45. package/node_modules/@flickfyi/core/dist/themes/rounded/rounded.js +1 -1
  46. package/node_modules/@flickfyi/core/dist/themes/technical/technical.cjs +1 -1
  47. package/node_modules/@flickfyi/core/dist/themes/technical/technical.js +1 -1
  48. package/node_modules/@flickfyi/core/dist-types/hooks/use-feature-store/index.d.ts +43 -0
  49. package/node_modules/@flickfyi/core/dist-types/kowalski/calculations.d.ts +57 -3
  50. package/node_modules/@flickfyi/core/dist-types/kowalski/calculator.d.ts +7 -6
  51. package/node_modules/@flickfyi/core/dist-types/kowalski/catalog.d.cts +524 -809
  52. package/node_modules/@flickfyi/core/dist-types/kowalski/catalog.d.ts +524 -809
  53. package/node_modules/@flickfyi/core/dist-types/kowalski/components/bill-split.d.ts +38 -0
  54. package/node_modules/@flickfyi/core/dist-types/kowalski/components/bookmark.d.ts +48 -0
  55. package/node_modules/@flickfyi/core/dist-types/kowalski/components/budget.d.ts +39 -0
  56. package/node_modules/@flickfyi/core/dist-types/kowalski/components/calculator.d.ts +62 -0
  57. package/node_modules/@flickfyi/core/dist-types/kowalski/components/checklist.d.ts +35 -0
  58. package/node_modules/@flickfyi/core/dist-types/kowalski/components/color-palette.d.ts +32 -0
  59. package/node_modules/@flickfyi/core/dist-types/kowalski/components/contact.d.ts +41 -0
  60. package/node_modules/@flickfyi/core/dist-types/kowalski/components/countdown.d.ts +34 -0
  61. package/node_modules/@flickfyi/core/dist-types/kowalski/components/event.d.ts +43 -0
  62. package/node_modules/@flickfyi/core/dist-types/kowalski/components/expense.d.ts +40 -0
  63. package/node_modules/@flickfyi/core/dist-types/kowalski/components/goal.d.ts +36 -0
  64. package/node_modules/@flickfyi/core/dist-types/kowalski/components/habit.d.ts +57 -0
  65. package/node_modules/@flickfyi/core/dist-types/kowalski/components/ledger.d.ts +43 -0
  66. package/node_modules/@flickfyi/core/dist-types/kowalski/components/note.d.ts +35 -0
  67. package/node_modules/@flickfyi/core/dist-types/kowalski/components/poll.d.ts +41 -0
  68. package/node_modules/@flickfyi/core/dist-types/kowalski/components/random-picker.d.ts +69 -0
  69. package/node_modules/@flickfyi/core/dist-types/kowalski/components/rating.d.ts +33 -0
  70. package/node_modules/@flickfyi/core/dist-types/kowalski/components/reminder.d.ts +48 -0
  71. package/node_modules/@flickfyi/core/dist-types/kowalski/components/rotation.d.ts +39 -0
  72. package/node_modules/@flickfyi/core/dist-types/kowalski/components/scoreboard.d.ts +37 -0
  73. package/node_modules/@flickfyi/core/dist-types/kowalski/components/shopping-list.d.ts +41 -0
  74. package/node_modules/@flickfyi/core/dist-types/kowalski/components/task-board.d.ts +39 -0
  75. package/node_modules/@flickfyi/core/dist-types/kowalski/components/time-zone.d.ts +34 -0
  76. package/node_modules/@flickfyi/core/dist-types/kowalski/components/timer.d.ts +43 -0
  77. package/node_modules/@flickfyi/core/dist-types/kowalski/components/trip.d.ts +61 -0
  78. package/node_modules/@flickfyi/core/dist-types/kowalski/components/unit-converter.d.ts +106 -0
  79. package/node_modules/@flickfyi/core/dist-types/kowalski/create-schemas.d.ts +6 -0
  80. package/node_modules/@flickfyi/core/dist-types/kowalski/date-time.d.ts +1 -1
  81. package/node_modules/@flickfyi/core/dist-types/kowalski/everyday.d.ts +28 -8
  82. package/node_modules/@flickfyi/core/dist-types/kowalski/feature-schema.d.ts +65 -0
  83. package/node_modules/@flickfyi/core/dist-types/kowalski/format.d.ts +4 -0
  84. package/node_modules/@flickfyi/core/dist-types/kowalski/fortune.d.ts +21 -0
  85. package/node_modules/@flickfyi/core/dist-types/kowalski/frame.d.ts +4 -4
  86. package/node_modules/@flickfyi/core/dist-types/kowalski/index.d.cts +31 -7
  87. package/node_modules/@flickfyi/core/dist-types/kowalski/index.d.ts +31 -7
  88. package/node_modules/@flickfyi/core/dist-types/kowalski/lesson.d.ts +89 -0
  89. package/node_modules/@flickfyi/core/dist-types/kowalski/recipe.d.ts +129 -8
  90. package/node_modules/@flickfyi/core/dist-types/kowalski/schemas.d.cts +4 -0
  91. package/node_modules/@flickfyi/core/dist-types/kowalski/schemas.d.ts +4 -0
  92. package/node_modules/@flickfyi/core/dist-types/kowalski/time-since.d.ts +34 -0
  93. package/node_modules/@flickfyi/core/examples/example-metadata.ts +19 -2
  94. package/node_modules/@flickfyi/core/examples/kowalski/bill-split/bill-split.stories.tsx +25 -6
  95. package/node_modules/@flickfyi/core/examples/kowalski/bill-split/bill-split.tsx +6 -12
  96. package/node_modules/@flickfyi/core/examples/kowalski/bookmark/bookmark.stories.tsx +22 -5
  97. package/node_modules/@flickfyi/core/examples/kowalski/bookmark/bookmark.tsx +6 -18
  98. package/node_modules/@flickfyi/core/examples/kowalski/budget/budget.stories.tsx +26 -5
  99. package/node_modules/@flickfyi/core/examples/kowalski/budget/budget.tsx +6 -21
  100. package/node_modules/@flickfyi/core/examples/kowalski/calculator/calculator.stories.tsx +18 -5
  101. package/node_modules/@flickfyi/core/examples/kowalski/calculator/calculator.tsx +6 -19
  102. package/node_modules/@flickfyi/core/examples/kowalski/checklist/checklist.stories.tsx +25 -5
  103. package/node_modules/@flickfyi/core/examples/kowalski/checklist/checklist.tsx +6 -21
  104. package/node_modules/@flickfyi/core/examples/kowalski/color-palette/color-palette.stories.tsx +19 -6
  105. package/node_modules/@flickfyi/core/examples/kowalski/color-palette/color-palette.tsx +6 -17
  106. package/node_modules/@flickfyi/core/examples/kowalski/contact/contact.stories.tsx +30 -5
  107. package/node_modules/@flickfyi/core/examples/kowalski/contact/contact.tsx +6 -18
  108. package/node_modules/@flickfyi/core/examples/kowalski/countdown/countdown.stories.tsx +22 -5
  109. package/node_modules/@flickfyi/core/examples/kowalski/countdown/countdown.tsx +6 -18
  110. package/node_modules/@flickfyi/core/examples/kowalski/event/event.stories.tsx +23 -5
  111. package/node_modules/@flickfyi/core/examples/kowalski/event/event.tsx +6 -19
  112. package/node_modules/@flickfyi/core/examples/kowalski/expense/expense.stories.tsx +23 -5
  113. package/node_modules/@flickfyi/core/examples/kowalski/expense/expense.tsx +6 -18
  114. package/node_modules/@flickfyi/core/examples/kowalski/fortune/fortune.stories.tsx +61 -0
  115. package/node_modules/@flickfyi/core/examples/kowalski/fortune/fortune.tsx +11 -0
  116. package/node_modules/@flickfyi/core/examples/kowalski/goal/goal.stories.tsx +18 -5
  117. package/node_modules/@flickfyi/core/examples/kowalski/goal/goal.tsx +3 -19
  118. package/node_modules/@flickfyi/core/examples/kowalski/habit/habit.stories.tsx +22 -5
  119. package/node_modules/@flickfyi/core/examples/kowalski/habit/habit.tsx +6 -18
  120. package/node_modules/@flickfyi/core/examples/kowalski/ledger/ledger.stories.tsx +25 -5
  121. package/node_modules/@flickfyi/core/examples/kowalski/ledger/ledger.tsx +6 -20
  122. package/node_modules/@flickfyi/core/examples/kowalski/lesson/lesson.stories.tsx +99 -0
  123. package/node_modules/@flickfyi/core/examples/kowalski/lesson/lesson.tsx +11 -0
  124. package/node_modules/@flickfyi/core/examples/kowalski/note/note.stories.tsx +21 -5
  125. package/node_modules/@flickfyi/core/examples/kowalski/note/note.tsx +3 -17
  126. package/node_modules/@flickfyi/core/examples/kowalski/poll/poll.stories.tsx +26 -5
  127. package/node_modules/@flickfyi/core/examples/kowalski/poll/poll.tsx +3 -21
  128. package/node_modules/@flickfyi/core/examples/kowalski/random-picker/random-picker.stories.tsx +37 -6
  129. package/node_modules/@flickfyi/core/examples/kowalski/random-picker/random-picker.tsx +6 -18
  130. package/node_modules/@flickfyi/core/examples/kowalski/rating/rating.stories.tsx +18 -5
  131. package/node_modules/@flickfyi/core/examples/kowalski/rating/rating.tsx +6 -14
  132. package/node_modules/@flickfyi/core/examples/kowalski/recipe/recipe.stories.tsx +117 -5
  133. package/node_modules/@flickfyi/core/examples/kowalski/recipe/recipe.tsx +6 -115
  134. package/node_modules/@flickfyi/core/examples/kowalski/reminder/reminder.stories.tsx +22 -5
  135. package/node_modules/@flickfyi/core/examples/kowalski/reminder/reminder.tsx +6 -18
  136. package/node_modules/@flickfyi/core/examples/kowalski/rotation/rotation.stories.tsx +26 -5
  137. package/node_modules/@flickfyi/core/examples/kowalski/rotation/rotation.tsx +6 -22
  138. package/node_modules/@flickfyi/core/examples/kowalski/scoreboard/scoreboard.stories.tsx +26 -5
  139. package/node_modules/@flickfyi/core/examples/kowalski/scoreboard/scoreboard.tsx +6 -21
  140. package/node_modules/@flickfyi/core/examples/kowalski/shopping-list/shopping-list.stories.tsx +28 -6
  141. package/node_modules/@flickfyi/core/examples/kowalski/shopping-list/shopping-list.tsx +6 -22
  142. package/node_modules/@flickfyi/core/examples/kowalski/task-board/task-board.stories.tsx +27 -6
  143. package/node_modules/@flickfyi/core/examples/kowalski/task-board/task-board.tsx +6 -22
  144. package/node_modules/@flickfyi/core/examples/kowalski/time-since/time-since.stories.tsx +33 -0
  145. package/node_modules/@flickfyi/core/examples/kowalski/time-since/time-since.tsx +12 -0
  146. package/node_modules/@flickfyi/core/examples/kowalski/time-zone/time-zone.stories.tsx +22 -6
  147. package/node_modules/@flickfyi/core/examples/kowalski/time-zone/time-zone.tsx +6 -17
  148. package/node_modules/@flickfyi/core/examples/kowalski/timer/timer.stories.tsx +18 -5
  149. package/node_modules/@flickfyi/core/examples/kowalski/timer/timer.tsx +6 -18
  150. package/node_modules/@flickfyi/core/examples/kowalski/trip/trip.stories.tsx +25 -5
  151. package/node_modules/@flickfyi/core/examples/kowalski/trip/trip.tsx +3 -21
  152. package/node_modules/@flickfyi/core/examples/kowalski/unit-converter/unit-converter.stories.tsx +19 -6
  153. package/node_modules/@flickfyi/core/examples/kowalski/unit-converter/unit-converter.tsx +6 -19
  154. package/node_modules/@flickfyi/core/examples/parrott/calculator/calculator.stories.tsx +10 -3
  155. package/node_modules/@flickfyi/core/examples/parrott/calculator/calculator.tsx +2 -13
  156. package/node_modules/@flickfyi/core/examples/parrott/checklist/checklist.stories.tsx +10 -3
  157. package/node_modules/@flickfyi/core/examples/parrott/checklist/checklist.tsx +0 -8
  158. package/node_modules/@flickfyi/core/examples/parrott/countdown/countdown.stories.tsx +10 -3
  159. package/node_modules/@flickfyi/core/examples/parrott/countdown/countdown.tsx +0 -8
  160. package/node_modules/@flickfyi/core/examples/parrott/counter/counter.stories.tsx +10 -3
  161. package/node_modules/@flickfyi/core/examples/parrott/counter/counter.tsx +0 -8
  162. package/node_modules/@flickfyi/core/examples/parrott/fortune/fortune.stories.tsx +10 -3
  163. package/node_modules/@flickfyi/core/examples/parrott/fortune/fortune.tsx +0 -8
  164. package/node_modules/@flickfyi/core/examples/parrott/grid/grid.stories.tsx +10 -3
  165. package/node_modules/@flickfyi/core/examples/parrott/grid/grid.tsx +4 -9
  166. package/node_modules/@flickfyi/core/examples/parrott/kale-smoothie/kale-smoothie.stories.tsx +10 -3
  167. package/node_modules/@flickfyi/core/examples/parrott/kale-smoothie/kale-smoothie.tsx +0 -8
  168. package/node_modules/@flickfyi/core/examples/parrott/list/list.stories.tsx +10 -3
  169. package/node_modules/@flickfyi/core/examples/parrott/list/list.tsx +0 -8
  170. package/node_modules/@flickfyi/core/examples/parrott/log/log.stories.tsx +10 -3
  171. package/node_modules/@flickfyi/core/examples/parrott/log/log.tsx +0 -8
  172. package/node_modules/@flickfyi/core/examples/parrott/timed-task/timed-task.stories.tsx +10 -3
  173. package/node_modules/@flickfyi/core/examples/parrott/timed-task/timed-task.tsx +0 -8
  174. package/node_modules/@flickfyi/core/examples/parrott/timer/timer.stories.tsx +10 -3
  175. package/node_modules/@flickfyi/core/examples/parrott/timer/timer.tsx +0 -8
  176. package/node_modules/@flickfyi/core/package.json +16 -3
  177. package/node_modules/@flickfyi/core/src/{kowalski/use-configured-feature.ts → hooks/use-configured-feature/index.ts} +1 -1
  178. package/node_modules/@flickfyi/core/src/{kowalski/use-feature-store.ts → hooks/use-feature-store/index.ts} +37 -12
  179. package/node_modules/@flickfyi/core/src/kowalski/README.md +13 -0
  180. package/node_modules/@flickfyi/core/src/kowalski/calculations.ts +36 -8
  181. package/node_modules/@flickfyi/core/src/kowalski/calculator.ts +15 -7
  182. package/node_modules/@flickfyi/core/src/kowalski/catalog.ts +110 -704
  183. package/node_modules/@flickfyi/core/src/kowalski/components/bill-split.tsx +284 -0
  184. package/node_modules/@flickfyi/core/src/kowalski/components/bookmark.tsx +347 -0
  185. package/node_modules/@flickfyi/core/src/kowalski/components/budget.tsx +169 -0
  186. package/node_modules/@flickfyi/core/src/kowalski/components/calculator.tsx +202 -0
  187. package/node_modules/@flickfyi/core/src/kowalski/components/checklist.tsx +119 -0
  188. package/node_modules/@flickfyi/core/src/kowalski/components/color-palette.tsx +302 -0
  189. package/node_modules/@flickfyi/core/src/kowalski/components/contact.tsx +247 -0
  190. package/node_modules/@flickfyi/core/src/kowalski/components/countdown.tsx +173 -0
  191. package/node_modules/@flickfyi/core/src/kowalski/components/event.tsx +260 -0
  192. package/node_modules/@flickfyi/core/src/kowalski/components/expense.tsx +257 -0
  193. package/node_modules/@flickfyi/core/src/kowalski/components/goal.tsx +182 -0
  194. package/node_modules/@flickfyi/core/src/kowalski/components/habit.tsx +272 -0
  195. package/node_modules/@flickfyi/core/src/kowalski/components/ledger.tsx +211 -0
  196. package/node_modules/@flickfyi/core/src/kowalski/components/note.tsx +188 -0
  197. package/node_modules/@flickfyi/core/src/kowalski/components/poll.tsx +242 -0
  198. package/node_modules/@flickfyi/core/src/kowalski/components/random-picker.tsx +308 -0
  199. package/node_modules/@flickfyi/core/src/kowalski/components/rating.tsx +112 -0
  200. package/node_modules/@flickfyi/core/src/kowalski/components/reminder.tsx +298 -0
  201. package/node_modules/@flickfyi/core/src/kowalski/components/rotation.tsx +146 -0
  202. package/node_modules/@flickfyi/core/src/kowalski/components/scoreboard.tsx +139 -0
  203. package/node_modules/@flickfyi/core/src/kowalski/components/shopping-list.tsx +144 -0
  204. package/node_modules/@flickfyi/core/src/kowalski/components/task-board.tsx +146 -0
  205. package/node_modules/@flickfyi/core/src/kowalski/components/time-zone.tsx +240 -0
  206. package/node_modules/@flickfyi/core/src/kowalski/components/timer.tsx +225 -0
  207. package/node_modules/@flickfyi/core/src/kowalski/components/trip.tsx +338 -0
  208. package/node_modules/@flickfyi/core/src/kowalski/components/unit-converter.tsx +285 -0
  209. package/node_modules/@flickfyi/core/src/kowalski/create-schemas.ts +8 -0
  210. package/node_modules/@flickfyi/core/src/kowalski/date-time.tsx +1 -1
  211. package/node_modules/@flickfyi/core/src/kowalski/everyday.tsx +1 -640
  212. package/node_modules/@flickfyi/core/src/kowalski/feature-schema.ts +84 -0
  213. package/node_modules/@flickfyi/core/src/kowalski/format.ts +29 -3
  214. package/node_modules/@flickfyi/core/src/kowalski/fortune.tsx +67 -0
  215. package/node_modules/@flickfyi/core/src/kowalski/frame.tsx +5 -6
  216. package/node_modules/@flickfyi/core/src/kowalski/index.ts +31 -22
  217. package/node_modules/@flickfyi/core/src/kowalski/lesson.tsx +564 -0
  218. package/node_modules/@flickfyi/core/src/kowalski/recipe.tsx +78 -37
  219. package/node_modules/@flickfyi/core/src/kowalski/schemas.ts +67 -0
  220. package/node_modules/@flickfyi/core/src/kowalski/stories/composition.tsx +22 -20
  221. package/node_modules/@flickfyi/core/src/kowalski/time-since.tsx +145 -0
  222. package/node_modules/@flickfyi/core/src/molecules/progress/progress.tsx +4 -1
  223. package/node_modules/@flickfyi/core/src/oklch.ts +1 -6
  224. package/node_modules/@flickfyi/core/src/parrott/theme.ts +3 -1
  225. package/node_modules/@flickfyi/core/src/themes/editorial/editorial.ts +6 -1
  226. package/node_modules/@flickfyi/core/src/themes/palette.ts +5 -5
  227. package/node_modules/@flickfyi/core/src/themes/stories/composition.tsx +11 -9
  228. package/node_modules/@flickfyi/core/src/themes/stories/gallery.tsx +7 -11
  229. package/node_modules/@flickfyi/core/tsgo.bun.lock +7 -7
  230. package/node_modules/@flickfyi/core/tsgo.package.json +1 -1
  231. package/package.json +2 -2
  232. package/node_modules/@flickfyi/core/dist-types/kowalski/clocks.d.ts +0 -4
  233. package/node_modules/@flickfyi/core/dist-types/kowalski/details.d.ts +0 -7
  234. package/node_modules/@flickfyi/core/dist-types/kowalski/productivity.d.ts +0 -5
  235. package/node_modules/@flickfyi/core/dist-types/kowalski/tools.d.ts +0 -7
  236. package/node_modules/@flickfyi/core/dist-types/kowalski/use-feature-store.d.ts +0 -15
  237. package/node_modules/@flickfyi/core/src/kowalski/clocks.tsx +0 -464
  238. package/node_modules/@flickfyi/core/src/kowalski/details.tsx +0 -1387
  239. package/node_modules/@flickfyi/core/src/kowalski/productivity.tsx +0 -575
  240. package/node_modules/@flickfyi/core/src/kowalski/tools.tsx +0 -1213
  241. /package/node_modules/@flickfyi/core/dist-types/{kowalski/use-clock.d.ts → hooks/use-clock/index.d.ts} +0 -0
  242. /package/node_modules/@flickfyi/core/dist-types/{kowalski/use-configured-feature.d.ts → hooks/use-configured-feature/index.d.ts} +0 -0
  243. /package/node_modules/@flickfyi/core/src/{kowalski/use-clock.ts → hooks/use-clock/index.ts} +0 -0
@@ -1,4 +1,4 @@
1
- import { i as hostCompilationFromEnvironment } from "./bundler-DNrDcqyk.js";
1
+ import { i as hostCompilationFromEnvironment } from "./bundler-CW4YC73e.js";
2
2
  import { i as setIdentityToken, r as loadIdentityCredentials } from "./credentials-JW-_7Ols.js";
3
3
  import { base58 } from "@scure/base";
4
4
  import { signIdentity } from "@flickfyi/identity";
@@ -1,6 +1,6 @@
1
- import { d as saveArtifacts, f as sendMessage, g as uploadPreviewArtifacts, h as uploadArtifacts, m as subscribeToCanvases$, n as fetchCanvasMessages, o as isSourceArtifact, p as subscribeToCanvas$, u as publishVersion } from "./api-client-CAg1b8Bh.js";
2
- import { t as useAuth } from "./use-auth-B6nwU2rp.js";
3
- import { n as bundleForCrayon, o as typecheckRemote, t as buildOutputArtifacts } from "./bundler-DNrDcqyk.js";
1
+ import { d as saveArtifacts, f as sendMessage, g as uploadPreviewArtifacts, h as uploadArtifacts, m as subscribeToCanvases$, n as fetchCanvasMessages, o as isSourceArtifact, p as subscribeToCanvas$, u as publishVersion } from "./api-client-nn4U_Vfn.js";
2
+ import { t as useAuth } from "./use-auth-CtM4_BAY.js";
3
+ import { n as bundleForCrayon, o as typecheckRemote, t as buildOutputArtifacts } from "./bundler-CW4YC73e.js";
4
4
  import { n as writeMetadata, t as readMetadata } from "./metadata-DXcOdynr.js";
5
5
  import { t as scaffoldProject } from "./scaffold-V5oNNmaV.js";
6
6
  import process$1 from "node:process";
@@ -3459,7 +3459,7 @@ function guessServiceRegion(url, headers) {
3459
3459
  else if (region && /-\d$/.test(service) && !/-\d$/.test(region)) [service, region] = [region, service];
3460
3460
  return [HOST_SERVICES[service] || service, region || ""];
3461
3461
  }
3462
- // ../fly-tsgo/dist/runtime-store-Dm078iF6.js
3462
+ // ../fly-tsgo/dist/runtime-store-sROovw-v.js
3463
3463
  async function traceOperation(tracer, name, operation, options = {}) {
3464
3464
  if (!tracer) return operation();
3465
3465
  let operationStarted = false;
@@ -3808,9 +3808,11 @@ var FlyTSGo = class {
3808
3808
  });
3809
3809
  const { bodyBytes, contentType } = await traceOperation(this.tracer, "fly_tsgo.multipart.serialize", async () => {
3810
3810
  const tempResponse = new Response(formData);
3811
+ const contentType = tempResponse.headers.get("Content-Type");
3812
+ if (!contentType) throw new Error("Multipart encoding did not produce a content type");
3811
3813
  return {
3812
3814
  bodyBytes: new Uint8Array(await tempResponse.arrayBuffer()),
3813
- contentType: tempResponse.headers.get("Content-Type")
3815
+ contentType
3814
3816
  };
3815
3817
  }, { resultAttributes: (result) => ({ "fly_tsgo.request.body.size": result.bodyBytes.byteLength }) });
3816
3818
  const url = `${this.baseUrl}${endpoint}`;
package/dist/cli.js CHANGED
@@ -1,6 +1,6 @@
1
1
  #!/usr/bin/env node
2
- import { r as configureHostCompilation } from "./bundler-DNrDcqyk.js";
3
- import { t as generateSDK } from "./sdk-generation-CF8ATbrL.js";
2
+ import { r as configureHostCompilation } from "./bundler-CW4YC73e.js";
3
+ import { t as generateSDK } from "./sdk-generation-CLQ-QrVM.js";
4
4
  import process from "node:process";
5
5
  import { execSync } from "child_process";
6
6
  import { createHash } from "crypto";
@@ -61,10 +61,10 @@ var main = defineCommand({
61
61
  if (!args.dir) await generateSDK(process.cwd(), args.host);
62
62
  configureHostCompilation(args.host, args.activationScope);
63
63
  const { render } = await import("ink");
64
- const { discoverSDKProject } = await import("./sdk-project-CKV3U3u9.js").then((n) => n.i);
64
+ const { discoverSDKProject } = await import("./sdk-project-BaO0fqhW.js").then((n) => n.i);
65
65
  const sdkProject = args.dir ? void 0 : discoverSDKProject(process.cwd(), args.host);
66
66
  if (sdkProject) {
67
- const { SDKApp } = await import("./sdk-app-BXWrf_pf.js");
67
+ const { SDKApp } = await import("./sdk-app-BAxznAf9.js");
68
68
  const { waitUntilExit } = render(/* @__PURE__ */ jsx(SDKApp, {
69
69
  initialProject: sdkProject,
70
70
  publication: publication ?? (sdkProject.trustRoot ? { trustRoot: sdkProject.trustRoot } : void 0)
@@ -73,7 +73,7 @@ var main = defineCommand({
73
73
  return;
74
74
  }
75
75
  if (publication) throw new Error("SDK publication credentials require a generated SDK project");
76
- const { App } = await import("./app-DpM5nhb9.js");
76
+ const { App } = await import("./app-COXGJhrt.js");
77
77
  if (args.unsafe) process.env["FLKR_SKIP_TYPECHECK"] = "1";
78
78
  console.clear();
79
79
  process.stdin.on("error", () => {});
@@ -91,13 +91,13 @@ var main = defineCommand({
91
91
  await waitUntilExit();
92
92
  },
93
93
  subCommands: {
94
- delegate: async () => import("./delegate-DcVye0KE.js").then((m) => m.default),
95
- generate: async () => import("./generate-B1l1z_FZ.js").then((m) => m.default),
94
+ delegate: async () => import("./delegate-aUVluBjB.js").then((m) => m.default),
95
+ generate: async () => import("./generate-BeL1QPDi.js").then((m) => m.default),
96
96
  identity: async () => import("./identity-CqVCmX-E.js").then((m) => m.default),
97
- preview: async () => import("./preview-Dqn_Tq6K.js").then((m) => m.default),
98
- publish: async () => import("./publish-BmDqO1xU.js").then((m) => m.default),
99
- pull: async () => import("./pull-CO80DMn8.js").then((m) => m.default),
100
- save: async () => import("./save-8crfOeo1.js").then((m) => m.default),
97
+ preview: async () => import("./preview-DTVM8Csb.js").then((m) => m.default),
98
+ publish: async () => import("./publish-BJG-s-w5.js").then((m) => m.default),
99
+ pull: async () => import("./pull-B_Yfjpi2.js").then((m) => m.default),
100
+ save: async () => import("./save-UrfgmK2-.js").then((m) => m.default),
101
101
  sim: async () => import("./sim-DiYViNsf.js").then((m) => m.default)
102
102
  }
103
103
  });
@@ -1,6 +1,6 @@
1
1
  import { t as createPublishingCredential } from "./publishing-credential-CeS9kvDy.js";
2
- import { t as generateSDK } from "./sdk-generation-CF8ATbrL.js";
3
- import { n as discoverSDKProject } from "./sdk-project-CKV3U3u9.js";
2
+ import { t as generateSDK } from "./sdk-generation-CLQ-QrVM.js";
3
+ import { n as discoverSDKProject } from "./sdk-project-BaO0fqhW.js";
4
4
  import { defineCommand } from "citty";
5
5
  import { appendFile, readFile, writeFile } from "node:fs/promises";
6
6
  // src/commands/delegate.ts
@@ -1,4 +1,4 @@
1
- import { t as generateSDK } from "./sdk-generation-CF8ATbrL.js";
1
+ import { t as generateSDK } from "./sdk-generation-CLQ-QrVM.js";
2
2
  import { defineCommand } from "citty";
3
3
  // src/commands/generate.ts
4
4
  var generate_default = defineCommand({
@@ -1,5 +1,5 @@
1
- import { a as getPublicKeyBase58, g as uploadPreviewArtifacts, s as loadCredentials } from "./api-client-CAg1b8Bh.js";
2
- import { n as bundleForCrayon, r as configureHostCompilation, t as buildOutputArtifacts } from "./bundler-DNrDcqyk.js";
1
+ import { a as getPublicKeyBase58, g as uploadPreviewArtifacts, s as loadCredentials } from "./api-client-nn4U_Vfn.js";
2
+ import { n as bundleForCrayon, r as configureHostCompilation, t as buildOutputArtifacts } from "./bundler-CW4YC73e.js";
3
3
  import { n as writeMetadata, t as readMetadata } from "./metadata-DXcOdynr.js";
4
4
  import { execSync } from "child_process";
5
5
  import { createHash } from "crypto";
@@ -1,7 +1,7 @@
1
- import { r as configureHostCompilation } from "./bundler-DNrDcqyk.js";
2
- import { t as deploySDKView } from "./sdk-deploy-CaEonlvx.js";
3
- import { t as generateSDK } from "./sdk-generation-CF8ATbrL.js";
4
- import { n as discoverSDKProject } from "./sdk-project-CKV3U3u9.js";
1
+ import { r as configureHostCompilation } from "./bundler-CW4YC73e.js";
2
+ import { t as deploySDKView } from "./sdk-deploy-D1wgQxse.js";
3
+ import { t as generateSDK } from "./sdk-generation-CLQ-QrVM.js";
4
+ import { n as discoverSDKProject } from "./sdk-project-BaO0fqhW.js";
5
5
  import { defineCommand } from "citty";
6
6
  // src/commands/publish.ts
7
7
  var publish_default = defineCommand({
@@ -1,4 +1,4 @@
1
- import { a as getPublicKeyBase58, n as fetchCanvasMessages, s as loadCredentials, t as fetchCanvasArtifacts } from "./api-client-CAg1b8Bh.js";
1
+ import { a as getPublicKeyBase58, n as fetchCanvasMessages, s as loadCredentials, t as fetchCanvasArtifacts } from "./api-client-nn4U_Vfn.js";
2
2
  import { t as scaffoldProject } from "./scaffold-V5oNNmaV.js";
3
3
  import { n as writeMetadata } from "./metadata-DXcOdynr.js";
4
4
  import { join } from "path";
@@ -1,5 +1,5 @@
1
- import { a as getPublicKeyBase58, d as saveArtifacts, o as isSourceArtifact, s as loadCredentials } from "./api-client-CAg1b8Bh.js";
2
- import { n as bundleForCrayon, r as configureHostCompilation, t as buildOutputArtifacts } from "./bundler-DNrDcqyk.js";
1
+ import { a as getPublicKeyBase58, d as saveArtifacts, o as isSourceArtifact, s as loadCredentials } from "./api-client-nn4U_Vfn.js";
2
+ import { n as bundleForCrayon, r as configureHostCompilation, t as buildOutputArtifacts } from "./bundler-CW4YC73e.js";
3
3
  import { t as readMetadata } from "./metadata-DXcOdynr.js";
4
4
  import { join } from "path";
5
5
  import { defineCommand } from "citty";
@@ -1,6 +1,6 @@
1
- import { t as useAuth } from "./use-auth-B6nwU2rp.js";
2
- import { t as deploySDKView } from "./sdk-deploy-CaEonlvx.js";
3
- import { n as discoverSDKProject, t as createViewImplementation } from "./sdk-project-CKV3U3u9.js";
1
+ import { t as useAuth } from "./use-auth-CtM4_BAY.js";
2
+ import { t as deploySDKView } from "./sdk-deploy-D1wgQxse.js";
3
+ import { n as discoverSDKProject, t as createViewImplementation } from "./sdk-project-BaO0fqhW.js";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
5
5
  import { join, relative, sep } from "node:path";
6
6
  import { Box, Text, useApp, useInput, useStdout } from "ink";
@@ -1,7 +1,7 @@
1
- import { h as uploadArtifacts, l as publishSDK, s as loadCredentials, u as publishVersion } from "./api-client-CAg1b8Bh.js";
2
- import { a as readHostContract, n as bundleForCrayon, t as buildOutputArtifacts } from "./bundler-DNrDcqyk.js";
1
+ import { h as uploadArtifacts, l as publishSDK, s as loadCredentials, u as publishVersion } from "./api-client-nn4U_Vfn.js";
2
+ import { a as readHostContract, n as bundleForCrayon, t as buildOutputArtifacts } from "./bundler-CW4YC73e.js";
3
3
  import { n as loadPublishingCredential } from "./publishing-credential-CeS9kvDy.js";
4
- import { n as discoverSDKProject } from "./sdk-project-CKV3U3u9.js";
4
+ import { n as discoverSDKProject } from "./sdk-project-BaO0fqhW.js";
5
5
  // src/sdk-deploy.ts
6
6
  /** The SDK catalog selects an entry; compilation and publication use the ordinary deploy flow. */
7
7
  async function deploySDKView({ credentialPath, project, trustRoot, view }) {
@@ -1,4 +1,4 @@
1
- import { n as discoverSDKProject, r as initializeSDKProject } from "./sdk-project-CKV3U3u9.js";
1
+ import { n as discoverSDKProject, r as initializeSDKProject } from "./sdk-project-BaO0fqhW.js";
2
2
  import { spawn } from "node:child_process";
3
3
  import { existsSync, mkdirSync, readFileSync, readdirSync, realpathSync } from "node:fs";
4
4
  import { basename, dirname, join, resolve } from "node:path";
@@ -1,4 +1,4 @@
1
- import { a as readHostContract } from "./bundler-DNrDcqyk.js";
1
+ import { a as readHostContract } from "./bundler-CW4YC73e.js";
2
2
  import { findUpSync } from "find-up";
3
3
  import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
4
4
  import { basename, dirname, join, relative, resolve } from "node:path";
@@ -1,4 +1,4 @@
1
- import { a as getPublicKeyBase58, c as pollLinkStatus, i as getDeviceAuthUrl, r as fetchUser, s as loadCredentials } from "./api-client-CAg1b8Bh.js";
1
+ import { a as getPublicKeyBase58, c as pollLinkStatus, i as getDeviceAuthUrl, r as fetchUser, s as loadCredentials } from "./api-client-nn4U_Vfn.js";
2
2
  import { n as getOrCreateIdentityKey, t as deleteIdentityKey } from "./credentials-JW-_7Ols.js";
3
3
  import { useCallback, useEffect, useRef, useState } from "react";
4
4
  import open from "open";
@@ -5,15 +5,15 @@ transforming...
5
5
  rendering chunks...
6
6
  
7
7
  [unplugin:dts] Start generate declaration files...
8
- [unplugin:dts] Declaration files built in 5970ms.
8
+ [unplugin:dts] Declaration files built in 7231ms.
9
9
  
10
10
  computing gzip size...
11
11
  dist/index.js 173.38 kB │ gzip: 29.33 kB
12
12
 
13
- ✓ built in 6.11s
14
- [PLUGIN_TIMINGS] JavaScript callbacks ran for 6.0s of this 6.1s build (98%).
13
+ ✓ built in 7.48s
14
+ [PLUGIN_TIMINGS] JavaScript callbacks ran for 7.3s of this 7.4s build (98%).
15
15
  The slowest callbacks, timed inside each callback (the wait before a callback starts is excluded, the time it awaits is included):
16
- - plugin unplugin-dts buildStart (94%, 5.7s, 1 call)
16
+ - plugin unplugin-dts buildStart (93%, 6.9s, 1 call)
17
17
  Additional callback time came from callbacks under 1s.
18
18
  See https://rolldown.rs/reference/InputOptions.checks#bundlertimings for more details.
19
19
  
@@ -585,10 +585,14 @@ MIT
585
585
 
586
586
  ## Persistent features
587
587
 
588
- `@flickfyi/core/kowalski` exposes 27 persistent features: the 19 from PR #361 plus
589
- Budget, Ledger, Rating, Recipe, Rotation, Scoreboard, Shopping List and Task Board.
588
+ `@flickfyi/core/kowalski` exposes 30 features, including TimeSince, Fortune, and Lesson. Fortune keeps
589
+ its reveal in local state and has no store; the others persist through Quantum.
590
590
  `@flickfyi/core/kowalski/catalog` exposes their authored props and Quantum schemas
591
- without importing rendering code. Features inherit the app's existing `useTheme`
591
+ without importing rendering code. Each component file owns its `data`, props, and store
592
+ schemas; helpers shared between features live in `src/kowalski/feature-schema.ts`.
593
+ Props are not parsed at runtime and content schemas carry no length limits; see
594
+ [`src/kowalski/README.md`](src/kowalski/README.md#props).
595
+ Features inherit the app's existing `useTheme`
592
596
  binding and use public Core controls. Each feature uses a default Quantum store
593
597
  name, such as `KowalskiChecklist`. Give repeated instances distinct optional `id`
594
598
  props to keep their data separate; each `id` becomes the exact store name.
@@ -597,13 +601,11 @@ Changing themes does not change that identity.
597
601
  ```tsx
598
602
  <Checklist
599
603
  id="packing"
600
- items={[{ id: 'charger', label: 'Pack charger' }]}
601
- title="Packing"
604
+ data={{ items: [{ id: 'charger', label: 'Pack charger' }], title: 'Packing' }}
602
605
  />
603
606
  <Checklist
604
607
  id="groceries"
605
- items={[{ id: 'milk', label: 'Buy milk' }]}
606
- title="Groceries"
608
+ data={{ items: [{ id: 'milk', label: 'Buy milk' }], title: 'Groceries' }}
607
609
  />
608
610
  ```
609
611
 
@@ -611,7 +613,10 @@ Props seed a new store; saved values survive rerenders and source edits. To appl
611
613
  changed authored seeds to an existing instance, increment its `revision` prop
612
614
  while retaining its `id`. Only changed seed fields are applied; unrelated saved
613
615
  edits remain. Invalid updates preserve the current values and report the conflict.
614
- `revision` defaults to `0`; `scope` defaults to `private`.
616
+ `revision` defaults to `0`; `scope` defaults to `private`, except TimeSince's public default.
617
+
618
+ Stories expose the fields inside `data` as individual controls alongside editable
619
+ example metadata (`name`, `description`, and `enabled`). Native previews use the same story defaults.
615
620
 
616
621
  The Quantum bridge acknowledges successful local SQLite persistence, propagates
617
622
  local failures to retry UI, and blocks writes for read-only stores. This acknowledgement
@@ -626,7 +631,12 @@ Decimal arithmetic and Luxon calendar/timezone behavior remain intact.
626
631
 
627
632
  Canonical examples live in `examples/kowalski/<name>/<name>.tsx`; Catalog, Florge,
628
633
  and native preview builds consume those same sources. Ordinary coding installs
629
- their standard store schemas through Florge's existing artifact path. Athletic,
634
+ their standard store schemas through Florge's existing artifact path.
635
+ Each persisted component colocates its schema, defaults, and typed `createSchemas`
636
+ export. Core discovers those exports during its build and publishes the schema-only
637
+ `@flickfyi/core/kowalski/schemas` entry. Composition passes the same ID and scope
638
+ used in JSX; bespoke coding retains literal binding extraction. Both paths preserve
639
+ existing schema history and artifact identity. Athletic,
630
640
  Kids, and Compact compositions reuse those features with independent bindings.
631
641
 
632
642
  Existing Parrott Counter remains a counter, distinct from target-based Goal.
@@ -1,5 +1,5 @@
1
1
  import "../themes.css";
2
- import { t as e } from "./define-e_VqSs4M.js";
2
+ import { t as e } from "./define-DZXgUsy7.js";
3
3
  import { z as t } from "zod/v4";
4
4
  // src/metadata.ts
5
5
  var n = 205;
@@ -1,2 +1,2 @@
1
1
  require("../themes.css");
2
- const e=require("./define-CUJRqVKY.cjs");let t=require("zod/v4");var n=205;function r(e,t){let r=typeof e==`number`?e:e?.hue??n,i=typeof e==`number`?t:e?.overrides,a=(e,t,n)=>n===void 0?`oklch(${e}% ${t} ${r})`:`oklch(${e}% ${t} ${r} / ${n})`;return{accent:a(55,.25),accentDark:a(30,.12),accentLight:a(90,.08),background:a(5,0),bold:a(21.03,.012),border:a(71.18,.1,.33),card:a(100,0),divider:a(71.18,.1,.08),ink:a(5,0),shadow:a(0,0,.2),subtle:a(71.18,.1),text:a(27.39,.08),track:a(71.18,.1,.13),tray:a(93.76,.05),...i}}var i=t.z.number().int().min(0).max(360).default(n).describe(`Canvas accent hue as an OKLCH hue angle from 0 to 360`),a=t.z.object({description:t.z.string().describe(`Brief description of what the app does`),emoji:t.z.string().describe(`Emoji representing the app`),hue:i,name:t.z.string().describe(`Name of the app`)}),o=t.z.object({appDescription:t.z.string().optional(),appName:t.z.string().optional(),emoji:t.z.string().optional(),hue:i}).refine(({appDescription:e,appName:t,emoji:n})=>e!==void 0||t!==void 0||n!==void 0).transform(({appDescription:e,appName:t,emoji:n,hue:r})=>({description:e??``,emoji:n??`🖍️`,hue:r,name:t??`Untitled`}));t.z.union([a,o]);function s(e,t,n){let r=e+.3963377774*t+.2158037573*n,i=e-.1055613458*t-.0638541728*n,a=e-.0894841775*t-1.291485548*n;return[4.0767416621*r*r*r-3.3077115913*i*i*i+.2309699292*a*a*a,-1.2684380046*r*r*r+2.6097574011*i*i*i-.3413193965*a*a*a,-.0041960863*r*r*r-.7034186147*i*i*i+1.707614701*a*a*a]}function c(e){return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}var l=e=>Math.max(0,Math.min(1,e)),u=e=>Math.round(e*255);function d(e,t,n,r=1){let[i,a,o]=s(e,t*Math.cos(n*Math.PI/180),t*Math.sin(n*Math.PI/180)),d=u(l(c(i))),f=u(l(c(a))),p=u(l(c(o)));return r<1?`rgba(${d}, ${f}, ${p}, ${r})`:`rgba(${d}, ${f}, ${p}, 1)`}var f=/oklch\(([\d.]+)(%?)\s+([\d.]+)\s+([\d.]+)(?:\s*\/\s*([\d.]+))?\)/;function p(e){let t=f.exec(e);return t?d(Number(t[1])/(t[2]===`%`?100:1),Number(t[3]),Number(t[4]),t[5]===void 0?1:Number(t[5])):e}var m={density:1,display:{family:`Instrument Sans`,step:`7xl`,weight:`600`},emphasis:{weight:`700`},fonts:{body:`Instrument Sans`,ui:`Instrument Sans`,uiWeight:`600`},heading:{family:`Instrument Sans`,step:`4xl`,weight:`600`},label:{uppercase:!0},radius:1,stroke:1.5,surface:`raised`,title:{family:`Instrument Sans`,weight:`700`},unit:16},h=e.t({adjustColors(e,{hue:t,mode:n}){if(n===`dark`)return e;let i=r({hue:Number.isFinite(t)?(t%360+360)%360:0});return{...e,divider:p(i.divider),tray:p(i.tray)}},name:`default`,roles:[`caption`,`display`,`h1`,`h2`,`label`,`lead`,`muted`,`strong`,`text`],spec:m});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return h}});
2
+ const e=require("./define-BKCRhpuY.cjs");let t=require("zod/v4");var n=205;function r(e,t){let r=typeof e==`number`?e:e?.hue??n,i=typeof e==`number`?t:e?.overrides,a=(e,t,n)=>n===void 0?`oklch(${e}% ${t} ${r})`:`oklch(${e}% ${t} ${r} / ${n})`;return{accent:a(55,.25),accentDark:a(30,.12),accentLight:a(90,.08),background:a(5,0),bold:a(21.03,.012),border:a(71.18,.1,.33),card:a(100,0),divider:a(71.18,.1,.08),ink:a(5,0),shadow:a(0,0,.2),subtle:a(71.18,.1),text:a(27.39,.08),track:a(71.18,.1,.13),tray:a(93.76,.05),...i}}var i=t.z.number().int().min(0).max(360).default(n).describe(`Canvas accent hue as an OKLCH hue angle from 0 to 360`),a=t.z.object({description:t.z.string().describe(`Brief description of what the app does`),emoji:t.z.string().describe(`Emoji representing the app`),hue:i,name:t.z.string().describe(`Name of the app`)}),o=t.z.object({appDescription:t.z.string().optional(),appName:t.z.string().optional(),emoji:t.z.string().optional(),hue:i}).refine(({appDescription:e,appName:t,emoji:n})=>e!==void 0||t!==void 0||n!==void 0).transform(({appDescription:e,appName:t,emoji:n,hue:r})=>({description:e??``,emoji:n??`🖍️`,hue:r,name:t??`Untitled`}));t.z.union([a,o]);function s(e,t,n){let r=e+.3963377774*t+.2158037573*n,i=e-.1055613458*t-.0638541728*n,a=e-.0894841775*t-1.291485548*n;return[4.0767416621*r*r*r-3.3077115913*i*i*i+.2309699292*a*a*a,-1.2684380046*r*r*r+2.6097574011*i*i*i-.3413193965*a*a*a,-.0041960863*r*r*r-.7034186147*i*i*i+1.707614701*a*a*a]}function c(e){return e<=.0031308?12.92*e:1.055*e**(1/2.4)-.055}var l=e=>Math.max(0,Math.min(1,e)),u=e=>Math.round(e*255);function d(e,t,n,r=1){let[i,a,o]=s(e,t*Math.cos(n*Math.PI/180),t*Math.sin(n*Math.PI/180)),d=u(l(c(i))),f=u(l(c(a))),p=u(l(c(o)));return r<1?`rgba(${d}, ${f}, ${p}, ${r})`:`rgba(${d}, ${f}, ${p}, 1)`}var f=/oklch\(([\d.]+)(%?)\s+([\d.]+)\s+([\d.]+)(?:\s*\/\s*([\d.]+))?\)/;function p(e){let t=f.exec(e);return t?d(Number(t[1])/(t[2]===`%`?100:1),Number(t[3]),Number(t[4]),t[5]===void 0?1:Number(t[5])):e}var m={density:1,display:{family:`Instrument Sans`,step:`7xl`,weight:`600`},emphasis:{weight:`700`},fonts:{body:`Instrument Sans`,ui:`Instrument Sans`,uiWeight:`600`},heading:{family:`Instrument Sans`,step:`4xl`,weight:`600`},label:{uppercase:!0},radius:1,stroke:1.5,surface:`raised`,title:{family:`Instrument Sans`,weight:`700`},unit:16},h=e.t({adjustColors(e,{hue:t,mode:n}){if(n===`dark`)return e;let i=r({hue:Number.isFinite(t)?(t%360+360)%360:0});return{...e,divider:p(i.divider),tray:p(i.tray)}},name:`default`,roles:[`caption`,`display`,`h1`,`h2`,`label`,`lead`,`muted`,`strong`,`text`],spec:m});Object.defineProperty(exports,"n",{enumerable:!0,get:function(){return m}}),Object.defineProperty(exports,"t",{enumerable:!0,get:function(){return h}});