@darkfrost-1107/scaff-z-react 0.1.7

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 (634) hide show
  1. package/LICENSE.md +5 -0
  2. package/README.md +75 -0
  3. package/dist/_virtual/_rolldown/runtime.cjs +1 -0
  4. package/dist/action-processor.d.ts +2 -0
  5. package/dist/app/config/sqlite.registry.cjs +1 -0
  6. package/dist/app/config/sqlite.registry.esm +37 -0
  7. package/dist/app.config.d.ts +1 -0
  8. package/dist/async-combobox.input.d.ts +4 -0
  9. package/dist/async-multi-select.input.d.ts +4 -0
  10. package/dist/async-select.input.d.ts +4 -0
  11. package/dist/audit-view.d.ts +2 -0
  12. package/dist/back-button.action.d.ts +6 -0
  13. package/dist/badge.d.ts +2 -0
  14. package/dist/base.connector.d.ts +4 -0
  15. package/dist/base.entity.d.ts +2 -0
  16. package/dist/base.node.d.ts +2 -0
  17. package/dist/base.service.d.ts +4 -0
  18. package/dist/breadcrumb.d.ts +2 -0
  19. package/dist/build.router.d.ts +4 -0
  20. package/dist/builder-device.guard.d.ts +2 -0
  21. package/dist/builder.d.ts +2 -0
  22. package/dist/button.d.ts +2 -0
  23. package/dist/calendar.d.ts +2 -0
  24. package/dist/canvas-view.layout.d.ts +2 -0
  25. package/dist/card.d.ts +2 -0
  26. package/dist/checkbox-inline.input.d.ts +4 -0
  27. package/dist/checkbox.d.ts +2 -0
  28. package/dist/checkbox.input.d.ts +4 -0
  29. package/dist/code.input.d.ts +4 -0
  30. package/dist/color.input.d.ts +4 -0
  31. package/dist/combobox.d.ts +2 -0
  32. package/dist/combobox.input.d.ts +4 -0
  33. package/dist/command.d.ts +2 -0
  34. package/dist/component.factory.d.ts +4 -0
  35. package/dist/component.guard.d.ts +2 -0
  36. package/dist/components.registry.d.ts +2 -0
  37. package/dist/context.guard.d.ts +2 -0
  38. package/dist/context.verifier.d.ts +2 -0
  39. package/dist/crypto.service.d.ts +2 -0
  40. package/dist/dark.style.d.ts +2 -0
  41. package/dist/data-table.component.d.ts +2 -0
  42. package/dist/data-table.provider.d.ts +1 -0
  43. package/dist/date.input.d.ts +2 -0
  44. package/dist/deckgl-overlay.d.ts +2 -0
  45. package/dist/detail-tabs.layout.d.ts +6 -0
  46. package/dist/detail-view.layout.d.ts +6 -0
  47. package/dist/device-artifact.guard.d.ts +2 -0
  48. package/dist/device.guard.d.ts +2 -0
  49. package/dist/device.verifier.registry.d.ts +2 -0
  50. package/dist/dialog.d.ts +2 -0
  51. package/dist/dnd.provider.d.ts +2 -0
  52. package/dist/draggeable.d.ts +2 -0
  53. package/dist/droppable.d.ts +2 -0
  54. package/dist/droppeable.d.ts +2 -0
  55. package/dist/dynamic-device.guard.d.ts +2 -0
  56. package/dist/dynamic-icon.d.ts +6 -0
  57. package/dist/email.input.d.ts +4 -0
  58. package/dist/enum.verifier.d.ts +2 -0
  59. package/dist/env.manager.d.ts +2 -0
  60. package/dist/feedback.layout.d.ts +2 -0
  61. package/dist/field.d.ts +2 -0
  62. package/dist/file.input.d.ts +4 -0
  63. package/dist/flow-canvas.d.ts +2 -0
  64. package/dist/flow.renderer.d.ts +2 -0
  65. package/dist/flow.types.d.ts +1 -0
  66. package/dist/form-dialog-layout.d.ts +4 -0
  67. package/dist/form-tab-layout.d.ts +4 -0
  68. package/dist/form.component.d.ts +2 -0
  69. package/dist/grid.layout.d.ts +2 -0
  70. package/dist/guard.d.ts +2 -0
  71. package/dist/hover.d.ts +2 -0
  72. package/dist/icon-box.d.ts +2 -0
  73. package/dist/icon-button.d.ts +2 -0
  74. package/dist/image.input.d.ts +4 -0
  75. package/dist/index.d.ts +2 -0
  76. package/dist/indexeddb.service.d.ts +6 -0
  77. package/dist/input-group.d.ts +2 -0
  78. package/dist/input.d.ts +2 -0
  79. package/dist/interceptor.builder.d.ts +2 -0
  80. package/dist/label.d.ts +2 -0
  81. package/dist/language-toggle.d.ts +2 -0
  82. package/dist/list-select.input.d.ts +4 -0
  83. package/dist/logger.d.ts +2 -0
  84. package/dist/main.connector.d.ts +2 -0
  85. package/dist/main.service.d.ts +6 -0
  86. package/dist/maps.renderer.d.ts +4 -0
  87. package/dist/marker.factory.d.ts +2 -0
  88. package/dist/marker.guard.d.ts +2 -0
  89. package/dist/markers.meta.d.ts +1 -0
  90. package/dist/modules/actions/entities/action.entity.cjs +1 -0
  91. package/dist/modules/actions/entities/action.entity.esm +139 -0
  92. package/dist/modules/artifacts/entities/artifact.entity.cjs +1 -0
  93. package/dist/modules/artifacts/entities/artifact.entity.esm +82 -0
  94. package/dist/modules/integrations/entities/integration.entity.cjs +1 -0
  95. package/dist/modules/integrations/entities/integration.entity.esm +75 -0
  96. package/dist/modules/inventory/entities/category.entity.cjs +1 -0
  97. package/dist/modules/inventory/entities/category.entity.esm +50 -0
  98. package/dist/modules/inventory/entities/inventory-item.entity.cjs +1 -0
  99. package/dist/modules/inventory/entities/inventory-item.entity.esm +68 -0
  100. package/dist/modules/inventory/entities/product-item.entity.cjs +1 -0
  101. package/dist/modules/inventory/entities/product-item.entity.esm +69 -0
  102. package/dist/modules/inventory/entities/zone.entity.cjs +1 -0
  103. package/dist/modules/inventory/entities/zone.entity.esm +50 -0
  104. package/dist/modules/memberships/entities/membership.entity.cjs +1 -0
  105. package/dist/modules/memberships/entities/membership.entity.esm +53 -0
  106. package/dist/modules/organizations/entities/organization.entity.cjs +1 -0
  107. package/dist/modules/organizations/entities/organization.entity.esm +75 -0
  108. package/dist/modules/projects/entities/project.entity.cjs +1 -0
  109. package/dist/modules/projects/entities/project.entity.esm +100 -0
  110. package/dist/modules/test/entities/experiment.entity.cjs +1 -0
  111. package/dist/modules/test/entities/experiment.entity.esm +71 -0
  112. package/dist/modules/tickets/entities/ticket.entity.cjs +1 -0
  113. package/dist/modules/tickets/entities/ticket.entity.esm +92 -0
  114. package/dist/modules/tools/entities/tool.entity.cjs +1 -0
  115. package/dist/modules/tools/entities/tool.entity.esm +129 -0
  116. package/dist/modules/users/entities/user-role.enum.cjs +1 -0
  117. package/dist/modules/users/entities/user-role.enum.esm +6 -0
  118. package/dist/modules/users/entities/user.entity.cjs +1 -0
  119. package/dist/modules/users/entities/user.entity.esm +88 -0
  120. package/dist/nfc.service.d.ts +6 -0
  121. package/dist/nosql.repo.d.ts +2 -0
  122. package/dist/nosql.repo.service.d.ts +4 -0
  123. package/dist/packages/capacitor/app.config.cjs +1 -0
  124. package/dist/packages/capacitor/app.config.d.ts +1 -0
  125. package/dist/packages/capacitor/app.config.esm +7 -0
  126. package/dist/packages/crypto/crypto.service.cjs +1 -0
  127. package/dist/packages/crypto/crypto.service.d.ts +6 -0
  128. package/dist/packages/crypto/crypto.service.esm +17 -0
  129. package/dist/packages/crypto/index.cjs +1 -0
  130. package/dist/packages/crypto/index.d.ts +1 -0
  131. package/dist/packages/crypto/index.esm +2 -0
  132. package/dist/packages/dnd/dnd.provider.cjs +1 -0
  133. package/dist/packages/dnd/dnd.provider.d.ts +3 -0
  134. package/dist/packages/dnd/dnd.provider.esm +8 -0
  135. package/dist/packages/dnd/draggeable.cjs +1 -0
  136. package/dist/packages/dnd/draggeable.d.ts +4 -0
  137. package/dist/packages/dnd/draggeable.esm +12 -0
  138. package/dist/packages/dnd/droppable.cjs +1 -0
  139. package/dist/packages/dnd/droppable.d.ts +8 -0
  140. package/dist/packages/dnd/droppable.esm +14 -0
  141. package/dist/packages/dnd/droppeable.cjs +1 -0
  142. package/dist/packages/dnd/droppeable.d.ts +5 -0
  143. package/dist/packages/dnd/droppeable.esm +13 -0
  144. package/dist/packages/dnd/sortable.cjs +1 -0
  145. package/dist/packages/dnd/sortable.d.ts +11 -0
  146. package/dist/packages/dnd/sortable.esm +18 -0
  147. package/dist/packages/env/env.manager.cjs +1 -0
  148. package/dist/packages/env/env.manager.d.ts +11 -0
  149. package/dist/packages/env/env.manager.esm +69 -0
  150. package/dist/packages/env/index.cjs +1 -0
  151. package/dist/packages/env/index.d.ts +1 -0
  152. package/dist/packages/env/index.esm +2 -0
  153. package/dist/packages/flow/flow.renderer.cjs +1 -0
  154. package/dist/packages/flow/flow.renderer.d.ts +13 -0
  155. package/dist/packages/flow/flow.renderer.esm +50 -0
  156. package/dist/packages/flow/flow.types.cjs +0 -0
  157. package/dist/packages/flow/flow.types.d.ts +30 -0
  158. package/dist/packages/flow/flow.types.esm +0 -0
  159. package/dist/packages/formatters/qr-code/qr.encoder.service.cjs +1 -0
  160. package/dist/packages/formatters/qr-code/qr.encoder.service.d.ts +5 -0
  161. package/dist/packages/formatters/qr-code/qr.encoder.service.esm +17 -0
  162. package/dist/packages/formatters/qr-code/qr.renderer.cjs +1 -0
  163. package/dist/packages/formatters/qr-code/qr.renderer.d.ts +3 -0
  164. package/dist/packages/formatters/qr-code/qr.renderer.esm +16 -0
  165. package/dist/packages/formatters/text-code/text-coder.service.cjs +1 -0
  166. package/dist/packages/formatters/text-code/text-coder.service.d.ts +9 -0
  167. package/dist/packages/formatters/text-code/text-coder.service.esm +36 -0
  168. package/dist/packages/i18n/index.cjs +1 -0
  169. package/dist/packages/i18n/index.d.ts +10 -0
  170. package/dist/packages/i18n/index.esm +18 -0
  171. package/dist/packages/i18n/language-toggle.cjs +1 -0
  172. package/dist/packages/i18n/language-toggle.d.ts +9 -0
  173. package/dist/packages/i18n/language-toggle.esm +73 -0
  174. package/dist/packages/indexeddb/builder.cjs +1 -0
  175. package/dist/packages/indexeddb/builder.d.ts +13 -0
  176. package/dist/packages/indexeddb/builder.esm +35 -0
  177. package/dist/packages/indexeddb/index.cjs +1 -0
  178. package/dist/packages/indexeddb/index.d.ts +5 -0
  179. package/dist/packages/indexeddb/index.esm +5 -0
  180. package/dist/packages/indexeddb/indexeddb.service.cjs +1 -0
  181. package/dist/packages/indexeddb/indexeddb.service.d.ts +21 -0
  182. package/dist/packages/indexeddb/indexeddb.service.esm +59 -0
  183. package/dist/packages/indexeddb/nosql.repo.cjs +1 -0
  184. package/dist/packages/indexeddb/nosql.repo.d.ts +33 -0
  185. package/dist/packages/indexeddb/nosql.repo.esm +69 -0
  186. package/dist/packages/indexeddb/nosql.repo.service.cjs +1 -0
  187. package/dist/packages/indexeddb/nosql.repo.service.d.ts +46 -0
  188. package/dist/packages/indexeddb/nosql.repo.service.esm +87 -0
  189. package/dist/packages/indexeddb/registry.cjs +1 -0
  190. package/dist/packages/indexeddb/registry.d.ts +21 -0
  191. package/dist/packages/indexeddb/registry.esm +22 -0
  192. package/dist/packages/indexeddb/types.cjs +0 -0
  193. package/dist/packages/indexeddb/types.d.ts +33 -0
  194. package/dist/packages/indexeddb/types.esm +0 -0
  195. package/dist/packages/logger/index.cjs +1 -0
  196. package/dist/packages/logger/index.d.ts +2 -0
  197. package/dist/packages/logger/index.esm +3 -0
  198. package/dist/packages/logger/logger.cjs +1 -0
  199. package/dist/packages/logger/logger.d.ts +137 -0
  200. package/dist/packages/logger/logger.esm +186 -0
  201. package/dist/packages/logger/registry.cjs +1 -0
  202. package/dist/packages/logger/registry.d.ts +9 -0
  203. package/dist/packages/logger/registry.esm +17 -0
  204. package/dist/packages/maps/deckgl-overlay.cjs +1 -0
  205. package/dist/packages/maps/deckgl-overlay.d.ts +9 -0
  206. package/dist/packages/maps/deckgl-overlay.esm +12 -0
  207. package/dist/packages/maps/maps.renderer.cjs +1 -0
  208. package/dist/packages/maps/maps.renderer.d.ts +19 -0
  209. package/dist/packages/maps/maps.renderer.esm +25 -0
  210. package/dist/packages/maps/markers/marker.factory.cjs +1 -0
  211. package/dist/packages/maps/markers/marker.factory.d.ts +8 -0
  212. package/dist/packages/maps/markers/marker.factory.esm +58 -0
  213. package/dist/packages/maps/markers/marker.guard.cjs +1 -0
  214. package/dist/packages/maps/markers/marker.guard.d.ts +22 -0
  215. package/dist/packages/maps/markers/marker.guard.esm +37 -0
  216. package/dist/packages/maps/markers/markers.meta.cjs +0 -0
  217. package/dist/packages/maps/markers/markers.meta.d.ts +12 -0
  218. package/dist/packages/maps/markers/markers.meta.esm +0 -0
  219. package/dist/packages/maps/styles/dark.style.cjs +1 -0
  220. package/dist/packages/maps/styles/dark.style.d.ts +1 -0
  221. package/dist/packages/maps/styles/dark.style.esm +93 -0
  222. package/dist/packages/nfc/nfc.service.cjs +1 -0
  223. package/dist/packages/nfc/nfc.service.d.ts +41 -0
  224. package/dist/packages/nfc/nfc.service.esm +104 -0
  225. package/dist/packages/requests/axios/base.connector.cjs +1 -0
  226. package/dist/packages/requests/axios/base.connector.d.ts +37 -0
  227. package/dist/packages/requests/axios/base.connector.esm +25 -0
  228. package/dist/packages/requests/axios/base.service.cjs +1 -0
  229. package/dist/packages/requests/axios/base.service.d.ts +41 -0
  230. package/dist/packages/requests/axios/base.service.esm +11 -0
  231. package/dist/packages/requests/axios/interceptor.builder.cjs +1 -0
  232. package/dist/packages/requests/axios/interceptor.builder.d.ts +26 -0
  233. package/dist/packages/requests/axios/interceptor.builder.esm +20 -0
  234. package/dist/packages/router/build.router.cjs +1 -0
  235. package/dist/packages/router/build.router.d.ts +6 -0
  236. package/dist/packages/router/build.router.esm +9 -0
  237. package/dist/packages/router/route.builder.cjs +1 -0
  238. package/dist/packages/router/route.builder.d.ts +46 -0
  239. package/dist/packages/router/route.builder.esm +50 -0
  240. package/dist/packages/scanner/scanner.formats.cjs +1 -0
  241. package/dist/packages/scanner/scanner.formats.d.ts +51 -0
  242. package/dist/packages/scanner/scanner.formats.esm +96 -0
  243. package/dist/packages/scanner/scanner.service.cjs +1 -0
  244. package/dist/packages/scanner/scanner.service.d.ts +32 -0
  245. package/dist/packages/scanner/scanner.service.esm +32 -0
  246. package/dist/packages/sheets/index.cjs +1 -0
  247. package/dist/packages/sheets/index.d.ts +2 -0
  248. package/dist/packages/sheets/index.esm +3 -0
  249. package/dist/packages/sheets/sheets.connector.cjs +1 -0
  250. package/dist/packages/sheets/sheets.connector.d.ts +6 -0
  251. package/dist/packages/sheets/sheets.connector.esm +21 -0
  252. package/dist/packages/sheets/sheets.service.cjs +1 -0
  253. package/dist/packages/sheets/sheets.service.d.ts +21 -0
  254. package/dist/packages/sheets/sheets.service.esm +38 -0
  255. package/dist/packages/sqlite/base/base.entity.cjs +1 -0
  256. package/dist/packages/sqlite/base/base.entity.d.ts +5 -0
  257. package/dist/packages/sqlite/base/base.entity.esm +41 -0
  258. package/dist/packages/sqlite/repo.service.cjs +1 -0
  259. package/dist/packages/sqlite/repo.service.d.ts +22 -0
  260. package/dist/packages/sqlite/repo.service.esm +52 -0
  261. package/dist/packages/sqlite/sqlite.service.cjs +1 -0
  262. package/dist/packages/sqlite/sqlite.service.d.ts +40 -0
  263. package/dist/packages/sqlite/sqlite.service.esm +77 -0
  264. package/dist/packages/sqlite/templates/test.entity.cjs +1 -0
  265. package/dist/packages/sqlite/templates/test.entity.d.ts +6 -0
  266. package/dist/packages/sqlite/templates/test.entity.esm +62 -0
  267. package/dist/packages/sqlite/templates/test.repo.service.cjs +1 -0
  268. package/dist/packages/sqlite/templates/test.repo.service.d.ts +8 -0
  269. package/dist/packages/sqlite/templates/test.repo.service.esm +26 -0
  270. package/dist/packages/stores/storage.service.cjs +1 -0
  271. package/dist/packages/stores/storage.service.d.ts +5 -0
  272. package/dist/packages/stores/storage.service.esm +22 -0
  273. package/dist/packages/stores/store.hook.cjs +1 -0
  274. package/dist/packages/stores/store.hook.d.ts +23 -0
  275. package/dist/packages/stores/store.hook.esm +22 -0
  276. package/dist/packages/stores/store.service.cjs +1 -0
  277. package/dist/packages/stores/store.service.d.ts +12 -0
  278. package/dist/packages/stores/store.service.esm +48 -0
  279. package/dist/packages/theme/theme-builder.cjs +1 -0
  280. package/dist/packages/theme/theme-builder.d.ts +19 -0
  281. package/dist/packages/theme/theme-builder.esm +25 -0
  282. package/dist/packages/theme/theme-provider.cjs +1 -0
  283. package/dist/packages/theme/theme-provider.d.ts +7 -0
  284. package/dist/packages/theme/theme-provider.esm +17 -0
  285. package/dist/packages/theme/theme-toggle.cjs +1 -0
  286. package/dist/packages/theme/theme-toggle.d.ts +6 -0
  287. package/dist/packages/theme/theme-toggle.esm +33 -0
  288. package/dist/packages/w3/tron/index.cjs +1 -0
  289. package/dist/packages/w3/tron/index.d.ts +4 -0
  290. package/dist/packages/w3/tron/index.esm +4 -0
  291. package/dist/packages/w3/tron/tron-assets.service.cjs +1 -0
  292. package/dist/packages/w3/tron/tron-assets.service.d.ts +38 -0
  293. package/dist/packages/w3/tron/tron-assets.service.esm +116 -0
  294. package/dist/packages/w3/tron/tron-wallet.entity.cjs +1 -0
  295. package/dist/packages/w3/tron/tron-wallet.entity.d.ts +15 -0
  296. package/dist/packages/w3/tron/tron-wallet.entity.esm +88 -0
  297. package/dist/packages/w3/tron/tron-wallet.repo.cjs +1 -0
  298. package/dist/packages/w3/tron/tron-wallet.repo.d.ts +30 -0
  299. package/dist/packages/w3/tron/tron-wallet.repo.esm +52 -0
  300. package/dist/packages/w3/tron/tron.service.cjs +1 -0
  301. package/dist/packages/w3/tron/tron.service.d.ts +124 -0
  302. package/dist/packages/w3/tron/tron.service.esm +406 -0
  303. package/dist/packages/w3/tron/tron.types.cjs +0 -0
  304. package/dist/packages/w3/tron/tron.types.d.ts +129 -0
  305. package/dist/packages/w3/tron/tron.types.esm +0 -0
  306. package/dist/page-container.d.ts +2 -0
  307. package/dist/popover.d.ts +2 -0
  308. package/dist/qr.encoder.service.d.ts +4 -0
  309. package/dist/qr.renderer.d.ts +4 -0
  310. package/dist/registry.d.ts +2 -0
  311. package/dist/repo.service.d.ts +4 -0
  312. package/dist/repository.contract.d.ts +1 -0
  313. package/dist/route.builder.d.ts +4 -0
  314. package/dist/scanner.formats.d.ts +2 -0
  315. package/dist/scanner.service.d.ts +2 -0
  316. package/dist/scroll-area.d.ts +2 -0
  317. package/dist/secret.input.d.ts +4 -0
  318. package/dist/select.d.ts +2 -0
  319. package/dist/select.input.d.ts +4 -0
  320. package/dist/separator.d.ts +2 -0
  321. package/dist/shared/assets/social-icons.cjs +1 -0
  322. package/dist/shared/assets/social-icons.d.ts +2 -0
  323. package/dist/shared/assets/social-icons.esm +30 -0
  324. package/dist/shared/constants/connectors/main.connector.cjs +1 -0
  325. package/dist/shared/constants/connectors/main.connector.d.ts +8 -0
  326. package/dist/shared/constants/connectors/main.connector.esm +38 -0
  327. package/dist/shared/constants/services/main.service.cjs +1 -0
  328. package/dist/shared/constants/services/main.service.d.ts +7 -0
  329. package/dist/shared/constants/services/main.service.esm +26 -0
  330. package/dist/shared/contracts/repository.contract.cjs +0 -0
  331. package/dist/shared/contracts/repository.contract.d.ts +26 -0
  332. package/dist/shared/contracts/repository.contract.esm +0 -0
  333. package/dist/shared/custom/actions/back-button.action.cjs +1 -0
  334. package/dist/shared/custom/actions/back-button.action.d.ts +13 -0
  335. package/dist/shared/custom/actions/back-button.action.esm +20 -0
  336. package/dist/shared/custom/audit/audit-view.cjs +1 -0
  337. package/dist/shared/custom/audit/audit-view.d.ts +46 -0
  338. package/dist/shared/custom/audit/audit-view.esm +73 -0
  339. package/dist/shared/custom/confirm/use-confirm.cjs +1 -0
  340. package/dist/shared/custom/confirm/use-confirm.d.ts +15 -0
  341. package/dist/shared/custom/confirm/use-confirm.esm +57 -0
  342. package/dist/shared/custom/data-table/data-table.component.cjs +1 -0
  343. package/dist/shared/custom/data-table/data-table.component.d.ts +9 -0
  344. package/dist/shared/custom/data-table/data-table.component.esm +26 -0
  345. package/dist/shared/custom/data-table/data-table.provider.cjs +0 -0
  346. package/dist/shared/custom/data-table/data-table.provider.d.ts +1 -0
  347. package/dist/shared/custom/data-table/data-table.provider.esm +0 -0
  348. package/dist/shared/custom/flow/flow-canvas.cjs +1 -0
  349. package/dist/shared/custom/flow/flow-canvas.d.ts +10 -0
  350. package/dist/shared/custom/flow/flow-canvas.esm +23 -0
  351. package/dist/shared/custom/flow/nodes/base.node.cjs +1 -0
  352. package/dist/shared/custom/flow/nodes/base.node.d.ts +9 -0
  353. package/dist/shared/custom/flow/nodes/base.node.esm +51 -0
  354. package/dist/shared/custom/form/form.component.cjs +1 -0
  355. package/dist/shared/custom/form/form.component.d.ts +13 -0
  356. package/dist/shared/custom/form/form.component.esm +26 -0
  357. package/dist/shared/custom/form/index.cjs +1 -0
  358. package/dist/shared/custom/form/index.d.ts +17 -0
  359. package/dist/shared/custom/form/index.esm +2 -0
  360. package/dist/shared/custom/form/inputs/async-combobox.input.cjs +1 -0
  361. package/dist/shared/custom/form/inputs/async-combobox.input.d.ts +18 -0
  362. package/dist/shared/custom/form/inputs/async-combobox.input.esm +91 -0
  363. package/dist/shared/custom/form/inputs/async-multi-select.input.cjs +1 -0
  364. package/dist/shared/custom/form/inputs/async-multi-select.input.d.ts +20 -0
  365. package/dist/shared/custom/form/inputs/async-multi-select.input.esm +127 -0
  366. package/dist/shared/custom/form/inputs/async-select.input.cjs +1 -0
  367. package/dist/shared/custom/form/inputs/async-select.input.d.ts +15 -0
  368. package/dist/shared/custom/form/inputs/async-select.input.esm +71 -0
  369. package/dist/shared/custom/form/inputs/checkbox-inline.input.cjs +1 -0
  370. package/dist/shared/custom/form/inputs/checkbox-inline.input.d.ts +15 -0
  371. package/dist/shared/custom/form/inputs/checkbox-inline.input.esm +41 -0
  372. package/dist/shared/custom/form/inputs/checkbox.input.cjs +1 -0
  373. package/dist/shared/custom/form/inputs/checkbox.input.d.ts +21 -0
  374. package/dist/shared/custom/form/inputs/checkbox.input.esm +50 -0
  375. package/dist/shared/custom/form/inputs/code.input.cjs +1 -0
  376. package/dist/shared/custom/form/inputs/code.input.d.ts +11 -0
  377. package/dist/shared/custom/form/inputs/code.input.esm +58 -0
  378. package/dist/shared/custom/form/inputs/color.input.cjs +1 -0
  379. package/dist/shared/custom/form/inputs/color.input.d.ts +11 -0
  380. package/dist/shared/custom/form/inputs/color.input.esm +47 -0
  381. package/dist/shared/custom/form/inputs/combobox.input.cjs +1 -0
  382. package/dist/shared/custom/form/inputs/combobox.input.d.ts +18 -0
  383. package/dist/shared/custom/form/inputs/combobox.input.esm +73 -0
  384. package/dist/shared/custom/form/inputs/date.input.cjs +1 -0
  385. package/dist/shared/custom/form/inputs/date.input.d.ts +11 -0
  386. package/dist/shared/custom/form/inputs/date.input.esm +52 -0
  387. package/dist/shared/custom/form/inputs/email.input.cjs +1 -0
  388. package/dist/shared/custom/form/inputs/email.input.d.ts +12 -0
  389. package/dist/shared/custom/form/inputs/email.input.esm +47 -0
  390. package/dist/shared/custom/form/inputs/file.input.cjs +1 -0
  391. package/dist/shared/custom/form/inputs/file.input.d.ts +11 -0
  392. package/dist/shared/custom/form/inputs/file.input.esm +95 -0
  393. package/dist/shared/custom/form/inputs/image.input.cjs +1 -0
  394. package/dist/shared/custom/form/inputs/image.input.d.ts +11 -0
  395. package/dist/shared/custom/form/inputs/image.input.esm +90 -0
  396. package/dist/shared/custom/form/inputs/list-select.input.cjs +1 -0
  397. package/dist/shared/custom/form/inputs/list-select.input.d.ts +17 -0
  398. package/dist/shared/custom/form/inputs/list-select.input.esm +53 -0
  399. package/dist/shared/custom/form/inputs/secret.input.cjs +1 -0
  400. package/dist/shared/custom/form/inputs/secret.input.d.ts +11 -0
  401. package/dist/shared/custom/form/inputs/secret.input.esm +53 -0
  402. package/dist/shared/custom/form/inputs/select.input.cjs +1 -0
  403. package/dist/shared/custom/form/inputs/select.input.d.ts +17 -0
  404. package/dist/shared/custom/form/inputs/select.input.esm +44 -0
  405. package/dist/shared/custom/form/inputs/tags.input.cjs +1 -0
  406. package/dist/shared/custom/form/inputs/tags.input.d.ts +16 -0
  407. package/dist/shared/custom/form/inputs/tags.input.esm +80 -0
  408. package/dist/shared/custom/form/inputs/text.input.cjs +1 -0
  409. package/dist/shared/custom/form/inputs/text.input.d.ts +13 -0
  410. package/dist/shared/custom/form/inputs/text.input.esm +47 -0
  411. package/dist/shared/custom/form/inputs/textarea.input.cjs +1 -0
  412. package/dist/shared/custom/form/inputs/textarea.input.d.ts +12 -0
  413. package/dist/shared/custom/form/inputs/textarea.input.esm +36 -0
  414. package/dist/shared/custom/form/layout/form-dialog-layout.cjs +1 -0
  415. package/dist/shared/custom/form/layout/form-dialog-layout.d.ts +25 -0
  416. package/dist/shared/custom/form/layout/form-dialog-layout.esm +37 -0
  417. package/dist/shared/custom/form/layout/form-tab-layout.cjs +1 -0
  418. package/dist/shared/custom/form/layout/form-tab-layout.d.ts +30 -0
  419. package/dist/shared/custom/form/layout/form-tab-layout.esm +69 -0
  420. package/dist/shared/custom/hover/hover.cjs +1 -0
  421. package/dist/shared/custom/hover/hover.d.ts +6 -0
  422. package/dist/shared/custom/hover/hover.esm +20 -0
  423. package/dist/shared/custom/layouts/canvas-view.layout.cjs +1 -0
  424. package/dist/shared/custom/layouts/canvas-view.layout.d.ts +18 -0
  425. package/dist/shared/custom/layouts/canvas-view.layout.esm +15 -0
  426. package/dist/shared/custom/layouts/detail-tabs.layout.cjs +1 -0
  427. package/dist/shared/custom/layouts/detail-tabs.layout.d.ts +27 -0
  428. package/dist/shared/custom/layouts/detail-tabs.layout.esm +32 -0
  429. package/dist/shared/custom/layouts/detail-view.layout.cjs +1 -0
  430. package/dist/shared/custom/layouts/detail-view.layout.d.ts +33 -0
  431. package/dist/shared/custom/layouts/detail-view.layout.esm +64 -0
  432. package/dist/shared/custom/layouts/feedback.layout.cjs +1 -0
  433. package/dist/shared/custom/layouts/feedback.layout.d.ts +14 -0
  434. package/dist/shared/custom/layouts/feedback.layout.esm +20 -0
  435. package/dist/shared/custom/layouts/grid.layout.cjs +1 -0
  436. package/dist/shared/custom/layouts/grid.layout.d.ts +38 -0
  437. package/dist/shared/custom/layouts/grid.layout.esm +39 -0
  438. package/dist/shared/custom/layouts/page-container.cjs +1 -0
  439. package/dist/shared/custom/layouts/page-container.d.ts +6 -0
  440. package/dist/shared/custom/layouts/page-container.esm +12 -0
  441. package/dist/shared/custom/ui/icon-box.cjs +1 -0
  442. package/dist/shared/custom/ui/icon-box.d.ts +12 -0
  443. package/dist/shared/custom/ui/icon-box.esm +21 -0
  444. package/dist/shared/custom/ui/typography.cjs +1 -0
  445. package/dist/shared/custom/ui/typography.d.ts +11 -0
  446. package/dist/shared/custom/ui/typography.esm +30 -0
  447. package/dist/shared/hooks/use-device.cjs +1 -0
  448. package/dist/shared/hooks/use-device.d.ts +10 -0
  449. package/dist/shared/hooks/use-device.esm +37 -0
  450. package/dist/shared/hooks/use-i18n.cjs +1 -0
  451. package/dist/shared/hooks/use-i18n.d.ts +10 -0
  452. package/dist/shared/hooks/use-i18n.esm +15 -0
  453. package/dist/shared/hooks/use-mobile.cjs +1 -0
  454. package/dist/shared/hooks/use-mobile.d.ts +1 -0
  455. package/dist/shared/hooks/use-mobile.esm +14 -0
  456. package/dist/shared/lib/utils.cjs +1 -0
  457. package/dist/shared/lib/utils.d.ts +2 -0
  458. package/dist/shared/lib/utils.esm +8 -0
  459. package/dist/shared/logic/action/action-processor.cjs +1 -0
  460. package/dist/shared/logic/action/action-processor.d.ts +86 -0
  461. package/dist/shared/logic/action/action-processor.esm +30 -0
  462. package/dist/shared/logic/components/components.registry.cjs +1 -0
  463. package/dist/shared/logic/components/components.registry.d.ts +16 -0
  464. package/dist/shared/logic/components/components.registry.esm +26 -0
  465. package/dist/shared/logic/events/startable.cjs +1 -0
  466. package/dist/shared/logic/events/startable.d.ts +7 -0
  467. package/dist/shared/logic/events/startable.esm +32 -0
  468. package/dist/shared/logic/events/use-on-start.hook.cjs +1 -0
  469. package/dist/shared/logic/events/use-on-start.hook.d.ts +12 -0
  470. package/dist/shared/logic/events/use-on-start.hook.esm +15 -0
  471. package/dist/shared/logic/factory/component.factory.cjs +1 -0
  472. package/dist/shared/logic/factory/component.factory.d.ts +9 -0
  473. package/dist/shared/logic/factory/component.factory.esm +28 -0
  474. package/dist/shared/logic/guards/builder-device.guard.cjs +1 -0
  475. package/dist/shared/logic/guards/builder-device.guard.d.ts +5 -0
  476. package/dist/shared/logic/guards/builder-device.guard.esm +10 -0
  477. package/dist/shared/logic/guards/component.guard.cjs +1 -0
  478. package/dist/shared/logic/guards/component.guard.d.ts +5 -0
  479. package/dist/shared/logic/guards/component.guard.esm +13 -0
  480. package/dist/shared/logic/guards/context.guard.cjs +1 -0
  481. package/dist/shared/logic/guards/context.guard.d.ts +13 -0
  482. package/dist/shared/logic/guards/context.guard.esm +9 -0
  483. package/dist/shared/logic/guards/device-artifact.guard.cjs +1 -0
  484. package/dist/shared/logic/guards/device-artifact.guard.d.ts +16 -0
  485. package/dist/shared/logic/guards/device-artifact.guard.esm +44 -0
  486. package/dist/shared/logic/guards/device.guard.cjs +1 -0
  487. package/dist/shared/logic/guards/device.guard.d.ts +17 -0
  488. package/dist/shared/logic/guards/device.guard.esm +40 -0
  489. package/dist/shared/logic/guards/dynamic-device.guard.cjs +1 -0
  490. package/dist/shared/logic/guards/dynamic-device.guard.d.ts +5 -0
  491. package/dist/shared/logic/guards/dynamic-device.guard.esm +10 -0
  492. package/dist/shared/logic/guards/guard.cjs +1 -0
  493. package/dist/shared/logic/guards/guard.d.ts +24 -0
  494. package/dist/shared/logic/guards/guard.esm +18 -0
  495. package/dist/shared/logic/service/base.service.cjs +1 -0
  496. package/dist/shared/logic/service/base.service.d.ts +3 -0
  497. package/dist/shared/logic/service/base.service.esm +5 -0
  498. package/dist/shared/logic/verifiers/context.verifier.cjs +1 -0
  499. package/dist/shared/logic/verifiers/context.verifier.d.ts +7 -0
  500. package/dist/shared/logic/verifiers/context.verifier.esm +31 -0
  501. package/dist/shared/logic/verifiers/device.verifier.registry.cjs +1 -0
  502. package/dist/shared/logic/verifiers/device.verifier.registry.d.ts +13 -0
  503. package/dist/shared/logic/verifiers/device.verifier.registry.esm +36 -0
  504. package/dist/shared/logic/verifiers/enum.verifier.cjs +1 -0
  505. package/dist/shared/logic/verifiers/enum.verifier.d.ts +4 -0
  506. package/dist/shared/logic/verifiers/enum.verifier.esm +9 -0
  507. package/dist/shared/logic/verifiers/value.verifier.cjs +1 -0
  508. package/dist/shared/logic/verifiers/value.verifier.d.ts +5 -0
  509. package/dist/shared/logic/verifiers/value.verifier.esm +9 -0
  510. package/dist/shared/ui/badge.cjs +1 -0
  511. package/dist/shared/ui/badge.d.ts +9 -0
  512. package/dist/shared/ui/badge.esm +27 -0
  513. package/dist/shared/ui/breadcrumb.cjs +1 -0
  514. package/dist/shared/ui/breadcrumb.d.ts +11 -0
  515. package/dist/shared/ui/breadcrumb.esm +70 -0
  516. package/dist/shared/ui/button.cjs +1 -0
  517. package/dist/shared/ui/button.d.ts +11 -0
  518. package/dist/shared/ui/button.esm +47 -0
  519. package/dist/shared/ui/calendar.cjs +1 -0
  520. package/dist/shared/ui/calendar.d.ts +10 -0
  521. package/dist/shared/ui/calendar.esm +92 -0
  522. package/dist/shared/ui/card.cjs +1 -0
  523. package/dist/shared/ui/card.d.ts +11 -0
  524. package/dist/shared/ui/card.esm +56 -0
  525. package/dist/shared/ui/checkbox.cjs +1 -0
  526. package/dist/shared/ui/checkbox.d.ts +4 -0
  527. package/dist/shared/ui/checkbox.esm +20 -0
  528. package/dist/shared/ui/combobox.cjs +1 -0
  529. package/dist/shared/ui/combobox.d.ts +24 -0
  530. package/dist/shared/ui/combobox.esm +163 -0
  531. package/dist/shared/ui/command.cjs +1 -0
  532. package/dist/shared/ui/command.d.ts +18 -0
  533. package/dist/shared/ui/command.esm +87 -0
  534. package/dist/shared/ui/custom/dynamic-icon.cjs +1 -0
  535. package/dist/shared/ui/custom/dynamic-icon.d.ts +13 -0
  536. package/dist/shared/ui/custom/dynamic-icon.esm +15 -0
  537. package/dist/shared/ui/dialog.cjs +1 -0
  538. package/dist/shared/ui/dialog.d.ts +17 -0
  539. package/dist/shared/ui/dialog.esm +95 -0
  540. package/dist/shared/ui/field.cjs +1 -0
  541. package/dist/shared/ui/field.d.ts +24 -0
  542. package/dist/shared/ui/field.esm +107 -0
  543. package/dist/shared/ui/icon-button.cjs +1 -0
  544. package/dist/shared/ui/icon-button.d.ts +6 -0
  545. package/dist/shared/ui/icon-button.esm +14 -0
  546. package/dist/shared/ui/index.cjs +1 -0
  547. package/dist/shared/ui/index.d.ts +23 -0
  548. package/dist/shared/ui/index.esm +24 -0
  549. package/dist/shared/ui/input-group.cjs +1 -0
  550. package/dist/shared/ui/input-group.d.ts +16 -0
  551. package/dist/shared/ui/input-group.esm +77 -0
  552. package/dist/shared/ui/input.cjs +1 -0
  553. package/dist/shared/ui/input.d.ts +3 -0
  554. package/dist/shared/ui/input.esm +14 -0
  555. package/dist/shared/ui/label.cjs +1 -0
  556. package/dist/shared/ui/label.d.ts +4 -0
  557. package/dist/shared/ui/label.esm +14 -0
  558. package/dist/shared/ui/popover.cjs +1 -0
  559. package/dist/shared/ui/popover.d.ts +7 -0
  560. package/dist/shared/ui/popover.esm +35 -0
  561. package/dist/shared/ui/scroll-area.cjs +1 -0
  562. package/dist/shared/ui/scroll-area.d.ts +5 -0
  563. package/dist/shared/ui/scroll-area.esm +36 -0
  564. package/dist/shared/ui/select.cjs +1 -0
  565. package/dist/shared/ui/select.d.ts +15 -0
  566. package/dist/shared/ui/select.esm +99 -0
  567. package/dist/shared/ui/separator.cjs +1 -0
  568. package/dist/shared/ui/separator.d.ts +4 -0
  569. package/dist/shared/ui/separator.esm +16 -0
  570. package/dist/shared/ui/sheet.cjs +1 -0
  571. package/dist/shared/ui/sheet.d.ts +14 -0
  572. package/dist/shared/ui/sheet.esm +89 -0
  573. package/dist/shared/ui/sidebar.cjs +1 -0
  574. package/dist/shared/ui/sidebar.d.ts +69 -0
  575. package/dist/shared/ui/sidebar.esm +348 -0
  576. package/dist/shared/ui/skeleton.cjs +1 -0
  577. package/dist/shared/ui/skeleton.d.ts +2 -0
  578. package/dist/shared/ui/skeleton.esm +12 -0
  579. package/dist/shared/ui/sonner.cjs +1 -0
  580. package/dist/shared/ui/sonner.d.ts +3 -0
  581. package/dist/shared/ui/sonner.esm +29 -0
  582. package/dist/shared/ui/table.cjs +1 -0
  583. package/dist/shared/ui/table.d.ts +10 -0
  584. package/dist/shared/ui/table.esm +66 -0
  585. package/dist/shared/ui/tabs.cjs +1 -0
  586. package/dist/shared/ui/tabs.d.ts +11 -0
  587. package/dist/shared/ui/tabs.esm +45 -0
  588. package/dist/shared/ui/textarea.cjs +1 -0
  589. package/dist/shared/ui/textarea.d.ts +3 -0
  590. package/dist/shared/ui/textarea.esm +13 -0
  591. package/dist/shared/ui/tooltip.cjs +1 -0
  592. package/dist/shared/ui/tooltip.d.ts +7 -0
  593. package/dist/shared/ui/tooltip.esm +36 -0
  594. package/dist/sheet.d.ts +2 -0
  595. package/dist/sheets.connector.d.ts +2 -0
  596. package/dist/sheets.service.d.ts +2 -0
  597. package/dist/sidebar.d.ts +2 -0
  598. package/dist/skeleton.d.ts +2 -0
  599. package/dist/social-icons.d.ts +2 -0
  600. package/dist/sonner.d.ts +2 -0
  601. package/dist/sortable.d.ts +2 -0
  602. package/dist/sqlite.service.d.ts +6 -0
  603. package/dist/startable.d.ts +4 -0
  604. package/dist/storage.service.d.ts +4 -0
  605. package/dist/store.hook.d.ts +4 -0
  606. package/dist/store.service.d.ts +4 -0
  607. package/dist/table.d.ts +2 -0
  608. package/dist/tabs.d.ts +2 -0
  609. package/dist/tags.input.d.ts +4 -0
  610. package/dist/test.entity.d.ts +2 -0
  611. package/dist/test.repo.service.d.ts +6 -0
  612. package/dist/text-coder.service.d.ts +2 -0
  613. package/dist/text.input.d.ts +4 -0
  614. package/dist/textarea.d.ts +2 -0
  615. package/dist/textarea.input.d.ts +4 -0
  616. package/dist/theme-builder.d.ts +2 -0
  617. package/dist/theme-provider.d.ts +2 -0
  618. package/dist/theme-toggle.d.ts +2 -0
  619. package/dist/tooltip.d.ts +2 -0
  620. package/dist/tron-assets.service.d.ts +2 -0
  621. package/dist/tron-wallet.entity.d.ts +2 -0
  622. package/dist/tron-wallet.repo.d.ts +2 -0
  623. package/dist/tron.service.d.ts +2 -0
  624. package/dist/tron.types.d.ts +1 -0
  625. package/dist/types.d.ts +1 -0
  626. package/dist/typography.d.ts +2 -0
  627. package/dist/use-confirm.d.ts +2 -0
  628. package/dist/use-device.d.ts +2 -0
  629. package/dist/use-i18n.d.ts +2 -0
  630. package/dist/use-mobile.d.ts +2 -0
  631. package/dist/use-on-start.hook.d.ts +2 -0
  632. package/dist/utils.d.ts +2 -0
  633. package/dist/value.verifier.d.ts +4 -0
  634. package/package.json +155 -0
@@ -0,0 +1,44 @@
1
+ import { Select as e, SelectContent as t, SelectGroup as n, SelectItem as r, SelectTrigger as i, SelectValue as a } from "../../../ui/select.esm";
2
+ import { Field as o, FieldError as s, FieldLabel as c } from "../../../ui/field.esm";
3
+ import { Hover as l } from "../../hover/hover.esm";
4
+ import { jsx as u, jsxs as d } from "react/jsx-runtime";
5
+ import { Controller as f } from "react-hook-form";
6
+ //#region src/shared/custom/form/inputs/select.input.tsx
7
+ function p({ form: p, name: m, label: h, helper: g, placeholder: _, options: v }) {
8
+ return /* @__PURE__ */ u(f, {
9
+ control: p.control,
10
+ name: m,
11
+ render: ({ field: { value: f, onChange: p }, fieldState: m }) => /* @__PURE__ */ d(o, {
12
+ "data-invalid": m.invalid,
13
+ children: [
14
+ /* @__PURE__ */ d("div", {
15
+ className: "flex items-center gap-2 mb-2",
16
+ children: [h && /* @__PURE__ */ u(c, {
17
+ className: "text-sm font-medium",
18
+ children: h
19
+ }), g && /* @__PURE__ */ u(l, { children: g })]
20
+ }),
21
+ /* @__PURE__ */ d(e, {
22
+ value: f,
23
+ onValueChange: p,
24
+ children: [/* @__PURE__ */ u(i, {
25
+ className: "w-full bg-background border-border",
26
+ children: /* @__PURE__ */ u(a, { placeholder: _ || "Seleccionar..." })
27
+ }), /* @__PURE__ */ u(t, {
28
+ className: "bg-card border-border shadow-matte",
29
+ children: /* @__PURE__ */ u(n, { children: v.map((e) => /* @__PURE__ */ u(r, {
30
+ value: e.value,
31
+ children: e.label
32
+ }, e.value)) })
33
+ })]
34
+ }),
35
+ m.invalid && m.error && /* @__PURE__ */ u(s, {
36
+ errors: [m.error],
37
+ className: "mt-2"
38
+ })
39
+ ]
40
+ })
41
+ });
42
+ }
43
+ //#endregion
44
+ export { p as default };
@@ -0,0 +1 @@
1
+ const e=require(`../../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../../lib/utils.cjs`),n=require(`../../../ui/field.cjs`),r=require(`../../hover/hover.cjs`),i=require(`../../../ui/badge.cjs`);let a=require(`react/jsx-runtime`),o=require(`react`);o=e.__toESM(o);let s=require(`lucide-react`),c=require(`react-hook-form`);function l({form:e,name:l,label:u,helper:d,placeholder:f=`Escribe y presiona Enter...`}){let[p,m]=o.useState(``);return(0,a.jsx)(c.Controller,{control:e.control,name:l,render:({field:{value:e,onChange:o},fieldState:c})=>{let l=Array.isArray(e)?e:[],h=()=>{let e=p.trim();e&&!l.includes(e)&&(o([...l,e]),m(``))},g=e=>{o(l.filter((t,n)=>n!==e))},_=e=>{e.key===`Enter`||e.key===`,`?(e.preventDefault(),h()):e.key===`Backspace`&&!p&&l.length>0&&g(l.length-1)};return(0,a.jsxs)(n.Field,{"data-invalid":c.invalid,children:[(0,a.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[u&&(0,a.jsx)(n.FieldLabel,{className:`text-sm font-medium`,children:u}),d&&(0,a.jsx)(r.Hover,{children:d})]}),(0,a.jsx)(`div`,{className:t.cn(`group min-h-[44px] p-1.5 rounded-2xl border transition-all duration-300`,`t-card-base focus-within:t-accent-border focus-within:ring-2 focus-within:ring-(--t-accent)/10`,c.invalid?`border-destructive/50`:`hover:border-(--t-border)`),children:(0,a.jsxs)(`div`,{className:`flex flex-wrap gap-1.5`,children:[l.map((e,t)=>(0,a.jsxs)(i.Badge,{variant:`secondary`,className:`t-badge pl-2 pr-1 py-1 h-7 border-none transition-colors animate-in zoom-in-95 duration-200`,children:[(0,a.jsx)(`span`,{className:`text-xs font-medium`,children:e}),(0,a.jsx)(`button`,{type:`button`,onClick:()=>g(t),className:`ml-1.5 p-0.5 rounded-full hover:bg-(--t-accent)/30 t-accent-text hover:text-foreground transition-all`,children:(0,a.jsx)(s.X,{className:`size-3`})})]},`${e}-${t}`)),(0,a.jsx)(`input`,{value:p,onChange:e=>m(e.target.value),onKeyDown:_,onBlur:h,placeholder:l.length===0?f:``,className:`flex-1 min-w-[120px] bg-transparent border-none outline-none text-sm text-foreground placeholder:text-muted-foreground px-2 h-7`})]})}),(0,a.jsxs)(`div`,{className:`mt-2 flex items-center justify-between`,children:[(0,a.jsxs)(`p`,{className:`text-[10px] text-muted-foreground italic`,children:[`Presiona `,(0,a.jsx)(`span`,{className:`text-foreground font-bold`,children:`Enter`}),` para agregar`]}),c.invalid&&c.error&&(0,a.jsx)(n.FieldError,{errors:[c.error]})]})]})}})}module.exports=l;
@@ -0,0 +1,16 @@
1
+ import { FieldValues, Path } from 'react-hook-form';
2
+ import { FormInputProps } from '../form.component';
3
+ interface TagsInputProps<TFieldValues extends FieldValues> extends FormInputProps<TFieldValues> {
4
+ name: Path<TFieldValues>;
5
+ label?: string;
6
+ helper?: string;
7
+ placeholder?: string;
8
+ }
9
+ /**
10
+ * TagsInput
11
+ *
12
+ * Un componente para ingresar una lista de textos (tags) de forma dinámica.
13
+ * Presiona Enter o Coma para agregar un nuevo tag.
14
+ */
15
+ export default function TagsInput<TFieldValues extends FieldValues>({ form, name, label, helper, placeholder, }: TagsInputProps<TFieldValues>): import("react/jsx-runtime").JSX.Element;
16
+ export {};
@@ -0,0 +1,80 @@
1
+ import { cn as e } from "../../../lib/utils.esm";
2
+ import { Field as t, FieldError as n, FieldLabel as r } from "../../../ui/field.esm";
3
+ import { Hover as i } from "../../hover/hover.esm";
4
+ import { Badge as a } from "../../../ui/badge.esm";
5
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
6
+ import * as c from "react";
7
+ import { X as l } from "lucide-react";
8
+ import { Controller as u } from "react-hook-form";
9
+ //#region src/shared/custom/form/inputs/tags.input.tsx
10
+ function d({ form: d, name: f, label: p, helper: m, placeholder: h = "Escribe y presiona Enter..." }) {
11
+ let [g, _] = c.useState("");
12
+ return /* @__PURE__ */ o(u, {
13
+ control: d.control,
14
+ name: f,
15
+ render: ({ field: { value: c, onChange: u }, fieldState: d }) => {
16
+ let f = Array.isArray(c) ? c : [], v = () => {
17
+ let e = g.trim();
18
+ e && !f.includes(e) && (u([...f, e]), _(""));
19
+ }, y = (e) => {
20
+ u(f.filter((t, n) => n !== e));
21
+ }, b = (e) => {
22
+ e.key === "Enter" || e.key === "," ? (e.preventDefault(), v()) : e.key === "Backspace" && !g && f.length > 0 && y(f.length - 1);
23
+ };
24
+ return /* @__PURE__ */ s(t, {
25
+ "data-invalid": d.invalid,
26
+ children: [
27
+ /* @__PURE__ */ s("div", {
28
+ className: "flex items-center gap-2 mb-2",
29
+ children: [p && /* @__PURE__ */ o(r, {
30
+ className: "text-sm font-medium",
31
+ children: p
32
+ }), m && /* @__PURE__ */ o(i, { children: m })]
33
+ }),
34
+ /* @__PURE__ */ o("div", {
35
+ className: e("group min-h-[44px] p-1.5 rounded-2xl border transition-all duration-300", "t-card-base focus-within:t-accent-border focus-within:ring-2 focus-within:ring-(--t-accent)/10", d.invalid ? "border-destructive/50" : "hover:border-(--t-border)"),
36
+ children: /* @__PURE__ */ s("div", {
37
+ className: "flex flex-wrap gap-1.5",
38
+ children: [f.map((e, t) => /* @__PURE__ */ s(a, {
39
+ variant: "secondary",
40
+ className: "t-badge pl-2 pr-1 py-1 h-7 border-none transition-colors animate-in zoom-in-95 duration-200",
41
+ children: [/* @__PURE__ */ o("span", {
42
+ className: "text-xs font-medium",
43
+ children: e
44
+ }), /* @__PURE__ */ o("button", {
45
+ type: "button",
46
+ onClick: () => y(t),
47
+ className: "ml-1.5 p-0.5 rounded-full hover:bg-(--t-accent)/30 t-accent-text hover:text-foreground transition-all",
48
+ children: /* @__PURE__ */ o(l, { className: "size-3" })
49
+ })]
50
+ }, `${e}-${t}`)), /* @__PURE__ */ o("input", {
51
+ value: g,
52
+ onChange: (e) => _(e.target.value),
53
+ onKeyDown: b,
54
+ onBlur: v,
55
+ placeholder: f.length === 0 ? h : "",
56
+ className: "flex-1 min-w-[120px] bg-transparent border-none outline-none text-sm text-foreground placeholder:text-muted-foreground px-2 h-7"
57
+ })]
58
+ })
59
+ }),
60
+ /* @__PURE__ */ s("div", {
61
+ className: "mt-2 flex items-center justify-between",
62
+ children: [/* @__PURE__ */ s("p", {
63
+ className: "text-[10px] text-muted-foreground italic",
64
+ children: [
65
+ "Presiona ",
66
+ /* @__PURE__ */ o("span", {
67
+ className: "text-foreground font-bold",
68
+ children: "Enter"
69
+ }),
70
+ " para agregar"
71
+ ]
72
+ }), d.invalid && d.error && /* @__PURE__ */ o(n, { errors: [d.error] })]
73
+ })
74
+ ]
75
+ });
76
+ }
77
+ });
78
+ }
79
+ //#endregion
80
+ export { d as default };
@@ -0,0 +1 @@
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../ui/field.cjs`),t=require(`../../../ui/input.cjs`),n=require(`../../hover/hover.cjs`),r=require(`../../../ui/input-group.cjs`);let i=require(`react/jsx-runtime`),a=require(`react-hook-form`);function o({form:o,name:s,label:c,placeholder:l,helper:u,id:d,type:f=`text`,icon:p}){let m=d||`input-${String(s)}`;return(0,i.jsx)(a.Controller,{control:o.control,name:s,render:({field:a,fieldState:o})=>(0,i.jsxs)(e.Field,{"data-invalid":o.invalid,children:[(0,i.jsxs)(`div`,{className:`flex items-center gap-2`,children:[c&&(0,i.jsx)(e.FieldLabel,{htmlFor:m,children:c}),u&&(0,i.jsx)(n.Hover,{children:u})]}),p?(0,i.jsxs)(r.InputGroup,{children:[(0,i.jsx)(r.InputGroupAddon,{align:`inline-start`,children:p}),(0,i.jsx)(r.InputGroupInput,{...a,id:m,type:f,"aria-invalid":o.invalid,placeholder:l,autoComplete:`off`})]}):(0,i.jsx)(t.Input,{...a,id:m,type:f,"aria-invalid":o.invalid,placeholder:l,autoComplete:`off`}),o.invalid&&o.error&&(0,i.jsx)(e.FieldError,{errors:[o.error]})]})})}module.exports=o;
@@ -0,0 +1,13 @@
1
+ import { FieldValues, Path } from 'react-hook-form';
2
+ import { FormInputProps } from '../form.component';
3
+ interface InputProps<T extends FieldValues> extends FormInputProps<T> {
4
+ name: Path<T>;
5
+ label?: string;
6
+ placeholder?: string;
7
+ helper?: string;
8
+ id?: string;
9
+ type?: React.HTMLInputTypeAttribute;
10
+ icon?: React.ReactNode;
11
+ }
12
+ export default function TextInput<T extends FieldValues>({ form, name, label, placeholder, helper, id, type, icon }: InputProps<T>): import("react/jsx-runtime").JSX.Element;
13
+ export {};
@@ -0,0 +1,47 @@
1
+ import { Field as e, FieldError as t, FieldLabel as n } from "../../../ui/field.esm";
2
+ import { Input as r } from "../../../ui/input.esm";
3
+ import { Hover as i } from "../../hover/hover.esm";
4
+ import { InputGroup as a, InputGroupAddon as o, InputGroupInput as s } from "../../../ui/input-group.esm";
5
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
6
+ import { Controller as u } from "react-hook-form";
7
+ //#region src/shared/custom/form/inputs/text.input.tsx
8
+ function d({ form: d, name: f, label: p, placeholder: m, helper: h, id: g, type: _ = "text", icon: v }) {
9
+ let y = g || `input-${String(f)}`;
10
+ return /* @__PURE__ */ c(u, {
11
+ control: d.control,
12
+ name: f,
13
+ render: ({ field: u, fieldState: d }) => /* @__PURE__ */ l(e, {
14
+ "data-invalid": d.invalid,
15
+ children: [
16
+ /* @__PURE__ */ l("div", {
17
+ className: "flex items-center gap-2",
18
+ children: [p && /* @__PURE__ */ c(n, {
19
+ htmlFor: y,
20
+ children: p
21
+ }), h && /* @__PURE__ */ c(i, { children: h })]
22
+ }),
23
+ v ? /* @__PURE__ */ l(a, { children: [/* @__PURE__ */ c(o, {
24
+ align: "inline-start",
25
+ children: v
26
+ }), /* @__PURE__ */ c(s, {
27
+ ...u,
28
+ id: y,
29
+ type: _,
30
+ "aria-invalid": d.invalid,
31
+ placeholder: m,
32
+ autoComplete: "off"
33
+ })] }) : /* @__PURE__ */ c(r, {
34
+ ...u,
35
+ id: y,
36
+ type: _,
37
+ "aria-invalid": d.invalid,
38
+ placeholder: m,
39
+ autoComplete: "off"
40
+ }),
41
+ d.invalid && d.error && /* @__PURE__ */ c(t, { errors: [d.error] })
42
+ ]
43
+ })
44
+ });
45
+ }
46
+ //#endregion
47
+ export { d as default };
@@ -0,0 +1 @@
1
+ require(`../../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../../ui/field.cjs`),t=require(`../../hover/hover.cjs`),n=require(`../../../ui/textarea.cjs`);let r=require(`react/jsx-runtime`),i=require(`react-hook-form`);function a({form:a,name:o,label:s,placeholder:c,helper:l,id:u,rows:d=4}){let f=u||`textarea-${String(o)}`;return(0,r.jsx)(i.Controller,{control:a.control,name:o,render:({field:i,fieldState:a})=>(0,r.jsxs)(e.Field,{"data-invalid":a.invalid,children:[(0,r.jsxs)(`div`,{className:`flex items-center gap-2`,children:[s&&(0,r.jsx)(e.FieldLabel,{htmlFor:f,children:s}),l&&(0,r.jsx)(t.Hover,{children:l})]}),(0,r.jsx)(n.Textarea,{...i,id:f,rows:d,"aria-invalid":a.invalid,placeholder:c,autoComplete:`off`}),a.invalid&&a.error&&(0,r.jsx)(e.FieldError,{errors:[a.error]})]})})}module.exports=a;
@@ -0,0 +1,12 @@
1
+ import { FieldValues, Path } from 'react-hook-form';
2
+ import { FormInputProps } from '../form.component';
3
+ interface TextAreaInputProps<T extends FieldValues> extends FormInputProps<T> {
4
+ name: Path<T>;
5
+ label?: string;
6
+ placeholder?: string;
7
+ helper?: string;
8
+ id?: string;
9
+ rows?: number;
10
+ }
11
+ export default function TextAreaInput<T extends FieldValues>({ form, name, label, placeholder, helper, id, rows }: TextAreaInputProps<T>): import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,36 @@
1
+ import { Field as e, FieldError as t, FieldLabel as n } from "../../../ui/field.esm";
2
+ import { Hover as r } from "../../hover/hover.esm";
3
+ import { Textarea as i } from "../../../ui/textarea.esm";
4
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
5
+ import { Controller as s } from "react-hook-form";
6
+ //#region src/shared/custom/form/inputs/textarea.input.tsx
7
+ function c({ form: c, name: l, label: u, placeholder: d, helper: f, id: p, rows: m = 4 }) {
8
+ let h = p || `textarea-${String(l)}`;
9
+ return /* @__PURE__ */ a(s, {
10
+ control: c.control,
11
+ name: l,
12
+ render: ({ field: s, fieldState: c }) => /* @__PURE__ */ o(e, {
13
+ "data-invalid": c.invalid,
14
+ children: [
15
+ /* @__PURE__ */ o("div", {
16
+ className: "flex items-center gap-2",
17
+ children: [u && /* @__PURE__ */ a(n, {
18
+ htmlFor: h,
19
+ children: u
20
+ }), f && /* @__PURE__ */ a(r, { children: f })]
21
+ }),
22
+ /* @__PURE__ */ a(i, {
23
+ ...s,
24
+ id: h,
25
+ rows: m,
26
+ "aria-invalid": c.invalid,
27
+ placeholder: d,
28
+ autoComplete: "off"
29
+ }),
30
+ c.invalid && c.error && /* @__PURE__ */ a(t, { errors: [c.error] })
31
+ ]
32
+ })
33
+ });
34
+ }
35
+ //#endregion
36
+ export { c as default };
@@ -0,0 +1 @@
1
+ const e=require(`../../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../../lib/utils.cjs`),n=require(`../../../ui/dialog.cjs`),r=require(`../../hover/hover.cjs`);let i=require(`react/jsx-runtime`),a=require(`react`);a=e.__toESM(a);function o({trigger:e,title:a,description:o,helper:s,children:c,className:l,open:u,onOpenChange:d}){let f=e?(0,i.jsx)(n.DialogTrigger,{asChild:!0,children:e}):null;return(0,i.jsxs)(n.Dialog,{open:u,onOpenChange:d,children:[f&&(s?(0,i.jsx)(r.Hover,{Trigger:f,children:s}):f),(0,i.jsxs)(n.DialogContent,{className:t.cn(`sm:max-w-2xl bg-card border-border shadow-2xl rounded-(--t-radius-lg) p-0 overflow-hidden flex flex-col animate-in fade-in zoom-in-95 duration-300`,l),children:[(0,i.jsxs)(n.DialogHeader,{className:`gap-1 p-8 pb-4`,children:[(0,i.jsx)(n.DialogTitle,{className:`text-2xl font-semibold tracking-tight text-foreground`,children:a}),o&&(0,i.jsx)(n.DialogDescription,{className:`text-sm text-muted-foreground/70 font-medium`,children:o})]}),(0,i.jsx)(`div`,{className:`relative overflow-y-auto max-h-[calc(90vh-140px)] custom-scrollbar`,children:c})]})]})}module.exports=o;
@@ -0,0 +1,25 @@
1
+ import * as React from "react";
2
+ interface FormDialogLayoutProps {
3
+ /** Botón o elemento que abre el modal (opcional si se usa control externo) */
4
+ trigger?: React.ReactNode;
5
+ /** Título del formulario */
6
+ title: string;
7
+ /** Descripción estática debajo del título (DialogDescription) */
8
+ description?: string;
9
+ /** Texto de ayuda interactivo que aparece al pasar el cursor (Hover/Tooltip) */
10
+ helper?: string;
11
+ /** Formulario u otro contenido interno */
12
+ children: React.ReactNode;
13
+ /** Clase adicional para el contenedor de contenido */
14
+ className?: string;
15
+ /** Control externo del estado abierto (opcional) */
16
+ open?: boolean;
17
+ /** Evento de cambio de estado (opcional) */
18
+ onOpenChange?: (open: boolean) => void;
19
+ }
20
+ /**
21
+ * Layout de formulario en Diálogo (Modal).
22
+ * Proporciona una forma estandarizada de mostrar formularios sin saturar la vista principal.
23
+ */
24
+ export default function FormDialogLayout({ trigger, title, description, helper, children, className, open, onOpenChange }: FormDialogLayoutProps): import("react/jsx-runtime").JSX.Element;
25
+ export {};
@@ -0,0 +1,37 @@
1
+ import { cn as e } from "../../../lib/utils.esm";
2
+ import { Dialog as t, DialogContent as n, DialogDescription as r, DialogHeader as i, DialogTitle as a, DialogTrigger as o } from "../../../ui/dialog.esm";
3
+ import { Hover as s } from "../../hover/hover.esm";
4
+ import { jsx as c, jsxs as l } from "react/jsx-runtime";
5
+ import "react";
6
+ //#region src/shared/custom/form/layout/form-dialog-layout.tsx
7
+ function u({ trigger: u, title: d, description: f, helper: p, children: m, className: h, open: g, onOpenChange: _ }) {
8
+ let v = u ? /* @__PURE__ */ c(o, {
9
+ asChild: !0,
10
+ children: u
11
+ }) : null;
12
+ return /* @__PURE__ */ l(t, {
13
+ open: g,
14
+ onOpenChange: _,
15
+ children: [v && (p ? /* @__PURE__ */ c(s, {
16
+ Trigger: v,
17
+ children: p
18
+ }) : v), /* @__PURE__ */ l(n, {
19
+ className: e("sm:max-w-2xl bg-card border-border shadow-2xl rounded-(--t-radius-lg) p-0 overflow-hidden flex flex-col animate-in fade-in zoom-in-95 duration-300", h),
20
+ children: [/* @__PURE__ */ l(i, {
21
+ className: "gap-1 p-8 pb-4",
22
+ children: [/* @__PURE__ */ c(a, {
23
+ className: "text-2xl font-semibold tracking-tight text-foreground",
24
+ children: d
25
+ }), f && /* @__PURE__ */ c(r, {
26
+ className: "text-sm text-muted-foreground/70 font-medium",
27
+ children: f
28
+ })]
29
+ }), /* @__PURE__ */ c("div", {
30
+ className: "relative overflow-y-auto max-h-[calc(90vh-140px)] custom-scrollbar",
31
+ children: m
32
+ })]
33
+ })]
34
+ });
35
+ }
36
+ //#endregion
37
+ export { u as default };
@@ -0,0 +1 @@
1
+ const e=require(`../../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../../lib/utils.cjs`),n=require(`../../../ui/tabs.cjs`),r=require(`../../layouts/grid.layout.cjs`);let i=require(`react/jsx-runtime`),a=require(`react`);a=e.__toESM(a);let o=require(`lucide-react`);function s({tabs:e,children:s,defaultValue:c,className:l}){let u=c||e[0]?.value,[d,f]=a.useState(u),[p,m]=a.useState(new Set([u])),h=p.size===e.length;return!e||e.length===0?null:(0,i.jsxs)(`div`,{className:t.cn(`flex flex-col`,l),children:[(0,i.jsxs)(n.Tabs,{value:d,onValueChange:e=>{f(e),m(t=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n})},className:`w-full`,children:[(0,i.jsx)(`div`,{className:`px-4 pt-4`,children:(0,i.jsx)(n.TabsList,{className:`w-full h-auto bg-white/[0.03] p-1.5 rounded-2xl border border-white/5 overflow-hidden`,asChild:!0,children:(0,i.jsx)(r.GridLayout,{cols:e.length,gap:0,className:`w-full`,children:e.map(e=>{let r=p.has(e.value),a=d===e.value;return(0,i.jsx)(n.TabsTrigger,{value:e.value,className:t.cn(`relative rounded-xl transition-all duration-300 py-2.5`,`data-[state=active]:bg-white/10 data-[state=active]:text-white data-[state=active]:shadow-lg`,`text-muted-foreground hover:text-white/80`),children:(0,i.jsxs)(`div`,{className:`flex items-center justify-center gap-2`,children:[e.icon,(0,i.jsx)(`span`,{className:`text-xs font-bold tracking-tight`,children:e.label}),r&&(0,i.jsx)(`div`,{className:t.cn(`size-3.5 rounded-full flex items-center justify-center transition-colors`,a?`bg-indigo-500 text-white`:`bg-emerald-500/20 text-emerald-400`),children:(0,i.jsx)(o.Check,{className:`size-2.5 stroke-[3]`})})]})},e.value)})})})}),e.map(e=>(0,i.jsx)(n.TabsContent,{value:e.value,className:`flex flex-col gap-4 p-6 focus-visible:outline-none focus-visible:ring-0 animate-in fade-in slide-in-from-bottom-2 duration-300`,children:e.content},e.value))]}),s&&(0,i.jsx)(`div`,{className:`mx-6 pb-6 pt-2 border-t border-white/5`,children:s({allVisited:h,activeTab:d})})]})}module.exports=s;
@@ -0,0 +1,30 @@
1
+ import * as React from "react";
2
+ export interface FormTabConfig {
3
+ /** Identificador único de la pestaña */
4
+ value: string;
5
+ /** Título que se mostrará en el trigger de la pestaña */
6
+ label: string;
7
+ /** Icono opcional para la cabecera */
8
+ icon?: React.ReactNode;
9
+ /** Contenido interno de la pestaña (los inputs del formulario) */
10
+ content: React.ReactNode;
11
+ }
12
+ interface FormTabLayoutProps {
13
+ /** Configuración de las pestañas a renderizar */
14
+ tabs: FormTabConfig[];
15
+ /** Render prop que recibe el estado de la navegación para inyectar controles adicionales (como el botón submit) */
16
+ children?: (state: {
17
+ allVisited: boolean;
18
+ activeTab: string;
19
+ }) => React.ReactNode;
20
+ /** Pestaña inicialmente activa. Por defecto es la primera del array. */
21
+ defaultValue?: string;
22
+ className?: string;
23
+ }
24
+ /**
25
+ * Layout de formulario con Pestañas.
26
+ * Gestiona el estado de visita de cada pestaña y expone un booleano para bloquear/desbloquear acciones.
27
+ * Utiliza GridLayout para la cabecera de pestañas.
28
+ */
29
+ export default function FormTabLayout({ tabs, children, defaultValue, className }: FormTabLayoutProps): import("react/jsx-runtime").JSX.Element | null;
30
+ export {};
@@ -0,0 +1,69 @@
1
+ import { cn as e } from "../../../lib/utils.esm";
2
+ import { Tabs as t, TabsContent as n, TabsList as r, TabsTrigger as i } from "../../../ui/tabs.esm";
3
+ import { GridLayout as a } from "../../layouts/grid.layout.esm";
4
+ import { jsx as o, jsxs as s } from "react/jsx-runtime";
5
+ import * as c from "react";
6
+ import { Check as l } from "lucide-react";
7
+ //#region src/shared/custom/form/layout/form-tab-layout.tsx
8
+ function u({ tabs: u, children: d, defaultValue: f, className: p }) {
9
+ let m = f || u[0]?.value, [h, g] = c.useState(m), [_, v] = c.useState(new Set([m])), y = _.size === u.length;
10
+ return !u || u.length === 0 ? null : /* @__PURE__ */ s("div", {
11
+ className: e("flex flex-col", p),
12
+ children: [/* @__PURE__ */ s(t, {
13
+ value: h,
14
+ onValueChange: (e) => {
15
+ g(e), v((t) => {
16
+ if (t.has(e)) return t;
17
+ let n = new Set(t);
18
+ return n.add(e), n;
19
+ });
20
+ },
21
+ className: "w-full",
22
+ children: [/* @__PURE__ */ o("div", {
23
+ className: "px-4 pt-4",
24
+ children: /* @__PURE__ */ o(r, {
25
+ className: "w-full h-auto bg-white/[0.03] p-1.5 rounded-2xl border border-white/5 overflow-hidden",
26
+ asChild: !0,
27
+ children: /* @__PURE__ */ o(a, {
28
+ cols: u.length,
29
+ gap: 0,
30
+ className: "w-full",
31
+ children: u.map((t) => {
32
+ let n = _.has(t.value), r = h === t.value;
33
+ return /* @__PURE__ */ o(i, {
34
+ value: t.value,
35
+ className: e("relative rounded-xl transition-all duration-300 py-2.5", "data-[state=active]:bg-white/10 data-[state=active]:text-white data-[state=active]:shadow-lg", "text-muted-foreground hover:text-white/80"),
36
+ children: /* @__PURE__ */ s("div", {
37
+ className: "flex items-center justify-center gap-2",
38
+ children: [
39
+ t.icon,
40
+ /* @__PURE__ */ o("span", {
41
+ className: "text-xs font-bold tracking-tight",
42
+ children: t.label
43
+ }),
44
+ n && /* @__PURE__ */ o("div", {
45
+ className: e("size-3.5 rounded-full flex items-center justify-center transition-colors", r ? "bg-indigo-500 text-white" : "bg-emerald-500/20 text-emerald-400"),
46
+ children: /* @__PURE__ */ o(l, { className: "size-2.5 stroke-[3]" })
47
+ })
48
+ ]
49
+ })
50
+ }, t.value);
51
+ })
52
+ })
53
+ })
54
+ }), u.map((e) => /* @__PURE__ */ o(n, {
55
+ value: e.value,
56
+ className: "flex flex-col gap-4 p-6 focus-visible:outline-none focus-visible:ring-0 animate-in fade-in slide-in-from-bottom-2 duration-300",
57
+ children: e.content
58
+ }, e.value))]
59
+ }), d && /* @__PURE__ */ o("div", {
60
+ className: "mx-6 pb-6 pt-2 border-t border-white/5",
61
+ children: d({
62
+ allVisited: y,
63
+ activeTab: h
64
+ })
65
+ })]
66
+ });
67
+ }
68
+ //#endregion
69
+ export { u as default };
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`}),require(`../../../_virtual/_rolldown/runtime.cjs`);const e=require(`../../ui/tooltip.cjs`);let t=require(`react/jsx-runtime`),n=require(`lucide-react`);function r({children:r,Trigger:i}){return(0,t.jsx)(e.TooltipProvider,{children:(0,t.jsxs)(e.Tooltip,{children:[(0,t.jsx)(e.TooltipTrigger,{asChild:!0,children:i||(0,t.jsx)(`button`,{type:`button`,className:`text-muted-foreground hover:text-foreground transition-colors outline-none`,tabIndex:-1,children:(0,t.jsx)(n.CircleHelp,{className:`w-3.5 h-3.5`})})}),(0,t.jsx)(e.TooltipContent,{children:(0,t.jsx)(`div`,{className:`max-w-[200px] leading-snug`,children:r})})]})})}exports.Hover=r;
@@ -0,0 +1,6 @@
1
+ interface HoverProps {
2
+ children: React.ReactNode;
3
+ Trigger?: React.ReactNode;
4
+ }
5
+ export declare function Hover({ children, Trigger }: HoverProps): import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,20 @@
1
+ import { Tooltip as e, TooltipContent as t, TooltipProvider as n, TooltipTrigger as r } from "../../ui/tooltip.esm";
2
+ import { jsx as i, jsxs as a } from "react/jsx-runtime";
3
+ import { CircleHelp as o } from "lucide-react";
4
+ //#region src/shared/custom/hover/hover.tsx
5
+ function s({ children: s, Trigger: c }) {
6
+ return /* @__PURE__ */ i(n, { children: /* @__PURE__ */ a(e, { children: [/* @__PURE__ */ i(r, {
7
+ asChild: !0,
8
+ children: c || /* @__PURE__ */ i("button", {
9
+ type: "button",
10
+ className: "text-muted-foreground hover:text-foreground transition-colors outline-none",
11
+ tabIndex: -1,
12
+ children: /* @__PURE__ */ i(o, { className: "w-3.5 h-3.5" })
13
+ })
14
+ }), /* @__PURE__ */ i(t, { children: /* @__PURE__ */ i("div", {
15
+ className: "max-w-[200px] leading-snug",
16
+ children: s
17
+ }) })] }) });
18
+ }
19
+ //#endregion
20
+ export { s as Hover };
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});const e=require(`../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../lib/utils.cjs`);let n=require(`react/jsx-runtime`),r=require(`react`);r=e.__toESM(r);function i({icon:e,title:r,description:i,label:a=`Módulo`,actions:o,children:s,className:c}){return(0,n.jsx)(`div`,{className:t.cn(`relative w-full h-[calc(80vh)] bg-background overflow-hidden flex flex-col`,c),children:(0,n.jsx)(`main`,{className:`flex-1 w-full h-full relative z-0`,children:s})})}exports.CanvasViewLayout=i;
@@ -0,0 +1,18 @@
1
+ import { default as React } from 'react';
2
+ import { LucideIcon } from 'lucide-react';
3
+ export interface CanvasViewLayoutProps {
4
+ icon: LucideIcon;
5
+ title: string;
6
+ description: string;
7
+ label?: string;
8
+ actions?: React.ReactNode;
9
+ children: React.ReactNode;
10
+ className?: string;
11
+ }
12
+ /**
13
+ * CanvasViewLayout
14
+ * Layout optimizado para vistas que requieren el 100% del área (como lienzos y grafos).
15
+ * Maximiza el espacio visual y coloca la información de contexto (brief) y acciones
16
+ * en un panel flotante inferior con efecto glassmorphism.
17
+ */
18
+ export declare function CanvasViewLayout({ icon, title, description, label, actions, children, className }: CanvasViewLayoutProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,15 @@
1
+ import { cn as e } from "../../lib/utils.esm";
2
+ import { jsx as t } from "react/jsx-runtime";
3
+ import "react";
4
+ //#region src/shared/custom/layouts/canvas-view.layout.tsx
5
+ function n({ icon: n, title: r, description: i, label: a = "Módulo", actions: o, children: s, className: c }) {
6
+ return /* @__PURE__ */ t("div", {
7
+ className: e("relative w-full h-[calc(80vh)] bg-background overflow-hidden flex flex-col", c),
8
+ children: /* @__PURE__ */ t("main", {
9
+ className: "flex-1 w-full h-full relative z-0",
10
+ children: s
11
+ })
12
+ });
13
+ }
14
+ //#endregion
15
+ export { n as CanvasViewLayout };
@@ -0,0 +1 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../lib/utils.cjs`),n=require(`../../ui/tabs.cjs`);let r=require(`react/jsx-runtime`),i=require(`react`);i=e.__toESM(i);function a({tabs:e,defaultValue:i,className:a}){return!e||e.length===0?null:(0,r.jsxs)(n.Tabs,{defaultValue:i||e[0].value,className:t.cn(`w-full space-y-6 animate-in fade-in duration-500`,a),children:[(0,r.jsx)(n.TabsList,{className:`w-full max-w-md grid p-1 bg-muted/50 rounded-2xl border border-border/40`,style:{gridTemplateColumns:`repeat(${e.length}, minmax(0, 1fr))`},children:e.map(e=>(0,r.jsxs)(n.TabsTrigger,{value:e.value,className:`py-2.5 rounded-xl font-bold flex items-center justify-center gap-2 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground shadow-none data-[state=active]:shadow-md transition-all`,children:[e.icon&&(0,r.jsx)(`span`,{className:`shrink-0`,children:e.icon}),(0,r.jsx)(`span`,{className:`truncate`,children:e.label})]},e.value))}),e.map(e=>(0,r.jsx)(n.TabsContent,{value:e.value,className:`outline-none`,children:e.content},e.value))]})}exports.DetailTabsLayout=a,exports.default=a;
@@ -0,0 +1,27 @@
1
+ import { default as React } from 'react';
2
+ export interface TabDefinition {
3
+ /** Identificador único del tab */
4
+ value: string;
5
+ /** Etiqueta a mostrar */
6
+ label: string;
7
+ /** Icono opcional (lucide-react) */
8
+ icon?: React.ReactNode;
9
+ /** Contenido a renderizar cuando el tab está activo */
10
+ content: React.ReactNode;
11
+ }
12
+ interface DetailTabsLayoutProps {
13
+ /** Lista de tabs a renderizar */
14
+ tabs: TabDefinition[];
15
+ /** Tab seleccionado por defecto (usará el primero si no se provee) */
16
+ defaultValue?: string;
17
+ /** Clases adicionales para el contenedor principal */
18
+ className?: string;
19
+ }
20
+ /**
21
+ * DetailTabsLayout
22
+ *
23
+ * Un componente pre-estilizado para estandarizar las vistas con pestañas
24
+ * dentro de las páginas de detalle (DetailViewLayout).
25
+ */
26
+ export declare function DetailTabsLayout({ tabs, defaultValue, className }: DetailTabsLayoutProps): import("react/jsx-runtime").JSX.Element | null;
27
+ export default DetailTabsLayout;
@@ -0,0 +1,32 @@
1
+ import { cn as e } from "../../lib/utils.esm";
2
+ import { Tabs as t, TabsContent as n, TabsList as r, TabsTrigger as i } from "../../ui/tabs.esm";
3
+ import { jsx as a, jsxs as o } from "react/jsx-runtime";
4
+ import "react";
5
+ //#region src/shared/custom/layouts/detail-tabs.layout.tsx
6
+ function s({ tabs: s, defaultValue: c, className: l }) {
7
+ return !s || s.length === 0 ? null : /* @__PURE__ */ o(t, {
8
+ defaultValue: c || s[0].value,
9
+ className: e("w-full space-y-6 animate-in fade-in duration-500", l),
10
+ children: [/* @__PURE__ */ a(r, {
11
+ className: "w-full max-w-md grid p-1 bg-muted/50 rounded-2xl border border-border/40",
12
+ style: { gridTemplateColumns: `repeat(${s.length}, minmax(0, 1fr))` },
13
+ children: s.map((e) => /* @__PURE__ */ o(i, {
14
+ value: e.value,
15
+ className: "py-2.5 rounded-xl font-bold flex items-center justify-center gap-2 data-[state=active]:bg-primary data-[state=active]:text-primary-foreground shadow-none data-[state=active]:shadow-md transition-all",
16
+ children: [e.icon && /* @__PURE__ */ a("span", {
17
+ className: "shrink-0",
18
+ children: e.icon
19
+ }), /* @__PURE__ */ a("span", {
20
+ className: "truncate",
21
+ children: e.label
22
+ })]
23
+ }, e.value))
24
+ }), s.map((e) => /* @__PURE__ */ a(n, {
25
+ value: e.value,
26
+ className: "outline-none",
27
+ children: e.content
28
+ }, e.value))]
29
+ });
30
+ }
31
+ //#endregion
32
+ export { s as DetailTabsLayout, s as default };
@@ -0,0 +1 @@
1
+ Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:`Module`}});const e=require(`../../../_virtual/_rolldown/runtime.cjs`),t=require(`../../lib/utils.cjs`),n=require(`../actions/back-button.action.cjs`),r=require(`../ui/typography.cjs`);let i=require(`react/jsx-runtime`),a=require(`react`);a=e.__toESM(a);function o({backLabel:e,backTo:a,referenceLabel:o,icon:s,title:c,badge:l,description:u,metaBlock:d,children:f,sidebar:p,className:m}){return(0,i.jsxs)(`div`,{className:t.cn(`max-w-[1200px] mx-auto p-6 space-y-8 animate-in fade-in slide-in-from-bottom-4 duration-700`,m),children:[(e||o)&&(0,i.jsxs)(`nav`,{className:`flex items-center justify-between border-b pb-4 border-border/40`,children:[e?(0,i.jsx)(n.BackButtonAction,{label:e,to:a,className:`hover:bg-accent/10`}):(0,i.jsx)(`div`,{}),o&&(0,i.jsx)(r.Typography,{variant:`extra-small`,className:`font-medium uppercase tracking-tighter`,children:o})]}),(0,i.jsxs)(`div`,{className:`flex flex-col md:flex-row items-center justify-between gap-8 bg-card/30 p-8 rounded-[2.5rem] border border-border/50 backdrop-blur-xl shadow-2xl shadow-primary/5`,children:[(0,i.jsxs)(`div`,{className:`flex flex-col md:flex-row items-center gap-6`,children:[s,(0,i.jsxs)(`div`,{className:`space-y-2 text-center md:text-left`,children:[(0,i.jsxs)(`div`,{className:`flex flex-wrap items-center justify-center md:justify-start gap-3`,children:[(0,i.jsx)(r.Typography,{variant:`h1`,className:`font-black tracking-tight text-3xl md:text-4xl`,children:c}),l]}),typeof u==`string`?(0,i.jsx)(r.Typography,{variant:`small`,className:`text-muted-foreground font-medium block max-w-xl leading-relaxed`,children:u}):u]})]}),d&&(0,i.jsx)(`div`,{className:`flex flex-col items-center md:items-end gap-3 bg-muted/20 p-6 rounded-3xl border border-border/40 backdrop-blur-sm self-stretch md:self-auto justify-center min-w-[200px]`,children:d})]}),p?(0,i.jsxs)(`div`,{className:`grid grid-cols-1 lg:grid-cols-4 gap-8 items-start`,children:[(0,i.jsx)(`div`,{className:`lg:col-span-3 space-y-6 w-full`,children:f}),(0,i.jsx)(`div`,{className:`space-y-6 w-full`,children:p})]}):(0,i.jsx)(`div`,{className:`w-full`,children:f})]})}exports.DetailViewLayout=o,exports.default=o;
@@ -0,0 +1,33 @@
1
+ import { default as React } from 'react';
2
+ interface DetailViewLayoutProps {
3
+ /** Etiqueta del botón de regreso (ej: "Volver a Proyectos") */
4
+ backLabel?: string;
5
+ /** Destino opcional de navegación para retroceder (por defecto -1) */
6
+ backTo?: string | number;
7
+ /** Etiqueta superior derecha (ej: "ID: 4d2b") */
8
+ referenceLabel?: string;
9
+ /** Icono principal de la cabecera */
10
+ icon: React.ReactNode;
11
+ /** Título principal (ej: Nombre del proyecto) */
12
+ title: string;
13
+ /** Elemento Badge junto al título (ej: Tipo de proyecto) */
14
+ badge?: React.ReactNode;
15
+ /** Descripción descriptiva debajo del título */
16
+ description?: React.ReactNode;
17
+ /** Bloque de metadatos o información adicional en el lado derecho de la cabecera */
18
+ metaBlock?: React.ReactNode;
19
+ /** Contenido principal (izquierda si hay sidebar) */
20
+ children: React.ReactNode;
21
+ /** Contenido lateral/acciones (opcional) */
22
+ sidebar?: React.ReactNode;
23
+ className?: string;
24
+ }
25
+ /**
26
+ * DetailViewLayout
27
+ *
28
+ * Layout premium y unificado para pantallas de detalle de entidades (Proyectos, Herramientas, etc.).
29
+ * Centraliza la barra de navegación superior, la tarjeta de cabecera con efecto de cristal (glassmorphism)
30
+ * y una grilla responsive de 2 columnas para contenido y acciones.
31
+ */
32
+ export declare function DetailViewLayout({ backLabel, backTo, referenceLabel, icon, title, badge, description, metaBlock, children, sidebar, className }: DetailViewLayoutProps): import("react/jsx-runtime").JSX.Element;
33
+ export default DetailViewLayout;