@blueprint-ts/core 4.1.0-beta.2 → 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 (509) 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 -226
  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 -168
  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 -89
  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/BinaryBody.ts +0 -31
  375. package/src/requests/bodies/FormDataBody.ts +0 -81
  376. package/src/requests/bodies/JsonBody.ts +0 -16
  377. package/src/requests/contracts/BaseRequestContract.ts +0 -39
  378. package/src/requests/contracts/BodyContract.ts +0 -9
  379. package/src/requests/contracts/BodyFactoryContract.ts +0 -5
  380. package/src/requests/contracts/DriverConfigContract.ts +0 -9
  381. package/src/requests/contracts/HeadersContract.ts +0 -9
  382. package/src/requests/contracts/RequestDriverContract.ts +0 -15
  383. package/src/requests/contracts/RequestLoaderContract.ts +0 -5
  384. package/src/requests/contracts/ResponseContract.ts +0 -7
  385. package/src/requests/drivers/contracts/ResponseHandlerContract.ts +0 -10
  386. package/src/requests/drivers/fetch/FetchDriver.ts +0 -115
  387. package/src/requests/drivers/fetch/FetchResponse.ts +0 -30
  388. package/src/requests/drivers/xhr/XMLHttpRequestDriver.ts +0 -138
  389. package/src/requests/drivers/xhr/XMLHttpRequestResponse.ts +0 -95
  390. package/src/requests/exceptions/BadGatewayException.ts +0 -3
  391. package/src/requests/exceptions/BadRequestException.ts +0 -3
  392. package/src/requests/exceptions/ConflictException.ts +0 -3
  393. package/src/requests/exceptions/ForbiddenException.ts +0 -3
  394. package/src/requests/exceptions/GatewayTimeoutException.ts +0 -3
  395. package/src/requests/exceptions/GoneException.ts +0 -3
  396. package/src/requests/exceptions/InvalidJsonException.ts +0 -15
  397. package/src/requests/exceptions/LockedException.ts +0 -3
  398. package/src/requests/exceptions/MethodNotAllowedException.ts +0 -3
  399. package/src/requests/exceptions/NotFoundException.ts +0 -3
  400. package/src/requests/exceptions/NotImplementedException.ts +0 -3
  401. package/src/requests/exceptions/PageExpiredException.ts +0 -3
  402. package/src/requests/exceptions/PayloadTooLargeException.ts +0 -3
  403. package/src/requests/exceptions/PreconditionFailedException.ts +0 -3
  404. package/src/requests/exceptions/RequestTimeoutException.ts +0 -3
  405. package/src/requests/exceptions/ResponseBodyException.ts +0 -15
  406. package/src/requests/exceptions/ResponseException.ts +0 -11
  407. package/src/requests/exceptions/ServerErrorException.ts +0 -3
  408. package/src/requests/exceptions/ServiceUnavailableException.ts +0 -3
  409. package/src/requests/exceptions/StaleResponseException.ts +0 -13
  410. package/src/requests/exceptions/TooManyRequestsException.ts +0 -3
  411. package/src/requests/exceptions/UnauthorizedException.ts +0 -3
  412. package/src/requests/exceptions/UnsupportedMediaTypeException.ts +0 -3
  413. package/src/requests/exceptions/ValidationException.ts +0 -3
  414. package/src/requests/exceptions/index.ts +0 -51
  415. package/src/requests/factories/BinaryBodyFactory.ts +0 -13
  416. package/src/requests/factories/FormDataFactory.ts +0 -17
  417. package/src/requests/factories/JsonBodyFactory.ts +0 -9
  418. package/src/requests/index.ts +0 -68
  419. package/src/requests/responses/BaseResponse.ts +0 -41
  420. package/src/requests/responses/BlobResponse.ts +0 -19
  421. package/src/requests/responses/JsonResponse.ts +0 -15
  422. package/src/requests/responses/PlainTextResponse.ts +0 -15
  423. package/src/requests/types/RequestUploadProgress.ts +0 -6
  424. package/src/support/DeferredPromise.ts +0 -67
  425. package/src/support/helpers.ts +0 -78
  426. package/src/vue/composables/useConfirmDialog.ts +0 -63
  427. package/src/vue/composables/useGlobalCheckbox.ts +0 -145
  428. package/src/vue/composables/useIsEmpty.ts +0 -34
  429. package/src/vue/composables/useIsOpen.ts +0 -37
  430. package/src/vue/composables/useIsOpenFromVar.ts +0 -61
  431. package/src/vue/composables/useModelWrapper.ts +0 -27
  432. package/src/vue/composables/useOnOpen.ts +0 -34
  433. package/src/vue/contracts/ModelValueProps.ts +0 -3
  434. package/src/vue/forms/BaseForm.ts +0 -1192
  435. package/src/vue/forms/PropertyAwareArray.ts +0 -81
  436. package/src/vue/forms/types/PersistedForm.ts +0 -6
  437. package/src/vue/forms/validation/ValidationMode.enum.ts +0 -14
  438. package/src/vue/forms/validation/index.ts +0 -15
  439. package/src/vue/forms/validation/rules/BaseRule.ts +0 -7
  440. package/src/vue/forms/validation/rules/ConfirmedRule.ts +0 -39
  441. package/src/vue/forms/validation/rules/EmailRule.ts +0 -23
  442. package/src/vue/forms/validation/rules/JsonRule.ts +0 -28
  443. package/src/vue/forms/validation/rules/MinRule.ts +0 -61
  444. package/src/vue/forms/validation/rules/RequiredRule.ts +0 -19
  445. package/src/vue/forms/validation/rules/UrlRule.ts +0 -24
  446. package/src/vue/forms/validation/types/ValidationRules.ts +0 -15
  447. package/src/vue/index.ts +0 -14
  448. package/src/vue/requests/factories/VueRequestLoaderFactory.ts +0 -10
  449. package/src/vue/requests/loaders/VueRequestBatchLoader.ts +0 -35
  450. package/src/vue/requests/loaders/VueRequestLoader.ts +0 -18
  451. package/src/vue/router/routeResourceBinding/RouteResourceBoundView.ts +0 -145
  452. package/src/vue/router/routeResourceBinding/RouteResourceRequestResolver.ts +0 -11
  453. package/src/vue/router/routeResourceBinding/defineRoute.ts +0 -59
  454. package/src/vue/router/routeResourceBinding/index.ts +0 -11
  455. package/src/vue/router/routeResourceBinding/installRouteInjection.ts +0 -164
  456. package/src/vue/router/routeResourceBinding/types.ts +0 -53
  457. package/src/vue/router/routeResourceBinding/useRouteResource.ts +0 -24
  458. package/src/vue/state/State.ts +0 -380
  459. package/src/vue/state/index.ts +0 -3
  460. package/tests/service/bulkRequests/BulkRequestSender.test.ts +0 -76
  461. package/tests/service/bulkRequests/BulkRequestWrapper.test.ts +0 -51
  462. package/tests/service/helpers/mergeDeep.test.ts +0 -53
  463. package/tests/service/laravel/pagination/dataDrivers/RequestDriver.test.ts +0 -84
  464. package/tests/service/laravel/requests/JsonBaseRequest.test.ts +0 -43
  465. package/tests/service/laravel/requests/PaginationJsonBaseRequest.test.ts +0 -58
  466. package/tests/service/laravel/requests/responses/JsonResponse.test.ts +0 -59
  467. package/tests/service/laravel/requests/responses/PaginationResponse.test.ts +0 -127
  468. package/tests/service/pagination/BasePaginator.test.ts +0 -100
  469. package/tests/service/pagination/InfiniteScroller.test.ts +0 -101
  470. package/tests/service/pagination/PageAwarePaginator.test.ts +0 -133
  471. package/tests/service/pagination/StatePaginator.test.ts +0 -76
  472. package/tests/service/pagination/VueViewDrivers.test.ts +0 -46
  473. package/tests/service/pagination/dtos/PaginationDataDto.test.ts +0 -35
  474. package/tests/service/pagination/dtos/StatePaginationDataDto.test.ts +0 -14
  475. package/tests/service/pagination/factories/VuePaginationDriverFactory.test.ts +0 -32
  476. package/tests/service/pagination/frontendDrivers/VuePaginationDriver.test.ts +0 -66
  477. package/tests/service/persistenceDrivers/PersistenceDrivers.test.ts +0 -56
  478. package/tests/service/requests/BaseRequest.test.ts +0 -250
  479. package/tests/service/requests/BodiesAndFactories.test.ts +0 -52
  480. package/tests/service/requests/Enums.test.ts +0 -20
  481. package/tests/service/requests/ErrorHandler.test.ts +0 -188
  482. package/tests/service/requests/FormDataBody.test.ts +0 -63
  483. package/tests/service/requests/RequestErrorRouter.test.ts +0 -44
  484. package/tests/service/requests/Responses.test.ts +0 -83
  485. package/tests/service/requests/exceptions/Exceptions.test.ts +0 -43
  486. package/tests/service/requests/fetch/FetchDriver.test.ts +0 -94
  487. package/tests/service/requests/fetch/FetchResponse.test.ts +0 -21
  488. package/tests/service/requests/xhr/XMLHttpRequestDriver.test.ts +0 -197
  489. package/tests/service/support/DeferredPromise.test.ts +0 -40
  490. package/tests/service/support/helpers.test.ts +0 -37
  491. package/tests/vue/composables/useConfirmDialog.test.ts +0 -77
  492. package/tests/vue/composables/useGlobalCheckbox.test.ts +0 -126
  493. package/tests/vue/composables/useIsEmpty.test.ts +0 -18
  494. package/tests/vue/composables/useIsOpen.test.ts +0 -25
  495. package/tests/vue/composables/useIsOpenFromVar.test.ts +0 -22
  496. package/tests/vue/composables/useModelWrapper.test.ts +0 -30
  497. package/tests/vue/composables/useOnOpen.test.ts +0 -26
  498. package/tests/vue/forms/BaseForm.behavior.test.ts +0 -98
  499. package/tests/vue/forms/BaseForm.transformers.test.ts +0 -109
  500. package/tests/vue/forms/PropertyAwareArray.test.ts +0 -30
  501. package/tests/vue/forms/validation/ValidationRules.test.ts +0 -79
  502. package/tests/vue/requests/VueRequestLoaders.test.ts +0 -48
  503. package/tests/vue/router/routeResourceBinding/RouteResourceBoundView.test.ts +0 -344
  504. package/tests/vue/router/routeResourceBinding/RouteResourceUtils.test.ts +0 -70
  505. package/tests/vue/router/routeResourceBinding/installRouteInjection.test.ts +0 -450
  506. package/tests/vue/state/State.test.ts +0 -151
  507. package/tsconfig.json +0 -114
  508. package/vite.config.ts +0 -34
  509. package/vitest.config.ts +0 -23
@@ -0,0 +1,53 @@
1
+ import { type WritableComputedRef } from 'vue';
2
+ /**
3
+ * Repräsentiert eine reaktive Property mit model.value Zugriff
4
+ */
5
+ export interface PropertyAwareField<T> {
6
+ model: WritableComputedRef<T>;
7
+ errors: string[];
8
+ dirty: boolean;
9
+ }
10
+ /**
11
+ * Wandelt ein reguläres Interface in ein property-aware Interface um
12
+ * Jedes Feld vom Typ T wird zu einem PropertyAwareField<T>
13
+ */
14
+ export type PropertyAware<T> = {
15
+ [K in keyof T]: PropertyAwareField<T[K]>;
16
+ };
17
+ /**
18
+ * Extends Array with property awareness.
19
+ * When a form field is defined as an instance of PropertyAwareArray,
20
+ * the BaseForm will transform each element into reactive properties with
21
+ * computed getters/setters, error tracking, and dirty flags.
22
+ */
23
+ export declare class PropertyAwareArray<T = unknown> extends Array<T> {
24
+ private readonly __propertyAwareArrayBrand;
25
+ /**
26
+ * Creates a new PropertyAwareArray instance
27
+ */
28
+ constructor(items?: T[]);
29
+ /**
30
+ * Create a PropertyAwareArray from an existing array
31
+ */
32
+ static from<T>(arrayLike: ArrayLike<T>): PropertyAwareArray<T>;
33
+ /**
34
+ * Maps each element using the provided function
35
+ * Overridden to ensure the return type is PropertyAwareArray<U> rather than Array<U>
36
+ */
37
+ map<U>(callbackfn: (value: T, index: number, array: T[]) => U): PropertyAwareArray<U>;
38
+ /**
39
+ * Filters elements using the provided function
40
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
41
+ */
42
+ filter(predicate: (value: T, index: number, array: T[]) => boolean): PropertyAwareArray<T>;
43
+ /**
44
+ * Returns a shallow copy of the array
45
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
46
+ */
47
+ slice(start?: number, end?: number): PropertyAwareArray<T>;
48
+ /**
49
+ * Combines two or more arrays
50
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
51
+ */
52
+ concat(...items: (T | ConcatArray<T>)[]): PropertyAwareArray<T>;
53
+ }
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Extends Array with property awareness.
3
+ * When a form field is defined as an instance of PropertyAwareArray,
4
+ * the BaseForm will transform each element into reactive properties with
5
+ * computed getters/setters, error tracking, and dirty flags.
6
+ */
7
+ export class PropertyAwareArray extends Array {
8
+ /**
9
+ * Creates a new PropertyAwareArray instance
10
+ */
11
+ constructor(items = []) {
12
+ // Call Array constructor with array length
13
+ super();
14
+ void this.__propertyAwareArrayBrand;
15
+ // Add items to the array
16
+ if (items && items.length) {
17
+ items.forEach((item) => this.push(item));
18
+ }
19
+ }
20
+ /**
21
+ * Create a PropertyAwareArray from an existing array
22
+ */
23
+ static from(arrayLike) {
24
+ return new PropertyAwareArray(Array.from(arrayLike));
25
+ }
26
+ /**
27
+ * Maps each element using the provided function
28
+ * Overridden to ensure the return type is PropertyAwareArray<U> rather than Array<U>
29
+ */
30
+ map(callbackfn) {
31
+ return new PropertyAwareArray(super.map(callbackfn));
32
+ }
33
+ /**
34
+ * Filters elements using the provided function
35
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
36
+ */
37
+ filter(predicate) {
38
+ return new PropertyAwareArray(super.filter(predicate));
39
+ }
40
+ /**
41
+ * Returns a shallow copy of the array
42
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
43
+ */
44
+ slice(start, end) {
45
+ return new PropertyAwareArray(super.slice(start, end));
46
+ }
47
+ /**
48
+ * Combines two or more arrays
49
+ * Overridden to ensure the return type is PropertyAwareArray<T> rather than Array<T>
50
+ */
51
+ concat(...items) {
52
+ return new PropertyAwareArray(super.concat(...items));
53
+ }
54
+ }
@@ -1,11 +1,9 @@
1
- import { BaseForm, propertyAwareToRaw } from './BaseForm'
2
- import { type PersistedForm } from './types/PersistedForm'
3
- import { LocalStorageDriver } from '../../persistenceDrivers/LocalStorageDriver'
4
- import { NonPersistentDriver } from '../../persistenceDrivers/NonPersistentDriver'
5
- import { SessionStorageDriver } from '../../persistenceDrivers/SessionStorageDriver'
6
- import { type PersistenceDriver } from '../../persistenceDrivers/types/PersistenceDriver'
7
- import { PropertyAwareArray, type PropertyAwareField, type PropertyAware } from './PropertyAwareArray'
8
-
9
- export { BaseForm, propertyAwareToRaw, PropertyAwareArray, NonPersistentDriver, SessionStorageDriver, LocalStorageDriver }
10
-
11
- export type { PersistedForm, PersistenceDriver, PropertyAwareField, PropertyAware }
1
+ import { BaseForm, propertyAwareToRaw } from './BaseForm';
2
+ import { type PersistedForm } from './types/PersistedForm';
3
+ import { LocalStorageDriver } from '../../persistenceDrivers/LocalStorageDriver';
4
+ import { NonPersistentDriver } from '../../persistenceDrivers/NonPersistentDriver';
5
+ import { SessionStorageDriver } from '../../persistenceDrivers/SessionStorageDriver';
6
+ import { type PersistenceDriver } from '../../persistenceDrivers/types/PersistenceDriver';
7
+ import { PropertyAwareArray, type PropertyAwareField, type PropertyAware } from './PropertyAwareArray';
8
+ export { BaseForm, propertyAwareToRaw, PropertyAwareArray, NonPersistentDriver, SessionStorageDriver, LocalStorageDriver };
9
+ export type { PersistedForm, PersistenceDriver, PropertyAwareField, PropertyAware };
@@ -0,0 +1,6 @@
1
+ import { BaseForm, propertyAwareToRaw } from './BaseForm';
2
+ import { LocalStorageDriver } from '../../persistenceDrivers/LocalStorageDriver';
3
+ import { NonPersistentDriver } from '../../persistenceDrivers/NonPersistentDriver';
4
+ import { SessionStorageDriver } from '../../persistenceDrivers/SessionStorageDriver';
5
+ import { PropertyAwareArray } from './PropertyAwareArray';
6
+ export { BaseForm, propertyAwareToRaw, PropertyAwareArray, NonPersistentDriver, SessionStorageDriver, LocalStorageDriver };
@@ -0,0 +1,6 @@
1
+ export interface PersistedForm<FormBody> {
2
+ state: FormBody;
3
+ original: FormBody;
4
+ dirty: Record<keyof FormBody, boolean>;
5
+ touched: Record<keyof FormBody, boolean>;
6
+ }
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ export declare enum ValidationMode {
2
+ NEVER = 0,
3
+ INSTANTLY = 1,// Validate as soon as form is initialized
4
+ ON_TOUCH = 2,// Validate when field is touched (focused/blurred)
5
+ ON_DIRTY = 4,// Validate when field value changes
6
+ ON_SUBMIT = 8,// Validate on form submit
7
+ ON_DEPENDENT_CHANGE = 16,// Validate when a field it depends on changes
8
+ DEFAULT = 14,// Validate when dirty or on submit
9
+ AGGRESSIVE = 15,// Validate in all situations
10
+ PASSIVE = 8
11
+ }
@@ -0,0 +1,14 @@
1
+ export var ValidationMode;
2
+ (function (ValidationMode) {
3
+ // Individual flags
4
+ ValidationMode[ValidationMode["NEVER"] = 0] = "NEVER";
5
+ ValidationMode[ValidationMode["INSTANTLY"] = 1] = "INSTANTLY";
6
+ ValidationMode[ValidationMode["ON_TOUCH"] = 2] = "ON_TOUCH";
7
+ ValidationMode[ValidationMode["ON_DIRTY"] = 4] = "ON_DIRTY";
8
+ ValidationMode[ValidationMode["ON_SUBMIT"] = 8] = "ON_SUBMIT";
9
+ ValidationMode[ValidationMode["ON_DEPENDENT_CHANGE"] = 16] = "ON_DEPENDENT_CHANGE";
10
+ // Common combinations
11
+ ValidationMode[ValidationMode["DEFAULT"] = 14] = "DEFAULT";
12
+ ValidationMode[ValidationMode["AGGRESSIVE"] = 15] = "AGGRESSIVE";
13
+ ValidationMode[ValidationMode["PASSIVE"] = 8] = "PASSIVE"; // Only validate on submit
14
+ })(ValidationMode || (ValidationMode = {}));
@@ -0,0 +1,12 @@
1
+ import { BaseRule } from './rules/BaseRule';
2
+ import { ConfirmedRule } from './rules/ConfirmedRule';
3
+ import { EmailRule } from './rules/EmailRule';
4
+ import { JsonRule } from './rules/JsonRule';
5
+ import { RequiredRule } from './rules/RequiredRule';
6
+ import { UrlRule } from './rules/UrlRule';
7
+ import { MinRule } from './rules/MinRule';
8
+ import { ValidationMode } from './ValidationMode.enum';
9
+ import { type BidirectionalRule } from './types/BidirectionalRule';
10
+ import { type ValidationRules } from './types/ValidationRules';
11
+ export { BaseRule, ConfirmedRule, EmailRule, JsonRule, RequiredRule, UrlRule, MinRule, ValidationMode };
12
+ export type { BidirectionalRule, ValidationRules };
@@ -0,0 +1,9 @@
1
+ import { BaseRule } from './rules/BaseRule';
2
+ import { ConfirmedRule } from './rules/ConfirmedRule';
3
+ import { EmailRule } from './rules/EmailRule';
4
+ import { JsonRule } from './rules/JsonRule';
5
+ import { RequiredRule } from './rules/RequiredRule';
6
+ import { UrlRule } from './rules/UrlRule';
7
+ import { MinRule } from './rules/MinRule';
8
+ import { ValidationMode } from './ValidationMode.enum';
9
+ export { BaseRule, ConfirmedRule, EmailRule, JsonRule, RequiredRule, UrlRule, MinRule, ValidationMode };
@@ -0,0 +1,5 @@
1
+ export declare abstract class BaseRule<FormBody extends object> {
2
+ dependsOn: Array<keyof FormBody>;
3
+ abstract validate(value: unknown, state: FormBody): boolean;
4
+ abstract getMessage(): string;
5
+ }
@@ -0,0 +1,5 @@
1
+ export class BaseRule {
2
+ constructor() {
3
+ this.dependsOn = [];
4
+ }
5
+ }
@@ -0,0 +1,10 @@
1
+ import { BaseRule } from './BaseRule';
2
+ import { type BidirectionalRule } from '../types/BidirectionalRule';
3
+ export declare class ConfirmedRule<FormBody extends object> extends BaseRule<FormBody> implements BidirectionalRule<FormBody> {
4
+ protected confirmationField: keyof FormBody;
5
+ protected message: string;
6
+ constructor(confirmationField: keyof FormBody, message?: string);
7
+ validate(value: unknown, formState: FormBody): boolean;
8
+ getMessage(): string;
9
+ getBidirectionalFields(): Array<keyof FormBody>;
10
+ }
@@ -0,0 +1,26 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class ConfirmedRule extends BaseRule {
3
+ constructor(confirmationField, message) {
4
+ super();
5
+ this.confirmationField = confirmationField;
6
+ this.message = message || `Must match ${String(confirmationField)}`;
7
+ // Add the confirmation field as a dependency
8
+ this.dependsOn = [confirmationField];
9
+ }
10
+ validate(value, formState) {
11
+ // Only validate if both fields have values
12
+ const confirmationValue = formState[this.confirmationField];
13
+ // If either field is empty, don't show an error yet
14
+ if (!value || !confirmationValue) {
15
+ return true;
16
+ }
17
+ return value === confirmationValue;
18
+ }
19
+ getMessage() {
20
+ return this.message;
21
+ }
22
+ // Implement BidirectionalRule interface
23
+ getBidirectionalFields() {
24
+ return [this.confirmationField];
25
+ }
26
+ }
@@ -0,0 +1,7 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export declare class EmailRule<FormBody extends object> extends BaseRule<FormBody> {
3
+ protected message: string;
4
+ constructor(message?: string);
5
+ validate(value: unknown): boolean;
6
+ getMessage(): string;
7
+ }
@@ -0,0 +1,19 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class EmailRule extends BaseRule {
3
+ constructor(message = 'Please enter a valid email address') {
4
+ super();
5
+ this.message = message;
6
+ }
7
+ validate(value) {
8
+ if (value === null || value === undefined || value === '') {
9
+ return true;
10
+ }
11
+ if (typeof value !== 'string') {
12
+ return false;
13
+ }
14
+ return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value);
15
+ }
16
+ getMessage() {
17
+ return this.message;
18
+ }
19
+ }
@@ -0,0 +1,7 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export declare class JsonRule<FormBody extends object> extends BaseRule<FormBody> {
3
+ protected message: string;
4
+ constructor(message?: string);
5
+ validate(value: unknown): boolean;
6
+ getMessage(): string;
7
+ }
@@ -0,0 +1,25 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class JsonRule extends BaseRule {
3
+ constructor(message = 'Please enter valid JSON') {
4
+ super();
5
+ this.message = message;
6
+ }
7
+ validate(value) {
8
+ if (value === null || value === undefined || value === '') {
9
+ return true;
10
+ }
11
+ if (typeof value !== 'string') {
12
+ return false;
13
+ }
14
+ try {
15
+ JSON.parse(value);
16
+ return true;
17
+ }
18
+ catch (_a) {
19
+ return false;
20
+ }
21
+ }
22
+ getMessage() {
23
+ return this.message;
24
+ }
25
+ }
@@ -0,0 +1,26 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export declare class MinRule<FormBody extends object> extends BaseRule<FormBody> {
3
+ protected min: number;
4
+ protected message?: string | undefined;
5
+ /**
6
+ * Creates a new MinRule
7
+ * @param min The minimum value (length for strings, value for numbers, length for arrays)
8
+ * @param message The error message to display if validation fails
9
+ */
10
+ constructor(min: number, message?: string | undefined);
11
+ /**
12
+ * Validates that the value meets the minimum requirement
13
+ * - For strings: checks if length is at least the specified minimum
14
+ * - For numbers: checks if value is at least the specified minimum
15
+ * - For arrays: checks if length is at least the specified minimum
16
+ * - For other types: always returns false
17
+ *
18
+ * @param value The value to validate
19
+ * @returns boolean indicating if validation passed
20
+ */
21
+ validate(value: unknown): boolean;
22
+ /**
23
+ * Returns the error message for the validation
24
+ */
25
+ getMessage(): string;
26
+ }
@@ -0,0 +1,52 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class MinRule extends BaseRule {
3
+ /**
4
+ * Creates a new MinRule
5
+ * @param min The minimum value (length for strings, value for numbers, length for arrays)
6
+ * @param message The error message to display if validation fails
7
+ */
8
+ constructor(min, message) {
9
+ super();
10
+ this.min = min;
11
+ this.message = message;
12
+ }
13
+ /**
14
+ * Validates that the value meets the minimum requirement
15
+ * - For strings: checks if length is at least the specified minimum
16
+ * - For numbers: checks if value is at least the specified minimum
17
+ * - For arrays: checks if length is at least the specified minimum
18
+ * - For other types: always returns false
19
+ *
20
+ * @param value The value to validate
21
+ * @returns boolean indicating if validation passed
22
+ */
23
+ validate(value) {
24
+ // Null or undefined values should be handled by RequiredRule, not this rule
25
+ if (value === null || value === undefined) {
26
+ return true;
27
+ }
28
+ // For strings, check the length
29
+ if (typeof value === 'string') {
30
+ return value.length >= this.min;
31
+ }
32
+ // For numbers, check the value
33
+ if (typeof value === 'number') {
34
+ return value >= this.min;
35
+ }
36
+ // For arrays, check the length
37
+ if (Array.isArray(value)) {
38
+ return value.length >= this.min;
39
+ }
40
+ // For other types, validation fails
41
+ return false;
42
+ }
43
+ /**
44
+ * Returns the error message for the validation
45
+ */
46
+ getMessage() {
47
+ if (this.message) {
48
+ return this.message;
49
+ }
50
+ return `This field must be at least ${this.min}`;
51
+ }
52
+ }
@@ -0,0 +1,7 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export declare class RequiredRule<FormBody extends object> extends BaseRule<FormBody> {
3
+ protected message: string;
4
+ constructor(message?: string);
5
+ validate(value: keyof FormBody): boolean;
6
+ getMessage(): string;
7
+ }
@@ -0,0 +1,16 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class RequiredRule extends BaseRule {
3
+ constructor(message = 'This field is required') {
4
+ super();
5
+ this.message = message;
6
+ }
7
+ validate(value) {
8
+ if (value === null || value === undefined || value === '') {
9
+ return false;
10
+ }
11
+ return true;
12
+ }
13
+ getMessage() {
14
+ return this.message;
15
+ }
16
+ }
@@ -0,0 +1,7 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export declare class UrlRule<FormBody extends object> extends BaseRule<FormBody> {
3
+ protected message: string;
4
+ constructor(message?: string);
5
+ validate(value: unknown): boolean;
6
+ getMessage(): string;
7
+ }
@@ -0,0 +1,22 @@
1
+ import { BaseRule } from './BaseRule';
2
+ export class UrlRule extends BaseRule {
3
+ constructor(message = 'Please enter a valid URL') {
4
+ super();
5
+ this.message = message;
6
+ }
7
+ validate(value) {
8
+ if (!value || typeof value !== 'string') {
9
+ return false;
10
+ }
11
+ try {
12
+ new URL(value);
13
+ return true;
14
+ }
15
+ catch (_a) {
16
+ return false;
17
+ }
18
+ }
19
+ getMessage() {
20
+ return this.message;
21
+ }
22
+ }
@@ -4,8 +4,8 @@
4
4
  * automatically set up bidirectionally
5
5
  */
6
6
  export interface BidirectionalRule<FormBody extends object = object> {
7
- /**
8
- * Returns the fields that should have bidirectional validation with the current field
9
- */
10
- getBidirectionalFields(): Array<keyof FormBody>
7
+ /**
8
+ * Returns the fields that should have bidirectional validation with the current field
9
+ */
10
+ getBidirectionalFields(): Array<keyof FormBody>;
11
11
  }
@@ -0,0 +1,11 @@
1
+ import { type BaseRule } from '../rules/BaseRule';
2
+ import { type BidirectionalRule } from './BidirectionalRule';
3
+ import { type ValidationMode } from '../ValidationMode.enum';
4
+ type Rule<FormBody extends object> = BaseRule<FormBody> & Partial<BidirectionalRule<FormBody>>;
5
+ export type ValidationRules<FormBody extends object> = Partial<Record<keyof FormBody, {
6
+ rules: Rule<FormBody>[];
7
+ options?: {
8
+ mode?: ValidationMode;
9
+ };
10
+ }>>;
11
+ export {};
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,11 @@
1
+ import useIsOpen from './composables/useIsOpen';
2
+ import useModelWrapper from './composables/useModelWrapper';
3
+ import useOnOpen from './composables/useOnOpen';
4
+ import useIsOpenFromVar from './composables/useIsOpenFromVar';
5
+ import useGlobalCheckbox from './composables/useGlobalCheckbox';
6
+ import useIsEmpty from './composables/useIsEmpty';
7
+ import useConfirmDialog from './composables/useConfirmDialog';
8
+ import { ConfirmDialogSeverity, type ConfirmDialogOptions } from './composables/useConfirmDialog';
9
+ export { useIsOpen, useModelWrapper, useOnOpen, useIsOpenFromVar, useGlobalCheckbox, useIsEmpty, useConfirmDialog };
10
+ export { ConfirmDialogSeverity };
11
+ export type { ConfirmDialogOptions };
@@ -0,0 +1,10 @@
1
+ import useIsOpen from './composables/useIsOpen';
2
+ import useModelWrapper from './composables/useModelWrapper';
3
+ import useOnOpen from './composables/useOnOpen';
4
+ import useIsOpenFromVar from './composables/useIsOpenFromVar';
5
+ import useGlobalCheckbox from './composables/useGlobalCheckbox';
6
+ import useIsEmpty from './composables/useIsEmpty';
7
+ import useConfirmDialog from './composables/useConfirmDialog';
8
+ import { ConfirmDialogSeverity } from './composables/useConfirmDialog';
9
+ export { useIsOpen, useModelWrapper, useOnOpen, useIsOpenFromVar, useGlobalCheckbox, useIsEmpty, useConfirmDialog };
10
+ export { ConfirmDialogSeverity };
@@ -0,0 +1,6 @@
1
+ import { type RequestLoaderContract } from '../../../requests/contracts/RequestLoaderContract';
2
+ import { type Ref } from 'vue';
3
+ import type { RequestLoaderFactoryContract } from '../../../requests';
4
+ export declare class VueRequestLoaderFactory implements RequestLoaderFactoryContract<Ref<boolean>> {
5
+ make(): RequestLoaderContract<Ref<boolean>>;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { VueRequestLoader } from '../loaders/VueRequestLoader';
2
+ export class VueRequestLoaderFactory {
3
+ make() {
4
+ return new VueRequestLoader();
5
+ }
6
+ }
@@ -1,5 +1,4 @@
1
- import { VueRequestLoader } from './loaders/VueRequestLoader'
2
- import { VueRequestBatchLoader } from './loaders/VueRequestBatchLoader'
3
- import { VueRequestLoaderFactory } from './factories/VueRequestLoaderFactory'
4
-
5
- export { VueRequestLoader, VueRequestBatchLoader, VueRequestLoaderFactory }
1
+ import { VueRequestLoader } from './loaders/VueRequestLoader';
2
+ import { VueRequestBatchLoader } from './loaders/VueRequestBatchLoader';
3
+ import { VueRequestLoaderFactory } from './factories/VueRequestLoaderFactory';
4
+ export { VueRequestLoader, VueRequestBatchLoader, VueRequestLoaderFactory };
@@ -0,0 +1,4 @@
1
+ import { VueRequestLoader } from './loaders/VueRequestLoader';
2
+ import { VueRequestBatchLoader } from './loaders/VueRequestBatchLoader';
3
+ import { VueRequestLoaderFactory } from './factories/VueRequestLoaderFactory';
4
+ export { VueRequestLoader, VueRequestBatchLoader, VueRequestLoaderFactory };
@@ -0,0 +1,12 @@
1
+ import { type Ref } from 'vue';
2
+ import { type RequestLoaderContract } from '../../../requests/contracts/RequestLoaderContract';
3
+ export declare class VueRequestBatchLoader implements RequestLoaderContract<Ref<boolean>> {
4
+ private inFlight;
5
+ private completed;
6
+ private expected;
7
+ constructor(expectedRequests?: number);
8
+ startBatch(count: number): void;
9
+ abortBatch(): void;
10
+ isLoading(): Ref<boolean>;
11
+ setLoading(loading: boolean): void;
12
+ }
@@ -0,0 +1,29 @@
1
+ import { ref, computed } from 'vue';
2
+ export class VueRequestBatchLoader {
3
+ constructor(expectedRequests = 0) {
4
+ this.inFlight = ref(0);
5
+ this.completed = ref(0);
6
+ this.expected = 0;
7
+ this.expected = expectedRequests;
8
+ }
9
+ startBatch(count) {
10
+ this.expected = count;
11
+ this.completed.value = 0;
12
+ }
13
+ abortBatch() {
14
+ this.expected = 0;
15
+ this.completed.value = 0;
16
+ }
17
+ isLoading() {
18
+ return computed(() => this.inFlight.value > 0 || (this.expected > 0 && this.completed.value < this.expected));
19
+ }
20
+ setLoading(loading) {
21
+ if (loading) {
22
+ this.inFlight.value++;
23
+ }
24
+ else {
25
+ this.inFlight.value = Math.max(0, this.inFlight.value - 1);
26
+ this.completed.value++;
27
+ }
28
+ }
29
+ }
@@ -0,0 +1,8 @@
1
+ import { type Ref } from 'vue';
2
+ import { type RequestLoaderContract } from '../../../requests/contracts/RequestLoaderContract';
3
+ export declare class VueRequestLoader implements RequestLoaderContract<Ref<boolean>> {
4
+ protected loading: Ref<boolean>;
5
+ constructor(initialLoading?: boolean);
6
+ isLoading(): Ref<boolean>;
7
+ setLoading(value: boolean): void;
8
+ }
@@ -0,0 +1,12 @@
1
+ import { ref } from 'vue';
2
+ export class VueRequestLoader {
3
+ constructor(initialLoading = false) {
4
+ this.loading = ref(initialLoading);
5
+ }
6
+ isLoading() {
7
+ return this.loading;
8
+ }
9
+ setLoading(value) {
10
+ this.loading.value = value;
11
+ }
12
+ }