@blueprint-ts/core 4.1.0-beta.1 → 4.1.0-beta.3

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 (507) hide show
  1. package/dist/bulkRequests/BulkRequestEvent.enum.d.ts +4 -0
  2. package/dist/bulkRequests/BulkRequestEvent.enum.js +5 -0
  3. package/dist/bulkRequests/BulkRequestSender.d.ts +31 -0
  4. package/dist/bulkRequests/BulkRequestSender.js +161 -0
  5. package/dist/bulkRequests/BulkRequestWrapper.d.ts +15 -0
  6. package/dist/bulkRequests/BulkRequestWrapper.js +50 -0
  7. package/dist/bulkRequests/index.d.ts +5 -0
  8. package/dist/bulkRequests/index.js +5 -0
  9. package/{src/laravel/pagination/contracts/PaginationResponseBodyContract.ts → dist/laravel/pagination/contracts/PaginationResponseBodyContract.d.ts} +4 -4
  10. package/dist/laravel/pagination/contracts/PaginationResponseBodyContract.js +1 -0
  11. package/dist/laravel/pagination/dataDrivers/RequestDriver.d.ts +10 -0
  12. package/dist/laravel/pagination/dataDrivers/RequestDriver.js +18 -0
  13. package/dist/laravel/pagination/index.d.ts +4 -0
  14. package/dist/laravel/pagination/index.js +2 -0
  15. package/dist/laravel/requests/JsonBaseRequest.d.ts +14 -0
  16. package/dist/laravel/requests/JsonBaseRequest.js +15 -0
  17. package/dist/laravel/requests/PaginationJsonBaseRequest.d.ts +8 -0
  18. package/dist/laravel/requests/PaginationJsonBaseRequest.js +13 -0
  19. package/dist/laravel/requests/index.d.ts +7 -0
  20. package/dist/laravel/requests/index.js +5 -0
  21. package/dist/laravel/requests/responses/JsonResponse.d.ts +5 -0
  22. package/dist/laravel/requests/responses/JsonResponse.js +6 -0
  23. package/dist/laravel/requests/responses/PaginationResponse.d.ts +7 -0
  24. package/dist/laravel/requests/responses/PaginationResponse.js +9 -0
  25. package/dist/pagination/BasePaginator.d.ts +19 -0
  26. package/dist/pagination/BasePaginator.js +65 -0
  27. package/dist/pagination/InfiniteScroller.d.ts +6 -0
  28. package/dist/pagination/InfiniteScroller.js +17 -0
  29. package/dist/pagination/PageAwarePaginator.d.ts +32 -0
  30. package/dist/pagination/PageAwarePaginator.js +86 -0
  31. package/dist/pagination/StatePaginator.d.ts +25 -0
  32. package/dist/pagination/StatePaginator.js +55 -0
  33. package/dist/pagination/contracts/BaseViewDriverContract.d.ts +6 -0
  34. package/dist/pagination/contracts/BaseViewDriverContract.js +1 -0
  35. package/{src/pagination/contracts/BaseViewDriverFactoryContract.ts → dist/pagination/contracts/BaseViewDriverFactoryContract.d.ts} +2 -3
  36. package/dist/pagination/contracts/BaseViewDriverFactoryContract.js +1 -0
  37. package/dist/pagination/contracts/PaginateableRequestContract.d.ts +4 -0
  38. package/dist/pagination/contracts/PaginateableRequestContract.js +1 -0
  39. package/dist/pagination/contracts/PaginationDataDriverContract.d.ts +4 -0
  40. package/dist/pagination/contracts/PaginationDataDriverContract.js +1 -0
  41. package/{src/pagination/contracts/PaginationResponseContract.ts → dist/pagination/contracts/PaginationResponseContract.d.ts} +3 -5
  42. package/dist/pagination/contracts/PaginationResponseContract.js +1 -0
  43. package/{src/pagination/contracts/PaginatorLoadDataOptions.ts → dist/pagination/contracts/PaginatorLoadDataOptions.d.ts} +2 -2
  44. package/dist/pagination/contracts/PaginatorLoadDataOptions.js +1 -0
  45. package/{src/pagination/contracts/StatePaginationDataDriverContract.ts → dist/pagination/contracts/StatePaginationDataDriverContract.d.ts} +2 -3
  46. package/dist/pagination/contracts/StatePaginationDataDriverContract.js +1 -0
  47. package/dist/pagination/contracts/ViewDriverContract.d.ts +9 -0
  48. package/dist/pagination/contracts/ViewDriverContract.js +1 -0
  49. package/dist/pagination/contracts/ViewDriverFactoryContract.d.ts +4 -0
  50. package/dist/pagination/contracts/ViewDriverFactoryContract.js +1 -0
  51. package/dist/pagination/dataDrivers/ArrayDriver.d.ts +9 -0
  52. package/dist/pagination/dataDrivers/ArrayDriver.js +20 -0
  53. package/dist/pagination/dtos/PaginationDataDto.d.ts +7 -0
  54. package/dist/pagination/dtos/PaginationDataDto.js +12 -0
  55. package/dist/pagination/dtos/StatePaginationDataDto.d.ts +7 -0
  56. package/dist/pagination/dtos/StatePaginationDataDto.js +13 -0
  57. package/dist/pagination/factories/VueBaseViewDriverFactory.d.ts +5 -0
  58. package/dist/pagination/factories/VueBaseViewDriverFactory.js +6 -0
  59. package/dist/pagination/factories/VuePaginationDriverFactory.d.ts +5 -0
  60. package/dist/pagination/factories/VuePaginationDriverFactory.js +6 -0
  61. package/dist/pagination/frontendDrivers/VueBaseViewDriver.d.ts +11 -0
  62. package/dist/pagination/frontendDrivers/VueBaseViewDriver.js +19 -0
  63. package/dist/pagination/frontendDrivers/VuePaginationDriver.d.ts +21 -0
  64. package/dist/pagination/frontendDrivers/VuePaginationDriver.js +41 -0
  65. package/dist/pagination/index.d.ts +22 -0
  66. package/dist/pagination/index.js +13 -0
  67. package/dist/persistenceDrivers/LocalStorageDriver.d.ts +9 -0
  68. package/dist/persistenceDrivers/LocalStorageDriver.js +18 -0
  69. package/dist/persistenceDrivers/NonPersistentDriver.d.ts +7 -0
  70. package/dist/persistenceDrivers/NonPersistentDriver.js +8 -0
  71. package/dist/persistenceDrivers/SessionStorageDriver.d.ts +9 -0
  72. package/dist/persistenceDrivers/SessionStorageDriver.js +18 -0
  73. package/dist/persistenceDrivers/index.d.ts +6 -0
  74. package/dist/persistenceDrivers/index.js +4 -0
  75. package/dist/persistenceDrivers/types/PersistenceDriver.d.ts +5 -0
  76. package/dist/persistenceDrivers/types/PersistenceDriver.js +1 -0
  77. package/dist/requests/BaseRequest.d.ts +62 -0
  78. package/dist/requests/BaseRequest.js +224 -0
  79. package/dist/requests/ErrorHandler.d.ts +11 -0
  80. package/dist/requests/ErrorHandler.js +127 -0
  81. package/dist/requests/RequestConcurrencyMode.enum.d.ts +6 -0
  82. package/dist/requests/RequestConcurrencyMode.enum.js +7 -0
  83. package/dist/requests/RequestErrorRouter.d.ts +38 -0
  84. package/dist/requests/RequestErrorRouter.js +38 -0
  85. package/dist/requests/RequestEvents.enum.d.ts +4 -0
  86. package/dist/requests/RequestEvents.enum.js +5 -0
  87. package/dist/requests/RequestMethod.enum.d.ts +8 -0
  88. package/dist/requests/RequestMethod.enum.js +9 -0
  89. package/dist/requests/bodies/BinaryBody.d.ts +10 -0
  90. package/dist/requests/bodies/BinaryBody.js +22 -0
  91. package/dist/requests/bodies/FormDataBody.d.ts +14 -0
  92. package/dist/requests/bodies/FormDataBody.js +60 -0
  93. package/dist/requests/bodies/JsonBody.d.ts +8 -0
  94. package/dist/requests/bodies/JsonBody.js +13 -0
  95. package/{src/requests/contracts/AbortableRequestContract.ts → dist/requests/contracts/AbortableRequestContract.d.ts} +1 -1
  96. package/dist/requests/contracts/AbortableRequestContract.js +1 -0
  97. package/dist/requests/contracts/BaseRequestContract.d.ts +23 -0
  98. package/dist/requests/contracts/BaseRequestContract.js +1 -0
  99. package/dist/requests/contracts/BodyContract.d.ts +6 -0
  100. package/dist/requests/contracts/BodyContract.js +1 -0
  101. package/dist/requests/contracts/BodyFactoryContract.d.ts +4 -0
  102. package/dist/requests/contracts/BodyFactoryContract.js +1 -0
  103. package/dist/requests/contracts/DriverConfigContract.d.ts +8 -0
  104. package/dist/requests/contracts/DriverConfigContract.js +1 -0
  105. package/dist/requests/contracts/HeadersContract.d.ts +7 -0
  106. package/dist/requests/contracts/HeadersContract.js +1 -0
  107. package/dist/requests/contracts/RequestDriverContract.d.ts +8 -0
  108. package/dist/requests/contracts/RequestDriverContract.js +1 -0
  109. package/dist/requests/contracts/RequestLoaderContract.d.ts +4 -0
  110. package/dist/requests/contracts/RequestLoaderContract.js +1 -0
  111. package/{src/requests/contracts/RequestLoaderFactoryContract.ts → dist/requests/contracts/RequestLoaderFactoryContract.d.ts} +2 -3
  112. package/dist/requests/contracts/RequestLoaderFactoryContract.js +1 -0
  113. package/dist/requests/contracts/ResponseContract.d.ts +5 -0
  114. package/dist/requests/contracts/ResponseContract.js +1 -0
  115. package/dist/requests/drivers/contracts/ResponseHandlerContract.d.ts +9 -0
  116. package/dist/requests/drivers/contracts/ResponseHandlerContract.js +1 -0
  117. package/dist/requests/drivers/fetch/FetchDriver.d.ts +26 -0
  118. package/dist/requests/drivers/fetch/FetchDriver.js +73 -0
  119. package/dist/requests/drivers/fetch/FetchResponse.d.ts +12 -0
  120. package/dist/requests/drivers/fetch/FetchResponse.js +38 -0
  121. package/dist/requests/drivers/xhr/XMLHttpRequestDriver.d.ts +13 -0
  122. package/dist/requests/drivers/xhr/XMLHttpRequestDriver.js +107 -0
  123. package/dist/requests/drivers/xhr/XMLHttpRequestResponse.d.ts +17 -0
  124. package/dist/requests/drivers/xhr/XMLHttpRequestResponse.js +84 -0
  125. package/dist/requests/exceptions/BadGatewayException.d.ts +3 -0
  126. package/dist/requests/exceptions/BadGatewayException.js +3 -0
  127. package/dist/requests/exceptions/BadRequestException.d.ts +3 -0
  128. package/dist/requests/exceptions/BadRequestException.js +3 -0
  129. package/dist/requests/exceptions/ConflictException.d.ts +3 -0
  130. package/dist/requests/exceptions/ConflictException.js +3 -0
  131. package/dist/requests/exceptions/ForbiddenException.d.ts +3 -0
  132. package/dist/requests/exceptions/ForbiddenException.js +3 -0
  133. package/dist/requests/exceptions/GatewayTimeoutException.d.ts +3 -0
  134. package/dist/requests/exceptions/GatewayTimeoutException.js +3 -0
  135. package/dist/requests/exceptions/GoneException.d.ts +3 -0
  136. package/dist/requests/exceptions/GoneException.js +3 -0
  137. package/dist/requests/exceptions/InvalidJsonException.d.ts +7 -0
  138. package/dist/requests/exceptions/InvalidJsonException.js +10 -0
  139. package/dist/requests/exceptions/LockedException.d.ts +3 -0
  140. package/dist/requests/exceptions/LockedException.js +3 -0
  141. package/dist/requests/exceptions/MethodNotAllowedException.d.ts +3 -0
  142. package/dist/requests/exceptions/MethodNotAllowedException.js +3 -0
  143. package/dist/requests/exceptions/NoResponseReceivedException.d.ts +3 -0
  144. package/{src/requests/exceptions/NoResponseReceivedException.ts → dist/requests/exceptions/NoResponseReceivedException.js} +3 -3
  145. package/dist/requests/exceptions/NotFoundException.d.ts +3 -0
  146. package/dist/requests/exceptions/NotFoundException.js +3 -0
  147. package/dist/requests/exceptions/NotImplementedException.d.ts +3 -0
  148. package/dist/requests/exceptions/NotImplementedException.js +3 -0
  149. package/dist/requests/exceptions/PageExpiredException.d.ts +3 -0
  150. package/dist/requests/exceptions/PageExpiredException.js +3 -0
  151. package/dist/requests/exceptions/PayloadTooLargeException.d.ts +3 -0
  152. package/dist/requests/exceptions/PayloadTooLargeException.js +3 -0
  153. package/dist/requests/exceptions/PreconditionFailedException.d.ts +3 -0
  154. package/dist/requests/exceptions/PreconditionFailedException.js +3 -0
  155. package/dist/requests/exceptions/RequestTimeoutException.d.ts +3 -0
  156. package/dist/requests/exceptions/RequestTimeoutException.js +3 -0
  157. package/dist/requests/exceptions/ResponseBodyException.d.ts +7 -0
  158. package/dist/requests/exceptions/ResponseBodyException.js +10 -0
  159. package/dist/requests/exceptions/ResponseException.d.ts +6 -0
  160. package/dist/requests/exceptions/ResponseException.js +9 -0
  161. package/dist/requests/exceptions/ServerErrorException.d.ts +3 -0
  162. package/dist/requests/exceptions/ServerErrorException.js +3 -0
  163. package/dist/requests/exceptions/ServiceUnavailableException.d.ts +3 -0
  164. package/dist/requests/exceptions/ServiceUnavailableException.js +3 -0
  165. package/dist/requests/exceptions/StaleResponseException.d.ts +5 -0
  166. package/dist/requests/exceptions/StaleResponseException.js +10 -0
  167. package/dist/requests/exceptions/TooManyRequestsException.d.ts +3 -0
  168. package/dist/requests/exceptions/TooManyRequestsException.js +3 -0
  169. package/dist/requests/exceptions/UnauthorizedException.d.ts +3 -0
  170. package/dist/requests/exceptions/UnauthorizedException.js +3 -0
  171. package/dist/requests/exceptions/UnsupportedMediaTypeException.d.ts +3 -0
  172. package/dist/requests/exceptions/UnsupportedMediaTypeException.js +3 -0
  173. package/dist/requests/exceptions/ValidationException.d.ts +3 -0
  174. package/dist/requests/exceptions/ValidationException.js +3 -0
  175. package/dist/requests/exceptions/index.d.ts +25 -0
  176. package/dist/requests/exceptions/index.js +25 -0
  177. package/dist/requests/factories/BinaryBodyFactory.d.ts +8 -0
  178. package/dist/requests/factories/BinaryBodyFactory.js +9 -0
  179. package/dist/requests/factories/FormDataFactory.d.ts +12 -0
  180. package/dist/requests/factories/FormDataFactory.js +6 -0
  181. package/dist/requests/factories/JsonBodyFactory.d.ts +5 -0
  182. package/dist/requests/factories/JsonBodyFactory.js +6 -0
  183. package/dist/requests/index.d.ts +31 -0
  184. package/dist/requests/index.js +19 -0
  185. package/dist/requests/responses/BaseResponse.d.ts +14 -0
  186. package/dist/requests/responses/BaseResponse.js +36 -0
  187. package/dist/requests/responses/BlobResponse.d.ts +7 -0
  188. package/dist/requests/responses/BlobResponse.js +16 -0
  189. package/dist/requests/responses/JsonResponse.d.ts +5 -0
  190. package/dist/requests/responses/JsonResponse.js +12 -0
  191. package/dist/requests/responses/PlainTextResponse.d.ts +5 -0
  192. package/dist/requests/responses/PlainTextResponse.js +12 -0
  193. package/{src/requests/types/RequestConcurrencyOptions.ts → dist/requests/types/RequestConcurrencyOptions.d.ts} +4 -5
  194. package/dist/requests/types/RequestConcurrencyOptions.js +1 -0
  195. package/dist/requests/types/RequestUploadProgress.d.ts +6 -0
  196. package/dist/requests/types/RequestUploadProgress.js +1 -0
  197. package/dist/support/DeferredPromise.d.ts +37 -0
  198. package/dist/support/DeferredPromise.js +55 -0
  199. package/dist/support/helpers.d.ts +5 -0
  200. package/dist/support/helpers.js +69 -0
  201. package/{src/support/index.ts → dist/support/index.d.ts} +3 -4
  202. package/dist/support/index.js +3 -0
  203. package/dist/vue/composables/useConfirmDialog.d.ts +20 -0
  204. package/dist/vue/composables/useConfirmDialog.js +52 -0
  205. package/dist/vue/composables/useGlobalCheckbox.d.ts +13 -0
  206. package/dist/vue/composables/useGlobalCheckbox.js +123 -0
  207. package/dist/vue/composables/useIsEmpty.d.ts +4 -0
  208. package/dist/vue/composables/useIsEmpty.js +27 -0
  209. package/dist/vue/composables/useIsOpen.d.ts +5 -0
  210. package/dist/vue/composables/useIsOpen.js +25 -0
  211. package/dist/vue/composables/useIsOpenFromVar.d.ts +6 -0
  212. package/dist/vue/composables/useIsOpenFromVar.js +45 -0
  213. package/dist/vue/composables/useModelWrapper.d.ts +9 -0
  214. package/dist/vue/composables/useModelWrapper.js +18 -0
  215. package/dist/vue/composables/useOnOpen.d.ts +7 -0
  216. package/dist/vue/composables/useOnOpen.js +25 -0
  217. package/{src/vue/contracts/ModelValueOptions.ts → dist/vue/contracts/ModelValueOptions.d.ts} +1 -1
  218. package/dist/vue/contracts/ModelValueOptions.js +1 -0
  219. package/dist/vue/contracts/ModelValueProps.d.ts +3 -0
  220. package/dist/vue/contracts/ModelValueProps.js +1 -0
  221. package/dist/vue/forms/BaseForm.d.ts +162 -0
  222. package/dist/vue/forms/BaseForm.js +997 -0
  223. package/dist/vue/forms/PropertyAwareArray.d.ts +53 -0
  224. package/dist/vue/forms/PropertyAwareArray.js +54 -0
  225. package/{src/vue/forms/index.ts → dist/vue/forms/index.d.ts} +9 -11
  226. package/dist/vue/forms/index.js +6 -0
  227. package/dist/vue/forms/types/PersistedForm.d.ts +6 -0
  228. package/dist/vue/forms/types/PersistedForm.js +1 -0
  229. package/dist/vue/forms/validation/ValidationMode.enum.d.ts +11 -0
  230. package/dist/vue/forms/validation/ValidationMode.enum.js +14 -0
  231. package/dist/vue/forms/validation/index.d.ts +12 -0
  232. package/dist/vue/forms/validation/index.js +9 -0
  233. package/dist/vue/forms/validation/rules/BaseRule.d.ts +5 -0
  234. package/dist/vue/forms/validation/rules/BaseRule.js +5 -0
  235. package/dist/vue/forms/validation/rules/ConfirmedRule.d.ts +10 -0
  236. package/dist/vue/forms/validation/rules/ConfirmedRule.js +26 -0
  237. package/dist/vue/forms/validation/rules/EmailRule.d.ts +7 -0
  238. package/dist/vue/forms/validation/rules/EmailRule.js +19 -0
  239. package/dist/vue/forms/validation/rules/JsonRule.d.ts +7 -0
  240. package/dist/vue/forms/validation/rules/JsonRule.js +25 -0
  241. package/dist/vue/forms/validation/rules/MinRule.d.ts +26 -0
  242. package/dist/vue/forms/validation/rules/MinRule.js +52 -0
  243. package/dist/vue/forms/validation/rules/RequiredRule.d.ts +7 -0
  244. package/dist/vue/forms/validation/rules/RequiredRule.js +16 -0
  245. package/dist/vue/forms/validation/rules/UrlRule.d.ts +7 -0
  246. package/dist/vue/forms/validation/rules/UrlRule.js +22 -0
  247. package/{src/vue/forms/validation/types/BidirectionalRule.ts → dist/vue/forms/validation/types/BidirectionalRule.d.ts} +4 -4
  248. package/dist/vue/forms/validation/types/BidirectionalRule.js +1 -0
  249. package/dist/vue/forms/validation/types/ValidationRules.d.ts +11 -0
  250. package/dist/vue/forms/validation/types/ValidationRules.js +1 -0
  251. package/dist/vue/index.d.ts +11 -0
  252. package/dist/vue/index.js +10 -0
  253. package/dist/vue/requests/factories/VueRequestLoaderFactory.d.ts +6 -0
  254. package/dist/vue/requests/factories/VueRequestLoaderFactory.js +6 -0
  255. package/{src/vue/requests/index.ts → dist/vue/requests/index.d.ts} +4 -5
  256. package/dist/vue/requests/index.js +4 -0
  257. package/dist/vue/requests/loaders/VueRequestBatchLoader.d.ts +12 -0
  258. package/dist/vue/requests/loaders/VueRequestBatchLoader.js +29 -0
  259. package/dist/vue/requests/loaders/VueRequestLoader.d.ts +8 -0
  260. package/dist/vue/requests/loaders/VueRequestLoader.js +12 -0
  261. package/dist/vue/router/routeResourceBinding/RouteResourceBoundView.d.ts +57 -0
  262. package/dist/vue/router/routeResourceBinding/RouteResourceBoundView.js +135 -0
  263. package/dist/vue/router/routeResourceBinding/RouteResourceRequestResolver.d.ts +6 -0
  264. package/dist/vue/router/routeResourceBinding/RouteResourceRequestResolver.js +20 -0
  265. package/dist/vue/router/routeResourceBinding/defineRoute.d.ts +23 -0
  266. package/dist/vue/router/routeResourceBinding/defineRoute.js +42 -0
  267. package/dist/vue/router/routeResourceBinding/index.d.ts +8 -0
  268. package/dist/vue/router/routeResourceBinding/index.js +6 -0
  269. package/dist/vue/router/routeResourceBinding/installRouteInjection.d.ts +14 -0
  270. package/dist/vue/router/routeResourceBinding/installRouteInjection.js +133 -0
  271. package/dist/vue/router/routeResourceBinding/types.d.ts +55 -0
  272. package/dist/vue/router/routeResourceBinding/types.js +1 -0
  273. package/dist/vue/router/routeResourceBinding/useRouteResource.d.ts +8 -0
  274. package/dist/vue/router/routeResourceBinding/useRouteResource.js +29 -0
  275. package/dist/vue/state/State.d.ts +75 -0
  276. package/dist/vue/state/State.js +267 -0
  277. package/dist/vue/state/index.d.ts +2 -0
  278. package/dist/vue/state/index.js +2 -0
  279. package/package.json +81 -23
  280. package/.editorconfig +0 -508
  281. package/.eslintrc.cjs +0 -15
  282. package/.prettierrc.json +0 -8
  283. package/CHANGELOG.md +0 -213
  284. package/docker-compose.yaml +0 -8
  285. package/docs/.vitepress/config.ts +0 -124
  286. package/docs/index.md +0 -13
  287. package/docs/laravel/pagination.md +0 -67
  288. package/docs/laravel/requests.md +0 -62
  289. package/docs/services/pagination/index.md +0 -46
  290. package/docs/services/pagination/infinite-scroller.md +0 -20
  291. package/docs/services/pagination/page-aware.md +0 -51
  292. package/docs/services/pagination/state-pagination.md +0 -77
  293. package/docs/services/pagination/updating-rows.md +0 -52
  294. package/docs/services/persistence/index.md +0 -46
  295. package/docs/services/requests/abort-requests.md +0 -29
  296. package/docs/services/requests/bulk-requests.md +0 -70
  297. package/docs/services/requests/concurrency.md +0 -58
  298. package/docs/services/requests/drivers.md +0 -115
  299. package/docs/services/requests/error-handling.md +0 -153
  300. package/docs/services/requests/events.md +0 -53
  301. package/docs/services/requests/file-uploads.md +0 -105
  302. package/docs/services/requests/getting-started.md +0 -201
  303. package/docs/services/requests/headers.md +0 -40
  304. package/docs/services/requests/loading.md +0 -63
  305. package/docs/services/requests/request-bodies.md +0 -61
  306. package/docs/services/requests/responses.md +0 -34
  307. package/docs/services/support/deferred-promise.md +0 -63
  308. package/docs/services/support/helpers.md +0 -77
  309. package/docs/services/support/index.md +0 -6
  310. package/docs/upgrading/v1-to-v2.md +0 -64
  311. package/docs/upgrading/v2-to-v3.md +0 -52
  312. package/docs/upgrading/v3-to-v4.md +0 -214
  313. package/docs/upgrading.md +0 -0
  314. package/docs/vue/composables/use-confirm-dialog.md +0 -96
  315. package/docs/vue/composables/use-global-checkbox.md +0 -73
  316. package/docs/vue/composables/use-is-empty.md +0 -26
  317. package/docs/vue/composables/use-is-open-from-var.md +0 -32
  318. package/docs/vue/composables/use-is-open.md +0 -28
  319. package/docs/vue/composables/use-model-wrapper.md +0 -29
  320. package/docs/vue/composables/use-on-open.md +0 -26
  321. package/docs/vue/forms/arrays.md +0 -102
  322. package/docs/vue/forms/errors.md +0 -52
  323. package/docs/vue/forms/index.md +0 -99
  324. package/docs/vue/forms/payloads.md +0 -99
  325. package/docs/vue/forms/persistence.md +0 -19
  326. package/docs/vue/forms/state-and-properties.md +0 -26
  327. package/docs/vue/forms/utilities.md +0 -27
  328. package/docs/vue/forms/validation.md +0 -189
  329. package/docs/vue/requests/loading.md +0 -51
  330. package/docs/vue/router/route-resource-binding.md +0 -240
  331. package/docs/vue/state.md +0 -309
  332. package/env.d.ts +0 -1
  333. package/eslint.config.js +0 -15
  334. package/release-tool.json +0 -26
  335. package/src/bulkRequests/BulkRequestEvent.enum.ts +0 -4
  336. package/src/bulkRequests/BulkRequestSender.ts +0 -196
  337. package/src/bulkRequests/BulkRequestWrapper.ts +0 -49
  338. package/src/bulkRequests/index.ts +0 -6
  339. package/src/laravel/pagination/dataDrivers/RequestDriver.ts +0 -30
  340. package/src/laravel/pagination/index.ts +0 -6
  341. package/src/laravel/requests/JsonBaseRequest.ts +0 -35
  342. package/src/laravel/requests/PaginationJsonBaseRequest.ts +0 -29
  343. package/src/laravel/requests/index.ts +0 -9
  344. package/src/laravel/requests/responses/JsonResponse.ts +0 -8
  345. package/src/laravel/requests/responses/PaginationResponse.ts +0 -16
  346. package/src/pagination/BasePaginator.ts +0 -94
  347. package/src/pagination/InfiniteScroller.ts +0 -22
  348. package/src/pagination/PageAwarePaginator.ts +0 -132
  349. package/src/pagination/StatePaginator.ts +0 -86
  350. package/src/pagination/contracts/BaseViewDriverContract.ts +0 -6
  351. package/src/pagination/contracts/PaginateableRequestContract.ts +0 -13
  352. package/src/pagination/contracts/PaginationDataDriverContract.ts +0 -5
  353. package/src/pagination/contracts/ViewDriverContract.ts +0 -10
  354. package/src/pagination/contracts/ViewDriverFactoryContract.ts +0 -5
  355. package/src/pagination/dataDrivers/ArrayDriver.ts +0 -28
  356. package/src/pagination/dtos/PaginationDataDto.ts +0 -14
  357. package/src/pagination/dtos/StatePaginationDataDto.ts +0 -19
  358. package/src/pagination/factories/VueBaseViewDriverFactory.ts +0 -9
  359. package/src/pagination/factories/VuePaginationDriverFactory.ts +0 -9
  360. package/src/pagination/frontendDrivers/VueBaseViewDriver.ts +0 -28
  361. package/src/pagination/frontendDrivers/VuePaginationDriver.ts +0 -61
  362. package/src/pagination/index.ts +0 -46
  363. package/src/persistenceDrivers/LocalStorageDriver.ts +0 -22
  364. package/src/persistenceDrivers/NonPersistentDriver.ts +0 -12
  365. package/src/persistenceDrivers/SessionStorageDriver.ts +0 -22
  366. package/src/persistenceDrivers/index.ts +0 -8
  367. package/src/persistenceDrivers/types/PersistenceDriver.ts +0 -5
  368. package/src/requests/BaseRequest.ts +0 -321
  369. package/src/requests/ErrorHandler.ts +0 -144
  370. package/src/requests/RequestConcurrencyMode.enum.ts +0 -6
  371. package/src/requests/RequestErrorRouter.ts +0 -89
  372. package/src/requests/RequestEvents.enum.ts +0 -4
  373. package/src/requests/RequestMethod.enum.ts +0 -8
  374. package/src/requests/bodies/FormDataBody.ts +0 -81
  375. package/src/requests/bodies/JsonBody.ts +0 -16
  376. package/src/requests/contracts/BaseRequestContract.ts +0 -39
  377. package/src/requests/contracts/BodyContract.ts +0 -7
  378. package/src/requests/contracts/BodyFactoryContract.ts +0 -5
  379. package/src/requests/contracts/DriverConfigContract.ts +0 -9
  380. package/src/requests/contracts/HeadersContract.ts +0 -5
  381. package/src/requests/contracts/RequestDriverContract.ts +0 -15
  382. package/src/requests/contracts/RequestLoaderContract.ts +0 -5
  383. package/src/requests/contracts/ResponseContract.ts +0 -7
  384. package/src/requests/drivers/contracts/ResponseHandlerContract.ts +0 -10
  385. package/src/requests/drivers/fetch/FetchDriver.ts +0 -115
  386. package/src/requests/drivers/fetch/FetchResponse.ts +0 -30
  387. package/src/requests/drivers/xhr/XMLHttpRequestDriver.ts +0 -138
  388. package/src/requests/drivers/xhr/XMLHttpRequestResponse.ts +0 -95
  389. package/src/requests/exceptions/BadGatewayException.ts +0 -3
  390. package/src/requests/exceptions/BadRequestException.ts +0 -3
  391. package/src/requests/exceptions/ConflictException.ts +0 -3
  392. package/src/requests/exceptions/ForbiddenException.ts +0 -3
  393. package/src/requests/exceptions/GatewayTimeoutException.ts +0 -3
  394. package/src/requests/exceptions/GoneException.ts +0 -3
  395. package/src/requests/exceptions/InvalidJsonException.ts +0 -15
  396. package/src/requests/exceptions/LockedException.ts +0 -3
  397. package/src/requests/exceptions/MethodNotAllowedException.ts +0 -3
  398. package/src/requests/exceptions/NotFoundException.ts +0 -3
  399. package/src/requests/exceptions/NotImplementedException.ts +0 -3
  400. package/src/requests/exceptions/PageExpiredException.ts +0 -3
  401. package/src/requests/exceptions/PayloadTooLargeException.ts +0 -3
  402. package/src/requests/exceptions/PreconditionFailedException.ts +0 -3
  403. package/src/requests/exceptions/RequestTimeoutException.ts +0 -3
  404. package/src/requests/exceptions/ResponseBodyException.ts +0 -15
  405. package/src/requests/exceptions/ResponseException.ts +0 -11
  406. package/src/requests/exceptions/ServerErrorException.ts +0 -3
  407. package/src/requests/exceptions/ServiceUnavailableException.ts +0 -3
  408. package/src/requests/exceptions/StaleResponseException.ts +0 -13
  409. package/src/requests/exceptions/TooManyRequestsException.ts +0 -3
  410. package/src/requests/exceptions/UnauthorizedException.ts +0 -3
  411. package/src/requests/exceptions/UnsupportedMediaTypeException.ts +0 -3
  412. package/src/requests/exceptions/ValidationException.ts +0 -3
  413. package/src/requests/exceptions/index.ts +0 -51
  414. package/src/requests/factories/FormDataFactory.ts +0 -17
  415. package/src/requests/factories/JsonBodyFactory.ts +0 -9
  416. package/src/requests/index.ts +0 -61
  417. package/src/requests/responses/BaseResponse.ts +0 -41
  418. package/src/requests/responses/BlobResponse.ts +0 -19
  419. package/src/requests/responses/JsonResponse.ts +0 -15
  420. package/src/requests/responses/PlainTextResponse.ts +0 -15
  421. package/src/requests/types/RequestUploadProgress.ts +0 -6
  422. package/src/support/DeferredPromise.ts +0 -67
  423. package/src/support/helpers.ts +0 -78
  424. package/src/vue/composables/useConfirmDialog.ts +0 -63
  425. package/src/vue/composables/useGlobalCheckbox.ts +0 -145
  426. package/src/vue/composables/useIsEmpty.ts +0 -34
  427. package/src/vue/composables/useIsOpen.ts +0 -37
  428. package/src/vue/composables/useIsOpenFromVar.ts +0 -61
  429. package/src/vue/composables/useModelWrapper.ts +0 -27
  430. package/src/vue/composables/useOnOpen.ts +0 -34
  431. package/src/vue/contracts/ModelValueProps.ts +0 -3
  432. package/src/vue/forms/BaseForm.ts +0 -1192
  433. package/src/vue/forms/PropertyAwareArray.ts +0 -81
  434. package/src/vue/forms/types/PersistedForm.ts +0 -6
  435. package/src/vue/forms/validation/ValidationMode.enum.ts +0 -14
  436. package/src/vue/forms/validation/index.ts +0 -15
  437. package/src/vue/forms/validation/rules/BaseRule.ts +0 -7
  438. package/src/vue/forms/validation/rules/ConfirmedRule.ts +0 -39
  439. package/src/vue/forms/validation/rules/EmailRule.ts +0 -23
  440. package/src/vue/forms/validation/rules/JsonRule.ts +0 -28
  441. package/src/vue/forms/validation/rules/MinRule.ts +0 -61
  442. package/src/vue/forms/validation/rules/RequiredRule.ts +0 -19
  443. package/src/vue/forms/validation/rules/UrlRule.ts +0 -24
  444. package/src/vue/forms/validation/types/ValidationRules.ts +0 -15
  445. package/src/vue/index.ts +0 -14
  446. package/src/vue/requests/factories/VueRequestLoaderFactory.ts +0 -10
  447. package/src/vue/requests/loaders/VueRequestBatchLoader.ts +0 -35
  448. package/src/vue/requests/loaders/VueRequestLoader.ts +0 -18
  449. package/src/vue/router/routeResourceBinding/RouteResourceBoundView.ts +0 -145
  450. package/src/vue/router/routeResourceBinding/RouteResourceRequestResolver.ts +0 -11
  451. package/src/vue/router/routeResourceBinding/defineRoute.ts +0 -59
  452. package/src/vue/router/routeResourceBinding/index.ts +0 -11
  453. package/src/vue/router/routeResourceBinding/installRouteInjection.ts +0 -164
  454. package/src/vue/router/routeResourceBinding/types.ts +0 -53
  455. package/src/vue/router/routeResourceBinding/useRouteResource.ts +0 -24
  456. package/src/vue/state/State.ts +0 -380
  457. package/src/vue/state/index.ts +0 -3
  458. package/tests/service/bulkRequests/BulkRequestSender.test.ts +0 -76
  459. package/tests/service/bulkRequests/BulkRequestWrapper.test.ts +0 -51
  460. package/tests/service/helpers/mergeDeep.test.ts +0 -53
  461. package/tests/service/laravel/pagination/dataDrivers/RequestDriver.test.ts +0 -84
  462. package/tests/service/laravel/requests/JsonBaseRequest.test.ts +0 -43
  463. package/tests/service/laravel/requests/PaginationJsonBaseRequest.test.ts +0 -58
  464. package/tests/service/laravel/requests/responses/JsonResponse.test.ts +0 -59
  465. package/tests/service/laravel/requests/responses/PaginationResponse.test.ts +0 -127
  466. package/tests/service/pagination/BasePaginator.test.ts +0 -100
  467. package/tests/service/pagination/InfiniteScroller.test.ts +0 -101
  468. package/tests/service/pagination/PageAwarePaginator.test.ts +0 -133
  469. package/tests/service/pagination/StatePaginator.test.ts +0 -76
  470. package/tests/service/pagination/VueViewDrivers.test.ts +0 -46
  471. package/tests/service/pagination/dtos/PaginationDataDto.test.ts +0 -35
  472. package/tests/service/pagination/dtos/StatePaginationDataDto.test.ts +0 -14
  473. package/tests/service/pagination/factories/VuePaginationDriverFactory.test.ts +0 -32
  474. package/tests/service/pagination/frontendDrivers/VuePaginationDriver.test.ts +0 -66
  475. package/tests/service/persistenceDrivers/PersistenceDrivers.test.ts +0 -56
  476. package/tests/service/requests/BaseRequest.test.ts +0 -250
  477. package/tests/service/requests/BodiesAndFactories.test.ts +0 -28
  478. package/tests/service/requests/Enums.test.ts +0 -20
  479. package/tests/service/requests/ErrorHandler.test.ts +0 -188
  480. package/tests/service/requests/FormDataBody.test.ts +0 -63
  481. package/tests/service/requests/RequestErrorRouter.test.ts +0 -44
  482. package/tests/service/requests/Responses.test.ts +0 -83
  483. package/tests/service/requests/exceptions/Exceptions.test.ts +0 -43
  484. package/tests/service/requests/fetch/FetchDriver.test.ts +0 -76
  485. package/tests/service/requests/fetch/FetchResponse.test.ts +0 -21
  486. package/tests/service/requests/xhr/XMLHttpRequestDriver.test.ts +0 -178
  487. package/tests/service/support/DeferredPromise.test.ts +0 -40
  488. package/tests/service/support/helpers.test.ts +0 -37
  489. package/tests/vue/composables/useConfirmDialog.test.ts +0 -77
  490. package/tests/vue/composables/useGlobalCheckbox.test.ts +0 -126
  491. package/tests/vue/composables/useIsEmpty.test.ts +0 -18
  492. package/tests/vue/composables/useIsOpen.test.ts +0 -25
  493. package/tests/vue/composables/useIsOpenFromVar.test.ts +0 -22
  494. package/tests/vue/composables/useModelWrapper.test.ts +0 -30
  495. package/tests/vue/composables/useOnOpen.test.ts +0 -26
  496. package/tests/vue/forms/BaseForm.behavior.test.ts +0 -98
  497. package/tests/vue/forms/BaseForm.transformers.test.ts +0 -109
  498. package/tests/vue/forms/PropertyAwareArray.test.ts +0 -30
  499. package/tests/vue/forms/validation/ValidationRules.test.ts +0 -79
  500. package/tests/vue/requests/VueRequestLoaders.test.ts +0 -48
  501. package/tests/vue/router/routeResourceBinding/RouteResourceBoundView.test.ts +0 -344
  502. package/tests/vue/router/routeResourceBinding/RouteResourceUtils.test.ts +0 -70
  503. package/tests/vue/router/routeResourceBinding/installRouteInjection.test.ts +0 -450
  504. package/tests/vue/state/State.test.ts +0 -151
  505. package/tsconfig.json +0 -114
  506. package/vite.config.ts +0 -34
  507. package/vitest.config.ts +0 -23
@@ -1,214 +0,0 @@
1
- # Upgrading v3 to v4
2
-
3
- This guide covers breaking changes when upgrading from v3 to v4.
4
-
5
- ## Bulk Request Sender Is Now Generic
6
-
7
- `BulkRequestSender` is now a generic class, and `setRequests()` expects wrappers with matching type parameters. If you
8
- instantiated the sender without generics, TypeScript may report type errors when passing typed request wrappers.
9
-
10
- ### What Changed
11
-
12
- - `BulkRequestSender` is now generic over:
13
- - `RequestLoaderLoadingType`
14
- - `RequestBodyInterface`
15
- - `ResponseClass`
16
- - `RequestParamsInterface`
17
- - `setRequests()` is now typed to accept wrappers with the same generics.
18
-
19
- ### How to Fix
20
-
21
- Add generics when creating the sender so it matches your wrapper types:
22
-
23
- ```typescript
24
- const bulkRequestSenderInstance = new BulkRequestSender<
25
- RequestLoaderLoadingType,
26
- RequestBodyInterface,
27
- ResponseClass,
28
- RequestParamsInterface
29
- >([], bulkRequestExecutionMode, retryCount)
30
- ```
31
-
32
- If you already have typed wrappers, TypeScript will infer the rest once the sender is typed.
33
-
34
- ## Paginator `init()` Was Removed
35
-
36
- Pagination now marks a paginator as initialized only after the first successful load. The `init()` method was removed
37
- in favor of `load()`.
38
-
39
- ### What Changed
40
-
41
- - `isInitialized()` now becomes `true` only after a successful data load.
42
- - `init()` no longer exists.
43
-
44
- ### How to Fix
45
-
46
- Replace `init(...)` with `load(...)`:
47
-
48
- ```typescript
49
- await paginator.load()
50
- ```
51
-
52
- ## Paginator `refresh()` Was Removed
53
-
54
- `refresh()` was removed in favor of `load()` to make the first load more intuitive.
55
-
56
- ### How to Fix
57
-
58
- Replace `refresh(...)` with `load(...)`:
59
-
60
- ```typescript
61
- await paginator.load()
62
- ```
63
-
64
- ## Pagination Setters No Longer Trigger Loads
65
-
66
- `setPageNumber()` and `setPageSize()` now only update state. Call `load()` to fetch data:
67
-
68
- ```typescript
69
- await paginator.setPageNumber(2).load()
70
- await paginator.setPageSize(50).load()
71
- ```
72
-
73
- `setPage()` was renamed to `setPageNumber()`.
74
- Page navigation helpers (`toNextPage`, `toPreviousPage`, `toFirstPage`, `toLastPage`) still load the new page in one call.
75
-
76
- ## PaginationParamsContract Was Removed
77
-
78
- `PaginationParamsContract` was removed from the Laravel pagination exports because it was unused. Define your own params
79
- interface in your app instead.
80
-
81
- ## Deprecated `Paginator` alias removed
82
-
83
- `Paginator` (and the related `PaginatorOptions` alias) was an old alias for `PageAwarePaginator`. The alias file has been removed, so importing `Paginator` or `PaginatorOptions` now results in a build error.
84
-
85
- ### How to Fix
86
-
87
- - Replace `import { Paginator } from '@blueprint-ts/core/pagination'` with:
88
-
89
- ```typescript
90
- import { PageAwarePaginator } from '@blueprint-ts/core/pagination'
91
- ```
92
-
93
- - Replace `import { type PaginatorOptions } from '@blueprint-ts/core/pagination'` with:
94
-
95
- ```typescript
96
- import { type PageAwarePaginatorOptions } from '@blueprint-ts/core/pagination'
97
- ```
98
-
99
- ## Core Modules Moved out of `service/`
100
-
101
- Core (non-framework) modules moved from `@blueprint-ts/core/service/*` to `@blueprint-ts/core/*`.
102
-
103
- ### How to Fix
104
-
105
- Replace:
106
-
107
- ```typescript
108
- import { BaseRequest } from '@blueprint-ts/core/service/requests'
109
- import { PageAwarePaginator } from '@blueprint-ts/core/service/pagination'
110
- import { DeferredPromise } from '@blueprint-ts/core/service/support'
111
- import { BulkRequestSender } from '@blueprint-ts/core/service/bulkRequests'
112
- import { LocalStorageDriver } from '@blueprint-ts/core/service/persistenceDrivers'
113
- ```
114
-
115
- with:
116
-
117
- ```typescript
118
- import { BaseRequest } from '@blueprint-ts/core/requests'
119
- import { PageAwarePaginator } from '@blueprint-ts/core/pagination'
120
- import { DeferredPromise } from '@blueprint-ts/core/support'
121
- import { BulkRequestSender } from '@blueprint-ts/core/bulkRequests'
122
- import { LocalStorageDriver } from '@blueprint-ts/core/persistenceDrivers'
123
- ```
124
-
125
- ## Helpers Moved to Support
126
-
127
- Helpers are now exported from `@blueprint-ts/core/support`. The `@blueprint-ts/core/helpers` export was removed.
128
-
129
- ### How to Fix
130
-
131
- Replace:
132
-
133
- ```typescript
134
- import { isAtBottom } from '@blueprint-ts/core/helpers'
135
- ```
136
-
137
- with:
138
-
139
- ```typescript
140
- import { isAtBottom } from '@blueprint-ts/core/support'
141
- ```
142
-
143
- ## ConfirmDialogSeverity Is Now an Enum
144
-
145
- `ConfirmDialogSeverity` was changed from a string union type to an enum. Update any `getSeverity()` implementations to return the enum value.
146
-
147
- ### How to Fix
148
-
149
- Replace:
150
-
151
- ```typescript
152
- import { type ConfirmDialogOptions } from '@blueprint-ts/core/vue'
153
-
154
- export class MyConfirmOptions implements ConfirmDialogOptions {
155
- getSeverity() {
156
- return 'warning'
157
- }
158
- }
159
- ```
160
-
161
- with:
162
-
163
- ```typescript
164
- import { type ConfirmDialogOptions, ConfirmDialogSeverity } from '@blueprint-ts/core/vue'
165
-
166
- export class MyConfirmOptions implements ConfirmDialogOptions {
167
- getSeverity() {
168
- return ConfirmDialogSeverity.WARNING
169
- }
170
- }
171
- ```
172
-
173
- ## BaseRequestContract Requires `setConcurrency`
174
-
175
- `BaseRequestContract` now includes `setConcurrency(...)` so requests can opt into concurrency handling (e.g., latest-wins or replace-latest).
176
- If you implemented `BaseRequestContract` directly (instead of extending `BaseRequest`), TypeScript will now require this method.
177
-
178
- ### How to Fix
179
-
180
- Add the method to your custom request implementation:
181
-
182
- ```typescript
183
- setConcurrency(options?: RequestConcurrencyOptions): this {
184
- // no-op by default; use options if your implementation needs them
185
- return this
186
- }
187
- ```
188
-
189
- ## Laravel Packages Moved
190
-
191
- Laravel modules moved from `@blueprint-ts/core/service/laravel/*` to `@blueprint-ts/core/laravel/*`.
192
-
193
- ### How to Fix
194
-
195
- Replace:
196
-
197
- ```typescript
198
- import { JsonBaseRequest } from '@blueprint-ts/core/service/laravel/requests'
199
- ```
200
-
201
- with:
202
-
203
- ```typescript
204
- import { JsonBaseRequest } from '@blueprint-ts/core/laravel/requests'
205
- ```
206
-
207
- ## BaseForm `state` is now protected
208
-
209
- `BaseForm.state` was public in previous versions, but it is now `protected readonly`. That means external consumers can no longer import form instances and access `form.state`. Subclasses can still read/write state internally, so any code that depended on reading it from outside the form must switch to supported accessors such as `form.properties`.
210
-
211
- ### How to Fix
212
-
213
- - Replace direct `form.state` usage with the public helpers (`form.properties`, getters, or explicit payload builders).
214
- - If you were creating helpers that accessed `state` from outside the form, move those helpers inside the form class so they can rely on the protected field.
package/docs/upgrading.md DELETED
File without changes
@@ -1,96 +0,0 @@
1
- # `useConfirmDialog`
2
-
3
- `useConfirmDialog` mounts a confirmation dialog component on demand and returns an `openConfirmDialog` function that resolves to `true` or `false`.
4
-
5
- ## Requirements
6
-
7
- - Call `useConfirmDialog` inside a `setup()` function.
8
- - The dialog component must expose an `open()` method via `defineExpose`.
9
- - `open()` must return a `Promise<boolean>`.
10
- - The component receives an `options` prop that matches `ConfirmDialogOptions`.
11
-
12
- ## Example
13
-
14
- ```vue
15
- <template>
16
- <button @click.prevent="click">
17
- <slot />
18
- </button>
19
- </template>
20
-
21
- <script setup lang="ts">
22
- import { useConfirmDialog, type ConfirmDialogOptions } from '@blueprint-ts/core/vue'
23
- import ConfirmDialog from '@/ConfirmDialog.vue'
24
-
25
- const props = defineProps<{
26
- confirmation?: ConfirmDialogOptions
27
- }>()
28
-
29
- const { openConfirmDialog } = useConfirmDialog(ConfirmDialog)
30
-
31
- async function click() {
32
- if (props.confirmation) {
33
- const confirmed = await openConfirmDialog(props.confirmation)
34
-
35
- if (confirmed) {
36
- const request = new Request()
37
-
38
- request.send()
39
- }
40
- }
41
- }
42
- </script>
43
- ```
44
-
45
- ## ConfirmDialogOptions
46
-
47
- The options object must implement the following contract:
48
-
49
- ```ts
50
- import { ConfirmDialogSeverity } from '@blueprint-ts/core/vue'
51
-
52
- export interface ConfirmDialogOptions {
53
- getMessage(): string
54
- getSeverity(): ConfirmDialogSeverity
55
- getTitle(): string
56
- getOkText(): string
57
- getCancelText(): string
58
- }
59
- ```
60
-
61
- The available severities are:
62
-
63
- ```ts
64
- export enum ConfirmDialogSeverity {
65
- INFO = 'info',
66
- WARNING = 'warning',
67
- DANGER = 'danger'
68
- }
69
- ```
70
-
71
- ## Dialog Component Contract
72
-
73
- The dialog component must expose `open()` using `defineExpose`:
74
-
75
- ```vue
76
- <script setup lang="ts">
77
- import { type ConfirmDialogOptions } from '@blueprint-ts/core/vue'
78
-
79
- const props = defineProps<{ options: ConfirmDialogOptions }>()
80
-
81
- async function open(): Promise<boolean> {
82
- // open dialog and resolve with true or false
83
- return true
84
- }
85
-
86
- defineExpose({ open })
87
- </script>
88
- ```
89
-
90
- ## Mount Target
91
-
92
- `useConfirmDialog` accepts an optional second parameter to control where the dialog is mounted:
93
-
94
- ```ts
95
- const { openConfirmDialog } = useConfirmDialog(ConfirmDialog, '#dialog-root')
96
- ```
@@ -1,73 +0,0 @@
1
- # `useGlobalCheckbox`
2
-
3
- `useGlobalCheckbox` helps you implement “select all” behavior across a paginated data set. It manages:
4
-
5
- - selected rows
6
- - indeterminate/checked state
7
- - a dialog to choose between selecting the current page or all rows
8
-
9
- ## Requirements
10
-
11
- - Call `useGlobalCheckbox` inside a `setup()` function.
12
- - Provide a dialog component that exposes an `open()` method via `defineExpose`.
13
- - `open()` must return a `Promise<boolean>`.
14
- - The dialog receives `checked` and `indeterminate` props.
15
-
16
- ## Example
17
-
18
- ```ts
19
- const { selectedRows, indeterminate, checked, handleGlobalCheckboxChange } =
20
- useGlobalCheckbox<CredentialListResource>(BulkSelectDialog, {
21
- getAll: async () => {
22
- isLoadingAllElements.value = true
23
-
24
- try {
25
- const response = await request.withParams(buildParams()).send()
26
- return response.getData()
27
- } catch (error) {
28
- console.error(error)
29
- return []
30
- } finally {
31
- isLoadingAllElements.value = false
32
- }
33
- },
34
- getPage: () => paginator.getPageData(),
35
- totalCount: () => paginator.getTotal()
36
- })
37
- ```
38
-
39
- In the template, bind the handler to your global checkbox:
40
-
41
- ```vue
42
- <input
43
- type="checkbox"
44
- :checked="checked"
45
- :indeterminate="indeterminate"
46
- @change="handleGlobalCheckboxChange"
47
- />
48
- ```
49
-
50
- ## Dialog Component Contract
51
-
52
- Your dialog component should accept `checked` and `indeterminate` props and expose `open()`:
53
-
54
- ```vue
55
- <script setup lang="ts">
56
- const props = defineProps<{ checked: boolean; indeterminate: boolean }>()
57
-
58
- async function open(): Promise<boolean> {
59
- // true = select all entries, false = select current page / discard
60
- return true
61
- }
62
-
63
- defineExpose({ open })
64
- </script>
65
- ```
66
-
67
- ## Mount Target
68
-
69
- You can pass a third argument to control where the dialog is mounted:
70
-
71
- ```ts
72
- const { handleGlobalCheckboxChange } = useGlobalCheckbox(BulkSelectDialog, options, '#dialog-root')
73
- ```
@@ -1,26 +0,0 @@
1
- # `useIsEmpty`
2
-
3
- `useIsEmpty` provides small helpers to check whether a value should be treated as empty.
4
-
5
- ## What It Considers Empty
6
-
7
- - `undefined`, `null`, and `''`
8
- - arrays with `length === 0`
9
- - plain objects with no keys (checked via `lodash-es` `isEmpty`)
10
-
11
- Everything else is treated as not empty.
12
-
13
- ## Example
14
-
15
- ```ts
16
- import { useIsEmpty } from '@blueprint-ts/core/vue'
17
-
18
- const { isEmpty, isNotEmpty } = useIsEmpty()
19
-
20
- isEmpty(null) // true
21
- isEmpty('') // true
22
- isEmpty([]) // true
23
- isEmpty({}) // true
24
-
25
- isNotEmpty('Hello') // true
26
- ```
@@ -1,32 +0,0 @@
1
- # `useIsOpenFromVar`
2
-
3
- `useIsOpenFromVar` ties a “selected value” to open/close state. When `fromVar` is set to a non-empty value, `isOpenFromVar` becomes `true`. When the modal closes, `fromVar` resets after a delay so exit animations can finish.
4
-
5
- ## Example
6
-
7
- ```ts
8
- const { fromVar: selectedItem, isOpenFromVar: isDialogOpen, isOpenFromVarKey: dialogKey } =
9
- useIsOpenFromVar<Resource>()
10
- ```
11
-
12
- Use it like this:
13
-
14
- - set `selectedItem.value = item` to open the modal
15
- - set `isDialogOpen.value = false` to close and reset `fromVar`
16
-
17
- In the template:
18
-
19
- ```vue
20
- <BulkEditDialog
21
- :key="dialogKey"
22
- v-model="isDialogOpen"
23
- :item="selectedItem"
24
- />
25
- ```
26
-
27
- ## Options
28
-
29
- `useIsOpenFromVar` accepts two optional parameters:
30
-
31
- - `defaultValue` (default `undefined`): value assigned to `fromVar` after close
32
- - `delay` (default `500`): delay in milliseconds before resetting `fromVar` and bumping `isOpenFromVarKey`, so exit animations can finish
@@ -1,28 +0,0 @@
1
- # `useIsOpen`
2
-
3
- `useIsOpen` manages a boolean open state and an `isOpenKey` that increments whenever the state is closed. This is useful for forcing re-mounts after a close animation.
4
-
5
- ## Example
6
-
7
- ```ts
8
- import { useIsOpen } from '@blueprint-ts/core/vue'
9
-
10
- const { isOpen, isOpenKey } = useIsOpen((value) => {
11
- if (!value) {
12
- // closed
13
- }
14
- })
15
- ```
16
-
17
- In a template, bind `isOpenKey` to force a re-mount when closing:
18
-
19
- ```vue
20
- <Modal :key="isOpenKey" v-model="isOpen" />
21
- ```
22
-
23
- ## Options
24
-
25
- `useIsOpen` accepts two optional parameters:
26
-
27
- - `callback` (default `() => {}`): called whenever `isOpen` changes
28
- - `delay` (default `500`): delay in milliseconds before incrementing `isOpenKey` on close so exit animations can finish
@@ -1,29 +0,0 @@
1
- # `useModelWrapper`
2
-
3
- `useModelWrapper` is a small helper to implement `v-model` in components. It returns a computed ref that proxies the model value and emits the update event.
4
-
5
- Deprecated: In Vue 3.4+, prefer `defineModel()` where possible. `useModelWrapper` remains available for legacy usage or when you need a callback on update.
6
-
7
- ## Example
8
-
9
- ```vue
10
- <script setup lang="ts">
11
- import { useModelWrapper } from '@blueprint-ts/core/vue'
12
-
13
- const props = defineProps<{ modelValue: boolean }>()
14
- const emit = defineEmits<{ (event: 'update:modelValue', value: boolean): void }>()
15
-
16
- const model = useModelWrapper<boolean, typeof emit>(props, emit)
17
- </script>
18
- ```
19
-
20
- Using a custom model name:
21
-
22
- ```ts
23
- const model = useModelWrapper<boolean, typeof emit>(props, emit, { name: 'open' })
24
- ```
25
-
26
- ## Options
27
-
28
- - `name` (default `modelValue`): the model prop/event name
29
- - `callback` (optional): invoked with the new value after emitting the update event
@@ -1,26 +0,0 @@
1
- # `useOnOpen`
2
-
3
- `useOnOpen` lets you register callbacks that run when a boolean ref toggles from closed to open or vice versa.
4
-
5
- ## Example
6
-
7
- ```ts
8
- import { useOnOpen } from '@blueprint-ts/core/vue'
9
- import { ref } from 'vue'
10
-
11
- const isOpen = ref(false)
12
- const { onOpen, onClose } = useOnOpen(isOpen)
13
-
14
- onOpen(() => {
15
- // opened
16
- })
17
-
18
- onClose(() => {
19
- // closed
20
- })
21
- ```
22
-
23
- ## Notes
24
-
25
- Callbacks are executed on the next tick after the value changes.
26
- You can register multiple callbacks for both `onOpen` and `onClose`.
@@ -1,102 +0,0 @@
1
- # Arrays
2
-
3
- ## PropertyAwareArray
4
-
5
- Use `PropertyAwareArray` for arrays with per-item `v-model`, errors, and dirty state when your array contains objects.
6
-
7
- ```ts
8
- import { BaseForm, PropertyAwareArray } from '@blueprint-ts/core/vue/forms'
9
-
10
- export interface FormWithPositions {
11
- positions: PositionItem[]
12
- }
13
-
14
- export class MyComplexForm extends BaseForm<RequestType, FormWithPositions> {
15
- constructor() {
16
- super({
17
- positions: new PropertyAwareArray([{ id: 1, value: '' }])
18
- })
19
- }
20
-
21
- public addPosition(): void {
22
- this.addToArrayProperty('positions', {
23
- id: this.properties.positions.length + 1,
24
- value: ''
25
- })
26
- }
27
-
28
- public removePosition(id: number): void {
29
- this.removeArrayItem('positions', (position) => position.id !== id)
30
- this.resetArrayCounter('positions', 'id')
31
- }
32
- }
33
- ```
34
-
35
- Example component usage:
36
-
37
- ```vue
38
- <template>
39
- <div v-for="(position, index) in form.properties.positions" :key="index">
40
- <input v-model="position.value.model.value" />
41
- <div v-if="position.value.errors.length">{{ position.value.errors[0] }}</div>
42
- <div v-if="position.value.dirty">Changed</div>
43
- </div>
44
- </template>
45
- ```
46
-
47
- Nested error keys like `positions.0.value` map into `position.value.errors`.
48
-
49
- ## propertyAwareToRaw
50
-
51
- `propertyAwareToRaw` converts a property-aware object (each field wrapped in `{ model: { value } }`) into a plain object by unwrapping every field's `model.value`. It is purely a transformation: metadata such as `errors`, `dirty`, and `touched` is dropped, while arrays and nested objects are processed recursively. Keys starting with `_` are omitted from the result, and arrays are mapped element-by-element via the same unwrapping.
52
-
53
- ### Input shape (property-aware)
54
-
55
- ```ts
56
- const propertyAwarePosition = {
57
- id: {
58
- model: { value: 'pos-1' },
59
- errors: [],
60
- dirty: false,
61
- touched: false
62
- },
63
- sort_order: {
64
- model: { value: 10 },
65
- errors: [],
66
- dirty: false,
67
- touched: false
68
- },
69
- description: {
70
- model: { value: 'Service' },
71
- errors: [],
72
- dirty: false,
73
- touched: false
74
- },
75
- net_amount: {
76
- model: { value: 100 },
77
- errors: [],
78
- dirty: false,
79
- touched: false
80
- }
81
- }
82
- ```
83
-
84
- Note that this is only an example of how the input shape looks When used in a form the model is a WritableComputedRef.
85
-
86
- ### Output shape (raw)
87
-
88
- ```ts
89
- const rawPosition = {
90
- id: 'pos-1',
91
- sort_order: 10,
92
- description: 'Service',
93
- net_amount: 100
94
- }
95
- ```
96
-
97
- ### Notes
98
-
99
- - Arrays are mapped element-by-element.
100
- - Nested objects are unwrapped recursively.
101
- - Any keys starting with `_` are ignored.
102
- - Only the `model.value` remains; form metadata is dropped.
@@ -1,52 +0,0 @@
1
- # Errors
2
-
3
- `BaseForm` maps validation errors to fields and exposes them on `properties.<field>.errors`.
4
-
5
- ## Filling External Errors
6
-
7
- `fillErrors` is intended for server-side validation responses.
8
- It overwrites any existing client-side validation errors.
9
-
10
- ### Expected Error Format
11
-
12
- `fillErrors` expects an object where each key is a field path and each value is an array of messages. For example:
13
-
14
- ```json
15
- {
16
- "email": ["The email field is required."],
17
- "positions.0.value": ["The value is invalid."]
18
- }
19
- ```
20
-
21
- If you provide a single string instead of an array, it will be assigned as-is, but the UI helpers assume arrays.
22
- This format matches Laravel's validation error response and is currently the only supported format.
23
-
24
- ```ts
25
- form.fillErrors(error.response.data.errors)
26
- ```
27
-
28
- `fillErrors` supports:
29
- - direct field keys (e.g. `email`)
30
- - array dot notation where the 2nd segment is a numeric index (e.g. `positions.0.value`)
31
- - remapping via `errorMap` (including mapping one server key to multiple fields)
32
-
33
- ## Checking For Errors
34
-
35
- ```ts
36
- form.hasErrors()
37
- ```
38
-
39
- ## Advanced Usage
40
-
41
- ### Mapping Server Errors
42
-
43
- This is especially useful for appended fields that do not exist in your form state. See [Building Payloads – Appended Fields](/vue/forms/payloads#appended-fields).
44
-
45
- Map server error keys to your form fields with `errorMap`:
46
-
47
- ```ts
48
- protected override errorMap: { [serverKey: string]: string | string[] } = {
49
- started_at: ['start_date', 'start_time'],
50
- ended_at: ['end_date', 'end_time']
51
- }
52
- ```