@kaspernj/api-maker 1.0.2055 → 1.0.2057

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 (399) hide show
  1. package/build/api.js +22 -16
  2. package/build/attribute-not-loaded-error.js +5 -2
  3. package/build/base-component.js +6 -3
  4. package/build/base-error.js +15 -9
  5. package/build/base-model/attribute.js +10 -4
  6. package/build/base-model/column.js +5 -2
  7. package/build/base-model/reflection.js +49 -10
  8. package/build/base-model/scope.js +41 -5
  9. package/build/base-model.js +115 -76
  10. package/build/bootstrap/attribute-row.js +71 -33
  11. package/build/bootstrap/attribute-rows.js +20 -15
  12. package/build/bootstrap/card.js +72 -34
  13. package/build/bootstrap/checkbox.js +35 -30
  14. package/build/bootstrap/checkboxes.js +69 -31
  15. package/build/bootstrap/index.d.ts +1 -0
  16. package/build/bootstrap/index.js +3 -1
  17. package/build/bootstrap/input.js +48 -43
  18. package/build/bootstrap/invalid-feedback.js +17 -11
  19. package/build/bootstrap/paginate.js +73 -35
  20. package/build/bootstrap/radio-buttons.js +33 -28
  21. package/build/bootstrap/select.js +34 -29
  22. package/build/bootstrap/sort-link.js +68 -30
  23. package/build/cable-connection-pool.js +18 -12
  24. package/build/cable-subscription-pool.js +58 -19
  25. package/build/cable-subscription.d.ts +2 -2
  26. package/build/cable-subscription.d.ts.map +1 -1
  27. package/build/cable-subscription.js +12 -6
  28. package/build/cache-key-generator.js +11 -5
  29. package/build/can-can.d.ts +2 -2
  30. package/build/can-can.d.ts.map +1 -1
  31. package/build/can-can.js +56 -17
  32. package/build/channels-consumer.js +10 -5
  33. package/build/collection-loader.js +36 -31
  34. package/build/collection.d.ts.map +1 -1
  35. package/build/collection.js +58 -20
  36. package/build/command-submit-data.d.ts +1 -1
  37. package/build/command-submit-data.d.ts.map +1 -1
  38. package/build/command-submit-data.js +10 -4
  39. package/build/commands-pool.js +39 -33
  40. package/build/compose.js +5 -2
  41. package/build/config.d.ts +3 -3
  42. package/build/config.d.ts.map +1 -1
  43. package/build/config.js +40 -6
  44. package/build/custom-error.js +9 -4
  45. package/build/data-set-to-attributes.js +39 -3
  46. package/build/deserializer.js +57 -18
  47. package/build/destroy-error.js +9 -4
  48. package/build/devise.d.ts +1 -1
  49. package/build/devise.d.ts.map +1 -1
  50. package/build/devise.js +55 -16
  51. package/build/draggable-sort/controller.js +14 -11
  52. package/build/draggable-sort/index.js +69 -31
  53. package/build/draggable-sort/item.js +70 -32
  54. package/build/error-logger.js +14 -8
  55. package/build/error-messages.js +8 -5
  56. package/build/event-connection.js +18 -12
  57. package/build/event-emitter-listener.js +9 -4
  58. package/build/event-model-class.js +17 -11
  59. package/build/events.d.ts +2 -2
  60. package/build/events.d.ts.map +1 -1
  61. package/build/events.js +6 -5
  62. package/build/form.js +69 -27
  63. package/build/history-expo.js +11 -6
  64. package/build/history-react-native.js +14 -9
  65. package/build/history.js +5 -3
  66. package/build/index.js +5 -2
  67. package/build/inputs/attachment.js +29 -24
  68. package/build/inputs/auto-submit.js +42 -6
  69. package/build/inputs/checkbox.js +73 -35
  70. package/build/inputs/checkboxes.js +68 -30
  71. package/build/inputs/id-for-component.js +39 -3
  72. package/build/inputs/input-wrapper.js +12 -7
  73. package/build/inputs/input.js +101 -62
  74. package/build/inputs/money.js +85 -47
  75. package/build/inputs/name-for-component.js +39 -3
  76. package/build/inputs/select.js +32 -26
  77. package/build/instance-of-class-name.js +7 -5
  78. package/build/is-expo.js +8 -6
  79. package/build/key-value-store.js +10 -4
  80. package/build/link.js +21 -16
  81. package/build/logger.js +5 -2
  82. package/build/merge-styles.js +7 -4
  83. package/build/modal.js +15 -10
  84. package/build/model-class-require.js +39 -4
  85. package/build/model-events.js +20 -14
  86. package/build/model-name.js +44 -5
  87. package/build/model-prop-type.js +15 -9
  88. package/build/model-recipes-loader.js +14 -8
  89. package/build/model-recipes-model-loader.d.ts +1 -1
  90. package/build/model-recipes-model-loader.js +57 -18
  91. package/build/models-response-reader.js +46 -7
  92. package/build/models.js +10 -5
  93. package/build/money-formatter.d.ts +2 -2
  94. package/build/money-formatter.d.ts.map +1 -1
  95. package/build/money-formatter.js +19 -13
  96. package/build/not-loaded-error.js +5 -2
  97. package/build/params.js +19 -13
  98. package/build/preloaded.js +44 -5
  99. package/build/resize-observer.js +11 -6
  100. package/build/rest-props-validator.js +4 -2
  101. package/build/result.js +5 -2
  102. package/build/router/route.js +82 -40
  103. package/build/router/switch.js +56 -17
  104. package/build/router.js +59 -21
  105. package/build/routes-native.js +54 -15
  106. package/build/routes.js +49 -13
  107. package/build/run-last.js +5 -2
  108. package/build/serializer.js +8 -5
  109. package/build/services.js +10 -4
  110. package/build/session-status-updater.js +53 -14
  111. package/build/source-maps-loader.js +50 -11
  112. package/build/super-admin/config-reader.d.ts +2 -2
  113. package/build/super-admin/config-reader.js +45 -9
  114. package/build/super-admin/edit-page/edit-attribute-checkbox.js +61 -23
  115. package/build/super-admin/edit-page/edit-attribute-content.js +21 -16
  116. package/build/super-admin/edit-page/edit-attribute-input.js +59 -21
  117. package/build/super-admin/edit-page/edit-attribute.js +65 -27
  118. package/build/super-admin/edit-page.js +72 -34
  119. package/build/super-admin/has-edit-config.js +9 -4
  120. package/build/super-admin/index-page.js +17 -12
  121. package/build/super-admin/index.js +84 -46
  122. package/build/super-admin/layout/header/index.js +63 -25
  123. package/build/super-admin/layout/index.js +78 -40
  124. package/build/super-admin/layout/menu/index.js +47 -42
  125. package/build/super-admin/layout/menu/menu-content.js +60 -22
  126. package/build/super-admin/layout/menu/menu-item.js +23 -18
  127. package/build/super-admin/layout/no-access.js +20 -15
  128. package/build/super-admin/model-class-table.js +64 -26
  129. package/build/super-admin/models.js +38 -3
  130. package/build/super-admin/show-nav.js +61 -23
  131. package/build/super-admin/show-page/belongs-to-attribute-row.js +52 -14
  132. package/build/super-admin/show-page/index.js +63 -25
  133. package/build/super-admin/show-reflection-actions.js +62 -24
  134. package/build/super-admin/show-reflection-link.js +19 -14
  135. package/build/super-admin/show-reflection-page.js +63 -25
  136. package/build/table/column-content.js +54 -15
  137. package/build/table/column-identifier.js +5 -2
  138. package/build/table/column-visible.js +5 -2
  139. package/build/table/components/column.js +14 -9
  140. package/build/table/components/flat-list.js +14 -9
  141. package/build/table/components/header.js +16 -11
  142. package/build/table/components/row.js +16 -11
  143. package/build/table/filters/attribute-element.js +26 -21
  144. package/build/table/filters/filter-form.js +109 -71
  145. package/build/table/filters/filter.js +29 -24
  146. package/build/table/filters/index.js +43 -38
  147. package/build/table/filters/load-search-modal.js +64 -26
  148. package/build/table/filters/reflection-element.js +22 -17
  149. package/build/table/filters/save-search-modal.js +27 -22
  150. package/build/table/filters/scope-element.js +19 -14
  151. package/build/table/header-column-content.js +27 -22
  152. package/build/table/header-column.js +71 -33
  153. package/build/table/header-select.js +29 -24
  154. package/build/table/model-callback-args.js +39 -3
  155. package/build/table/model-column.js +75 -37
  156. package/build/table/model-row.js +79 -41
  157. package/build/table/select-calculator.js +52 -13
  158. package/build/table/settings/column-row.js +57 -19
  159. package/build/table/settings/download-action.js +31 -26
  160. package/build/table/settings/index.js +61 -23
  161. package/build/table/table-settings.js +70 -31
  162. package/build/table/table.js +196 -158
  163. package/build/table/use-sorting.js +12 -6
  164. package/build/table/widths.js +12 -9
  165. package/build/table/worker-plugins-check-all-checkbox.js +64 -26
  166. package/build/table/worker-plugins-checkbox.js +61 -23
  167. package/build/translated-attributes.js +5 -2
  168. package/build/translated-collections.js +14 -8
  169. package/build/updated-attribute.js +21 -15
  170. package/build/url-encode.js +10 -4
  171. package/build/use-breakpoint.js +58 -20
  172. package/build/use-can-can.js +21 -15
  173. package/build/use-collection.js +70 -32
  174. package/build/use-created-event.js +27 -22
  175. package/build/use-current-user-context.js +74 -36
  176. package/build/use-current-user.d.ts +2 -2
  177. package/build/use-current-user.d.ts.map +1 -1
  178. package/build/use-current-user.js +17 -11
  179. package/build/use-destroyed-event.js +18 -13
  180. package/build/use-event-emitter.d.ts +1 -2
  181. package/build/use-event-emitter.d.ts.map +1 -1
  182. package/build/use-event-emitter.js +14 -9
  183. package/build/use-event-listener.js +12 -7
  184. package/build/use-input.js +33 -28
  185. package/build/use-model-event.js +18 -13
  186. package/build/use-model.js +65 -27
  187. package/build/use-resize-observer.js +13 -8
  188. package/build/use-router.js +62 -24
  189. package/build/use-screen-layout.js +7 -5
  190. package/build/use-styles.js +52 -13
  191. package/build/use-updated-event.js +18 -13
  192. package/build/use-validation-errors.js +14 -9
  193. package/build/utils/button.js +33 -28
  194. package/build/utils/card.js +61 -23
  195. package/build/utils/checkbox.js +60 -22
  196. package/build/utils/checkboxes.js +78 -40
  197. package/build/utils/default-style.js +56 -15
  198. package/build/utils/header.js +12 -7
  199. package/build/utils/icon.js +61 -23
  200. package/build/utils/invalid-feedback.js +17 -12
  201. package/build/utils/modal.js +55 -17
  202. package/build/utils/text.js +14 -9
  203. package/build/validation-error.js +45 -6
  204. package/build/validation-errors.js +59 -19
  205. package/build/with-api-maker.js +52 -12
  206. package/build/with-collection.js +50 -12
  207. package/build/with-current-user.js +12 -7
  208. package/build/with-model.js +14 -9
  209. package/build/with-router.js +12 -7
  210. package/package.json +5 -3
  211. package/build/api.js.map +0 -1
  212. package/build/attribute-not-loaded-error.js.map +0 -1
  213. package/build/base-component.js.map +0 -1
  214. package/build/base-error.js.map +0 -1
  215. package/build/base-model/attribute.js.map +0 -1
  216. package/build/base-model/column.js.map +0 -1
  217. package/build/base-model/reflection.js.map +0 -1
  218. package/build/base-model/scope.js.map +0 -1
  219. package/build/base-model.js.map +0 -1
  220. package/build/bootstrap/attribute-row.js.map +0 -1
  221. package/build/bootstrap/attribute-rows.js.map +0 -1
  222. package/build/bootstrap/card.js.map +0 -1
  223. package/build/bootstrap/checkbox.js.map +0 -1
  224. package/build/bootstrap/checkboxes.js.map +0 -1
  225. package/build/bootstrap/index.js.map +0 -1
  226. package/build/bootstrap/input.js.map +0 -1
  227. package/build/bootstrap/invalid-feedback.js.map +0 -1
  228. package/build/bootstrap/paginate.js.map +0 -1
  229. package/build/bootstrap/radio-buttons.js.map +0 -1
  230. package/build/bootstrap/select.js.map +0 -1
  231. package/build/bootstrap/sort-link.js.map +0 -1
  232. package/build/cable-connection-pool.js.map +0 -1
  233. package/build/cable-subscription-pool.js.map +0 -1
  234. package/build/cable-subscription.js.map +0 -1
  235. package/build/cache-key-generator.js.map +0 -1
  236. package/build/can-can.js.map +0 -1
  237. package/build/channels-consumer.js.map +0 -1
  238. package/build/collection-loader.js.map +0 -1
  239. package/build/collection.js.map +0 -1
  240. package/build/command-submit-data.js.map +0 -1
  241. package/build/commands-pool.js.map +0 -1
  242. package/build/compose.js.map +0 -1
  243. package/build/config.js.map +0 -1
  244. package/build/custom-error.js.map +0 -1
  245. package/build/data-set-to-attributes.js.map +0 -1
  246. package/build/deserializer.js.map +0 -1
  247. package/build/destroy-error.js.map +0 -1
  248. package/build/devise.js.map +0 -1
  249. package/build/draggable-sort/controller.js.map +0 -1
  250. package/build/draggable-sort/index.js.map +0 -1
  251. package/build/draggable-sort/item.js.map +0 -1
  252. package/build/error-logger.js.map +0 -1
  253. package/build/error-messages.js.map +0 -1
  254. package/build/event-connection.js.map +0 -1
  255. package/build/event-emitter-listener.js.map +0 -1
  256. package/build/event-model-class.js.map +0 -1
  257. package/build/events.js.map +0 -1
  258. package/build/form.js.map +0 -1
  259. package/build/history-expo.js.map +0 -1
  260. package/build/history-react-native.js.map +0 -1
  261. package/build/history.js.map +0 -1
  262. package/build/index.js.map +0 -1
  263. package/build/inputs/attachment.js.map +0 -1
  264. package/build/inputs/auto-submit.js.map +0 -1
  265. package/build/inputs/checkbox.js.map +0 -1
  266. package/build/inputs/checkboxes.js.map +0 -1
  267. package/build/inputs/id-for-component.js.map +0 -1
  268. package/build/inputs/input-wrapper.js.map +0 -1
  269. package/build/inputs/input.js.map +0 -1
  270. package/build/inputs/money.js.map +0 -1
  271. package/build/inputs/name-for-component.js.map +0 -1
  272. package/build/inputs/select.js.map +0 -1
  273. package/build/instance-of-class-name.js.map +0 -1
  274. package/build/is-expo.js.map +0 -1
  275. package/build/key-value-store.js.map +0 -1
  276. package/build/link.js.map +0 -1
  277. package/build/logger.js.map +0 -1
  278. package/build/merge-styles.js.map +0 -1
  279. package/build/modal.js.map +0 -1
  280. package/build/model-class-require.js.map +0 -1
  281. package/build/model-events.js.map +0 -1
  282. package/build/model-name.js.map +0 -1
  283. package/build/model-prop-type.js.map +0 -1
  284. package/build/model-recipes-loader.js.map +0 -1
  285. package/build/model-recipes-model-loader.js.map +0 -1
  286. package/build/models-response-reader.js.map +0 -1
  287. package/build/models.js.map +0 -1
  288. package/build/money-formatter.js.map +0 -1
  289. package/build/not-loaded-error.js.map +0 -1
  290. package/build/params.js.map +0 -1
  291. package/build/preloaded.js.map +0 -1
  292. package/build/resize-observer.js.map +0 -1
  293. package/build/rest-props-validator.js.map +0 -1
  294. package/build/result.js.map +0 -1
  295. package/build/router/route.js.map +0 -1
  296. package/build/router/switch.js.map +0 -1
  297. package/build/router.js.map +0 -1
  298. package/build/routes-native.js.map +0 -1
  299. package/build/routes.js.map +0 -1
  300. package/build/run-last.js.map +0 -1
  301. package/build/serializer.js.map +0 -1
  302. package/build/services.js.map +0 -1
  303. package/build/session-status-updater.js.map +0 -1
  304. package/build/source-maps-loader.d.ts +0 -37
  305. package/build/source-maps-loader.d.ts.map +0 -1
  306. package/build/source-maps-loader.js.map +0 -1
  307. package/build/super-admin/config-reader.js.map +0 -1
  308. package/build/super-admin/edit-page/edit-attribute-checkbox.js.map +0 -1
  309. package/build/super-admin/edit-page/edit-attribute-content.js.map +0 -1
  310. package/build/super-admin/edit-page/edit-attribute-input.js.map +0 -1
  311. package/build/super-admin/edit-page/edit-attribute.js.map +0 -1
  312. package/build/super-admin/edit-page.js.map +0 -1
  313. package/build/super-admin/has-edit-config.js.map +0 -1
  314. package/build/super-admin/index-page.js.map +0 -1
  315. package/build/super-admin/index.js.map +0 -1
  316. package/build/super-admin/layout/header/index.js.map +0 -1
  317. package/build/super-admin/layout/index.js.map +0 -1
  318. package/build/super-admin/layout/menu/index.js.map +0 -1
  319. package/build/super-admin/layout/menu/menu-content.js.map +0 -1
  320. package/build/super-admin/layout/menu/menu-item.js.map +0 -1
  321. package/build/super-admin/layout/no-access.js.map +0 -1
  322. package/build/super-admin/model-class-table.js.map +0 -1
  323. package/build/super-admin/models.js.map +0 -1
  324. package/build/super-admin/show-nav.js.map +0 -1
  325. package/build/super-admin/show-page/belongs-to-attribute-row.js.map +0 -1
  326. package/build/super-admin/show-page/index.js.map +0 -1
  327. package/build/super-admin/show-reflection-actions.js.map +0 -1
  328. package/build/super-admin/show-reflection-link.js.map +0 -1
  329. package/build/super-admin/show-reflection-page.js.map +0 -1
  330. package/build/table/column-content.js.map +0 -1
  331. package/build/table/column-identifier.js.map +0 -1
  332. package/build/table/column-visible.js.map +0 -1
  333. package/build/table/components/column.js.map +0 -1
  334. package/build/table/components/flat-list.js.map +0 -1
  335. package/build/table/components/header.js.map +0 -1
  336. package/build/table/components/row.js.map +0 -1
  337. package/build/table/filters/attribute-element.js.map +0 -1
  338. package/build/table/filters/filter-form.js.map +0 -1
  339. package/build/table/filters/filter.js.map +0 -1
  340. package/build/table/filters/index.js.map +0 -1
  341. package/build/table/filters/load-search-modal.js.map +0 -1
  342. package/build/table/filters/reflection-element.js.map +0 -1
  343. package/build/table/filters/save-search-modal.js.map +0 -1
  344. package/build/table/filters/scope-element.js.map +0 -1
  345. package/build/table/header-column-content.js.map +0 -1
  346. package/build/table/header-column.js.map +0 -1
  347. package/build/table/header-select.js.map +0 -1
  348. package/build/table/model-callback-args.js.map +0 -1
  349. package/build/table/model-column.js.map +0 -1
  350. package/build/table/model-row.js.map +0 -1
  351. package/build/table/select-calculator.js.map +0 -1
  352. package/build/table/settings/column-row.js.map +0 -1
  353. package/build/table/settings/download-action.js.map +0 -1
  354. package/build/table/settings/index.js.map +0 -1
  355. package/build/table/table-settings.js.map +0 -1
  356. package/build/table/table.js.map +0 -1
  357. package/build/table/use-sorting.js.map +0 -1
  358. package/build/table/widths.js.map +0 -1
  359. package/build/table/worker-plugins-check-all-checkbox.js.map +0 -1
  360. package/build/table/worker-plugins-checkbox.js.map +0 -1
  361. package/build/translated-attributes.js.map +0 -1
  362. package/build/translated-collections.js.map +0 -1
  363. package/build/updated-attribute.js.map +0 -1
  364. package/build/url-encode.js.map +0 -1
  365. package/build/use-breakpoint.js.map +0 -1
  366. package/build/use-can-can.js.map +0 -1
  367. package/build/use-collection.js.map +0 -1
  368. package/build/use-created-event.js.map +0 -1
  369. package/build/use-current-user-context.js.map +0 -1
  370. package/build/use-current-user.js.map +0 -1
  371. package/build/use-destroyed-event.js.map +0 -1
  372. package/build/use-event-emitter.js.map +0 -1
  373. package/build/use-event-listener.js.map +0 -1
  374. package/build/use-input.js.map +0 -1
  375. package/build/use-model-event.js.map +0 -1
  376. package/build/use-model.js.map +0 -1
  377. package/build/use-resize-observer.js.map +0 -1
  378. package/build/use-router.js.map +0 -1
  379. package/build/use-screen-layout.js.map +0 -1
  380. package/build/use-styles.js.map +0 -1
  381. package/build/use-updated-event.js.map +0 -1
  382. package/build/use-validation-errors.js.map +0 -1
  383. package/build/utils/button.js.map +0 -1
  384. package/build/utils/card.js.map +0 -1
  385. package/build/utils/checkbox.js.map +0 -1
  386. package/build/utils/checkboxes.js.map +0 -1
  387. package/build/utils/default-style.js.map +0 -1
  388. package/build/utils/header.js.map +0 -1
  389. package/build/utils/icon.js.map +0 -1
  390. package/build/utils/invalid-feedback.js.map +0 -1
  391. package/build/utils/modal.js.map +0 -1
  392. package/build/utils/text.js.map +0 -1
  393. package/build/validation-error.js.map +0 -1
  394. package/build/validation-errors.js.map +0 -1
  395. package/build/with-api-maker.js.map +0 -1
  396. package/build/with-collection.js.map +0 -1
  397. package/build/with-current-user.js.map +0 -1
  398. package/build/with-model.js.map +0 -1
  399. package/build/with-router.js.map +0 -1
@@ -1,15 +1,53 @@
1
- import { useCallback } from "react";
2
- import config from "./config.js";
3
- import { Dimensions } from "react-native";
4
- import * as inflection from "inflection";
5
- import isExpo from "./is-expo.js";
6
- import useEventEmitter from "./use-event-emitter.js";
7
- import useEventListener from "./use-event-listener.js";
8
- import useShape from "set-state-compare/build/use-shape.js";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const react_1 = require("react");
40
+ const config_js_1 = __importDefault(require("./config.js"));
41
+ const react_native_1 = require("react-native");
42
+ const inflection = __importStar(require("inflection"));
43
+ const is_expo_js_1 = __importDefault(require("./is-expo.js"));
44
+ const use_event_emitter_js_1 = __importDefault(require("./use-event-emitter.js"));
45
+ const use_event_listener_js_1 = __importDefault(require("./use-event-listener.js"));
46
+ const use_shape_js_1 = __importDefault(require("set-state-compare/build/use-shape.js"));
9
47
  function calculateBreakPoint(breakpoints) {
10
48
  let windowWidth;
11
- if (isExpo) {
12
- windowWidth = Dimensions.get("window").width;
49
+ if (is_expo_js_1.default) {
50
+ windowWidth = react_native_1.Dimensions.get("window").width;
13
51
  }
14
52
  else if (typeof window !== "undefined" && window.innerWidth !== undefined) {
15
53
  // Use 'window.innerWidth' outside Expo because sometimes window width excludes scroll
@@ -38,25 +76,25 @@ function calculateBreakPoint(breakpoints) {
38
76
  }
39
77
  const sizeTypes = ["down", "up"];
40
78
  const useBreakpoint = (args = {}) => {
41
- const s = useShape(args);
42
- s.meta.breakpoints ||= config.getBreakpoints();
43
- const checkAndUpdateBreakpoint = useCallback(() => {
79
+ const s = (0, use_shape_js_1.default)(args);
80
+ s.meta.breakpoints ||= config_js_1.default.getBreakpoints();
81
+ const checkAndUpdateBreakpoint = (0, react_1.useCallback)(() => {
44
82
  const breakpoint = calculateBreakPoint(s.m.breakpoints);
45
83
  if (breakpoint.name != s.s.breakpoint.name) {
46
84
  s.set({ breakpoint });
47
85
  }
48
86
  }, []);
49
- const onDimensionsChange = useCallback(() => {
87
+ const onDimensionsChange = (0, react_1.useCallback)(() => {
50
88
  checkAndUpdateBreakpoint();
51
89
  }, []);
52
- const onBreakpointsChange = useCallback(({ newValue }) => {
90
+ const onBreakpointsChange = (0, react_1.useCallback)(({ newValue }) => {
53
91
  s.meta.breakpoints = newValue;
54
92
  checkAndUpdateBreakpoint();
55
93
  }, []);
56
94
  s.useStates({
57
95
  breakpoint: () => calculateBreakPoint(s.m.breakpoints)
58
96
  });
59
- const styling = useCallback((args) => {
97
+ const styling = (0, react_1.useCallback)((args) => {
60
98
  const style = Object.assign({}, args.base);
61
99
  for (const breakpointData of s.m.breakpoints) {
62
100
  const breakpoint = breakpointData[0];
@@ -69,12 +107,12 @@ const useBreakpoint = (args = {}) => {
69
107
  }
70
108
  return style;
71
109
  }, []);
72
- useEventEmitter(config.getEvents(), "onBreakpointsChange", onBreakpointsChange);
73
- useEventListener(Dimensions, "change", onDimensionsChange);
110
+ (0, use_event_emitter_js_1.default)(config_js_1.default.getEvents(), "onBreakpointsChange", onBreakpointsChange);
111
+ (0, use_event_listener_js_1.default)(react_native_1.Dimensions, "change", onDimensionsChange);
74
112
  return {
75
113
  styling,
76
114
  ...s.s.breakpoint
77
115
  };
78
116
  };
79
- export default useBreakpoint;
80
- //# sourceMappingURL=use-breakpoint.js.map
117
+ exports.default = useBreakpoint;
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWJyZWFrcG9pbnQuanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbInVzZS1icmVha3BvaW50LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsaUNBQWlDO0FBQ2pDLDREQUFnQztBQUNoQywrQ0FBdUM7QUFDdkMsdURBQXdDO0FBQ3hDLDhEQUFpQztBQUNqQyxrRkFBb0Q7QUFDcEQsb0ZBQXNEO0FBQ3RELHdGQUEyRDtBQUUzRCxTQUFTLG1CQUFtQixDQUFDLFdBQVc7SUFDdEMsSUFBSSxXQUFXLENBQUE7SUFFZixJQUFJLG9CQUFNLEVBQUUsQ0FBQztRQUNYLFdBQVcsR0FBRyx5QkFBVSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUE7SUFDOUMsQ0FBQztTQUFNLElBQUksT0FBTyxNQUFNLEtBQUssV0FBVyxJQUFJLE1BQU0sQ0FBQyxVQUFVLEtBQUssU0FBUyxFQUFFLENBQUM7UUFDNUUsc0ZBQXNGO1FBQ3RGLFdBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFBO0lBQ2pDLENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFBO0lBQy9ELENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUE7SUFFakIsS0FBSyxNQUFNLGNBQWMsSUFBSSxXQUFXLEVBQUUsQ0FBQztRQUN6QyxNQUFNLFVBQVUsR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUE7UUFDcEMsTUFBTSxLQUFLLEdBQUcsY0FBYyxDQUFDLENBQUMsQ0FBQyxDQUFBO1FBRS9CLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxJQUFJLFdBQVcsSUFBSSxLQUFLLEVBQUUsQ0FBQztZQUN6QyxNQUFNLENBQUMsSUFBSSxHQUFHLFVBQVUsQ0FBQTtZQUN4QixNQUFNLENBQUMsR0FBRyxVQUFVLE1BQU0sQ0FBQyxHQUFHLElB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QUFBO0lBRU4sSUFBQSw4QkFBZSxFQUFDLG1CQUFNLENBQUMsU0FBUyxFQUFFLEVBQUUscUJBQXFCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQTtJQUMvRSxJQUFBLCtCQUFnQixFQUFDLHlCQUFVLEVBQUUsUUFBUSxFQUFFLGtCQUFrQixDQUFDLENBQUE7SUFFMUQsT0FBTztRQUNMLE9BQU87UUFDUCxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsVUFBVTtLQUNsQixDQUFBO0FBQ0gsQ0FBQyxDQUFBO0FBRUQsa0JBQWUsYUFBYSxDQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHt1c2VDYWxsYmFja30gZnJvbSBcInJlYWN0XCJcbmltcG9ydCBjb25maWcgZnJvbSBcIi4vY29uZmlnLmpzXCJcbmltcG9ydCB7RGltZW5zaW9uc30gZnJvbSBcInJlYWN0LW5hdGl2ZVwiXG5pbXBvcnQgKiBhcyBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCJcbmltcG9ydCBpc0V4cG8gZnJvbSBcIi4vaXMtZXhwby5qc1wiXG5pbXBvcnQgdXNlRXZlbnRFbWl0dGVyIGZyb20gXCIuL3VzZS1ldmVudC1lbWl0dGVyLmpzXCJcbmltcG9ydCB1c2VFdmVudExpc3RlbmVyIGZyb20gXCIuL3VzZS1ldmVudC1saXN0ZW5lci5qc1wiXG5pbXBvcnQgdXNlU2hhcGUgZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL3VzZS1zaGFwZS5qc1wiXG5cbmZ1bmN0aW9uIGNhbGN1bGF0ZUJyZWFrUG9pbnQoYnJlYWtwb2ludHMpIHtcbiAgbGV0IHdpbmRvd1dpZHRoXG5cbiAgaWYgKGlzRXhwbykge1xuICAgIHdpbmRvd1dpZHRoID0gRGltZW5zaW9ucy5nZXQoXCJ3aW5kb3dcIikud2lkdGhcbiAgfSBlbHNlIGlmICh0eXBlb2Ygd2luZG93ICE9PSBcInVuZGVmaW5lZFwiICYmIHdpbmRvdy5pbm5lcldpZHRoICE9PSB1bmRlZmluZWQpIHtcbiAgICAvLyBVc2UgJ3dpbmRvdy5pbm5lcldpZHRoJyBvdXRzaWRlIEV4cG8gYmVjYXVzZSBzb21ldGltZXMgd2luZG93IHdpZHRoIGV4Y2x1ZGVzIHNjcm9sbFxuICAgIHdpbmRvd1dpZHRoID0gd2luZG93LmlubmVyV2lkdGhcbiAgfSBlbHNlIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoXCJEaWRuJ3Qga25vdyB3aGVyZSB0byBnZXQgd2luZG93IHdpZHRoIGZyb21cIilcbiAgfVxuXG4gIGNvbnN0IHJlc3VsdCA9IHt9XG5cbiAgZm9yIChjb25zdCBicmVha3BvaW50RGF0YSBvZiBicmVha3BvaW50cykge1xuICAgIGNvbnN0IGJyZWFrcG9pbnQgPSBicmVha3BvaW50RGF0YVswXVxuICAgIGNvbnN0IHdpZHRoID0gYnJlYWtwb2ludERhdGFbMV1cblxuICAgIGlmICghcmVzdWx0Lm5hbWUgJiYgd2luZG93V2lkdGggPj0gd2lkdGgpIHtcbiAgICAgIHJlc3VsdC5uYW1lID0gYnJlYWtwb2ludFxuICAgICAgcmVzdWx0W2Ake2JyZWFrcG9pbnR9RG93bmBdID0gdHJ1ZVxuICAgIH0gZWxzZSB7XG4gICAgICByZXN1bHRbYCR7YnJlYWtwb2ludH1Eb3duYF0gPSAhcmVzdWx0Lm5hbWVcbiAgICB9XG5cbiAgICByZXN1bHRbYCR7YnJlYWtwb2ludH1VcGBdID0gQm9vbGVhbihyZXN1bHQubmFtZSlcbiAgfVxuXG4gIGlmIChyZXN1bHQubmFtZSkge1xuICAgIHJldHVybiByZXN1bHRcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcihgQ291bGRuJ3Qgbm90IGZpbmQgYnJlYWtwb2ludCBmcm9tIHdpbmRvdyB3aWR0aDogJHt3aW5kb3dXaWR0aH1gKVxufVxuXG5jb25zdCBzaXplVHlwZXMgPSBbXCJkb3duXCIsIFwidXBcIl1cblxuY29uc3QgdXNlQnJlYWtwb2ludCA9IChhcmdzID0ge30pID0+IHtcbiAgY29uc3QgcyA9IHVzZVNoYXBlKGFyZ3MpXG5cbiAgcy5tZXRhLmJyZWFrcG9pbnRzIHx8PSBjb25maWcuZ2V0QnJlYWtwb2ludHMoKVxuXG4gIGNvbnN0IGNoZWNrQW5kVXBkYXRlQnJlYWtwb2ludCA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjb25zdCBicmVha3BvaW50ID0gY2FsY3VsYXRlQnJlYWtQb2ludChzLm0uYnJlYWtwb2ludHMpXG5cbiAgICBpZiAoYnJlYWtwb2ludC5uYW1lICE9IHMucy5icmVha3BvaW50Lm5hbWUpIHtcbiAgICAgIHMuc2V0KHticmVha3BvaW50fSlcbiAgICB9XG4gIH0sIFtdKVxuXG4gIGNvbnN0IG9uRGltZW5zaW9uc0NoYW5nZSA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBjaGVja0FuZFVwZGF0ZUJyZWFrcG9pbnQoKVxuICB9LCBbXSlcblxuICBjb25zdCBvbkJyZWFrcG9pbnRzQ2hhbmdlID0gdXNlQ2FsbGJhY2soKHtuZXdWYWx1ZX0pID0+IHtcbiAgICBzLm1ldGEuYnJlYWtwb2ludHMgPSBuZXdWYWx1ZVxuICAgIGNoZWNrQW5kVXBkYXRlQnJlYWtwb2ludCgpXG4gIH0sIFtdKVxuXG4gIHMudXNlU3RhdGVzKHtcbiAgICBicmVha3BvaW50OiAoKSA9PiBjYWxjdWxhdGVCcmVha1BvaW50KHMubS5icmVha3BvaW50cylcbiAgfSlcblxuICBjb25zdCBzdHlsaW5nID0gdXNlQ2FsbGJhY2soKGFyZ3MpID0+IHtcbiAgICBjb25zdCBzdHlsZSA9IE9iamVjdC5hc3NpZ24oe30sIGFyZ3MuYmFzZSlcblxuICAgIGZvciAoY29uc3QgYnJlYWtwb2ludERhdGEgb2Ygcy5tLmJyZWFrcG9pbnRzKSB7XG4gICAgICBjb25zdCBicmVha3BvaW50ID0gYnJlYWtwb2ludERhdGFbMF1cblxuICAgICAgZm9yIChjb25zdCBzaXplVHlwZSBvZiBzaXplVHlwZXMpIHtcbiAgICAgICAgY29uc3QgYnJlYWtwb2ludFdpdGhTaXplVHlwZSA9IGAke2JyZWFrcG9pbnR9JHtpbmZsZWN0aW9uLmNhbWVsaXplKHNpemVUeXBlKX1gXG5cbiAgICAgICAgaWYgKGFyZ3NbYnJlYWtwb2ludFdpdGhTaXplVHlwZV0gJiYgcy5zLmJyZWFrcG9pbnRbYnJlYWtwb2ludFdpdGhTaXplVHlwZV0pIHtcbiAgICAgICAgICBPYmplY3QuYXNzaWduKHN0eWxlLCBhcmdzW2JyZWFrcG9pbnRXaXRoU2l6ZVR5cGVdKVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuXG4gICAgcmV0dXJuIHN0eWxlXG4gIH0sIFtdKVxuXG4gIHVzZUV2ZW50RW1pdHRlcihjb25maWcuZ2V0RXZlbnRzKCksIFwib25CcmVha3BvaW50c0NoYW5nZVwiLCBvbkJyZWFrcG9pbnRzQ2hhbmdlKVxuICB1c2VFdmVudExpc3RlbmVyKERpbWVuc2lvbnMsIFwiY2hhbmdlXCIsIG9uRGltZW5zaW9uc0NoYW5nZSlcblxuICByZXR1cm4ge1xuICAgIHN0eWxpbmcsXG4gICAgLi4ucy5zLmJyZWFrcG9pbnRcbiAgfVxufVxuXG5leHBvcnQgZGVmYXVsdCB1c2VCcmVha3BvaW50XG4iXX0=
@@ -1,31 +1,37 @@
1
- import CanCan from "./can-can.js";
2
- import { useCallback, useMemo } from "react";
3
- import useCurrentUser from "./use-current-user.js";
4
- import useEventEmitter from "./use-event-emitter.js";
5
- import useShape from "set-state-compare/build/use-shape.js";
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.default = useCanCan;
7
+ const can_can_js_1 = __importDefault(require("./can-can.js"));
8
+ const react_1 = require("react");
9
+ const use_current_user_js_1 = __importDefault(require("./use-current-user.js"));
10
+ const use_event_emitter_js_1 = __importDefault(require("./use-event-emitter.js"));
11
+ const use_shape_js_1 = __importDefault(require("set-state-compare/build/use-shape.js"));
6
12
  /**
7
13
  * @param {function() : Array} abilitiesCallback
8
14
  * @param {Array} dependencies
9
15
  * @returns {CanCan}
10
16
  */
11
- export default function useCanCan(abilitiesCallback, dependencies) {
12
- const currentUser = useCurrentUser();
13
- const s = useShape({ abilitiesCallback });
17
+ function useCanCan(abilitiesCallback, dependencies) {
18
+ const currentUser = (0, use_current_user_js_1.default)();
19
+ const s = (0, use_shape_js_1.default)({ abilitiesCallback });
14
20
  s.useStates({
15
21
  canCan: null,
16
22
  lastUpdate: () => new Date()
17
23
  });
18
- const loadAbilities = useCallback(async () => {
19
- const canCan = CanCan.current();
24
+ const loadAbilities = (0, react_1.useCallback)(async () => {
25
+ const canCan = can_can_js_1.default.current();
20
26
  const abilities = s.p.abilitiesCallback();
21
27
  await canCan.loadAbilities(abilities);
22
28
  s.set({ canCan, lastUpdate: new Date() });
23
29
  }, []);
24
- const onResetAbilities = useCallback(() => {
30
+ const onResetAbilities = (0, react_1.useCallback)(() => {
25
31
  s.set({ canCan: null }, { silent: true });
26
32
  loadAbilities();
27
33
  }, []);
28
- const loadAbilitiesOnNew = useCallback(async () => {
34
+ const loadAbilitiesOnNew = (0, react_1.useCallback)(async () => {
29
35
  const canCan = s.s.canCan;
30
36
  s.set({ canCan: null }, { silent: true });
31
37
  if (canCan) {
@@ -39,10 +45,10 @@ export default function useCanCan(abilitiesCallback, dependencies) {
39
45
  // @ts-expect-error
40
46
  dependencies = [currentUser?.id()];
41
47
  }
42
- useMemo(() => {
48
+ (0, react_1.useMemo)(() => {
43
49
  loadAbilitiesOnNew();
44
50
  }, dependencies);
45
- useEventEmitter(CanCan.current().events, "onResetAbilities", onResetAbilities);
51
+ (0, use_event_emitter_js_1.default)(can_can_js_1.default.current().events, "onResetAbilities", onResetAbilities);
46
52
  return s.s.canCan;
47
53
  }
48
- //# sourceMappingURL=use-can-can.js.map
54
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWNhbi1jYW4uanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbInVzZS1jYW4tY2FuLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBV0EsNEJBK0NDO0FBMURELDhEQUFpQztBQUNqQyxpQ0FBMEM7QUFDMUMsZ0ZBQWtEO0FBQ2xELGtGQUFvRDtBQUNwRCx3RkFBMkQ7QUFFM0Q7Ozs7R0FJRztBQUNILFNBQXdCLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRSxZQUFZO0lBQy9ELE1BQU0sV0FBVyxHQUFHLElBQUEsNkJBQWMsR0FBRSxDQUFBO0lBQ3BDLE1BQU0sQ0FBQyxHQUFHLElBQUEsc0JBQVEsRUFBQyxFQUFDLGlCQUFpQixFQUFDLENBQUMsQ0FBQTtJQUV2QyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ1YsTUFBTSxFQUFFLElBQUk7UUFDWixVQUFVLEVBQUUsR0FBRyxFQUFFLENBQUMsSUFBSSxJQUFJLEVBQUU7S0FDN0IsQ0FBQyxDQUFBO0lBRUYsTUFBTSxhQUFhLEdBQUcsSUFBQSxtQkFBVyxFQUFDLEtBQUssSUFBSSxFQUFFO1FBQzNDLE1BQU0sTUFBTSxHQUFHLG9CQUFNLENBQUMsT0FBTyxFQUFFLENBQUE7UUFDL0IsTUFBTSxTQUFTLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO1FBRXpDLE1BQU0sTUFBTSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsQ0FBQTtRQUVyQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJLElBQUksRUFBRSxFQUFDLENBQUMsQ0FBQTtJQUN6QyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFTixNQUFNLGdCQUFnQixHQUFHLElBQUEsbUJBQVcsRUFBQyxHQUFHLEVBQUU7UUFDeEMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMsRUFBRSxFQUFDLE1BQU0sRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFBO1FBQ3JDLGFBQWEsRUFBRSxDQUFBO0lBQ2pCLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUVOLE1BQU0sa0JBQWtCLEdBQUcsSUFBQSxtQkFBVyxFQUFDLEtBQUssSUFBSSxFQUFFO1FBQ2hELE1BQU0sTUFBTSxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO1FBRXpCLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLEVBQUUsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFDLENBQUMsQ0FBQTtRQUVyQyxJQUFJLE1BQU0sRUFBRSxDQUFDO1lBQ1gsTUFBTSxNQUFNLEVBQUUsY0FBYyxFQUFFLENBQUE7UUFDaEMsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLGFBQWEsRUFBRSxDQUFBO1FBQ3ZCLENBQUM7SUFDSCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUE7SUFFTixJQUFJLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDbEIsbUJBQW1CO1FBQ25CLFlBQVksR0FBRyxDQUFDLFdBQVcsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBQ3BDLENBQUM7SUFFRCxJQUFBLGVBQU8sRUFBQyxHQUFHLEVBQUU7UUFDWCxrQkFBa0IsRUFBRSxDQUFBO0lBQ3RCLENBQUMsRUFBRSxZQUFZLENBQUMsQ0FBQTtJQUVoQixJQUFBLDhCQUFlLEVBQUMsb0JBQU0sQ0FBQyxPQUFPLEVBQUUsQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQTtJQUU5RSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFBO0FBQ25CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgQ2FuQ2FuIGZyb20gXCIuL2Nhbi1jYW4uanNcIlxuaW1wb3J0IHt1c2VDYWxsYmFjaywgdXNlTWVtb30gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB1c2VDdXJyZW50VXNlciBmcm9tIFwiLi91c2UtY3VycmVudC11c2VyLmpzXCJcbmltcG9ydCB1c2VFdmVudEVtaXR0ZXIgZnJvbSBcIi4vdXNlLWV2ZW50LWVtaXR0ZXIuanNcIlxuaW1wb3J0IHVzZVNoYXBlIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9idWlsZC91c2Utc2hhcGUuanNcIlxuXG4vKipcbiAqIEBwYXJhbSB7ZnVuY3Rpb24oKSA6IEFycmF5fSBhYmlsaXRpZXNDYWxsYmFja1xuICogQHBhcmFtIHtBcnJheX0gZGVwZW5kZW5jaWVzXG4gKiBAcmV0dXJucyB7Q2FuQ2FufVxuICovXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VDYW5DYW4oYWJpbGl0aWVzQ2FsbGJhY2ssIGRlcGVuZGVuY2llcykge1xuICBjb25zdCBjdXJyZW50VXNlciA9IHVzZUN1cnJlbnRVc2VyKClcbiAgY29uc3QgcyA9IHVzZVNoYXBlKHthYmlsaXRpZXNDYWxsYmFja30pXG5cbiAgcy51c2VTdGF0ZXMoe1xuICAgIGNhbkNhbjogbnVsbCxcbiAgICBsYXN0VXBkYXRlOiAoKSA9PiBuZXcgRGF0ZSgpXG4gIH0pXG5cbiAgY29uc3QgbG9hZEFiaWxpdGllcyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBjb25zdCBjYW5DYW4gPSBDYW5DYW4uY3VycmVudCgpXG4gICAgY29uc3QgYWJpbGl0aWVzID0gcy5wLmFiaWxpdGllc0NhbGxiYWNrKClcblxuICAgIGF3YWl0IGNhbkNhbi5sb2FkQWJpbGl0aWVzKGFiaWxpdGllcylcblxuICAgIHMuc2V0KHtjYW5DYW4sIGxhc3RVcGRhdGU6IG5ldyBEYXRlKCl9KVxuICB9LCBbXSlcblxuICBjb25zdCBvblJlc2V0QWJpbGl0aWVzID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIHMuc2V0KHtjYW5DYW46IG51bGx9LCB7c2lsZW50OiB0cnVlfSlcbiAgICBsb2FkQWJpbGl0aWVzKClcbiAgfSwgW10pXG5cbiAgY29uc3QgbG9hZEFiaWxpdGllc09uTmV3ID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGNhbkNhbiA9IHMucy5jYW5DYW5cblxuICAgIHMuc2V0KHtjYW5DYW46IG51bGx9LCB7c2lsZW50OiB0cnVlfSlcblxuICAgIGlmIChjYW5DYW4pIHtcbiAgICAgIGF3YWl0IGNhbkNhbj8ucmVzZXRBYmlsaXRpZXMoKVxuICAgIH0gZWxzZSB7XG4gICAgICBhd2FpdCBsb2FkQWJpbGl0aWVzKClcbiAgICB9XG4gIH0sIFtdKVxuXG4gIGlmICghZGVwZW5kZW5jaWVzKSB7XG4gICAgLy8gQHRzLWV4cGVjdC1lcnJvclxuICAgIGRlcGVuZGVuY2llcyA9IFtjdXJyZW50VXNlcj8uaWQoKV1cbiAgfVxuXG4gIHVzZU1lbW8oKCkgPT4ge1xuICAgIGxvYWRBYmlsaXRpZXNPbk5ldygpXG4gIH0sIGRlcGVuZGVuY2llcylcblxuICB1c2VFdmVudEVtaXR0ZXIoQ2FuQ2FuLmN1cnJlbnQoKS5ldmVudHMsIFwib25SZXNldEFiaWxpdGllc1wiLCBvblJlc2V0QWJpbGl0aWVzKVxuXG4gIHJldHVybiBzLnMuY2FuQ2FuXG59XG4iXX0=
@@ -1,11 +1,49 @@
1
- import debounce from "debounce";
2
- import { digg } from "diggerize";
3
- import * as inflection from "inflection";
4
- import ModelEvents from "./model-events.js";
5
- import { useCallback, useLayoutEffect, useMemo } from "react";
6
- import useCreatedEvent from "./use-created-event.js";
7
- import useShape from "set-state-compare/build/use-shape.js";
8
- import useQueryParams from "on-location-changed/build/use-query-params.js";
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ const debounce_1 = __importDefault(require("debounce"));
40
+ const diggerize_1 = require("diggerize");
41
+ const inflection = __importStar(require("inflection"));
42
+ const model_events_js_1 = __importDefault(require("./model-events.js"));
43
+ const react_1 = require("react");
44
+ const use_created_event_js_1 = __importDefault(require("./use-created-event.js"));
45
+ const use_shape_js_1 = __importDefault(require("set-state-compare/build/use-shape.js"));
46
+ const use_query_params_js_1 = __importDefault(require("on-location-changed/build/use-query-params.js"));
9
47
  /**
10
48
  * @param {object} props
11
49
  * @param {Record<string, string[]>} props.abilities
@@ -47,17 +85,17 @@ const useCollection = (props, cacheKeys = []) => {
47
85
  if (Object.keys(restProps).length > 0) {
48
86
  throw new Error(`Unknown props given to useCollection: ${Object.keys(restProps).join(", ")}`);
49
87
  }
50
- const s = useShape(props);
51
- const queryName = initialQueryName || digg(modelClass.modelClassData(), "collectionKey");
52
- s.meta.queryParams = useQueryParams();
53
- const hasQParams = useCallback(() => {
88
+ const s = (0, use_shape_js_1.default)(props);
89
+ const queryName = initialQueryName || (0, diggerize_1.digg)(modelClass.modelClassData(), "collectionKey");
90
+ s.meta.queryParams = (0, use_query_params_js_1.default)();
91
+ const hasQParams = (0, react_1.useCallback)(() => {
54
92
  if (s.s.queryQName in s.m.queryParams)
55
93
  return true;
56
94
  return false;
57
95
  }, []);
58
- const qParams = useCallback(() => {
96
+ const qParams = (0, react_1.useCallback)(() => {
59
97
  if (hasQParams())
60
- return JSON.parse(digg(s.m.queryParams, s.s.queryQName));
98
+ return JSON.parse((0, diggerize_1.digg)(s.m.queryParams, s.s.queryQName));
61
99
  return {};
62
100
  }, []);
63
101
  s.useStates({
@@ -87,7 +125,7 @@ const useCollection = (props, cacheKeys = []) => {
87
125
  else {
88
126
  modelIdsCacheString = s.s.models.map((model) => model.cacheKey())?.join("---");
89
127
  }
90
- const loadOverallCount = useCallback(async () => {
128
+ const loadOverallCount = (0, react_1.useCallback)(async () => {
91
129
  const baseQuery = s.p.collection || s.p.modelClass.all();
92
130
  const overallCount = await baseQuery.count();
93
131
  s.set({
@@ -96,7 +134,7 @@ const useCollection = (props, cacheKeys = []) => {
96
134
  showNoRecordsFoundContent: showNoRecordsFoundContent({ overallCount })
97
135
  });
98
136
  }, []);
99
- const loadQParams = useCallback(() => {
137
+ const loadQParams = (0, react_1.useCallback)(() => {
100
138
  const qParamsToSet = hasQParams() ? qParams() : Object.assign({}, s.props.defaultParams);
101
139
  const searchParams = [];
102
140
  if (s.m.queryParams[s.s.querySName]) {
@@ -110,7 +148,7 @@ const useCollection = (props, cacheKeys = []) => {
110
148
  searchParams
111
149
  });
112
150
  }, []);
113
- const loadModels = useCallback(async () => {
151
+ const loadModels = (0, react_1.useCallback)(async () => {
114
152
  let query = s.props.collection?.clone() || s.p.modelClass.ransack();
115
153
  if (s.props.pagination) {
116
154
  const page = s.m.queryParams[s.s.queryPageName] || 1;
@@ -167,19 +205,19 @@ const useCollection = (props, cacheKeys = []) => {
167
205
  showNoRecordsFoundContent: showNoRecordsFoundContent({ models })
168
206
  });
169
207
  }, []);
170
- const loadModelsDebounce = useCallback(debounce(loadModels), []);
171
- const onModelDestroyed = useCallback((args) => {
208
+ const loadModelsDebounce = (0, react_1.useCallback)((0, debounce_1.default)(loadModels), []);
209
+ const onModelDestroyed = (0, react_1.useCallback)((args) => {
172
210
  s.set({
173
211
  models: s.s.models.filter((model) => model.id() != args.model.id())
174
212
  });
175
213
  }, []);
176
- const onModelUpdated = useCallback((args) => {
177
- const updatedModel = digg(args, "model");
214
+ const onModelUpdated = (0, react_1.useCallback)((args) => {
215
+ const updatedModel = (0, diggerize_1.digg)(args, "model");
178
216
  const foundModel = s.s.models.find((model) => model.id() == updatedModel.id());
179
217
  if (foundModel)
180
218
  loadModelsDebounce();
181
219
  }, []);
182
- const showNoRecordsAvailableContent = useCallback((args) => {
220
+ const showNoRecordsAvailableContent = (0, react_1.useCallback)((args) => {
183
221
  let models, overallCount;
184
222
  if (args.models !== undefined) {
185
223
  models = args.models;
@@ -198,7 +236,7 @@ const useCollection = (props, cacheKeys = []) => {
198
236
  if (models.length === 0 && overallCount === 0 && s.p.noRecordsAvailableContent)
199
237
  return true;
200
238
  }, []);
201
- const showNoRecordsFoundContent = useCallback((args) => {
239
+ const showNoRecordsFoundContent = (0, react_1.useCallback)((args) => {
202
240
  let models, overallCount;
203
241
  if (args.models !== undefined) {
204
242
  models = args.models;
@@ -220,10 +258,10 @@ const useCollection = (props, cacheKeys = []) => {
220
258
  if (models.length === 0 && s.props.noRecordsFoundContent)
221
259
  return true;
222
260
  }, []);
223
- const onCreated = useCallback(() => {
261
+ const onCreated = (0, react_1.useCallback)(() => {
224
262
  loadModelsDebounce();
225
263
  }, []);
226
- useMemo(() => {
264
+ (0, react_1.useMemo)(() => {
227
265
  if (!("ifCondition" in s.props) || s.props.ifCondition) {
228
266
  loadQParams();
229
267
  loadModels();
@@ -236,18 +274,18 @@ const useCollection = (props, cacheKeys = []) => {
236
274
  s.m.queryParams[s.s.querySName],
237
275
  collection
238
276
  ].concat(cacheKeys));
239
- useMemo(() => {
277
+ (0, react_1.useMemo)(() => {
240
278
  if (s.props.noRecordsAvailableContent) {
241
279
  loadOverallCount();
242
280
  }
243
281
  }, []);
244
- useCreatedEvent(s.p.modelClass, onCreated);
245
- useLayoutEffect(() => {
282
+ (0, use_created_event_js_1.default)(s.p.modelClass, onCreated);
283
+ (0, react_1.useLayoutEffect)(() => {
246
284
  const connections = [];
247
285
  if (s.s.models) {
248
286
  for (const model of s.s.models) {
249
- connections.push(ModelEvents.connectUpdated(model, onModelUpdated));
250
- connections.push(ModelEvents.connectDestroyed(model, onModelDestroyed));
287
+ connections.push(model_events_js_1.default.connectUpdated(model, onModelUpdated));
288
+ connections.push(model_events_js_1.default.connectDestroyed(model, onModelDestroyed));
251
289
  }
252
290
  }
253
291
  return () => {
@@ -262,5 +300,5 @@ const useCollection = (props, cacheKeys = []) => {
262
300
  result[modelVariableName] = s.s.models;
263
301
  return result;
264
302
  };
265
- export default useCollection;
266
- //# sourceMappingURL=use-collection.js.map
303
+ exports.default = useCollection;
304
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWNvbGxlY3Rpb24uanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbInVzZS1jb2xsZWN0aW9uLmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsd0RBQStCO0FBQy9CLHlDQUE4QjtBQUM5Qix1REFBd0M7QUFDeEMsd0VBQTJDO0FBQzNDLGlDQUEyRDtBQUMzRCxrRkFBb0Q7QUFDcEQsd0ZBQTJEO0FBQzNELHdHQUEwRTtBQUUxRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FtQ0c7QUFDSCxNQUFNLGFBQWEsR0FBRyxDQUFDLEtBQUssRUFBRSxTQUFTLEdBQUcsRUFBRSxFQUFFLEVBQUU7SUFDOUMsTUFBTSxFQUNKLFNBQVMsRUFDVCxVQUFVLEVBQ1YsYUFBYSxFQUNiLE9BQU8sRUFDUCxXQUFXLEVBQ1gsS0FBSyxFQUNMLFVBQVUsRUFDVix5QkFBeUIsR0FBRyxTQUFTLEVBQ3JDLHFCQUFxQixHQUFHLFNBQVMsRUFDakMsY0FBYyxFQUNkLFVBQVUsR0FBRyxLQUFLLEVBQ2xCLFFBQVEsR0FBRyxFQUFFLEVBQ2IsV0FBVyxFQUNYLFNBQVMsRUFBRSxnQkFBZ0IsRUFDM0IsT0FBTyxFQUNQLE1BQU0sR0FBRyxFQUFFLEVBQ1gsYUFBYSxFQUNiLEdBQUcsU0FBUyxFQUNiLEdBQUcsS0FBSyxDQUFBO0lBRVQsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUE7SUFDL0YsQ0FBQztJQUVELE1BQU0sQ0FBQyxHQUFHLElBQUEsc0JBQVEsRUFBQyxLQUFLLENBQUMsQ0FBQTtJQUN6QixNQUFNLFNBQVMs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O1lBQzFCLENBQUM7UUFDSCxDQUFDLENBQUE7SUFDSCxDQUFDLEVBQUUsQ0FBQyxtQkFBbUIsQ0FBQyxDQUFDLENBQUE7SUFFekIsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFBO0lBQ3pDLE1BQU0saUJBQWlCLEdBQUcsVUFBVSxDQUFDLFNBQVMsQ0FBQyxVQUFVLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUMsQ0FBQTtJQUUzRyxNQUFNLENBQUMsbUJBQW1CLEdBQUcsbUJBQW1CLENBQUE7SUFDaEQsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUE7SUFFdEMsT0FBTyxNQUFNLENBQUE7QUFDZixDQUFDLENBQUE7QUFFRCxrQkFBZSxhQUFhLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgZGVib3VuY2UgZnJvbSBcImRlYm91bmNlXCJcbmltcG9ydCB7ZGlnZ30gZnJvbSBcImRpZ2dlcml6ZVwiXG5pbXBvcnQgKiBhcyBpbmZsZWN0aW9uIGZyb20gXCJpbmZsZWN0aW9uXCJcbmltcG9ydCBNb2RlbEV2ZW50cyBmcm9tIFwiLi9tb2RlbC1ldmVudHMuanNcIlxuaW1wb3J0IHt1c2VDYWxsYmFjaywgdXNlTGF5b3V0RWZmZWN0LCB1c2VNZW1vfSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHVzZUNyZWF0ZWRFdmVudCBmcm9tIFwiLi91c2UtY3JlYXRlZC1ldmVudC5qc1wiXG5pbXBvcnQgdXNlU2hhcGUgZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL2J1aWxkL3VzZS1zaGFwZS5qc1wiXG5pbXBvcnQgdXNlUXVlcnlQYXJhbXMgZnJvbSBcIm9uLWxvY2F0aW9uLWNoYW5nZWQvYnVpbGQvdXNlLXF1ZXJ5LXBhcmFtcy5qc1wiXG5cbi8qKlxuICogQHBhcmFtIHtvYmplY3R9IHByb3BzXG4gKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIHN0cmluZ1tdPn0gcHJvcHMuYWJpbGl0aWVzXG4gKiBAcGFyYW0ge2ltcG9ydChcIi4vY29sbGVjdGlvbi5qc1wiKS5kZWZhdWx0fSBwcm9wcy5jb2xsZWN0aW9uXG4gKiBAcGFyYW0ge1JlY29yZDxzdHJpbmcsIGFueT59IHByb3BzLmRlZmF1bHRQYXJhbXNcbiAqIEBwYXJhbSB7c3RyaW5nW119IHByb3BzLmdyb3VwQnlcbiAqIEBwYXJhbSB7ZnVuY3Rpb24oKSA6IGJvb2xlYW59IHByb3BzLmlmQ29uZGl0aW9uXG4gKiBAcGFyYW0ge251bWJlcn0gcHJvcHMubGltaXRcbiAqIEBwYXJhbSB7dHlwZW9mIGltcG9ydChcIi4vYmFzZS1tb2RlbC5qc1wiKS5kZWZhdWx0fSBwcm9wcy5tb2RlbENsYXNzXG4gKiBAcGFyYW0ge2Z1bmN0aW9uKCkgOiBpbXBvcnQoXCJyZWFjdFwiKS5SZWFjdE5vZGV9IHByb3BzLm5vUmVjb3Jkc0F2YWlsYWJsZUNvbnRlbnRcbiAqIEBwYXJhbSB7ZnVuY3Rpb24oKSA6IGltcG9ydChcInJlYWN0XCIpLlJlYWN0Tm9kZX0gcHJvcHMubm9SZWNvcmRzRm91bmRDb250ZW50XG4gKiBAcGFyYW0ge2Z1bmN0aW9uKCkgOiB2b2lkfSBwcm9wcy5vbk1vZGVsc0xvYWRlZFxuICogQHBhcmFtIHtib29sZWFufSBwcm9wcy5wYWdpbmF0aW9uXG4gKiBAcGFyYW0ge3N0cmluZ1tdfSBwcm9wcy5wcmVsb2Fkc1xuICogQHBhcmFtIHtmdW5jdGlvbih7cXVlcnk6IGltcG9ydChcIi4vY29sbGVjdGlvbi5qc1wiKS5kZWZhdWx0fSkgOiBpbXBvcnQoXCIuL2NvbGxlY3Rpb24uanNcIikuZGVmYXVsdH0gcHJvcHMucXVlcnlNZXRob2RcbiAqIEBwYXJhbSB7c3RyaW5nfSBwcm9wcy5xdWVyeU5hbWVcbiAqIEBwYXJhbSB7UmVjb3JkPHN0cmluZywgYW55Pn0gcHJvcHMucmFuc2Fja1xuICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IHByb3BzLnNlbGVjdFxuICogQHBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBzdHJpbmdbXT59IHByb3BzLnNlbGVjdENvbHVtbnNcbiAqIEBwYXJhbSB7YW55W119IGNhY2hlS2V5c1xuICogQHJldHVybnMge3tcbiAqICAgbW9kZWxzOiBBcnJheTxpbXBvcnQoXCIuL2Jhc2UtbW9kZWwuanNcIikuZGVmYXVsdD4sXG4gKiAgIG1vZGVsSWRzQ2FjaGVTdHJpbmc6IEFycmF5PG51bWJlcnxzdHJpbmc+LFxuICogICBvdmVyYWxsQ291bnQ6IG51bWJlcixcbiAqICAgcXVlcnk6IGltcG9ydChcIi4vY29sbGVjdGlvbi5qc1wiKS5kZWZhdWx0LFxuICogICBxdWVyeU5hbWU6IHN0cmluZyxcbiAqICAgcXVlcnlQZXJLZXk6IHN0cmluZyxcbiAqICAgcXVlcnlRTmFtZTogc3RyaW5nLFxuICogICBxdWVyeVNOYW1lOiBzdHJpbmcsXG4gKiAgIHF1ZXJ5UGFnZU5hbWU6IHN0cmluZyxcbiAqICAgcmVzdWx0OiBpbXBvcnQoXCIuL3Jlc3VsdC5qc1wiKS5kZWZhdWx0LFxuICogICBzZWFyY2hQYXJhbXM6IHN0cmluZ1tdLFxuICogICBzaG93Tm9SZWNvcmRzQXZhaWxhYmxlQ29udGVudDogZmFsc2UgfCBpbXBvcnQoXCJyZWFjdFwiKS5SZWFjdE5vZGUsXG4gKiAgIHNob3dOb1JlY29yZHNGb3VuZENvbnRlbnQ6IGZhbHNlIHwgaW1wb3J0KFwicmVhY3RcIikuUmVhY3ROb2RlXG4gKiB9fVxuICovXG5jb25zdCB1c2VDb2xsZWN0aW9uID0gKHByb3BzLCBjYWNoZUtleXMgPSBbXSkgPT4ge1xuICBjb25zdCB7XG4gICAgYWJpbGl0aWVzLFxuICAgIGNvbGxlY3Rpb24sXG4gICAgZGVmYXVsdFBhcmFtcyxcbiAgICBncm91cEJ5LFxuICAgIGlmQ29uZGl0aW9uLFxuICAgIGxpbWl0LFxuICAgIG1vZGVsQ2xhc3MsXG4gICAgbm9SZWNvcmRzQXZhaWxhYmxlQ29udGVudCA9IHVuZGVmaW5lZCxcbiAgICBub1JlY29yZHNGb3VuZENvbnRlbnQgPSB1bmRlZmluZWQsXG4gICAgb25Nb2RlbHNMb2FkZWQsXG4gICAgcGFnaW5hdGlvbiA9IGZhbHNlLFxuICAgIHByZWxvYWRzID0gW10sXG4gICAgcXVlcnlNZXRob2QsXG4gICAgcXVlcnlOYW1lOiBpbml0aWFsUXVlcnlOYW1lLFxuICAgIHJhbnNhY2ssXG4gICAgc2VsZWN0ID0ge30sXG4gICAgc2VsZWN0Q29sdW1ucyxcbiAgICAuLi5yZXN0UHJvcHNcbiAgfSA9IHByb3BzXG5cbiAgaWYgKE9iamVjdC5rZXlzKHJlc3RQcm9wcykubGVuZ3RoID4gMCkge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBwcm9wcyBnaXZlbiB0byB1c2VDb2xsZWN0aW9uOiAke09iamVjdC5rZXlzKHJlc3RQcm9wcykuam9pbihcIiwgXCIpfWApXG4gIH1cblxuICBjb25zdCBzID0gdXNlU2hhcGUocHJvcHMpXG4gIGNvbnN0IHF1ZXJ5TmFtZSA9IGluaXRpYWxRdWVyeU5hbWUgfHwgZGlnZyhtb2RlbENsYXNzLm1vZGVsQ2xhc3NEYXRhKCksIFwiY29sbGVjdGlvbktleVwiKVxuXG4gIHMubWV0YS5xdWVyeVBhcmFtcyA9IHVzZVF1ZXJ5UGFyYW1zKClcblxuICBjb25zdCBoYXNRUGFyYW1zID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmIChzLnMucXVlcnlRTmFtZSBpbiBzLm0ucXVlcnlQYXJhbXMpIHJldHVybiB0cnVlXG5cbiAgICByZXR1cm4gZmFsc2VcbiAgfSwgW10pXG5cbiAgY29uc3QgcVBhcmFtcyA9IHVzZUNhbGxiYWNrKCgpID0+IHtcbiAgICBpZiAoaGFzUVBhcmFtcygpKSByZXR1cm4gSlNPTi5wYXJzZShkaWdnKHMubS5xdWVyeVBhcmFtcywgcy5zLnF1ZXJ5UU5hbWUpKVxuXG4gICAgcmV0dXJuIHt9XG4gIH0sIFtdKVxuXG4gIHMudXNlU3RhdGVzKHtcbiAgICBtb2RlbHM6IHVuZGVmaW5lZCxcbiAgICBvdmVyYWxsQ291bnQ6IHVuZGVmaW5lZCxcbiAgICBxdWVyeTogdW5kZWZpbmVkLFxuICAgIHF1ZXJ5TmFtZSxcbiAgICBxdWVyeVBlcktleTogYCR7cXVlcnlOYW1lfV9wZXJgLFxuICAgIHF1ZXJ5UU5hbWU6IGAke3F1ZXJ5TmFtZX1fcWAsXG4gICAgcXVlcnlTTmFtZTogYCR7cXVlcnlOYW1lfV9zYCxcbiAgICBxdWVyeVBhZ2VOYW1lOiBgJHtxdWVyeU5hbWV9X3BhZ2VgLFxuICAgIHJlc3VsdDogdW5kZWZpbmVkLFxuICAgIHNlYXJjaFBhcmFtczogdW5kZWZpbmVkLFxuICAgIHNob3dOb1JlY29yZHNBdmFpbGFibGVDb250ZW50OiBmYWxzZSxcbiAgICBzaG93Tm9SZWNvcmRzRm91bmRDb250ZW50OiBmYWxzZVxuICB9KVxuICBzLnVzZVN0YXRlcyh7XG4gICAgcVBhcmFtczogKCkgPT4gcVBhcmFtcygpXG4gIH0pXG5cbiAgbGV0IG1vZGVsSWRzQ2FjaGVTdHJpbmdcblxuICBpZiAocy5zLm1vZGVscyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbW9kZWxJZHNDYWNoZVN0cmluZyA9IFwibW9kZWxzLXVuZGVmaW5lZFwiXG4gIH0gZWxzZSBpZiAocy5zLm1vZGVscy5sZW5ndGggPT09IDApIHtcbiAgICBtb2RlbElkc0NhY2hlU3RyaW5nID0gXCJuby1tb2RlbHNcIlxuICB9IGVsc2Uge1xuICAgIG1vZGVsSWRzQ2FjaGVTdHJpbmcgPSBzLnMubW9kZWxzLm1hcCgobW9kZWwpID0+IG1vZGVsLmNhY2hlS2V5KCkpPy5qb2luKFwiLS0tXCIpXG4gIH1cblxuICBjb25zdCBsb2FkT3ZlcmFsbENvdW50ID0gdXNlQ2FsbGJhY2soYXN5bmMgKCkgPT4ge1xuICAgIGNvbnN0IGJhc2VRdWVyeSA9IHMucC5jb2xsZWN0aW9uIHx8IHMucC5tb2RlbENsYXNzLmFsbCgpXG4gICAgY29uc3Qgb3ZlcmFsbENvdW50ID0gYXdhaXQgYmFzZVF1ZXJ5LmNvdW50KClcblxuICAgIHMuc2V0KHtcbiAgICAgIG92ZXJhbGxDb3VudCxcbiAgICAgIHNob3dOb1JlY29yZHNBdmFpbGFibGVDb250ZW50OiBzaG93Tm9SZWNvcmRzQXZhaWxhYmxlQ29udGVudCh7b3ZlcmFsbENvdW50fSksXG4gICAgICBzaG93Tm9SZWNvcmRzRm91bmRDb250ZW50OiBzaG93Tm9SZWNvcmRzRm91bmRDb250ZW50KHtvdmVyYWxsQ291bnR9KVxuICAgIH0pXG4gIH0sIFtdKVxuXG4gIGNvbnN0IGxvYWRRUGFyYW1zID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGNvbnN0IHFQYXJhbXNUb1NldCA9IGhhc1FQYXJhbXMoKSA/IHFQYXJhbXMoKSA6IE9iamVjdC5hc3NpZ24oe30sIHMucHJvcHMuZGVmYXVsdFBhcmFtcylcbiAgICBjb25zdCBzZWFyY2hQYXJhbXMgPSBbXVxuXG4gICAgaWYgKHMubS5xdWVyeVBhcmFtc1tzLnMucXVlcnlTTmFtZV0pIHtcbiAgICAgIGZvciAoY29uc3QgcmF3U2VhcmNoUGFyYW0gb2Ygcy5tLnF1ZXJ5UGFyYW1zW3Mucy5xdWVyeVNOYW1lXSkge1xuICAgICAgICBjb25zdCBwYXJzZWRTZWFyY2hQYXJhbSA9IEpTT04ucGFyc2UocmF3U2VhcmNoUGFyYW0pXG5cbiAgICAgICAgc2VhcmNoUGFyYW1zLnB1c2gocGFyc2VkU2VhcmNoUGFyYW0pXG4gICAgICB9XG4gICAgfVxuXG4gICAgcy5zZXQoe1xuICAgICAgcVBhcmFtczogcVBhcmFtc1RvU2V0LFxuICAgICAgc2VhcmNoUGFyYW1zXG4gICAgfSlcbiAgfSwgW10pXG5cbiAgY29uc3QgbG9hZE1vZGVscyA9IHVzZUNhbGxiYWNrKGFzeW5jICgpID0+IHtcbiAgICBsZXQgcXVlcnkgPSBzLnByb3BzLmNvbGxlY3Rpb24/LmNsb25lKCkgfHwgcy5wLm1vZGVsQ2xhc3MucmFuc2FjaygpXG5cbiAgICBpZiAocy5wcm9wcy5wYWdpbmF0aW9uKSB7XG4gICAgICBjb25zdCBwYWdlID0gcy5tLnF1ZXJ5UGFyYW1zW3Mucy5xdWVyeVBhZ2VOYW1lXSB8fCAxXG4gICAgICBsZXQgcGVyID0gcy5tLnF1ZXJ5UGFyYW1zW3Mucy5xdWVyeVBlcktleV0gfHwgMzBcblxuICAgICAgaWYgKHBlciA9PSBcImFsbFwiKSB7XG4gICAgICAgIHBlciA9IDk5OV85OTlfOTk5XG4gICAgICB9IGVsc2Uge1xuICAgICAgICBwZXIgPSBOdW1iZXIocGVyKVxuICAgICAgfVxuXG4gICAgICBxdWVyeS5wYWdlKHBhZ2UpLnBlcihwZXIpXG4gICAgfVxuXG4gICAgaWYgKHMucHJvcHMuZ3JvdXBCeSkgcXVlcnkgPSBxdWVyeS5ncm91cEJ5KC4uLnMucC5ncm91cEJ5KVxuXG4gICAgcXVlcnkgPSBxdWVyeVxuICAgICAgLnJhbnNhY2socy5zLnFQYXJhbXMpXG4gICAgICAuc2VhcmNoKHMucy5zZWFyY2hQYXJhbXMpXG4gICAgICAuc2VhcmNoS2V5KHMucy5xdWVyeVFOYW1lKVxuICAgICAgLnBhZ2VLZXkocy5zLnF1ZXJ5UGFnZU5hbWUpXG4gICAgICAucGVyS2V5KHMucy5xdWVyeVBlcktleSlcblxuICAgIGlmIChzLnByb3BzLmFiaWxpdGllcykgcXVlcnkuYWJpbGl0aWVzKHMucC5hYmlsaXRpZXMpXG4gICAgaWYgKHMucHJvcHMubGltaXQgIT09IHVuZGVmaW5lZCkgcXVlcnkubGltaXQocy5wLmxpbWl0KVxuICAgIGlmIChzLnByb3BzLnByZWxvYWRzKSBxdWVyeS5wcmVsb2FkKHMucC5wcmVsb2FkcylcbiAgICBpZiAocy5wcm9wcy5yYW5zYWNrKSBxdWVyeS5yYW5zYWNrKHMucHJvcHMucmFuc2FjaylcbiAgICBpZiAocy5wcm9wcy5zZWxlY3QpIHF1ZXJ5LnNlbGVjdChzLnAuc2VsZWN0KVxuICAgIGlmIChzLnByb3BzLnNlbGVjdENvbHVtbnMpIHF1ZXJ5LnNlbGVjdENvbHVtbnMocy5wLnNlbGVjdENvbHVtbnMpXG5cbiAgICBsZXQgcmVzdWx0XG5cbiAgICBpZiAocy5wcm9wcy5xdWVyeU1ldGhvZCkge1xuICAgICAgcmVzdWx0ID0gYXdhaXQgcy5wLnF1ZXJ5TWV0aG9kKHtxdWVyeX0pXG4gICAgfSBlbHNlIHtcbiAgICAgIHJlc3VsdCA9IGF3YWl0IHF1ZXJ5LnJlc3VsdCgpXG4gICAgfVxuXG4gICAgY29uc3QgbW9kZWxzID0gcmVzdWx0Lm1vZGVscygpXG5cbiAgICBpZiAocy5wcm9wcy5vbk1vZGVsc0xvYWRlZCkge1xuICAgICAgcy5wLm9uTW9kZWxzTG9hZGVkKHtcbiAgICAgICAgbW9kZWxzLFxuICAgICAgICBxUGFyYW1zOiBzLnMucVBhcmFtcyxcbiAgICAgICAgcXVlcnksXG4gICAgICAgIHJlc3VsdFxuICAgICAgfSlcbiAgICB9XG5cbiAgICBzLnNldCh7XG4gICAgICBtb2RlbHM6IHJlc3VsdC5tb2RlbHMoKSxcbiAgICAgIHF1ZXJ5LFxuICAgICAgcmVzdWx0LFxuICAgICAgc2hvd05vUmVjb3Jkc0F2YWlsYWJsZUNvbnRlbnQ6IHNob3dOb1JlY29yZHNBdmFpbGFibGVDb250ZW50KHttb2RlbHN9KSxcbiAgICAgIHNob3dOb1JlY29yZHNGb3VuZENvbnRlbnQ6IHNob3dOb1JlY29yZHNGb3VuZENvbnRlbnQoe21vZGVsc30pXG4gICAgfSlcbiAgfSwgW10pXG5cbiAgY29uc3QgbG9hZE1vZGVsc0RlYm91bmNlID0gdXNlQ2FsbGJhY2soZGVib3VuY2UobG9hZE1vZGVscyksIFtdKVxuICBjb25zdCBvbk1vZGVsRGVzdHJveWVkID0gdXNlQ2FsbGJhY2soKGFyZ3MpID0+IHtcbiAgICBzLnNldCh7XG4gICAgICBtb2RlbHM6IHMucy5tb2RlbHMuZmlsdGVyKChtb2RlbCkgPT4gbW9kZWwuaWQoKSAhPSBhcmdzLm1vZGVsLmlkKCkpXG4gICAgfSlcbiAgfSwgW10pXG5cbiAgY29uc3Qgb25Nb2RlbFVwZGF0ZWQgPSB1c2VDYWxsYmFjaygoYXJncykgPT4ge1xuICAgIGNvbnN0IHVwZGF0ZWRNb2RlbCA9IGRpZ2coYXJncywgXCJtb2RlbFwiKVxuICAgIGNvbnN0IGZvdW5kTW9kZWwgPSBzLnMubW9kZWxzLmZpbmQoKG1vZGVsKSA9PiBtb2RlbC5pZCgpID09IHVwZGF0ZWRNb2RlbC5pZCgpKVxuXG4gICAgaWYgKGZvdW5kTW9kZWwpIGxvYWRNb2RlbHNEZWJvdW5jZSgpXG4gIH0sIFtdKVxuXG4gIGNvbnN0IHNob3dOb1JlY29yZHNBdmFpbGFibGVDb250ZW50ID0gdXNlQ2FsbGJhY2soKGFyZ3MpID0+IHtcbiAgICBsZXQgbW9kZWxzLCBvdmVyYWxsQ291bnRcblxuICAgIGlmIChhcmdzLm1vZGVscyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb2RlbHMgPSBhcmdzLm1vZGVsc1xuICAgIH0gZWxzZSBpZiAocy5zLm1vZGVscyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb2RlbHMgPSBzLnMubW9kZWxzXG4gICAgfVxuXG4gICAgaWYgKGFyZ3Mub3ZlcmFsbENvdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG92ZXJhbGxDb3VudCA9IGFyZ3Mub3ZlcmFsbENvdW50XG4gICAgfSBlbHNlIGlmIChzLnMub3ZlcmFsbENvdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG92ZXJhbGxDb3VudCA9IHMucy5vdmVyYWxsQ291bnRcbiAgICB9XG5cbiAgICBpZiAobW9kZWxzID09PSB1bmRlZmluZWQgfHwgb3ZlcmFsbENvdW50ID09PSB1bmRlZmluZWQgfHwgcy5wLm5vUmVjb3Jkc0F2YWlsYWJsZUNvbnRlbnQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlXG4gICAgaWYgKG1vZGVscy5sZW5ndGggPT09IDAgJiYgb3ZlcmFsbENvdW50ID09PSAwICYmIHMucC5ub1JlY29yZHNBdmFpbGFibGVDb250ZW50KSByZXR1cm4gdHJ1ZVxuICB9LCBbXSlcblxuICBjb25zdCBzaG93Tm9SZWNvcmRzRm91bmRDb250ZW50ID0gdXNlQ2FsbGJhY2soKGFyZ3MpID0+IHtcbiAgICBsZXQgbW9kZWxzLCBvdmVyYWxsQ291bnRcblxuICAgIGlmIChhcmdzLm1vZGVscyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb2RlbHMgPSBhcmdzLm1vZGVsc1xuICAgIH0gZWxzZSBpZiAocy5zLm1vZGVscyAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICBtb2RlbHMgPSBzLnMubW9kZWxzXG4gICAgfVxuXG4gICAgaWYgKGFyZ3Mub3ZlcmFsbENvdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG92ZXJhbGxDb3VudCA9IGFyZ3Mub3ZlcmFsbENvdW50XG4gICAgfSBlbHNlIGlmIChzLnMub3ZlcmFsbENvdW50ICE9PSB1bmRlZmluZWQpIHtcbiAgICAgIG92ZXJhbGxDb3VudCA9IHMucy5vdmVyYWxsQ291bnRcbiAgICB9XG5cbiAgICBpZiAobW9kZWxzID09PSB1bmRlZmluZWQgfHwgcy5wcm9wcy5ub1JlY29yZHNGb3VuZENvbnRlbnQgPT09IHVuZGVmaW5lZCkgcmV0dXJuIGZhbHNlXG5cbiAgICAvLyBEb250IHNob3cgbm9SZWNvcmRzQXZhaWxhYmxlQ29udGVudCB0b2dldGhlciB3aXRoIG5vUmVjb3Jkc0F2YWlsYWJsZUNvbnRlbnRcbiAgICBpZiAobW9kZWxzLmxlbmd0aCA9PT0gMCAmJiBvdmVyYWxsQ291bnQgPT09IDAgJiYgcy5wcm9wcy5ub1JlY29yZHNBdmFpbGFibGVDb250ZW50KSByZXR1cm4gZmFsc2VcbiAgICBpZiAobW9kZWxzLmxlbmd0aCA9PT0gMCAmJiBzLnByb3BzLm5vUmVjb3Jkc0ZvdW5kQ29udGVudCkgcmV0dXJuIHRydWVcbiAgfSwgW10pXG5cbiAgY29uc3Qgb25DcmVhdGVkID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGxvYWRNb2RlbHNEZWJvdW5jZSgpXG4gIH0sIFtdKVxuXG4gIHVzZU1lbW8oXG4gICAgKCkgPT4ge1xuICAgICAgaWYgKCEoXCJpZkNvbmRpdGlvblwiIGluIHMucHJvcHMpIHx8IHMucHJvcHMuaWZDb25kaXRpb24pIHtcbiAgICAgICAgbG9hZFFQYXJhbXMoKVxuICAgICAgICBsb2FkTW9kZWxzKClcbiAgICAgIH1cbiAgICB9LFxuICAgIFtcbiAgICAgIHMucHJvcHMuaWZDb25kaXRpb24sXG4gICAgICBzLm0ucXVlcnlQYXJhbXNbcy5zLnF1ZXJ5UU5hbWVdLFxuICAgICAgcy5tLnF1ZXJ5UGFyYW1zW3Mucy5xdWVyeVBhZ2VOYW1lXSxcbiAgICAgIHMubS5xdWVyeVBhcmFtc1tzLnMucXVlcnlQZXJLZXldLFxuICAgICAgcy5tLnF1ZXJ5UGFyYW1zW3Mucy5xdWVyeVNOYW1lXSxcbiAgICAgIGNvbGxlY3Rpb25cbiAgICBdLmNvbmNhdChjYWNoZUtleXMpXG4gIClcblxuICB1c2VNZW1vKCgpID0+IHtcbiAgICBpZiAocy5wcm9wcy5ub1JlY29yZHNBdmFpbGFibGVDb250ZW50KSB7XG4gICAgICBsb2FkT3ZlcmFsbENvdW50KClcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUNyZWF0ZWRFdmVudChzLnAubW9kZWxDbGFzcywgb25DcmVhdGVkKVxuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgY29ubmVjdGlvbnMgPSBbXVxuXG4gICAgaWYgKHMucy5tb2RlbHMpIHtcbiAgICAgIGZvcihjb25zdCBtb2RlbCBvZiBzLnMubW9kZWxzKSB7XG4gICAgICAgIGNvbm5lY3Rpb25zLnB1c2goTW9kZWxFdmVudHMuY29ubmVjdFVwZGF0ZWQobW9kZWwsIG9uTW9kZWxVcGRhdGVkKSlcbiAgICAgICAgY29ubmVjdGlvbnMucHVzaChNb2RlbEV2ZW50cy5jb25uZWN0RGVzdHJveWVkKG1vZGVsLCBvbk1vZGVsRGVzdHJveWVkKSlcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgZm9yKGNvbnN0IGNvbm5lY3Rpb24gb2YgY29ubmVjdGlvbnMpIHtcbiAgICAgICAgY29ubmVjdGlvbi51bnN1YnNjcmliZSgpXG4gICAgICB9XG4gICAgfVxuICB9LCBbbW9kZWxJZHNDYWNoZVN0cmluZ10pXG5cbiAgY29uc3QgcmVzdWx0ID0gT2JqZWN0LmFzc2lnbih7fSwgcy5zdGF0ZSlcbiAgY29uc3QgbW9kZWxWYXJpYWJsZU5hbWUgPSBpbmZsZWN0aW9uLnBsdXJhbGl6ZShpbmZsZWN0aW9uLmNhbWVsaXplKG1vZGVsQ2xhc3MubW9kZWxDbGFzc0RhdGEoKS5uYW1lLCB0cnVlKSlcblxuICByZXN1bHQubW9kZWxJZHNDYWNoZVN0cmluZyA9IG1vZGVsSWRzQ2FjaGVTdHJpbmdcbiAgcmVzdWx0W21vZGVsVmFyaWFibGVOYW1lXSA9IHMucy5tb2RlbHNcblxuICByZXR1cm4gcmVzdWx0XG59XG5cbmV4cG9ydCBkZWZhdWx0IHVzZUNvbGxlY3Rpb25cbiJdfQ==
@@ -1,9 +1,14 @@
1
- import debounceFunction from "debounce";
2
- import ModelEvents from "./model-events.js";
3
- import PropTypes from "prop-types";
4
- import propTypesExact from "prop-types-exact";
5
- import { useCallback, useLayoutEffect } from "react";
6
- import useShape from "set-state-compare/build/use-shape.js";
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const debounce_1 = __importDefault(require("debounce"));
7
+ const model_events_js_1 = __importDefault(require("./model-events.js"));
8
+ const prop_types_1 = __importDefault(require("prop-types"));
9
+ const prop_types_exact_1 = __importDefault(require("prop-types-exact"));
10
+ const react_1 = require("react");
11
+ const use_shape_js_1 = __importDefault(require("set-state-compare/build/use-shape.js"));
7
12
  /**
8
13
  * @param {function} modelClass
9
14
  * @param {function} onCreated
@@ -15,19 +20,19 @@ import useShape from "set-state-compare/build/use-shape.js";
15
20
  */
16
21
  const ApiMakerUseCreatedEvent = (modelClass, onCreated, args = { active: true, debounce: 0, onConnected: undefined }) => {
17
22
  const { active = true, debounce } = args;
18
- const s = useShape({ active, debounce, modelClass, onCreated });
19
- const eventDebounce = useCallback(() => {
23
+ const s = (0, use_shape_js_1.default)({ active, debounce, modelClass, onCreated });
24
+ const eventDebounce = (0, react_1.useCallback)(() => {
20
25
  if (!s.meta.debounceInstance) {
21
26
  if (typeof s.props.debounce == "number") {
22
- s.meta.debounceInstance = debounceFunction(s.p.onCreated, s.p.debounce);
27
+ s.meta.debounceInstance = (0, debounce_1.default)(s.p.onCreated, s.p.debounce);
23
28
  }
24
29
  else {
25
- s.meta.debounceInstance = debounceFunction(s.p.onCreated);
30
+ s.meta.debounceInstance = (0, debounce_1.default)(s.p.onCreated);
26
31
  }
27
32
  }
28
33
  return s.meta.debounceInstance;
29
34
  }, []);
30
- const onCreatedCallback = useCallback((...args) => {
35
+ const onCreatedCallback = (0, react_1.useCallback)((...args) => {
31
36
  if (!s.p.active) {
32
37
  return;
33
38
  }
@@ -38,21 +43,21 @@ const ApiMakerUseCreatedEvent = (modelClass, onCreated, args = { active: true, d
38
43
  s.p.onCreated(...args);
39
44
  }
40
45
  }, []);
41
- useLayoutEffect(() => {
42
- const connectCreated = ModelEvents.connectCreated(s.p.modelClass, (...args) => onCreatedCallback(...args));
46
+ (0, react_1.useLayoutEffect)(() => {
47
+ const connectCreated = model_events_js_1.default.connectCreated(s.p.modelClass, (...args) => onCreatedCallback(...args));
43
48
  return () => {
44
49
  connectCreated.unsubscribe();
45
50
  };
46
51
  }, []);
47
52
  };
48
- ApiMakerUseCreatedEvent.propTypes = propTypesExact({
49
- active: PropTypes.bool.isRequired,
50
- debounce: PropTypes.oneOfType([
51
- PropTypes.bool,
52
- PropTypes.number
53
+ ApiMakerUseCreatedEvent.propTypes = (0, prop_types_exact_1.default)({
54
+ active: prop_types_1.default.bool.isRequired,
55
+ debounce: prop_types_1.default.oneOfType([
56
+ prop_types_1.default.bool,
57
+ prop_types_1.default.number
53
58
  ]),
54
- modelClass: PropTypes.func.isRequired,
55
- onCreated: PropTypes.func.isRequired
59
+ modelClass: prop_types_1.default.func.isRequired,
60
+ onCreated: prop_types_1.default.func.isRequired
56
61
  });
57
- export default ApiMakerUseCreatedEvent;
58
- //# sourceMappingURL=use-created-event.js.map
62
+ exports.default = ApiMakerUseCreatedEvent;
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlLWNyZWF0ZWQtZXZlbnQuanMiLCJzb3VyY2VSb290IjoiL3NyYy8iLCJzb3VyY2VzIjpbInVzZS1jcmVhdGVkLWV2ZW50LmpzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsd0RBQXVDO0FBQ3ZDLHdFQUEyQztBQUMzQyw0REFBa0M7QUFDbEMsd0VBQTZDO0FBQzdDLGlDQUFrRDtBQUNsRCx3RkFBMkQ7QUFFM0Q7Ozs7Ozs7O0dBUUc7QUFDSCxNQUFNLHVCQUF1QixHQUFHLENBQUMsVUFBVSxFQUFFLFNBQVMsRUFBRSxJQUFJLEdBQUcsRUFBQyxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxDQUFDLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBQyxFQUFFLEVBQUU7SUFDcEgsTUFBTSxFQUFDLE1BQU0sR0FBRyxJQUFJLEVBQUUsUUFBUSxFQUFDLEdBQUcsSUFBSSxDQUFBO0lBQ3RDLE1BQU0sQ0FBQyxHQUFHLElBQUEsc0JBQVEsRUFBQyxFQUFDLE1BQU0sRUFBRSxRQUFRLEVBQUUsVUFBVSxFQUFFLFNBQVMsRUFBQyxDQUFDLENBQUE7SUFFN0QsTUFBTSxhQUFhLEdBQUcsSUFBQSxtQkFBVyxFQUFDLEdBQUcsRUFBRTtRQUNyQyxJQUFJLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDO1lBQzdCLElBQUksT0FBTyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsSUFBSSxRQUFRLEVBQUUsQ0FBQztnQkFDeEMsQ0FBQyxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFBLGtCQUFnQixFQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUE7WUFDekUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEdBQUcsSUFBQSxrQkFBZ0IsRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFBO1lBQzNELENBQUM7UUFDSCxDQUFDO1FBRUQsT0FBTyxDQUFDLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFBO0lBQ2hDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQTtJQUVOLE1BQU0saUJBQWlCLEdBQUcsSUFBQSxtQkFBVyxFQUFDLENBQUMsR0FBRyxJQUFJLEVBQUUsRUFBRTtRQUNoRCxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUNoQixPQUFNO1FBQ1IsQ0FBQztRQUVELElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNqQixhQUFhLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFBO1FBQzFCLENBQUM7YUFBTSxDQUFDO1lBQ04sQ0FBQyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQTtRQUN4QixDQUFDO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0lBRU4sSUFBQSx1QkFBZSxFQUFDLEdBQUcsRUFBRTtRQUNuQixNQUFNLGNBQWMsR0FBRyx5QkFBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLEdBQUcsSUFBSSxFQUFFLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLENBQUE7UUFFMUcsT0FBTyxHQUFHLEVBQUU7WUFDVixjQUFjLENBQUMsV0FBVyxFQUFFLENBQUE7UUFDOUIsQ0FBQyxDQUFBO0lBQ0gsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFBO0FBQ1IsQ0FBQyxDQUFBO0FBRUQsdUJBQXVCLENBQUMsU0FBUyxHQUFHLElBQUEsMEJBQWMsRUFBQztJQUNqRCxNQUFNLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtJQUNqQyxRQUFRLEVBQUUsb0JBQVMsQ0FBQyxTQUFTLENBQUM7UUFDNUIsb0JBQVMsQ0FBQyxJQUFJO1FBQ2Qsb0JBQVMsQ0FBQyxNQUFNO0tBQ2pCLENBQUM7SUFDRixVQUFVLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtJQUNyQyxTQUFTLEVBQUUsb0JBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVTtDQUNyQyxDQUFDLENBQUE7QUFFRixrQkFBZSx1QkFBdUIsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBkZWJvdW5jZUZ1bmN0aW9uIGZyb20gXCJkZWJvdW5jZVwiXG5pbXBvcnQgTW9kZWxFdmVudHMgZnJvbSBcIi4vbW9kZWwtZXZlbnRzLmpzXCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IHByb3BUeXBlc0V4YWN0IGZyb20gXCJwcm9wLXR5cGVzLWV4YWN0XCJcbmltcG9ydCB7dXNlQ2FsbGJhY2ssIHVzZUxheW91dEVmZmVjdH0gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB1c2VTaGFwZSBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvYnVpbGQvdXNlLXNoYXBlLmpzXCJcblxuLyoqXG4gKiBAcGFyYW0ge2Z1bmN0aW9ufSBtb2RlbENsYXNzXG4gKiBAcGFyYW0ge2Z1bmN0aW9ufSBvbkNyZWF0ZWRcbiAqIEBwYXJhbSB7b2JqZWN0fSBbYXJnc11cbiAqIEBwYXJhbSB7Ym9vbGVhbn0gW2FyZ3MuYWN0aXZlXVxuICogQHBhcmFtIHtudW1iZXJ9IFthcmdzLmRlYm91bmNlXVxuICogQHBhcmFtIHtmdW5jdGlvbn0gW2FyZ3Mub25Db25uZWN0ZWRdXG4gKiBAcmV0dXJucyB7dm9pZH1cbiAqL1xuY29uc3QgQXBpTWFrZXJVc2VDcmVhdGVkRXZlbnQgPSAobW9kZWxDbGFzcywgb25DcmVhdGVkLCBhcmdzID0ge2FjdGl2ZTogdHJ1ZSwgZGVib3VuY2U6IDAsIG9uQ29ubmVjdGVkOiB1bmRlZmluZWR9KSA9PiB7XG4gIGNvbnN0IHthY3RpdmUgPSB0cnVlLCBkZWJvdW5jZX0gPSBhcmdzXG4gIGNvbnN0IHMgPSB1c2VTaGFwZSh7YWN0aXZlLCBkZWJvdW5jZSwgbW9kZWxDbGFzcywgb25DcmVhdGVkfSlcblxuICBjb25zdCBldmVudERlYm91bmNlID0gdXNlQ2FsbGJhY2soKCkgPT4ge1xuICAgIGlmICghcy5tZXRhLmRlYm91bmNlSW5zdGFuY2UpIHtcbiAgICAgIGlmICh0eXBlb2Ygcy5wcm9wcy5kZWJvdW5jZSA9PSBcIm51bWJlclwiKSB7XG4gICAgICAgIHMubWV0YS5kZWJvdW5jZUluc3RhbmNlID0gZGVib3VuY2VGdW5jdGlvbihzLnAub25DcmVhdGVkLCBzLnAuZGVib3VuY2UpXG4gICAgICB9IGVsc2Uge1xuICAgICAgICBzLm1ldGEuZGVib3VuY2VJbnN0YW5jZSA9IGRlYm91bmNlRnVuY3Rpb24ocy5wLm9uQ3JlYXRlZClcbiAgICAgIH1cbiAgICB9XG5cbiAgICByZXR1cm4gcy5tZXRhLmRlYm91bmNlSW5zdGFuY2VcbiAgfSwgW10pXG5cbiAgY29uc3Qgb25DcmVhdGVkQ2FsbGJhY2sgPSB1c2VDYWxsYmFjaygoLi4uYXJncykgPT4ge1xuICAgIGlmICghcy5wLmFjdGl2ZSkge1xuICAgICAgcmV0dXJuXG4gICAgfVxuXG4gICAgaWYgKHMucC5kZWJvdW5jZSkge1xuICAgICAgZXZlbnREZWJvdW5jZSgpKC4uLmFyZ3MpXG4gICAgfSBlbHNlIHtcbiAgICAgIHMucC5vbkNyZWF0ZWQoLi4uYXJncylcbiAgICB9XG4gIH0sIFtdKVxuXG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgY29ubmVjdENyZWF0ZWQgPSBNb2RlbEV2ZW50cy5jb25uZWN0Q3JlYXRlZChzLnAubW9kZWxDbGFzcywgKC4uLmFyZ3MpID0+IG9uQ3JlYXRlZENhbGxiYWNrKC4uLmFyZ3MpKVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIGNvbm5lY3RDcmVhdGVkLnVuc3Vic2NyaWJlKClcbiAgICB9XG4gIH0sIFtdKVxufVxuXG5BcGlNYWtlclVzZUNyZWF0ZWRFdmVudC5wcm9wVHlwZXMgPSBwcm9wVHlwZXNFeGFjdCh7XG4gIGFjdGl2ZTogUHJvcFR5cGVzLmJvb2wuaXNSZXF1aXJlZCxcbiAgZGVib3VuY2U6IFByb3BUeXBlcy5vbmVPZlR5cGUoW1xuICAgIFByb3BUeXBlcy5ib29sLFxuICAgIFByb3BUeXBlcy5udW1iZXJcbiAgXSksXG4gIG1vZGVsQ2xhc3M6IFByb3BUeXBlcy5mdW5jLmlzUmVxdWlyZWQsXG4gIG9uQ3JlYXRlZDogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZFxufSlcblxuZXhwb3J0IGRlZmF1bHQgQXBpTWFrZXJVc2VDcmVhdGVkRXZlbnRcbiJdfQ==