@kaspernj/api-maker 1.0.2011 → 1.0.2013

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 (413) hide show
  1. package/{.eslintrc.cjs → .eslintrc.js} +10 -1
  2. package/README.md +35 -0
  3. package/android/build.gradle +43 -0
  4. package/android/src/main/AndroidManifest.xml +2 -0
  5. package/android/src/main/java/expo/modules/api_maker/ApiMakerModule.kt +50 -0
  6. package/android/src/main/java/expo/modules/api_maker/ApiMakerView.kt +30 -0
  7. package/build/api.js +120 -0
  8. package/build/attribute-not-loaded-error.js +2 -0
  9. package/build/base-component.js +5 -0
  10. package/build/base-error.js +33 -0
  11. package/build/base-model/attribute.js +25 -0
  12. package/build/base-model/column.js +11 -0
  13. package/build/base-model/reflection.js +14 -0
  14. package/build/base-model/scope.js +11 -0
  15. package/build/base-model.js +828 -0
  16. package/build/bootstrap/attribute-row.js +135 -0
  17. package/build/bootstrap/attribute-rows.js +31 -0
  18. package/build/bootstrap/card.js +138 -0
  19. package/build/bootstrap/checkbox.js +97 -0
  20. package/build/bootstrap/checkboxes.js +183 -0
  21. package/build/bootstrap/index.js +2 -0
  22. package/build/bootstrap/input.js +129 -0
  23. package/build/bootstrap/invalid-feedback.js +27 -0
  24. package/build/bootstrap/paginate.js +150 -0
  25. package/build/bootstrap/radio-buttons.js +72 -0
  26. package/build/bootstrap/select.js +88 -0
  27. package/build/bootstrap/sort-link.js +131 -0
  28. package/build/cable-connection-pool.js +128 -0
  29. package/build/cable-subscription-pool.js +207 -0
  30. package/build/cable-subscription.js +21 -0
  31. package/build/cache-key-generator.js +81 -0
  32. package/build/can-can.js +134 -0
  33. package/build/channels-consumer.js +9 -0
  34. package/build/collection-loader.js +48 -0
  35. package/build/collection.js +280 -0
  36. package/build/command-submit-data.js +81 -0
  37. package/build/commands-pool.js +195 -0
  38. package/build/compose.js +9 -0
  39. package/build/config.js +62 -0
  40. package/build/custom-error.js +5 -0
  41. package/build/data-set-to-attributes.js +10 -0
  42. package/build/deserializer.js +56 -0
  43. package/build/destroy-error.js +5 -0
  44. package/build/devise.js +112 -0
  45. package/build/draggable-sort/controller.js +136 -0
  46. package/build/draggable-sort/index.js +114 -0
  47. package/build/draggable-sort/item.js +188 -0
  48. package/build/error-logger.js +101 -0
  49. package/build/error-messages.js +13 -0
  50. package/build/event-connection.js +32 -0
  51. package/build/event-emitter-listener.js +15 -0
  52. package/build/event-model-class.js +24 -0
  53. package/build/events.js +5 -0
  54. package/build/flash-message.js +79 -0
  55. package/build/form.js +83 -0
  56. package/build/history-expo.js +20 -0
  57. package/build/history-react-native.js +20 -0
  58. package/build/history.js +3 -0
  59. package/build/index.js +3 -0
  60. package/build/inputs/attachment.js +133 -0
  61. package/build/inputs/auto-submit.js +36 -0
  62. package/build/inputs/checkbox.js +138 -0
  63. package/build/inputs/checkboxes.js +112 -0
  64. package/build/inputs/id-for-component.js +15 -0
  65. package/build/inputs/input-wrapper.js +19 -0
  66. package/build/inputs/input.js +243 -0
  67. package/build/inputs/money.js +179 -0
  68. package/build/inputs/name-for-component.js +13 -0
  69. package/build/inputs/select.js +93 -0
  70. package/build/instance-of-class-name.js +23 -0
  71. package/build/is-expo.js +22 -0
  72. package/build/key-value-store.js +53 -0
  73. package/build/link.js +73 -0
  74. package/build/logger.js +30 -0
  75. package/build/modal.js +38 -0
  76. package/build/model-class-require.js +13 -0
  77. package/build/model-events.js +30 -0
  78. package/build/model-name.js +28 -0
  79. package/build/model-prop-type.js +101 -0
  80. package/build/model-recipes-loader.js +32 -0
  81. package/build/model-recipes-model-loader.js +357 -0
  82. package/build/models-response-reader.js +40 -0
  83. package/build/models.js +8 -0
  84. package/build/money-formatter.js +78 -0
  85. package/build/not-loaded-error.js +2 -0
  86. package/build/params.js +61 -0
  87. package/build/preloaded.js +38 -0
  88. package/build/resize-observer.js +11 -0
  89. package/build/result.js +13 -0
  90. package/build/router/route.js +270 -0
  91. package/build/router/switch.js +72 -0
  92. package/build/router.js +59 -0
  93. package/build/routes-native.js +202 -0
  94. package/build/routes.js +50 -0
  95. package/build/run-last.js +35 -0
  96. package/build/serializer.js +63 -0
  97. package/build/services.js +20 -0
  98. package/build/session-status-updater.js +134 -0
  99. package/build/source-maps-loader.js +184 -0
  100. package/build/super-admin/config-reader.js +85 -0
  101. package/build/super-admin/edit-page/edit-attribute-checkbox.js +85 -0
  102. package/build/super-admin/edit-page/edit-attribute-content.js +55 -0
  103. package/build/super-admin/edit-page/edit-attribute-input.js +79 -0
  104. package/build/super-admin/edit-page/edit-attribute.js +77 -0
  105. package/build/super-admin/edit-page.js +123 -0
  106. package/build/super-admin/has-edit-config.js +12 -0
  107. package/build/super-admin/index-page.js +25 -0
  108. package/build/super-admin/index.js +181 -0
  109. package/build/super-admin/layout/header/index.js +161 -0
  110. package/build/super-admin/layout/index.js +164 -0
  111. package/build/super-admin/layout/menu/index.js +206 -0
  112. package/build/super-admin/layout/menu/menu-content.js +46 -0
  113. package/build/super-admin/layout/menu/menu-item.js +84 -0
  114. package/build/super-admin/layout/no-access.js +27 -0
  115. package/build/super-admin/model-class-table.js +61 -0
  116. package/build/super-admin/models.js +8 -0
  117. package/build/super-admin/show-nav.js +51 -0
  118. package/build/super-admin/show-page/belongs-to-attribute-row.js +29 -0
  119. package/build/super-admin/show-page/index.js +141 -0
  120. package/build/super-admin/show-reflection-actions.js +47 -0
  121. package/build/super-admin/show-reflection-link.js +48 -0
  122. package/build/super-admin/show-reflection-page.js +48 -0
  123. package/build/table/column-content.js +117 -0
  124. package/build/table/column-identifier.js +18 -0
  125. package/build/table/column-visible.js +7 -0
  126. package/build/table/components/column.js +21 -0
  127. package/build/table/components/flat-list.js +21 -0
  128. package/build/table/components/header.js +26 -0
  129. package/build/table/components/row.js +26 -0
  130. package/build/table/filters/attribute-element.js +44 -0
  131. package/build/table/filters/filter-form.js +402 -0
  132. package/build/table/filters/filter.js +90 -0
  133. package/build/table/filters/index.js +184 -0
  134. package/build/table/filters/load-search-modal.js +175 -0
  135. package/build/table/filters/reflection-element.js +37 -0
  136. package/build/table/filters/save-search-modal.js +88 -0
  137. package/build/table/filters/scope-element.js +42 -0
  138. package/build/table/header-column-content.js +68 -0
  139. package/build/table/header-column.js +144 -0
  140. package/build/table/header-select.js +105 -0
  141. package/build/table/model-callback-args.js +10 -0
  142. package/build/table/model-column.js +97 -0
  143. package/build/table/model-row.js +193 -0
  144. package/build/table/select-calculator.js +63 -0
  145. package/build/table/settings/column-row.js +97 -0
  146. package/build/table/settings/download-action.js +79 -0
  147. package/build/table/settings/index.js +92 -0
  148. package/build/table/table-settings.js +219 -0
  149. package/build/table/table.js +972 -0
  150. package/build/table/use-sorting.js +34 -0
  151. package/build/table/widths.js +75 -0
  152. package/build/table/worker-plugins-check-all-checkbox.js +125 -0
  153. package/build/table/worker-plugins-checkbox.js +115 -0
  154. package/build/translated-attributes.js +10 -0
  155. package/build/translated-collections.js +12 -0
  156. package/build/updated-attribute.js +76 -0
  157. package/build/url-encode.js +15 -0
  158. package/build/use-breakpoint.js +71 -0
  159. package/build/use-can-can.js +55 -0
  160. package/build/use-collection.js +225 -0
  161. package/build/use-created-event.js +52 -0
  162. package/build/use-current-user.js +76 -0
  163. package/build/use-destroyed-event.js +60 -0
  164. package/build/use-event-emitter.js +13 -0
  165. package/build/use-event-listener.js +16 -0
  166. package/build/use-input.js +137 -0
  167. package/build/use-model-event.js +60 -0
  168. package/build/use-model.js +169 -0
  169. package/build/use-resize-observer.js +23 -0
  170. package/build/use-router.js +104 -0
  171. package/build/use-screen-layout.js +39 -0
  172. package/build/use-styles.js +41 -0
  173. package/build/use-updated-event.js +60 -0
  174. package/build/use-validation-errors.js +30 -0
  175. package/build/utils/card.js +51 -0
  176. package/build/utils/checkbox.js +78 -0
  177. package/build/utils/checkboxes.js +163 -0
  178. package/build/utils/default-style.js +18 -0
  179. package/build/utils/icon.js +23 -0
  180. package/build/utils/invalid-feedback.js +19 -0
  181. package/build/utils/modal.js +62 -0
  182. package/build/utils/text.js +44 -0
  183. package/build/validation-error.js +28 -0
  184. package/build/validation-errors.js +98 -0
  185. package/build/with-api-maker.js +29 -0
  186. package/build/with-collection.js +14 -0
  187. package/build/with-current-user.js +10 -0
  188. package/build/with-model.js +15 -0
  189. package/build/with-router.js +22 -0
  190. package/expo-module.config.json +17 -0
  191. package/ios/ApiMaker.podspec +29 -0
  192. package/ios/ApiMakerModule.swift +48 -0
  193. package/ios/ApiMakerView.swift +38 -0
  194. package/package.json +49 -46
  195. package/src/{api.mjs → api.js} +38 -37
  196. package/src/base-component.jsx +5 -0
  197. package/src/{base-error.mjs → base-error.js} +4 -6
  198. package/src/base-model/attribute.js +33 -0
  199. package/src/base-model/column.js +13 -0
  200. package/src/base-model/reflection.js +15 -0
  201. package/src/base-model/scope.js +12 -0
  202. package/src/{base-model.mjs → base-model.js} +302 -144
  203. package/src/bootstrap/attribute-row.jsx +135 -0
  204. package/src/bootstrap/attribute-rows.jsx +27 -0
  205. package/src/bootstrap/card.jsx +149 -0
  206. package/src/bootstrap/checkbox.jsx +86 -0
  207. package/src/bootstrap/checkboxes.jsx +185 -0
  208. package/src/bootstrap/index.js +0 -0
  209. package/src/bootstrap/input.jsx +173 -0
  210. package/src/bootstrap/invalid-feedback.jsx +31 -0
  211. package/src/bootstrap/paginate.jsx +187 -0
  212. package/src/bootstrap/radio-buttons.jsx +87 -0
  213. package/src/bootstrap/select.jsx +110 -0
  214. package/src/bootstrap/sort-link.jsx +106 -0
  215. package/src/{cable-connection-pool.mjs → cable-connection-pool.js} +16 -36
  216. package/src/{cable-subscription-pool.mjs → cable-subscription-pool.js} +26 -21
  217. package/src/{cable-subscription.mjs → cable-subscription.js} +6 -4
  218. package/src/cache-key-generator.js +100 -0
  219. package/src/{can-can.mjs → can-can.js} +13 -12
  220. package/src/channels-consumer.js +10 -0
  221. package/src/collection-loader.jsx +58 -224
  222. package/src/{collection.mjs → collection.js} +98 -44
  223. package/src/{command-submit-data.mjs → command-submit-data.js} +2 -7
  224. package/src/{commands-pool.mjs → commands-pool.js} +57 -41
  225. package/src/compose.js +11 -0
  226. package/src/{config.mjs → config.js} +6 -2
  227. package/src/{custom-error.mjs → custom-error.js} +1 -1
  228. package/src/data-set-to-attributes.js +13 -0
  229. package/src/{deserializer.mjs → deserializer.js} +3 -3
  230. package/src/destroy-error.js +7 -0
  231. package/src/devise.js +129 -0
  232. package/src/draggable-sort/controller.js +137 -0
  233. package/src/draggable-sort/index.jsx +108 -0
  234. package/src/draggable-sort/item.jsx +174 -0
  235. package/src/{error-logger.mjs → error-logger.js} +12 -7
  236. package/src/{error-messages.mjs → error-messages.js} +1 -0
  237. package/src/event-connection.jsx +1 -1
  238. package/src/event-emitter-listener.jsx +8 -27
  239. package/src/event-model-class.jsx +2 -4
  240. package/src/events.js +7 -0
  241. package/src/flash-message.js +70 -0
  242. package/src/form.jsx +91 -0
  243. package/src/history-expo.js +23 -0
  244. package/src/history-react-native.js +25 -0
  245. package/src/history.js +3 -0
  246. package/src/index.js +3 -0
  247. package/src/inputs/attachment.jsx +108 -0
  248. package/src/inputs/auto-submit.js +37 -0
  249. package/src/inputs/checkbox.jsx +125 -0
  250. package/src/inputs/checkboxes.jsx +116 -0
  251. package/src/inputs/id-for-component.js +15 -0
  252. package/src/inputs/input-wrapper.jsx +16 -0
  253. package/src/inputs/input.jsx +260 -0
  254. package/src/inputs/money.jsx +187 -0
  255. package/src/inputs/name-for-component.js +15 -0
  256. package/src/inputs/select.jsx +104 -0
  257. package/src/is-expo.js +18 -0
  258. package/src/{key-value-store.mjs → key-value-store.js} +1 -1
  259. package/src/link.jsx +54 -9
  260. package/src/logger.js +38 -0
  261. package/src/modal.jsx +37 -0
  262. package/src/model-class-require.js +17 -0
  263. package/src/{model-events.mjs → model-events.js} +1 -1
  264. package/src/{model-name.mjs → model-name.js} +8 -8
  265. package/src/{model-recipes-loader.mjs → model-recipes-loader.js} +1 -1
  266. package/src/{model-recipes-model-loader.mjs → model-recipes-model-loader.js} +5 -5
  267. package/src/{models-response-reader.mjs → models-response-reader.js} +3 -4
  268. package/src/models.js +7 -0
  269. package/src/{models.mjs.erb → models.js.erb} +6 -3
  270. package/src/{money-formatter.mjs → money-formatter.js} +5 -4
  271. package/src/{params.mjs → params.js} +17 -7
  272. package/src/{preloaded.mjs → preloaded.js} +2 -2
  273. package/src/resize-observer.jsx +10 -0
  274. package/src/result.js +13 -0
  275. package/src/router/route.jsx +246 -0
  276. package/src/router/switch.jsx +76 -0
  277. package/src/router.jsx +23 -21
  278. package/src/{routes-native.mjs → routes-native.js} +12 -6
  279. package/src/{routes.mjs → routes.js} +1 -1
  280. package/src/run-last.js +39 -0
  281. package/src/{serializer.mjs → serializer.js} +2 -2
  282. package/src/{services.mjs → services.js} +1 -1
  283. package/src/session-status-updater.js +172 -0
  284. package/src/{source-maps-loader.mjs → source-maps-loader.js} +54 -28
  285. package/src/super-admin/config-reader.jsx +93 -0
  286. package/src/super-admin/edit-page/edit-attribute-checkbox.jsx +81 -0
  287. package/src/super-admin/edit-page/edit-attribute-content.jsx +57 -0
  288. package/src/super-admin/edit-page/edit-attribute-input.jsx +71 -0
  289. package/src/super-admin/edit-page/edit-attribute.jsx +81 -0
  290. package/src/super-admin/edit-page.jsx +117 -0
  291. package/src/super-admin/has-edit-config.js +15 -0
  292. package/src/super-admin/index-page.jsx +23 -0
  293. package/src/super-admin/index.jsx +197 -0
  294. package/src/super-admin/layout/header/index.jsx +144 -0
  295. package/src/super-admin/layout/header/style.scss +45 -0
  296. package/src/super-admin/layout/index.jsx +154 -0
  297. package/src/super-admin/layout/menu/index.jsx +171 -0
  298. package/src/super-admin/layout/menu/menu-content.jsx +43 -0
  299. package/src/super-admin/layout/menu/menu-item.jsx +70 -0
  300. package/src/super-admin/layout/menu/style.scss +11 -0
  301. package/src/super-admin/layout/no-access.jsx +26 -0
  302. package/src/super-admin/model-class-table.jsx +66 -0
  303. package/src/super-admin/models.js +11 -0
  304. package/src/super-admin/show-nav.jsx +44 -0
  305. package/src/super-admin/show-page/belongs-to-attribute-row.jsx +30 -0
  306. package/src/super-admin/show-page/index.jsx +141 -0
  307. package/src/super-admin/show-reflection-actions.jsx +49 -0
  308. package/src/super-admin/show-reflection-link.jsx +40 -0
  309. package/src/super-admin/show-reflection-page.jsx +47 -0
  310. package/src/super-admin/stylesheets/variables.scss +11 -0
  311. package/src/table/column-content.jsx +122 -0
  312. package/src/table/column-identifier.js +23 -0
  313. package/src/table/column-visible.js +7 -0
  314. package/src/table/components/column.jsx +19 -0
  315. package/src/table/components/flat-list.jsx +19 -0
  316. package/src/table/components/header.jsx +21 -0
  317. package/src/table/components/row.jsx +23 -0
  318. package/src/table/filters/attribute-element.jsx +47 -0
  319. package/src/table/filters/filter-form.jsx +407 -0
  320. package/src/table/filters/filter.jsx +70 -0
  321. package/src/table/filters/index.jsx +170 -0
  322. package/src/table/filters/load-search-modal.jsx +146 -0
  323. package/src/table/filters/reflection-element.jsx +38 -0
  324. package/src/table/filters/save-search-modal.jsx +74 -0
  325. package/src/table/filters/scope-element.jsx +44 -0
  326. package/src/table/header-column-content.jsx +55 -0
  327. package/src/table/header-column.jsx +129 -0
  328. package/src/table/header-select.jsx +73 -0
  329. package/src/table/model-callback-args.js +10 -0
  330. package/src/table/model-column.jsx +82 -0
  331. package/src/table/model-row.jsx +136 -0
  332. package/src/table/select-calculator.js +65 -0
  333. package/src/table/settings/column-row.jsx +93 -0
  334. package/src/table/settings/download-action.jsx +68 -0
  335. package/src/table/settings/index.jsx +65 -0
  336. package/src/table/table-settings.js +263 -0
  337. package/src/table/table.jsx +950 -0
  338. package/src/table/use-sorting.js +35 -0
  339. package/src/table/variables.scss +11 -0
  340. package/src/table/widths.jsx +87 -0
  341. package/src/table/worker-plugins-check-all-checkbox.jsx +112 -0
  342. package/src/table/worker-plugins-checkbox.jsx +104 -0
  343. package/src/translated-attributes.js +11 -0
  344. package/src/{translated-collections.mjs → translated-collections.js} +3 -2
  345. package/src/updated-attribute.jsx +1 -1
  346. package/src/url-encode.js +18 -0
  347. package/src/use-breakpoint.js +87 -0
  348. package/src/use-can-can.js +55 -0
  349. package/src/use-collection.js +280 -0
  350. package/src/use-created-event.js +55 -0
  351. package/src/use-current-user.js +88 -0
  352. package/src/use-destroyed-event.js +60 -0
  353. package/src/use-event-emitter.js +15 -0
  354. package/src/use-event-listener.js +19 -0
  355. package/src/use-input.js +157 -0
  356. package/src/use-model-event.js +60 -0
  357. package/src/use-model.js +189 -0
  358. package/src/use-resize-observer.js +24 -0
  359. package/src/use-router.jsx +128 -0
  360. package/src/use-screen-layout.js +49 -0
  361. package/src/use-styles.js +50 -0
  362. package/src/use-updated-event.js +60 -0
  363. package/src/use-validation-errors.js +33 -0
  364. package/src/utils/card.jsx +49 -0
  365. package/src/utils/checkbox.jsx +80 -0
  366. package/src/utils/checkboxes.jsx +158 -0
  367. package/src/utils/default-style.jsx +25 -0
  368. package/src/utils/icon.jsx +21 -0
  369. package/src/utils/invalid-feedback.jsx +20 -0
  370. package/src/utils/modal.jsx +60 -0
  371. package/src/utils/text.jsx +38 -0
  372. package/src/{validation-error.mjs → validation-error.js} +9 -5
  373. package/src/{validation-errors.mjs → validation-errors.js} +15 -27
  374. package/src/with-api-maker.jsx +31 -0
  375. package/src/with-collection.jsx +17 -0
  376. package/src/with-current-user.jsx +7 -25
  377. package/src/with-model.jsx +16 -0
  378. package/src/with-router.jsx +7 -129
  379. package/__tests__/base-model.test.js +0 -71
  380. package/__tests__/cable-connection-pool.test.js +0 -227
  381. package/__tests__/cable-subscription-pool.test.js +0 -26
  382. package/__tests__/can-can.test.js +0 -34
  383. package/__tests__/collection.test.js +0 -51
  384. package/__tests__/custom-error.test.js +0 -13
  385. package/__tests__/model-name.test.js +0 -34
  386. package/__tests__/model-prop-type.test.js +0 -113
  387. package/__tests__/params.test.js +0 -40
  388. package/__tests__/routes-native.test.js +0 -103
  389. package/__tests__/routes.test.js +0 -46
  390. package/__tests__/serializer.test.js +0 -30
  391. package/__tests__/support/task.js +0 -27
  392. package/__tests__/support/user.js +0 -32
  393. package/index.js +0 -1
  394. package/jest.config.js +0 -4
  395. package/src/can-can-loader.jsx +0 -54
  396. package/src/channels-consumer.mjs +0 -3
  397. package/src/destroy-error.mjs +0 -7
  398. package/src/devise.mjs +0 -122
  399. package/src/event-created.jsx +0 -65
  400. package/src/event-destroyed.jsx +0 -29
  401. package/src/event-listener.jsx +0 -38
  402. package/src/event-updated.jsx +0 -74
  403. package/src/logger.mjs +0 -25
  404. package/src/model-class-require.mjs +0 -10
  405. package/src/model-load-wrapper.jsx +0 -116
  406. package/src/result.mjs +0 -29
  407. package/src/session-status-updater.mjs +0 -116
  408. package/webpack.config.js +0 -15
  409. /package/src/{attribute-not-loaded-error.mjs → attribute-not-loaded-error.js} +0 -0
  410. /package/src/{instance-of-class-name.mjs → instance-of-class-name.js} +0 -0
  411. /package/src/{model-prop-type.mjs → model-prop-type.js} +0 -0
  412. /package/src/{not-loaded-error.mjs → not-loaded-error.js} +0 -0
  413. /package/src/{translated-collections-data.mjs.erb → translated-collections-data.js.erb} +0 -0
@@ -0,0 +1,161 @@
1
+ // import "../../../../src/super-admin/layout/header/style"
2
+ import React, { useRef } from "react";
3
+ import BaseComponent from "../../../base-component";
4
+ import Icon from "../../../utils/icon";
5
+ import memo from "set-state-compare/src/memo";
6
+ import PropTypes from "prop-types";
7
+ import PropTypesExact from "prop-types-exact";
8
+ import { shapeComponent } from "set-state-compare/src/shape-component";
9
+ import Text from "../../../utils/text";
10
+ import { Pressable, View } from "react-native";
11
+ import useBreakpoint from "../../../use-breakpoint";
12
+ import useEventListener from "../../../use-event-listener";
13
+ export default memo(shapeComponent(class ApiMakerSuperAdminLayoutHeader extends BaseComponent {
14
+ static propTypes = PropTypesExact({
15
+ actions: PropTypes.node,
16
+ onTriggerMenu: PropTypes.func.isRequired,
17
+ title: PropTypes.string
18
+ });
19
+ setup() {
20
+ const {
21
+ name: breakpoint,
22
+ mdUp
23
+ } = useBreakpoint();
24
+ this.headerActionsRef = useRef();
25
+ this.setInstance({
26
+ breakpoint,
27
+ mdUp
28
+ });
29
+ this.useStates({
30
+ headerActionsActive: false
31
+ });
32
+ useEventListener(window, "mouseup", this.tt.onWindowMouseUp);
33
+ }
34
+ render() {
35
+ const {
36
+ breakpoint,
37
+ mdUp
38
+ } = this.tt;
39
+ const {
40
+ actions,
41
+ onTriggerMenu,
42
+ title
43
+ } = this.props;
44
+ const headerStyle = {
45
+ display: "flex",
46
+ flexDirection: "row",
47
+ alignItems: "center",
48
+ zIndex: 9,
49
+ height: 100,
50
+ paddingRight: 30,
51
+ paddingLeft: 30,
52
+ backgroundColor: "#fff"
53
+ };
54
+ const headerActionsContainerStyle = {};
55
+ const headerActionsStyle = {};
56
+ if (breakpoint == "xs" || breakpoint == "sm") {
57
+ headerStyle.position = "absolute";
58
+ headerStyle.width = "100%";
59
+ Object.assign(headerActionsContainerStyle, {
60
+ position: "fixed",
61
+ top: 0,
62
+ left: 0,
63
+ display: "flex",
64
+ width: "100vw",
65
+ height: "100vh",
66
+ alignItems: "center",
67
+ justifyContent: "center",
68
+ background: "rgba(#000, .8)"
69
+ });
70
+ if (!this.s.headerActionsActive) {
71
+ headerActionsContainerStyle.display = "none";
72
+ }
73
+ Object.assign(headerActionsStyle, {
74
+ minWidth: "80vw",
75
+ maxWidth: "100vw",
76
+ backgroundColor: "#fff"
77
+ });
78
+ } else if (breakpoint == "md") {
79
+ headerStyle.position = "fixed";
80
+ headerStyle.left = 250;
81
+ headerStyle.width = "calc(100% - 250px)";
82
+ } else if (breakpoint == "lg" || breakpoint == "xl" || breakpoint == "xxl") {
83
+ headerStyle.position = "fixed";
84
+ headerStyle.left = 290;
85
+ headerStyle.width = "calc(100% - 290px)";
86
+ }
87
+ if (breakpoint == "md" || breakpoint == "lg" || breakpoint == "xl" || breakpoint == "xxl") {
88
+ headerActionsContainerStyle.marginLeft = "auto";
89
+ }
90
+ return /*#__PURE__*/React.createElement(View, {
91
+ dataSet: {
92
+ component: "super-admin--layout--header"
93
+ },
94
+ style: headerStyle
95
+ }, /*#__PURE__*/React.createElement(View, {
96
+ dataSet: {
97
+ class: "header-title-container"
98
+ }
99
+ }, /*#__PURE__*/React.createElement(Text, {
100
+ style: {
101
+ color: "#282a33",
102
+ fontSize: 22
103
+ }
104
+ }, title)), actions && /*#__PURE__*/React.createElement(View, {
105
+ dataSet: {
106
+ active: this.s.headerActionsActive,
107
+ class: "header-actions-container"
108
+ },
109
+ style: headerActionsContainerStyle
110
+ }, /*#__PURE__*/React.createElement(View, {
111
+ dataSet: {
112
+ class: "header-actions"
113
+ },
114
+ ref: this.tt.headerActionsRef,
115
+ style: headerActionsStyle
116
+ }, actions)), !mdUp && /*#__PURE__*/React.createElement(View, {
117
+ dataSet: {
118
+ class: "burger-menu-container"
119
+ },
120
+ style: {
121
+ flexDirection: "row",
122
+ marginLeft: "auto"
123
+ }
124
+ }, actions && /*#__PURE__*/React.createElement(Pressable, {
125
+ dataSet: {
126
+ class: "actions-link"
127
+ },
128
+ onPress: this.tt.onGearsClicked,
129
+ style: {
130
+ marginRight: 8,
131
+ fontSize: 22
132
+ }
133
+ }, /*#__PURE__*/React.createElement(Icon, {
134
+ name: "gear",
135
+ size: 20
136
+ })), /*#__PURE__*/React.createElement(Pressable, {
137
+ dataSet: {
138
+ class: "burger-menu-link"
139
+ },
140
+ onPress: onTriggerMenu
141
+ }, /*#__PURE__*/React.createElement(Icon, {
142
+ name: "bars",
143
+ size: 20
144
+ }))));
145
+ }
146
+ onGearsClicked = () => {
147
+ console.log("onGearsClicked");
148
+ this.setState({
149
+ headerActionsActive: !this.s.headerActionsActive
150
+ });
151
+ };
152
+ onWindowMouseUp = e => {
153
+ // Close the header actions menu if clicked happened outside
154
+ if (this.s.headerActionsActive && this.tt.headerActionsRef.current && !this.tt.headerActionsRef.current.contains(e.target)) {
155
+ this.setState({
156
+ headerActionsActive: false
157
+ });
158
+ }
159
+ };
160
+ }));
161
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZVJlZiIsIkJhc2VDb21wb25lbnQiLCJJY29uIiwibWVtbyIsIlByb3BUeXBlcyIsIlByb3BUeXBlc0V4YWN0Iiwic2hhcGVDb21wb25lbnQiLCJUZXh0IiwiUHJlc3NhYmxlIiwiVmlldyIsInVzZUJyZWFrcG9pbnQiLCJ1c2VFdmVudExpc3RlbmVyIiwiQXBpTWFrZXJTdXBlckFkbWluTGF5b3V0SGVhZGVyIiwicHJvcFR5cGVzIiwiYWN0aW9ucyIsIm5vZGUiLCJvblRyaWdnZXJNZW51IiwiZnVuYyIsImlzUmVxdWlyZWQiLCJ0aXRsZSIsInN0cmluZyIsInNldHVwIiwibmFtZSIsImJyZWFrcG9pbnQiLCJtZFVwIiwiaGVhZGVyQWN0aW9uc1JlZiIsInNldEluc3RhbmNlIiwidXNlU3RhdGVzIiwiaGVhZGVyQWN0aW9uc0FjdGl2ZSIsIndpbmRvdyIsInR0Iiwib25XaW5kb3dNb3VzZVVwIiwicmVuZGVyIiwicHJvcHMiLCJoZWFkZXJTdHlsZSIsImRpc3BsYXkiLCJmbGV4RGlyZWN0aW9uIiwiYWxpZ25JdGVtcyIsInpJbmRleCIsImhlaWdodCIsInBhZGRpbmdSaWdodCIsInBhZGRpbmdMZWZ0IiwiYmFja2dyb3VuZENvbG9yIiwiaGVhZGVyQWN0aW9uc0NvbnRhaW5lclN0eWxlIiwiaGVhZGVyQWN0aW9uc1N0eWxlIiwicG9zaXRpb24iLCJ3aWR0aCIsIk9iamVjdCIsImFzc2lnbiIsInRvcCIsImxlZnQiLCJqdXN0aWZ5Q29udGVudCIsImJhY2tncm91bmQiLCJzIiwibWluV2lkdGgiLCJtYXhXaWR0aCIsIm1hcmdpbkxlZnQiLCJjcmVhdGVFbGVtZW50IiwiZGF0YVNldCIsImNvbXBvbmVudCIsInN0eWxlIiwiY2xhc3MiLCJjb2xvciIsImZvbnRTaXplIiwiYWN0aXZlIiwicmVmIiwib25QcmVzcyIsIm9uR2VhcnNDbGlja2VkIiwibWFyZ2luUmlnaHQiLCJzaXplIiwiY29uc29sZSIsImxvZyIsInNldFN0YXRlIiwiZSIsImN1cnJlbnQiLCJjb250YWlucyIsInRhcmdldCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zdXBlci1hZG1pbi9sYXlvdXQvaGVhZGVyL2luZGV4LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBpbXBvcnQgXCIuLi8uLi8uLi8uLi9zcmMvc3VwZXItYWRtaW4vbGF5b3V0L2hlYWRlci9zdHlsZVwiXG5pbXBvcnQgUmVhY3QsIHt1c2VSZWZ9IGZyb20gXCJyZWFjdFwiXG5pbXBvcnQgQmFzZUNvbXBvbmVudCBmcm9tIFwiLi4vLi4vLi4vYmFzZS1jb21wb25lbnRcIlxuaW1wb3J0IEljb24gZnJvbSBcIi4uLy4uLy4uL3V0aWxzL2ljb25cIlxuaW1wb3J0IG1lbW8gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9tZW1vXCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IFByb3BUeXBlc0V4YWN0IGZyb20gXCJwcm9wLXR5cGVzLWV4YWN0XCJcbmltcG9ydCB7c2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvc2hhcGUtY29tcG9uZW50XCJcbmltcG9ydCBUZXh0IGZyb20gXCIuLi8uLi8uLi91dGlscy90ZXh0XCJcbmltcG9ydCB7UHJlc3NhYmxlLCBWaWV3fSBmcm9tIFwicmVhY3QtbmF0aXZlXCJcbmltcG9ydCB1c2VCcmVha3BvaW50IGZyb20gXCIuLi8uLi8uLi91c2UtYnJlYWtwb2ludFwiXG5pbXBvcnQgdXNlRXZlbnRMaXN0ZW5lciBmcm9tIFwiLi4vLi4vLi4vdXNlLWV2ZW50LWxpc3RlbmVyXCJcblxuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudChjbGFzcyBBcGlNYWtlclN1cGVyQWRtaW5MYXlvdXRIZWFkZXIgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IFByb3BUeXBlc0V4YWN0KHtcbiAgICBhY3Rpb25zOiBQcm9wVHlwZXMubm9kZSxcbiAgICBvblRyaWdnZXJNZW51OiBQcm9wVHlwZXMuZnVuYy5pc1JlcXVpcmVkLFxuICAgIHRpdGxlOiBQcm9wVHlwZXMuc3RyaW5nXG4gIH0pXG5cbiAgc2V0dXAoKSB7XG4gICAgY29uc3Qge25hbWU6IGJyZWFrcG9pbnQsIG1kVXB9ID0gdXNlQnJlYWtwb2ludCgpXG5cbiAgICB0aGlzLmhlYWRlckFjdGlvbnNSZWYgPSB1c2VSZWYoKVxuICAgIHRoaXMuc2V0SW5zdGFuY2Uoe2JyZWFrcG9pbnQsIG1kVXB9KVxuICAgIHRoaXMudXNlU3RhdGVzKHtcbiAgICAgIGhlYWRlckFjdGlvbnNBY3RpdmU6IGZhbHNlXG4gICAgfSlcblxuICAgIHVzZUV2ZW50TGlzdGVuZXIod2luZG93LCBcIm1vdXNldXBcIiwgdGhpcy50dC5vbldpbmRvd01vdXNlVXApXG4gIH1cblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2JyZWFrcG9pbnQsIG1kVXB9ID0gdGhpcy50dFxuICAgIGNvbnN0IHthY3Rpb25zLCBvblRyaWdnZXJNZW51LCB0aXRsZX0gPSB0aGlzLnByb3BzXG5cbiAgICBjb25zdCBoZWFkZXJTdHlsZSA9IHtcbiAgICAgIGRpc3BsYXk6IFwiZmxleFwiLFxuICAgICAgZmxleERpcmVjdGlvbjogXCJyb3dcIixcbiAgICAgIGFsaWduSXRlbXM6IFwiY2VudGVyXCIsXG4gICAgICB6SW5kZXg6IDksXG4gICAgICBoZWlnaHQ6IDEwMCxcbiAgICAgIHBhZGRpbmdSaWdodDogMzAsXG4gICAgICBwYWRkaW5nTGVmdDogMzAsXG4gICAgICBiYWNrZ3JvdW5kQ29sb3I6IFwiI2ZmZlwiXG4gICAgfVxuXG4gICAgY29uc3QgaGVhZGVyQWN0aW9uc0NvbnRhaW5lclN0eWxlID0ge31cbiAgICBjb25zdCBoZWFkZXJBY3Rpb25zU3R5bGUgPSB7fVxuXG4gICAgaWYgKGJyZWFrcG9pbnQgPT0gXCJ4c1wiIHx8IGJyZWFrcG9pbnQgPT0gXCJzbVwiKSB7XG4gICAgICBoZWFkZXJTdHlsZS5wb3NpdGlvbiA9IFwiYWJzb2x1dGVcIlxuICAgICAgaGVhZGVyU3R5bGUud2lkdGggPSBcIjEwMCVcIlxuXG4gICAgICBPYmplY3QuYXNzaWduKGhlYWRlckFjdGlvbnNDb250YWluZXJTdHlsZSwge1xuICAgICAgICBwb3NpdGlvbjogXCJmaXhlZFwiLFxuICAgICAgICB0b3A6IDAsXG4gICAgICAgIGxlZnQ6IDAsXG5cbiAgICAgICAgZGlzcGxheTogXCJmbGV4XCIsXG4gICAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICAgIGhlaWdodDogXCIxMDB2aFwiLFxuICAgICAgICBhbGlnbkl0ZW1zOiBcImNlbnRlclwiLFxuICAgICAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcblxuICAgICAgICBiYWNrZ3JvdW5kOiBcInJnYmEoIzAwMCwgLjgpXCJcbiAgICAgIH0pXG5cbiAgICAgIGlmICghdGhpcy5zLmhlYWRlckFjdGlvbnNBY3RpdmUpIHtcbiAgICAgICAgaGVhZGVyQWN0aW9uc0NvbnRhaW5lclN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIlxuICAgICAgfVxuXG4gICAgICBPYmplY3QuYXNzaWduKGhlYWRlckFjdGlvbnNTdHlsZSwge1xuICAgICAgICBtaW5XaWR0aDogXCI4MHZ3XCIsXG4gICAgICAgIG1heFdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICAgIGJhY2tncm91bmRDb2xvcjogXCIjZmZmXCJcbiAgICAgIH0pXG4gICAgfSBlbHNlIGlmIChicmVha3BvaW50ID09IFwibWRcIikge1xuICAgICAgaGVhZGVyU3R5bGUucG9zaXRpb24gPSBcImZpeGVkXCJcbiAgICAgIGhlYWRlclN0eWxlLmxlZnQgPSAyNTBcbiAgICAgIGhlYWRlclN0eWxlLndpZHRoID0gXCJjYWxjKDEwMCUgLSAyNTBweClcIlxuICAgIH0gZWxzZSBpZiAoYnJlYWtwb2ludCA9PSBcImxnXCIgfHwgYnJlYWtwb2ludCA9PSBcInhsXCIgfHwgYnJlYWtwb2ludCA9PSBcInh4bFwiKSB7XG4gICAgICBoZWFkZXJTdHlsZS5wb3NpdGlvbiA9IFwiZml4ZWRcIlxuICAgICAgaGVhZGVyU3R5bGUubGVmdCA9IDI5MFxuICAgICAgaGVhZGVyU3R5bGUud2lkdGggPSBcImNhbGMoMTAwJSAtIDI5MHB4KVwiXG4gICAgfVxuXG4gICAgaWYgKGJyZWFrcG9pbnQgPT0gXCJtZFwiIHx8IGJyZWFrcG9pbnQgPT0gXCJsZ1wiIHx8IGJyZWFrcG9pbnQgPT0gXCJ4bFwiIHx8IGJyZWFrcG9pbnQgPT0gXCJ4eGxcIikge1xuICAgICAgaGVhZGVyQWN0aW9uc0NvbnRhaW5lclN0eWxlLm1hcmdpbkxlZnQgPSBcImF1dG9cIlxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICA8VmlldyBkYXRhU2V0PXt7Y29tcG9uZW50OiBcInN1cGVyLWFkbWluLS1sYXlvdXQtLWhlYWRlclwifX0gc3R5bGU9e2hlYWRlclN0eWxlfT5cbiAgICAgICAgPFZpZXcgZGF0YVNldD17e2NsYXNzOiBcImhlYWRlci10aXRsZS1jb250YWluZXJcIn19PlxuICAgICAgICAgIDxUZXh0IHN0eWxlPXt7Y29sb3I6IFwiIzI4MmEzM1wiLCBmb250U2l6ZTogMjJ9fT5cbiAgICAgICAgICAgIHt0aXRsZX1cbiAgICAgICAgICA8L1RleHQ+XG4gICAgICAgIDwvVmlldz5cbiAgICAgICAge2FjdGlvbnMgJiZcbiAgICAgICAgICA8VmlldyBkYXRhU2V0PXt7YWN0aXZlOiB0aGlzLnMuaGVhZGVyQWN0aW9uc0FjdGl2ZSwgY2xhc3M6IFwiaGVhZGVyLWFjdGlvbnMtY29udGFpbmVyXCJ9fSBzdHlsZT17aGVhZGVyQWN0aW9uc0NvbnRhaW5lclN0eWxlfT5cbiAgICAgICAgICAgIDxWaWV3XG4gICAgICAgICAgICAgIGRhdGFTZXQ9e3tjbGFzczogXCJoZWFkZXItYWN0aW9uc1wifX1cbiAgICAgICAgICAgICAgcmVmPXt0aGlzLnR0LmhlYWRlckFjdGlvbnNSZWZ9XG4gICAgICAgICAgICAgIHN0eWxlPXtoZWFkZXJBY3Rpb25zU3R5bGV9XG4gICAgICAgICAgICA+XG4gICAgICAgICAgICAgIHthY3Rpb25zfVxuICAgICAgICAgICAgPC9WaWV3PlxuICAgICAgICAgIDwvVmlldz5cbiAgICAgICAgfVxuICAgICAgICB7IW1kVXAgJiZcbiAgICAgICAgICA8Vmlld1xuICAgICAgICAgICAgZGF0YVNldD17e2NsYXNzOiBcImJ1cmdlci1tZW51LWNvbnRhaW5lclwifX1cbiAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgIGZsZXhEaXJlY3Rpb246IFwicm93XCIsXG4gICAgICAgICAgICAgIG1hcmdpbkxlZnQ6IFwiYXV0b1wiXG4gICAgICAgICAgICB9fVxuICAgICAgICAgID5cbiAgICAgICAgICAgIHthY3Rpb25zICYmXG4gICAgICAgICAgICAgIDxQcmVzc2FibGUgZGF0YVNldD17e2NsYXNzOiBcImFjdGlvbnMtbGlua1wifX0gb25QcmVzcz17dGhpcy50dC5vbkdlYXJzQ2xpY2tlZH0gc3R5bGU9e3ttYXJnaW5SaWdodDogOCwgZm9udFNpemU6IDIyfX0+XG4gICAgICAgICAgICAgICAgPEljb24gbmFtZT1cImdlYXJcIiBzaXplPXsyMH0gLz5cbiAgICAgICAgICAgICAgPC9QcmVzc2FibGU+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8UHJlc3NhYmxlIGRhdGFTZXQ9e3tjbGFzczogXCJidXJnZXItbWVudS1saW5rXCJ9fSBvblByZXNzPXtvblRyaWdnZXJNZW51fT5cbiAgICAgICAgICAgICAgPEljb24gbmFtZT1cImJhcnNcIiBzaXplPXsyMH0gLz5cbiAgICAgICAgICAgIDwvUHJlc3NhYmxlPlxuICAgICAgICAgIDwvVmlldz5cbiAgICAgICAgfVxuICAgICAgPC9WaWV3PlxuICAgIClcbiAgfVxuXG4gIG9uR2VhcnNDbGlja2VkID0gKCkgPT4ge1xuICAgIGNvbnNvbGUubG9nKFwib25HZWFyc0NsaWNrZWRcIilcblxuICAgIHRoaXMuc2V0U3RhdGUoe2hlYWRlckFjdGlvbnNBY3RpdmU6ICF0aGlzLnMuaGVhZGVyQWN0aW9uc0FjdGl2ZX0pXG4gIH1cblxuICBvbldpbmRvd01vdXNlVXAgPSAoZSkgPT4ge1xuICAgIC8vIENsb3NlIHRoZSBoZWFkZXIgYWN0aW9ucyBtZW51IGlmIGNsaWNrZWQgaGFwcGVuZWQgb3V0c2lkZVxuICAgIGlmICh0aGlzLnMuaGVhZGVyQWN0aW9uc0FjdGl2ZSAmJiB0aGlzLnR0LmhlYWRlckFjdGlvbnNSZWYuY3VycmVudCAmJiAhdGhpcy50dC5oZWFkZXJBY3Rpb25zUmVmLmN1cnJlbnQuY29udGFpbnMoZS50YXJnZXQpKSB7XG4gICAgICB0aGlzLnNldFN0YXRlKHtoZWFkZXJBY3Rpb25zQWN0aXZlOiBmYWxzZX0pXG4gICAgfVxuICB9XG59KSlcbiJdLCJtYXBwaW5ncyI6IkFBQUE7QUFDQSxPQUFPQSxLQUFLLElBQUdDLE1BQU0sUUFBTyxPQUFPO0FBQ25DLE9BQU9DLGFBQWEsTUFBTSx5QkFBeUI7QUFDbkQsT0FBT0MsSUFBSSxNQUFNLHFCQUFxQjtBQUN0QyxPQUFPQyxJQUFJLE1BQU0sNEJBQTRCO0FBQzdDLE9BQU9DLFNBQVMsTUFBTSxZQUFZO0FBQ2xDLE9BQU9DLGNBQWMsTUFBTSxrQkFBa0I7QUFDN0MsU0FBUUMsY0FBYyxRQUFPLHVDQUF1QztBQUNwRSxPQUFPQyxJQUFJLE1BQU0scUJBQXFCO0FBQ3RDLFNBQVFDLFNBQVMsRUFBRUMsSUFBSSxRQUFPLGNBQWM7QUFDNUMsT0FBT0MsYUFBYSxNQUFNLHlCQUF5QjtBQUNuRCxPQUFPQyxnQkFBZ0IsTUFBTSw2QkFBNkI7QUFFMUQsZUFBZVIsSUFBSSxDQUFDRyxjQUFjLENBQUMsTUFBTU0sOEJBQThCLFNBQVNYLGFBQWEsQ0FBQztFQUM1RixPQUFPWSxTQUFTLEdBQUdSLGNBQWMsQ0FBQztJQUNoQ1MsT0FBTyxFQUFFVixTQUFTLENBQUNXLElBQUk7SUFDdkJDLGFBQWEsRUFBRVosU0FBUyxDQUFDYSxJQUFJLENBQUNDLFVBQVU7SUFDeENDLEtBQUssRUFBRWYsU0FBUyxDQUFDZ0I7RUFDbkIsQ0FBQyxDQUFDO0VBRUZDLEtBQUtBLENBQUEsRUFB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
@@ -0,0 +1,164 @@
1
+ function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
2
+ import React, { useMemo } from "react";
3
+ import { StyleSheet, View } from "react-native";
4
+ import BaseComponent from "../../base-component";
5
+ import CommandsPool from "../../commands-pool";
6
+ import config from "super-admin/config";
7
+ import Header from "./header";
8
+ import memo from "set-state-compare/src/memo";
9
+ import Menu from "./menu";
10
+ import PropTypes from "prop-types";
11
+ import PropTypesExact from "prop-types-exact";
12
+ import { shapeComponent } from "set-state-compare/src/shape-component";
13
+ import Text from "../../utils/text";
14
+ import useBreakpoint from "../../use-breakpoint";
15
+ import useCurrentUser from "../../use-current-user";
16
+ import useI18n from "i18n-on-steroids/src/use-i18n";
17
+ const NoAccess = /*#__PURE__*/React.lazy(() => import("./no-access"));
18
+ const styles = StyleSheet.create({
19
+ appLayoutContentContainer: {
20
+ base: {
21
+ minHeight: "100vh",
22
+ backgroundColor: "#f7f7f7"
23
+ },
24
+ mdDown: {
25
+ paddingTop: 130,
26
+ paddingRight: 30,
27
+ paddingBottom: 30
28
+ },
29
+ mdUp: {
30
+ paddingTop: 130,
31
+ paddingRight: 30,
32
+ paddingBottom: 30,
33
+ paddingLeft: 280
34
+ },
35
+ lgUp: {
36
+ paddingTop: 130,
37
+ paddingRight: 30,
38
+ paddingBottom: 30,
39
+ paddingLeft: 320
40
+ }
41
+ },
42
+ mb15: {
43
+ marginBottom: 15
44
+ },
45
+ rootView: {
46
+ width: "100%",
47
+ minHeight: "100vh",
48
+ backgroundColor: "#fff",
49
+ color: "#000"
50
+ }
51
+ });
52
+ export default memo(shapeComponent(class ApiMakerSuperAdminLayout extends BaseComponent {
53
+ static propTypes = PropTypesExact({
54
+ actions: PropTypes.node,
55
+ active: PropTypes.string,
56
+ children: PropTypes.node,
57
+ className: PropTypes.string,
58
+ currentCustomer: PropTypes.object,
59
+ currentCustomerId: PropTypes.string,
60
+ currentUser: PropTypes.object,
61
+ headTitle: PropTypes.string,
62
+ headerTitle: PropTypes.string
63
+ });
64
+ setup() {
65
+ const currentUser = useCurrentUser();
66
+ const {
67
+ locale,
68
+ t
69
+ } = useI18n({
70
+ namespace: "js.api_maker.super_admin.layout"
71
+ });
72
+ const {
73
+ lgUp,
74
+ mdUp,
75
+ mdDown
76
+ } = useBreakpoint();
77
+ this.useStates({
78
+ menuTriggered: false
79
+ });
80
+ this.setInstance({
81
+ currentUser,
82
+ lgUp,
83
+ mdUp,
84
+ mdDown,
85
+ t
86
+ });
87
+ useMemo(() => {
88
+ CommandsPool.current().globalRequestData.layout = "admin";
89
+ CommandsPool.current().globalRequestData.locale = locale;
90
+ }, [locale]);
91
+ }
92
+ render() {
93
+ const {
94
+ currentUser,
95
+ lgUp,
96
+ mdUp,
97
+ mdDown,
98
+ t
99
+ } = this.tt;
100
+ const {
101
+ actions,
102
+ active,
103
+ children,
104
+ className,
105
+ currentCustomer,
106
+ currentCustomerId,
107
+ headTitle,
108
+ headerTitle,
109
+ menu,
110
+ ...restProps
111
+ } = this.props;
112
+ const actualHeadTitle = headTitle || headerTitle;
113
+ if (actualHeadTitle) {
114
+ document.title = actualHeadTitle;
115
+ } else {
116
+ document.title = "Super Admin";
117
+ }
118
+ const noAccess = !currentUser;
119
+ const appLayoutContentContainerStyles = [styles.appLayoutContentContainer.base];
120
+ if (mdDown) appLayoutContentContainerStyles.push(styles.appLayoutContentContainer.mdDown);
121
+ if (mdUp) appLayoutContentContainerStyles.push(styles.appLayoutContentContainer.mdUp);
122
+ if (lgUp) appLayoutContentContainerStyles.push(styles.appLayoutContentContainer.lgUp);
123
+ return /*#__PURE__*/React.createElement(View, _extends({
124
+ dataSet: {
125
+ component: "super-admin--layout",
126
+ class: className,
127
+ menuTriggered: this.s.menuTriggered
128
+ },
129
+ style: styles.rootView
130
+ }, restProps), /*#__PURE__*/React.createElement(Menu, {
131
+ active: active,
132
+ noAccess: noAccess,
133
+ onRequestMenuClose: this.tt.onRequestMenuClose,
134
+ triggered: this.s.menuTriggered
135
+ }), /*#__PURE__*/React.createElement(Header, {
136
+ actions: actions,
137
+ onTriggerMenu: this.tt.onTriggerMenu,
138
+ title: headerTitle
139
+ }), /*#__PURE__*/React.createElement(View, {
140
+ dataSet: {
141
+ class: "app-layout-content-container"
142
+ },
143
+ style: appLayoutContentContainerStyles
144
+ }, noAccess && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(NoAccess, null), currentUser && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, {
145
+ style: styles.mb15
146
+ }, t(".try_signing_out_and_in_with_a_different_user", {
147
+ defaultValue: "Try signing in with a different user."
148
+ }))), !currentUser && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Text, {
149
+ style: styles.mb15
150
+ }, t(".try_signing_in", {
151
+ defaultValue: "Try signing in."
152
+ })), config.signInContent())), !noAccess && children));
153
+ }
154
+ onRequestMenuClose = () => this.setState({
155
+ menuTriggered: false
156
+ });
157
+ onTriggerMenu = e => {
158
+ e.preventDefault();
159
+ this.setState({
160
+ menuTriggered: !this.s.menuTriggered
161
+ });
162
+ };
163
+ }));
164
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZU1lbW8iLCJTdHlsZVNoZWV0IiwiVmlldyIsIkJhc2VDb21wb25lbnQiLCJDb21tYW5kc1Bvb2wiLCJjb25maWciLCJIZWFkZXIiLCJtZW1vIiwiTWVudSIsIlByb3BUeXBlcyIsIlByb3BUeXBlc0V4YWN0Iiwic2hhcGVDb21wb25lbnQiLCJUZXh0IiwidXNlQnJlYWtwb2ludCIsInVzZUN1cnJlbnRVc2VyIiwidXNlSTE4biIsIk5vQWNjZXNzIiwibGF6eSIsInN0eWxlcyIsImNyZWF0ZSIsImFwcExheW91dENvbnRlbnRDb250YWluZXIiLCJiYXNlIiwibWluSGVpZ2h0IiwiYmFja2dyb3VuZENvbG9yIiwibWREb3duIiwicGFkZGluZ1RvcCIsInBhZGRpbmdSaWdodCIsInBhZGRpbmdCb3R0b20iLCJtZFVwIiwicGFkZGluZ0xlZnQiLCJsZ1VwIiwibWIxNSIsIm1hcmdpbkJvdHRvbSIsInJvb3RWaWV3Iiwid2lkdGgiLCJjb2xvciIsIkFwaU1ha2VyU3VwZXJBZG1pbkxheW91dCIsInByb3BUeXBlcyIsImFjdGlvbnMiLCJub2RlIiwiYWN0aXZlIiwic3RyaW5nIiwiY2hpbGRyZW4iLCJjbGFzc05hbWUiLCJjdXJyZW50Q3VzdG9tZXIiLCJvYmplY3QiLCJjdXJyZW50Q3VzdG9tZXJJZCIsImN1cnJlbnRVc2VyIiwiaGVhZFRpdGxlIiwiaGVhZGVyVGl0bGUiLCJzZXR1cCIsImxvY2FsZSIsInQiLCJuYW1lc3BhY2UiLCJ1c2VTdGF0ZXMiLCJtZW51VHJpZ2dlcmVkIiwic2V0SW5zdGFuY2UiLCJjdXJyZW50IiwiZ2xvYmFsUmVxdWVzdERhdGEiLCJsYXlvdXQiLCJyZW5kZXIiLCJ0dCIsIm1lbnUiLCJyZXN0UHJvcHMiLCJwcm9wcyIsImFjdHVhbEhlYWRUaXRsZSIsImRvY3VtZW50IiwidGl0bGUiLCJub0FjY2VzcyIsImFwcExheW91dENvbnRlbnRDb250YWluZXJTdHlsZXMiLCJwdXNoIiwiY3JlYXRlRWxlbWVudCIsIl9leHRlbmRzIiwiZGF0YVNldCIsImNvbXBvbmVudCIsImNsYXNzIiwicyIsInN0eWxlIiwib25SZXF1ZXN0TWVudUNsb3NlIiwidHJpZ2dlcmVkIiwib25UcmlnZ2VyTWVudSIsIkZyYWdtZW50IiwiZGVmYXVsdFZhbHVlIiwic2lnbkluQ29udGVudCIsInNldFN0YXRlIiwiZSIsInByZXZlbnREZWZhdWx0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3N1cGVyLWFkbWluL2xheW91dC9pbmRleC5qc3giXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IFJlYWN0LCB7dXNlTWVtb30gZnJvbSBcInJlYWN0XCJcbmltcG9ydCB7U3R5bGVTaGVldCwgVmlld30gZnJvbSBcInJlYWN0LW5hdGl2ZVwiXG5pbXBvcnQgQmFzZUNvbXBvbmVudCBmcm9tIFwiLi4vLi4vYmFzZS1jb21wb25lbnRcIlxuaW1wb3J0IENvbW1hbmRzUG9vbCBmcm9tIFwiLi4vLi4vY29tbWFuZHMtcG9vbFwiXG5pbXBvcnQgY29uZmlnIGZyb20gXCJzdXBlci1hZG1pbi9jb25maWdcIlxuaW1wb3J0IEhlYWRlciBmcm9tIFwiLi9oZWFkZXJcIlxuaW1wb3J0IG1lbW8gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9tZW1vXCJcbmltcG9ydCBNZW51IGZyb20gXCIuL21lbnVcIlxuaW1wb3J0IFByb3BUeXBlcyBmcm9tIFwicHJvcC10eXBlc1wiXG5pbXBvcnQgUHJvcFR5cGVzRXhhY3QgZnJvbSBcInByb3AtdHlwZXMtZXhhY3RcIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9zaGFwZS1jb21wb25lbnRcIlxuaW1wb3J0IFRleHQgZnJvbSBcIi4uLy4uL3V0aWxzL3RleHRcIlxuaW1wb3J0IHVzZUJyZWFrcG9pbnQgZnJvbSBcIi4uLy4uL3VzZS1icmVha3BvaW50XCJcbmltcG9ydCB1c2VDdXJyZW50VXNlciBmcm9tIFwiLi4vLi4vdXNlLWN1cnJlbnQtdXNlclwiXG5pbXBvcnQgdXNlSTE4biBmcm9tIFwiaTE4bi1vbi1zdGVyb2lkcy9zcmMvdXNlLWkxOG5cIlxuXG5jb25zdCBOb0FjY2VzcyA9IFJlYWN0LmxhenkoKCkgPT4gaW1wb3J0KFwiLi9uby1hY2Nlc3NcIikpXG5cbmNvbnN0IHN0eWxlcyA9IFN0eWxlU2hlZXQuY3JlYXRlKHtcbiAgYXBwTGF5b3V0Q29udGVudENvbnRhaW5lcjoge1xuICAgIGJhc2U6IHtcbiAgICAgIG1pbkhlaWdodDogXCIxMDB2aFwiLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBcIiNmN2Y3ZjdcIlxuICAgIH0sXG4gICAgbWREb3duOiB7XG4gICAgICBwYWRkaW5nVG9wOiAxMzAsXG4gICAgICBwYWRkaW5nUmlnaHQ6IDMwLFxuICAgICAgcGFkZGluZ0JvdHRvbTogMzBcbiAgICB9LFxuICAgIG1kVXA6IHtcbiAgICAgIHBhZGRpbmdUb3A6IDEzMCxcbiAgICAgIHBhZGRpbmdSaWdodDogMzAsXG4gICAgICBwYWRkaW5nQm90dG9tOiAzMCxcbiAgICAgIHBhZGRpbmdMZWZ0OiAyODBcbiAgICB9LFxuICAgIGxnVXA6IHtcbiAgICAgIHBhZGRpbmdUb3A6IDEzMCxcbiAgICAgIHBhZGRpbmdSaWdodDogMzAsXG4gICAgICBwYWRkaW5nQm90dG9tOiAzMCxcbiAgICAgIHBhZGRpbmdMZWZ0OiAzMjBcbiAgICB9XG4gIH0sXG4gIG1iMTU6IHtcbiAgICBtYXJnaW5Cb3R0b206IDE1XG4gIH0sXG4gIHJvb3RWaWV3OiB7XG4gICAgd2lkdGg6IFwiMTAwJVwiLFxuICAgIG1pbkhlaWdodDogXCIxMDB2aFwiLFxuICAgIGJhY2tncm91bmRDb2xvcjogXCIjZmZmXCIsXG4gICAgY29sb3I6IFwiIzAwMFwiXG4gIH1cbn0pXG5cbmV4cG9ydCBkZWZhdWx0IG1lbW8oc2hhcGVDb21wb25lbnQoY2xhc3MgQXBpTWFrZXJTdXBlckFkbWluTGF5b3V0IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSBQcm9wVHlwZXNFeGFjdCh7XG4gICAgYWN0aW9uczogUHJvcFR5cGVzLm5vZGUsXG4gICAgYWN0aXZlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGNoaWxkcmVuOiBQcm9wVHlwZXMubm9kZSxcbiAgICBjbGFzc05hbWU6IFByb3BUeXBlcy5zdHJpbmcsXG4gICAgY3VycmVudEN1c3RvbWVyOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGN1cnJlbnRDdXN0b21lcklkOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIGN1cnJlbnRVc2VyOiBQcm9wVHlwZXMub2JqZWN0LFxuICAgIGhlYWRUaXRsZTogUHJvcFR5cGVzLnN0cmluZyxcbiAgICBoZWFkZXJUaXRsZTogUHJvcFR5cGVzLnN0cmluZ1xuICB9KVxuXG4gIHNldHVwKCkge1xuICAgIGNvbnN0IGN1cnJlbnRVc2VyID0gdXNlQ3VycmVudFVzZXIoKVxuICAgIGNvbnN0IHtsb2NhbGUsIHR9ID0gdXNlSTE4bih7bmFtZXNwYWNlOiBcImpzLmFwaV9tYWtlci5zdXBlcl9hZG1pbi5sYXlvdXRcIn0pXG4gICAgY29uc3Qge2xnVXAsIG1kVXAsIG1kRG93bn0gPSB1c2VCcmVha3BvaW50KClcblxuICAgIHRoaXMudXNlU3RhdGVzKHttZW51VHJpZ2dlcmVkOiBmYWxzZX0pXG4gICAgdGhpcy5zZXRJbnN0YW5jZSh7Y3VycmVudFVzZXIsIGxnVXAsIG1kVXAsIG1kRG93biwgdH0pXG5cbiAgICB1c2VNZW1vKCgpID0+IHtcbiAgICAgIENvbW1hbmRzUG9vbC5jdXJyZW50KCkuZ2xvYmFsUmVxdWVzdERhdGEubGF5b3V0ID0gXCJhZG1pblwiXG4gICAgICBDb21tYW5kc1Bvb2wuY3VycmVudCgpLmdsb2JhbFJlcXVlc3REYXRhLmxvY2FsZSA9IGxvY2FsZVxuICAgIH0sIFtsb2NhbGVdKVxuICB9XG5cbiAgcmVuZGVyKCkge1xuICAgIGNvbnN0IHtjdXJyZW50VXNlciwgbGdVcCwgbWRVcCwgbWREb3duLCB0fSA9IHRoaXMudHRcbiAgICBjb25zdCB7XG4gICAgICBhY3Rpb25zLFxuICAgICAgYWN0aXZlLFxuICAgICAgY2hpbGRyZW4sXG4gICAgICBjbGFzc05hbWUsXG4gICAgICBjdXJyZW50Q3VzdG9tZXIsXG4gICAgICBjdXJyZW50Q3VzdG9tZXJJZCxcbiAgICAgIGhlYWRUaXRsZSxcbiAgICAgIGhlYWRlclRpdGxlLFxuICAgICAgbWVudSxcbiAgICAgIC4uLnJlc3RQcm9wc1xuICAgIH0gPSB0aGlzLnByb3BzXG4gICAgY29uc3QgYWN0dWFsSGVhZFRpdGxlID0gaGVhZFRpdGxlIHx8IGhlYWRlclRpdGxlXG5cbiAgICBpZiAoYWN0dWFsSGVhZFRpdGxlKSB7XG4gICAgICBkb2N1bWVudC50aXRsZSA9IGFjdHVhbEhlYWRUaXRsZVxuICAgIH0gZWxzZSB7XG4gICAgICBkb2N1bWVudC50aXRsZSA9IFwiU3VwZXIgQWRtaW5cIlxuICAgIH1cblxuICAgIGNvbnN0IG5vQWNjZXNzID0gIWN1cnJlbnRVc2VyXG4gICAgY29uc3QgYXBwTGF5b3V0Q29udGVudENvbnRhaW5lclN0eWxlcyA9IFtzdHlsZXMuYXBwTGF5b3V0Q29udGVudENvbnRhaW5lci5iYXNlXVxuXG4gICAgaWYgKG1kRG93bikgYXBwTGF5b3V0Q29udGVudENvbnRhaW5lclN0eWxlcy5wdXNoKHN0eWxlcy5hcHBMYXlvdXRDb250ZW50Q29udGFpbmVyLm1kRG93bilcbiAgICBpZiAobWRVcCkgYXBwTGF5b3V0Q29udGVudENvbnRhaW5lclN0eWxlcy5wdXNoKHN0eWxlcy5hcHBMYXlvdXRDb250ZW50Q29udGFpbmVyLm1kVXApXG4gICAgaWYgKGxnVXApIGFwcExheW91dENvbnRlbnRDb250YWluZXJTdHlsZXMucHVzaChzdHlsZXMuYXBwTGF5b3V0Q29udGVudENvbnRhaW5lci5sZ1VwKVxuXG4gICAgcmV0dXJuIChcbiAgICAgIDxWaWV3XG4gICAgICAgIGRhdGFTZXQ9e3tjb21wb25lbnQ6IFwic3VwZXItYWRtaW4tLWxheW91dFwiLCBjbGFzczogY2xhc3NOYW1lLCBtZW51VHJpZ2dlcmVkOiB0aGlzLnMubWVudVRyaWdnZXJlZH19XG4gICAgICAgIHN0eWxlPXtzdHlsZXMucm9vdFZpZXd9XG4gICAgICAgIHsuLi5yZXN0UHJvcHN9PlxuICAgICAgICA8TWVudVxuICAgICAgICAgIGFjdGl2ZT17YWN0aXZlfVxuICAgICAgICAgIG5vQWNjZXNzPXtub0FjY2Vzc31cbiAgICAgICAgICBvblJlcXVlc3RNZW51Q2xvc2U9e3RoaXMudHQub25SZXF1ZXN0TWVudUNsb3NlfVxuICAgICAgICAgIHRyaWdnZXJlZD17dGhpcy5zLm1lbnVUcmlnZ2VyZWR9XG4gICAgICAgIC8+XG4gICAgICAgIDxIZWFkZXIgYWN0aW9ucz17YWN0aW9uc30gb25UcmlnZ2VyTWVudT17dGhpcy50dC5vblRyaWdnZXJNZW51fSB0aXRsZT17aGVhZGVyVGl0bGV9IC8+XG4gICAgICAgIDxWaWV3IGRhdGFTZXQ9e3tjbGFzczogXCJhcHAtbGF5b3V0LWNvbnRlbnQtY29udGFpbmVyXCJ9fSBzdHlsZT17YXBwTGF5b3V0Q29udGVudENvbnRhaW5lclN0eWxlc30+XG4gICAgICAgICAge25vQWNjZXNzICYmXG4gICAgICAgICAgICA8PlxuICAgICAgICAgICAgICA8Tm9BY2Nlc3MgLz5cbiAgICAgICAgICAgICAge2N1cnJlbnRVc2VyICYmXG4gICAgICAgICAgICAgICAgPD5cbiAgICAgICAgICAgICAgICAgIDxUZXh0IHN0eWxlPXtzdHlsZXMubWIxNX0+XG4gICAgICAgICAgICAgICAgICAgIHt0KFwiLnRyeV9zaWduaW5nX291dF9hbmRfaW5fd2l0aF9hX2RpZmZlcmVudF91c2VyXCIsIHtkZWZhdWx0VmFsdWU6IFwiVHJ5IHNpZ25pbmcgaW4gd2l0aCBhIGRpZmZlcmVudCB1c2VyLlwifSl9XG4gICAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAgPC8+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgeyFjdXJyZW50VXNlciAmJlxuICAgICAgICAgICAgICAgIDw+XG4gICAgICAgICAgICAgICAgICA8VGV4dCBzdHlsZT17c3R5bGVzLm1iMTV9PlxuICAgICAgICAgICAgICAgICAgICB7dChcIi50cnlfc2lnbmluZ19pblwiLCB7ZGVmYXVsdFZhbHVlOiBcIlRyeSBzaWduaW5nIGluLlwifSl9XG4gICAgICAgICAgICAgICAgICA8L1RleHQ+XG4gICAgICAgICAgICAgICAgICB7Y29uZmlnLnNpZ25JbkNvbnRlbnQoKX1cbiAgICAgICAgICAgICAgICA8Lz5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC8+XG4gICAgICAgICAgfVxuICAgICAgICAgIHshbm9BY2Nlc3MgJiYgY2hpbGRyZW59XG4gICAgICAgIDwvVmlldz5cbiAgICAgIDwvVmlldz5cbiAgICApXG4gIH1cblxuICBvblJlcXVlc3RNZW51Q2xvc2UgPSAoKSA9PiB0aGlzLnNldFN0YXRlKHttZW51VHJpZ2dlcmVkOiBmYWxzZX0pXG4gIG9uVHJpZ2dlck1lbnUgPSAoZSkgPT4ge1xuICAgIGUucHJldmVudERlZmF1bHQoKVxuICAgIHRoaXMuc2V0U3RhdGUoe21lbnVUcmlnZ2VyZWQ6ICF0aGlzLnMubWVudVRyaWdnZXJlZH0pXG4gIH1cbn0pKVxuIl0sIm1hcHBpbmdzIjoiO0FBQUEsT0FBT0EsS0FBSyxJQUFHQyxPQUFPLFFBQU8sT0FBTztBQUNwQyxTQUFRQyxVQUFVLEVBQUVDLElBQUksUUFBTyxjQUFjO0FBQzdDLE9BQU9DLGFBQWEsTUFBTSxzQkFBc0I7QUFDaEQsT0FBT0MsWUFBWSxNQUFNLHFCQUFxQjtBQUM5QyxPQUFPQyxNQUFNLE1BQU0sb0JBQW9CO0FBQ3ZDLE9BQU9DLE1BQU0sTUFBTSxVQUFVO0FBQzdCLE9BQU9DLElBQUksTUFBTSw0QkFBNEI7QUFDN0MsT0FBT0MsSUFBSSxNQUFNLFFBQVE7QUFDekIsT0FBT0MsU0FBUyxNQUFNLFlBQVk7QUFDbEMsT0FBT0MsY0FBYyxNQUFNLGtCQUFrQjtBQUM3QyxTQUFRQyxjQUFjLFFBQU8sdUNBQXVDO0FBQ3BFLE9BQU9DLElBQUksTUFBTSxrQkFBa0I7QUFDbkMsT0FBT0MsYUFBYSxNQUFNLHNCQUFzQjtBQUNoRCxPQUFPQyxjQUFjLE1BQU0sd0JBQXdCO0FBQ25ELE9BQU9DLE9BQU8sTUFBTSwrQkFBK0I7QUFFbkQsTUFBTUMsUUFBUSxnQkFBR2pCLEtBQUssQ0FBQ2tCLElBQUksQ0FBQyxNQUFNLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztBQUV4RCxNQUFNQyxNQUFNLEdBQUdqQixVQUFVLENBQUNrQixNQUFNLENBQUM7RUFDL0JDLHlCQUF5QixFQUFFO0lBQ3pCQyxJQUFJLEVBQUU7TUFDSkMsU0FBUyxFQUFFLE9BQU87TUFDbEJDLGVBQWUsRUFBRTtJQUNuQixDQUFDO0lBQ0RDLE1BQU0sRUFBRTtNQUNOQyxVQUFVLEVBQUUsR0FBRztNQUNmQyxZQUFZLEVBQUUsRUFBRTtNQUNoQkMsYUFBYSxFQUFFO0lBQ2pCLENBQUM7SUFDREMsSUFBSSxFQUFFO01BQ0pILFVBQVUsRUFBRSxHQUFHO01BQ2ZDLFlBQVksRUFBRSxFQUFFO01BQ2hCQyxhQUFhLEVBQUUsRUFBRTtNQUNqQkUsV0FBVyxFQUFFO0lBQ2YsQ0FBQztJQUNEQyxJQUFJLEVBQUU7TUFDSkwsVUFBVSxFQUFFLEdBQUc7TUFDZkMsWUFBWSxFQUFFLEVBQUU7TUFDaEJDLGFBQWEsRUFBRSxFQUFFO01BQ2pCRSxXQUFXLEVBQUU7SUFDZjtFQUNGLENBQUM7RUFDREUsSUFBSSxFQUFFO0lBQ0pDLFlBQVksRUFBRTtFQUNoQixDQUFDO0VBQ0RDLFFBQVEsRUFBRTtJQUNSQyxLQUFLLEVBQUUsTUFBTTtJQUNiWixTQUFTLEVBQUUsT0FBTztJQUNsQkMsZUFBZSxFQUFFLE1BQU07SUFDdkJZLEtBQUssRUFBRTtFQUNUO0FBQ0YsQ0FBQyxDQUFDO0FBRUYsZUFBZTVCLElBQUksQ0FBQ0ksY0FBYyxDQUFDLE1BQU15Qix3QkFBd0IsU0FBU2pDLGFBQWEsQ0FBQztFQUN0RixPQUFPa0MsU0FBUyxHQUFHM0IsY0FBYyxDQUFDO0lBQ2hDNEIsT0FBTyxFQUFFN0IsU0FBUyxDQUFDOEIsSUFBSTtJQUN2QkMsTUFBTSxFQUFFL0IsU0FBUyxDQUFDZ0MsTUFBTTtJQUN4QkMsUUFBUSxFQUFFakMsU0FBUyxDQUFDOEIsSUFBSTtJQUN4QkksU0FBUyxFQUFFbEMsU0FBUyxDQUFDZ0MsTUFBTTtJQUMzQkcsZUFBZSxFQUFFbkMsU0FBUyxDQUFDb0MsTUFBTTtJQUNqQ0MsaUJBQWlCLEVBQUVyQyxTQUFTLENBQUNnQyxNQUFNO0lBQ25DTSxXQUFXLEVBQUV0QyxTQUFTLENBQUNvQyxNQUFNO0lBQzdCRyxTQUFTLEVBQUV2QyxTQUFTLENBQUNnQyxNQUFNO0lBQzNCUSxXQUFXLEVBQUV4QyxTQUFTLENBQUNnQztFQUN6QixDQUFDLENBQUM7RUFFRlMsS0FBS0EsQ0FBQSxFQUFHO0lBQ04sTUFBTUgsV0FBVyxHQUFHakMsY0FBYyxDQUFDLENBQUM7SUFDcEMsTUFBTTtNQUFDcUMsTUFBTTtNQUFFQztJQUFDLENBQUMsR0FBR3JDLE9BQU8sQ0FBQztNQUFDc0MsU0FBUyxFQUFFO0lBQWlDLENBQUMsQ0FBQztJQUMzRSxNQUFNO01BQUN2QixJQUFJO01BQUVGLElBQUk7TUFBRUo7SUFBTSxDQUFDLEdBQUdYLGFBQWEsQ0FBQyxDQUFDO0lBRTVDLElBQUksQ0FBQ3lDLFNBQVMsQ0FBQztNQUFDQyxhQUFhLEVBQUU7SUFBSyxDQUFDLENBQUM7SUFDdEMsSUFBSSxDQUFDQyxXQUFXLENBQUM7TUFBQ1QsV0FBVztNQUFFakIsSUFBSTtNQUFFRixJQUFJO01BQUVKLE1BQU07TUFBRTRCO0lBQUMsQ0FBQyxDQUFDO0lBRXREcEQsT0FBTyxDQUFDLE1BQU07TUFDWkksWUFBWSxDQUFDcUQsT0FBTyxDQUFDLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUNDLE1BQU0sR0FBRyxPQUFPO01BQ3pEdkQsWUFBWSxDQUFDcUQsT0FBTyxDQUFDLENBQUMsQ0FBQ0MsaUJBQWlCLENBQUNQLE1BQU0sR0FBR0EsTUFBTTtJQUMxRCxDQUFDLEVBQUUsQ0FBQ0EsTUFBTSxDQUFDLENBQUM7RUFDZDtFQUVBUyxNQUFNQSxDQUFBLEVBQUc7SUFDUCxNQUFNO01BQUNiLFdBQVc7TUFBRWpCLElBQUk7TUFBRUYsSUFBSTtNQUFFSixNQUFNO01BQUU0QjtJQUFDLENBQUMsR0FBRyxJQUFJLENBQUNTLEVBQUU7SUFDcEQsTUFBTTtNQUNKdkIsT0FBTztNQUNQRSxNQUFNO01BQ05FLFFBQVE7TUFDUkMsU0FBUztNQUNUQyxlQUFlO01BQ2ZFLGlCQUFpQjtNQUNqQkUsU0FBUztNQUNUQyxXQUFXO01BQ1hhLElBQUk7TUFDSixHQUFHQztJQUNMLENBQUMsR0FBRyxJQUFJLENBQUNDLEtBQUs7SUFDZCxNQUFNQyxlQUFlLEdBQUdqQixTQUFTLElBQUlDLFdBQVc7SUFFaEQsSUFBSWdCLGVBQWUsRUFBRTtNQUNuQkMsUUFBUSxDQUFDQyxLQUFLLEdBQUdGLGVBQWU7SUFDbEMsQ0FBQyxNQUFNO01BQ0xDLFFBQVEsQ0FBQ0MsS0FBSyxHQUFHLGFBQWE7SUFDaEM7SUFFQSxNQUFNQyxRQUFRLEdBQUcsQ0FBQ3JCLFdBQVc7SUFDN0IsTUFBTXNCLCtCQUErQixHQUFHLENBQUNuRCxNQUFNLENBQUNFLHlCQUF5QixDQUFDQyxJQUFJLENBQUM7SUFFL0UsSUFBSUcsTUFBTSxFQUFFNkMsK0JBQStCLENBQUNDLElBQUksQ0FBQ3BELE1BQU0sQ0FBQ0UseUJBQXlCLENBQUNJLE1BQU0sQ0FBQztJQUN6RixJQUFJSSxJQUFJLEVBQUV5QywrQkFBK0IsQ0FBQ0MsSUFBSSxDQUFDcEQsTUFBTSxDQUFDRSx5QkFBeUIsQ0FBQ1EsSUFBSSxDQUFDO0lBQ3JGLElBQUlFLElBQUksRUFBRXVDLCtCQUErQixDQUFDQyxJQUFJLENBQUNwRCxNQUFNLENBQUNFLHlCQUF5QixDQUFDVSxJQUFJLENBQUM7SUFFckYsb0JBQ0UvQixLQUFBLENBQUF3RSxhQUFBLENBQUNyRSxJQUFJLEVBQUFzRSxRQUFBO01BQ0hDLE9BQU8sRUFBRTtRQUFDQyxTQUFTLEVBQUUscUJBQXFCO1FBQUVDLEtBQUssRUFBRWhDLFNBQVM7UUFBRVksYUFBYSxFQUFFLElBQUksQ0FBQ3FCLENBQUMsQ0FBQ3JCO01BQWEsQ0FBRTtNQUNuR3NCLEtBQUssRUFBRTNELE1BQU0sQ0FBQ2U7SUFBUyxHQUNuQjhCLFNBQVMsZ0JBQ2JoRSxLQUFBLENBQUF3RSxhQUFBLENBQUMvRCxJQUFJO01BQ0hnQyxNQUFNLEVBQUVBLE1BQU87TUFDZjRCLFFBQVEsRUFBRUEsUUFBUztNQUNuQlUsa0JBQWtCLEVBQUUsSUFBSSxDQUFDakIsRUFBRSxDQUFDaUIsa0JBQW1CO01BQy9DQyxTQUFTLEVBQUUsSUFBSSxDQUFDSCxDQUFDLENBQUNyQjtJQUFjLENBQ2pDLENBQUMsZUFDRnhELEtBQUEsQ0FBQXdFLGFBQUEsQ0FBQ2pFLE1BQU07TUFBQ2dDLE9BQU8sRUFBRUEsT0FBUTtNQUFDMEMsYUFBYSxFQUFFLElBQUksQ0FBQ25CLEVBQUUsQ0FBQ21CLGFBQWM7TUFBQ2IsS0FBSyxFQUFFbEI7SUFBWSxDQUFFLENBQUMsZUFDdEZsRCxLQUFBLENBQUF3RSxhQUFBLENBQUNyRSxJQUFJO01BQUN1RSxPQUFPLEVBQUU7UUFBQ0UsS0FBSyxFQUFFO01BQThCLENBQUU7TUFBQ0UsS0FBSyxFQUFFUjtJQUFnQyxHQUM1RkQsUUFBUSxpQkFDUHJFLEtBQUEsQ0FBQXdFLGFBQUEsQ0FBQXhFLEtBQUEsQ0FBQWtGLFFBQUEscUJBQ0VsRixLQUFBLENBQUF3RSxhQUFBLENBQUN2RCxRQUFRLE1BQUUsQ0FBQyxFQUNYK0IsV0FBVyxpQkFDVmhELEtBQUEsQ0FBQXdFLGFBQUEsQ0FBQXhFLEtBQUEsQ0FBQWtGLFFBQUEscUJBQ0VsRixLQUFBLENBQUF3RSxhQUFBLENBQUMzRCxJQUFJO01BQUNpRSxLQUFLLEVBQUUzRCxNQUFNLENBQUNhO0lBQUssR0FDdEJxQixDQUFDLENBQUMsK0NBQStDLEVBQUU7TUFBQzhCLFlBQVksRUFBRTtJQUF1QyxDQUFDLENBQ3ZHLENBQ04sQ0FBQyxFQUVKLENBQUNuQyxXQUFXLGlCQUNYaEQsS0FBQSxDQUFBd0UsYUFBQSxDQUFBeEUsS0FBQSxDQUFBa0YsUUFBQSxxQkFDRWxGLEtBQUEsQ0FBQXdFLGFBQUEsQ0FBQzNELElBQUk7TUFBQ2lFLEtBQUssRUFBRTNELE1BQU0sQ0FBQ2E7SUFBSyxHQUN0QnFCLENBQUMsQ0FBQyxpQkFBaUIsRUFBRTtNQUFDOEIsWUFBWSxFQUFFO0lBQWlCLENBQUMsQ0FDbkQsQ0FBQyxFQUNON0UsTUFBTSxDQUFDOEUsYUFBYSxDQUFDLENBQ3RCLENBRUosQ0FBQyxFQUVKLENBQUNmLFFBQVEsSUFBSTFCLFFBQ1YsQ0FDRixDQUFDO0VBRVg7RUFFQW9DLGtCQUFrQixHQUFHQSxDQUFBLEtBQU0sSUFBSSxDQUFDTSxRQUFRLENBQUM7SUFBQzdCLGFBQWEsRUFBRTtFQUFLLENBQUMsQ0FBQztFQUNoRXlCLGFBQWEsR0FBSUssQ0FBQyxJQUFLO0lBQ3JCQSxDQUFDLENBQUNDLGNBQWMsQ0FBQyxDQUFDO0lBQ2xCLElBQUksQ0FBQ0YsUUFBUSxDQUFDO01BQUM3QixhQUFhLEVBQUUsQ0FBQyxJQUFJLENBQUNxQixDQUFDLENBQUNyQjtJQUFhLENBQUMsQ0FBQztFQUN2RCxDQUFDO0FBQ0gsQ0FBQyxDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,206 @@
1
+ import { StyleSheet, View } from "react-native";
2
+ import BaseComponent from "../../../base-component";
3
+ import Icon from "../../../utils/icon";
4
+ import memo from "set-state-compare/src/memo";
5
+ import Link from "../../../link";
6
+ import MenuContent from "./menu-content";
7
+ import MenuItem from "./menu-item";
8
+ import Params from "../../../params";
9
+ import PropTypes from "prop-types";
10
+ import PropTypesExact from "prop-types-exact";
11
+ import React from "react";
12
+ import { shapeComponent } from "set-state-compare/src/shape-component";
13
+ import Text from "../../../utils/text";
14
+ import useBreakpoint from "../../../use-breakpoint";
15
+ import useCurrentUser from "../../../use-current-user";
16
+ import useI18n from "i18n-on-steroids/src/use-i18n";
17
+ import { WithDefaultStyle } from "../../../utils/default-style";
18
+ const styles = StyleSheet.create({
19
+ root: {
20
+ base: {
21
+ position: "fixed",
22
+ zIndex: 9,
23
+ overflowY: "auto",
24
+ overflowX: "hidden",
25
+ top: 0,
26
+ left: 0,
27
+ height: "100%",
28
+ flexDirection: "column",
29
+ backgroundColor: "#1b1c1e"
30
+ },
31
+ mdDown: {
32
+ width: "100%",
33
+ maxWidth: 250,
34
+ maxHeight: "100vh",
35
+ overflowY: "auto"
36
+ },
37
+ mdUp: {
38
+ width: 250
39
+ },
40
+ lgUp: {
41
+ width: 290
42
+ }
43
+ },
44
+ userName: {
45
+ flexShrink: 1,
46
+ marginLeft: 8
47
+ },
48
+ userNameContainer: {
49
+ overflow: "hidden",
50
+ maxWidth: 140
51
+ }
52
+ });
53
+ export default memo(shapeComponent(class ComponentsAdminLayoutMenu extends BaseComponent {
54
+ static propTypes = PropTypesExact({
55
+ active: PropTypes.string,
56
+ noAccess: PropTypes.bool.isRequired,
57
+ onRequestMenuClose: PropTypes.func.isRequired,
58
+ triggered: PropTypes.bool.isRequired
59
+ });
60
+ setup() {
61
+ const {
62
+ lgUp,
63
+ mdDown,
64
+ mdUp
65
+ } = useBreakpoint();
66
+ const {
67
+ t
68
+ } = useI18n({
69
+ namespace: "js.api_maker.super_admin.layout.menu"
70
+ });
71
+ const currentUser = useCurrentUser();
72
+ this.setInstance({
73
+ currentUser,
74
+ lgUp,
75
+ mdDown,
76
+ mdUp,
77
+ t
78
+ });
79
+ }
80
+ render() {
81
+ const {
82
+ currentUser,
83
+ lgUp,
84
+ mdDown,
85
+ mdUp,
86
+ t
87
+ } = this.tt;
88
+ const {
89
+ active,
90
+ noAccess,
91
+ triggered
92
+ } = this.props;
93
+ const style = [styles.root.base];
94
+ if (mdDown) style.push(styles.root.mdDown);
95
+ if (mdUp) style.push(styles.root.mdUp);
96
+ if (lgUp) style.push(styles.root.lgUp);
97
+ if (mdDown && !triggered) {
98
+ return null;
99
+ }
100
+ return /*#__PURE__*/React.createElement(View, {
101
+ dataSet: {
102
+ component: "super-admin--layout--menu",
103
+ triggered
104
+ },
105
+ style: style
106
+ }, /*#__PURE__*/React.createElement(WithDefaultStyle, {
107
+ style: {
108
+ Text: {
109
+ color: "#fff"
110
+ }
111
+ }
112
+ }, /*#__PURE__*/React.createElement(View, {
113
+ dataSet: {
114
+ class: "menu-logo"
115
+ },
116
+ style: {
117
+ overflow: "hidden",
118
+ marginTop: 25,
119
+ marginRight: "auto",
120
+ marginLeft: "auto"
121
+ }
122
+ }, /*#__PURE__*/React.createElement(Link, {
123
+ dataSet: {
124
+ class: "menu-logo-link"
125
+ },
126
+ to: Params.withParams({})
127
+ }, /*#__PURE__*/React.createElement(Text, {
128
+ style: {
129
+ fontSize: 42,
130
+ textOverflow: "ellipsis",
131
+ whiteSpace: "nowrap"
132
+ }
133
+ }, "Admin"))), /*#__PURE__*/React.createElement(View, {
134
+ dataSet: {
135
+ class: "menu-items-center"
136
+ },
137
+ style: {
138
+ marginTop: 25
139
+ }
140
+ }, !noAccess && /*#__PURE__*/React.createElement(MenuContent, {
141
+ active: active
142
+ })), /*#__PURE__*/React.createElement(View, {
143
+ dataSet: {
144
+ class: "menu-items-bottom"
145
+ },
146
+ style: {
147
+ marginTop: "auto",
148
+ marginBottom: 25
149
+ }
150
+ }, currentUser && /*#__PURE__*/React.createElement(View, {
151
+ dataSet: {
152
+ class: "menu-user-section"
153
+ },
154
+ style: {
155
+ flexDirection: "row",
156
+ alignItems: "center",
157
+ marginRight: 25,
158
+ marginBottom: 25,
159
+ marginLeft: 25
160
+ }
161
+ }, /*#__PURE__*/React.createElement(View, {
162
+ dataSet: {
163
+ class: "menu-user-icon"
164
+ },
165
+ style: {
166
+ width: 44,
167
+ height: 44,
168
+ alignItems: "center",
169
+ justifyContent: "center",
170
+ backgroundColor: "#abbcd0",
171
+ borderRadius: "50%"
172
+ }
173
+ }, /*#__PURE__*/React.createElement(Icon, {
174
+ name: "user",
175
+ size: 12
176
+ })), /*#__PURE__*/React.createElement(View, {
177
+ className: "menu-user-name",
178
+ style: styles.userName
179
+ }, /*#__PURE__*/React.createElement(Text, {
180
+ dataSet: {
181
+ class: "menu-user-name-container"
182
+ },
183
+ style: styles.userNameContainer
184
+ }, currentUser.name()))), currentUser && /*#__PURE__*/React.createElement(MenuItem, {
185
+ active: true,
186
+ className: "sign-out-menu-item",
187
+ icon: "sign-out-alt",
188
+ label: t(".sign_out", {
189
+ defaultValue: "Sign out"
190
+ }),
191
+ onClick: this.tt.onSignOutClicked
192
+ }))));
193
+ }
194
+ onSignOutClicked = async e => {
195
+ e.preventDefault();
196
+ try {
197
+ await Devise.signOut();
198
+ FlashMessage.success(this.t(".you_have_been_signed_out", {
199
+ defaultValue: "You have been signed out"
200
+ }));
201
+ } catch (error) {
202
+ FlashMessage.errorResponse(error);
203
+ }
204
+ };
205
+ }));
206
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTdHlsZVNoZWV0IiwiVmlldyIsIkJhc2VDb21wb25lbnQiLCJJY29uIiwibWVtbyIsIkxpbmsiLCJNZW51Q29udGVudCIsIk1lbnVJdGVtIiwiUGFyYW1zIiwiUHJvcFR5cGVzIiwiUHJvcFR5cGVzRXhhY3QiLCJSZWFjdCIsInNoYXBlQ29tcG9uZW50IiwiVGV4dCIsInVzZUJyZWFrcG9pbnQiLCJ1c2VDdXJyZW50VXNlciIsInVzZUkxOG4iLCJXaXRoRGVmYXVsdFN0eWxlIiwic3R5bGVzIiwiY3JlYXRlIiwicm9vdCIsImJhc2UiLCJwb3NpdGlvbiIsInpJbmRleCIsIm92ZXJmbG93WSIsIm92ZXJmbG93WCIsInRvcCIsImxlZnQiLCJoZWlnaHQiLCJmbGV4RGlyZWN0aW9uIiwiYmFja2dyb3VuZENvbG9yIiwibWREb3duIiwid2lkdGgiLCJtYXhXaWR0aCIsIm1heEhlaWdodCIsIm1kVXAiLCJsZ1VwIiwidXNlck5hbWUiLCJmbGV4U2hyaW5rIiwibWFyZ2luTGVmdCIsInVzZXJOYW1lQ29udGFpbmVyIiwib3ZlcmZsb3ciLCJDb21wb25lbnRzQWRtaW5MYXlvdXRNZW51IiwicHJvcFR5cGVzIiwiYWN0aXZlIiwic3RyaW5nIiwibm9BY2Nlc3MiLCJib29sIiwiaXNSZXF1aXJlZCIsIm9uUmVxdWVzdE1lbnVDbG9zZSIsImZ1bmMiLCJ0cmlnZ2VyZWQiLCJzZXR1cCIsInQiLCJuYW1lc3BhY2UiLCJjdXJyZW50VXNlciIsInNldEluc3RhbmNlIiwicmVuZGVyIiwidHQiLCJwcm9wcyIsInN0eWxlIiwicHVzaCIsImNyZWF0ZUVsZW1lbnQiLCJkYXRhU2V0IiwiY29tcG9uZW50IiwiY29sb3IiLCJjbGFzcyIsIm1hcmdpblRvcCIsIm1hcmdpblJpZ2h0IiwidG8iLCJ3aXRoUGFyYW1zIiwiZm9udFNpemUiLCJ0ZXh0T3ZlcmZsb3ciLCJ3aGl0ZVNwYWNlIiwibWFyZ2luQm90dG9tIiwiYWxpZ25JdGVtcyIsImp1c3RpZnlDb250ZW50IiwiYm9yZGVyUmFkaXVzIiwibmFtZSIsInNpemUiLCJjbGFzc05hbWUiLCJpY29uIiwibGFiZWwiLCJkZWZhdWx0VmFsdWUiLCJvbkNsaWNrIiwib25TaWduT3V0Q2xpY2tlZCIsImUiLCJwcmV2ZW50RGVmYXVsdCIsIkRldmlzZSIsInNpZ25PdXQiLCJGbGFzaE1lc3NhZ2UiLCJzdWNjZXNzIiwiZXJyb3IiLCJlcnJvclJlc3BvbnNlIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3N1cGVyLWFkbWluL2xheW91dC9tZW51L2luZGV4LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1N0eWxlU2hlZXQsIFZpZXd9IGZyb20gXCJyZWFjdC1uYXRpdmVcIlxuaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uLy4uLy4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCBJY29uIGZyb20gXCIuLi8uLi8uLi91dGlscy9pY29uXCJcbmltcG9ydCBtZW1vIGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvbWVtb1wiXG5pbXBvcnQgTGluayBmcm9tIFwiLi4vLi4vLi4vbGlua1wiXG5pbXBvcnQgTWVudUNvbnRlbnQgZnJvbSBcIi4vbWVudS1jb250ZW50XCJcbmltcG9ydCBNZW51SXRlbSBmcm9tIFwiLi9tZW51LWl0ZW1cIlxuaW1wb3J0IFBhcmFtcyBmcm9tIFwiLi4vLi4vLi4vcGFyYW1zXCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IFByb3BUeXBlc0V4YWN0IGZyb20gXCJwcm9wLXR5cGVzLWV4YWN0XCJcbmltcG9ydCBSZWFjdCBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IHtzaGFwZUNvbXBvbmVudH0gZnJvbSBcInNldC1zdGF0ZS1jb21wYXJlL3NyYy9zaGFwZS1jb21wb25lbnRcIlxuaW1wb3J0IFRleHQgZnJvbSBcIi4uLy4uLy4uL3V0aWxzL3RleHRcIlxuaW1wb3J0IHVzZUJyZWFrcG9pbnQgZnJvbSBcIi4uLy4uLy4uL3VzZS1icmVha3BvaW50XCJcbmltcG9ydCB1c2VDdXJyZW50VXNlciBmcm9tIFwiLi4vLi4vLi4vdXNlLWN1cnJlbnQtdXNlclwiXG5pbXBvcnQgdXNlSTE4biBmcm9tIFwiaTE4bi1vbi1zdGVyb2lkcy9zcmMvdXNlLWkxOG5cIlxuaW1wb3J0IHtXaXRoRGVmYXVsdFN0eWxlfSBmcm9tIFwiLi4vLi4vLi4vdXRpbHMvZGVmYXVsdC1zdHlsZVwiXG5cbmNvbnN0IHN0eWxlcyA9IFN0eWxlU2hlZXQuY3JlYXRlKHtcbiAgcm9vdDoge1xuICAgIGJhc2U6IHtcbiAgICAgIHBvc2l0aW9uOiBcImZpeGVkXCIsXG4gICAgICB6SW5kZXg6IDksXG4gICAgICBvdmVyZmxvd1k6IFwiYXV0b1wiLFxuICAgICAgb3ZlcmZsb3dYOiBcImhpZGRlblwiLFxuICAgICAgdG9wOiAwLFxuICAgICAgbGVmdDogMCxcbiAgICAgIGhlaWdodDogXCIxMDAlXCIsXG4gICAgICBmbGV4RGlyZWN0aW9uOiBcImNvbHVtblwiLFxuICAgICAgYmFja2dyb3VuZENvbG9yOiBcIiMxYjFjMWVcIlxuICAgIH0sXG4gICAgbWREb3duOiB7XG4gICAgICB3aWR0aDogXCIxMDAlXCIsXG4gICAgICBtYXhXaWR0aDogMjUwLFxuICAgICAgbWF4SGVpZ2h0OiBcIjEwMHZoXCIsXG4gICAgICBvdmVyZmxvd1k6IFwiYXV0b1wiXG4gICAgfSxcbiAgICBtZFVwOiB7XG4gICAgICB3aWR0aDogMjUwXG4gICAgfSxcbiAgICBsZ1VwOiB7XG4gICAgICB3aWR0aDogMjkwXG4gICAgfVxuICB9LFxuICB1c2VyTmFtZToge1xuICAgIGZsZXhTaHJpbms6IDEsXG4gICAgbWFyZ2luTGVmdDogOFxuICB9LFxuICB1c2VyTmFtZUNvbnRhaW5lcjoge1xuICAgIG92ZXJmbG93OiBcImhpZGRlblwiLFxuICAgIG1heFdpZHRoOiAxNDBcbiAgfVxufSlcblxuZXhwb3J0IGRlZmF1bHQgbWVtbyhzaGFwZUNvbXBvbmVudChjbGFzcyBDb21wb25lbnRzQWRtaW5MYXlvdXRNZW51IGV4dGVuZHMgQmFzZUNvbXBvbmVudCB7XG4gIHN0YXRpYyBwcm9wVHlwZXMgPSBQcm9wVHlwZXNFeGFjdCh7XG4gICAgYWN0aXZlOiBQcm9wVHlwZXMuc3RyaW5nLFxuICAgIG5vQWNjZXNzOiBQcm9wVHlwZXMuYm9vbC5pc1JlcXVpcmVkLFxuICAgIG9uUmVxdWVzdE1lbnVDbG9zZTogUHJvcFR5cGVzLmZ1bmMuaXNSZXF1aXJlZCxcbiAgICB0cmlnZ2VyZWQ6IFByb3BUeXBlcy5ib29sLmlzUmVxdWlyZWRcbiAgfSlcblxuICBzZXR1cCgpIHtcbiAgICBjb25zdCB7bGdVcCwgbWREb3duLCBtZFVwfSA9IHVzZUJyZWFrcG9pbnQoKVxuICAgIGNvbnN0IHt0fSA9IHVzZUkxOG4oe25hbWVzcGFjZTogXCJqcy5hcGlfbWFrZXIuc3VwZXJfYWRtaW4ubGF5b3V0Lm1lbnVcIn0pXG4gICAgY29uc3QgY3VycmVudFVzZXIgPSB1c2VDdXJyZW50VXNlcigpXG5cbiAgICB0aGlzLnNldEluc3RhbmNlKHtjdXJyZW50VXNlciwgbGdVcCwgbWREb3duLCBtZFVwLCB0fSlcbiAgfVxuXG4gIHJlbmRlcigpIHtcbiAgICBjb25zdCB7Y3VycmVudFVzZXIsIGxnVXAsIG1kRG93biwgbWRVcCwgdH0gPSB0aGlzLnR0XG4gICAgY29uc3Qge2FjdGl2ZSwgbm9BY2Nlc3MsIHRyaWdnZXJlZH0gPSB0aGlzLnByb3BzXG5cbiAgICBjb25zdCBzdHlsZSA9IFtzdHlsZXMucm9vdC5iYXNlXVxuXG4gICAgaWYgKG1kRG93bikgc3R5bGUucHVzaChzdHlsZXMucm9vdC5tZERvd24pXG4gICAgaWYgKG1kVXApIHN0eWxlLnB1c2goc3R5bGVzLnJvb3QubWRVcClcbiAgICBpZiAobGdVcCkgc3R5bGUucHVzaChzdHlsZXMucm9vdC5sZ1VwKVxuXG4gICAgaWYgKG1kRG93biAmJiAhdHJpZ2dlcmVkKSB7XG4gICAgICByZXR1cm4gbnVsbFxuICAgIH1cblxuICAgIHJldHVybiAoXG4gICAgICA8VmlldyBkYXRhU2V0PXt7Y29tcG9uZW50OiBcInN1cGVyLWFkbWluLS1sYXlvdXQtLW1lbnVcIiwgdHJpZ2dlcmVkfX0gc3R5bGU9e3N0eWxlfT5cbiAgICAgICAgPFdpdGhEZWZhdWx0U3R5bGUgc3R5bGU9e3tUZXh0OiB7Y29sb3I6IFwiI2ZmZlwifX19PlxuICAgICAgICAgIDxWaWV3XG4gICAgICAgICAgICBkYXRhU2V0PXt7Y2xhc3M6IFwibWVudS1sb2dvXCJ9fVxuICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgb3ZlcmZsb3c6IFwiaGlkZGVuXCIsXG4gICAgICAgICAgICAgIG1hcmdpblRvcDogMjUsXG4gICAgICAgICAgICAgIG1hcmdpblJpZ2h0OiBcImF1dG9cIixcbiAgICAgICAgICAgICAgbWFyZ2luTGVmdDogXCJhdXRvXCJcbiAgICAgICAgICAgIH19XG4gICAgICAgICAgPlxuICAgICAgICAgICAgPExpbmsgZGF0YVNldD17e2NsYXNzOiBcIm1lbnUtbG9nby1saW5rXCJ9fSB0bz17UGFyYW1zLndpdGhQYXJhbXMoe30pfT5cbiAgICAgICAgICAgICAgPFRleHRcbiAgICAgICAgICAgICAgICBzdHlsZT17e1xuICAgICAgICAgICAgICAgICAgZm9udFNpemU6IDQyLFxuICAgICAgICAgICAgICAgICAgdGV4dE92ZXJmbG93OiBcImVsbGlwc2lzXCIsXG4gICAgICAgICAgICAgICAgICB3aGl0ZVNwYWNlOiBcIm5vd3JhcFwiXG4gICAgICAgICAgICAgICAgfX1cbiAgICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIEFkbWluXG4gICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgIDwvTGluaz5cbiAgICAgICAgICA8L1ZpZXc+XG4gICAgICAgICAgPFZpZXcgZGF0YVNldD17e2NsYXNzOiBcIm1lbnUtaXRlbXMtY2VudGVyXCJ9fSBzdHlsZT17e21hcmdpblRvcDogMjV9fT5cbiAgICAgICAgICAgIHshbm9BY2Nlc3MgJiZcbiAgICAgICAgICAgICAgPE1lbnVDb250ZW50IGFjdGl2ZT17YWN0aXZlfSAvPlxuICAgICAgICAgICAgfVxuICAgICAgICAgIDwvVmlldz5cbiAgICAgICAgICA8VmlldyBkYXRhU2V0PXt7Y2xhc3M6IFwibWVudS1pdGVtcy1ib3R0b21cIn19IHN0eWxlPXt7bWFyZ2luVG9wOiBcImF1dG9cIiwgbWFyZ2luQm90dG9tOiAyNX19PlxuICAgICAgICAgICAge2N1cnJlbnRVc2VyICYmXG4gICAgICAgICAgICAgIDxWaWV3XG4gICAgICAgICAgICAgICAgZGF0YVNldD17e2NsYXNzOiBcIm1lbnUtdXNlci1zZWN0aW9uXCJ9fVxuICAgICAgICAgICAgICAgIHN0eWxlPXt7XG4gICAgICAgICAgICAgICAgICBmbGV4RGlyZWN0aW9uOiBcInJvd1wiLFxuICAgICAgICAgICAgICAgICAgYWxpZ25JdGVtczogXCJjZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgIG1hcmdpblJpZ2h0OiAyNSxcbiAgICAgICAgICAgICAgICAgIG1hcmdpbkJvdHRvbTogMjUsXG4gICAgICAgICAgICAgICAgICBtYXJnaW5MZWZ0OiAyNVxuICAgICAgICAgICAgICAgIH19XG4gICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICA8Vmlld1xuICAgICAgICAgICAgICAgICAgZGF0YVNldD17e2NsYXNzOiBcIm1lbnUtdXNlci1pY29uXCJ9fVxuICAgICAgICAgICAgICAgICAgc3R5bGU9e3tcbiAgICAgICAgICAgICAgICAgICAgd2lkdGg6IDQ0LFxuICAgICAgICAgICAgICAgICAgICBoZWlnaHQ6IDQ0LFxuICAgICAgICAgICAgICAgICAgICBhbGlnbkl0ZW1zOiBcImNlbnRlclwiLFxuICAgICAgICAgICAgICAgICAgICBqdXN0aWZ5Q29udGVudDogXCJjZW50ZXJcIixcbiAgICAgICAgICAgICAgICAgICAgYmFja2dyb3VuZENvbG9yOiBcIiNhYmJjZDBcIixcbiAgICAgICAgICAgICAgICAgICAgYm9yZGVyUmFkaXVzOiBcIjUwJVwiXG4gICAgICAgICAgICAgICAgICB9fVxuICAgICAgICAgICAgICAgID5cbiAgICAgICAgICAgICAgICAgIDxJY29uIG5hbWU9XCJ1c2VyXCIgc2l6ZT17MTJ9IC8+XG4gICAgICAgICAgICAgICAgPC9WaWV3PlxuICAgICAgICAgICAgICAgIDxWaWV3IGNsYXNzTmFtZT1cIm1lbnUtdXNlci1uYW1lXCIgc3R5bGU9e3N0eWxlcy51c2VyTmFtZX0+XG4gICAgICAgICAgICAgICAgICA8VGV4dCBkYXRhU2V0PXt7Y2xhc3M6IFwibWVudS11c2VyLW5hbWUtY29udGFpbmVyXCJ9fSBzdHlsZT17c3R5bGVzLnVzZXJOYW1lQ29udGFpbmVyfT5cbiAgICAgICAgICAgICAgICAgICAge2N1cnJlbnRVc2VyLm5hbWUoKX1cbiAgICAgICAgICAgICAgICAgIDwvVGV4dD5cbiAgICAgICAgICAgICAgICA8L1ZpZXc+XG4gICAgICAgICAgICAgIDwvVmlldz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHtjdXJyZW50VXNlciAmJlxuICAgICAgICAgICAgICA8TWVudUl0ZW1cbiAgICAgICAgICAgICAgICBhY3RpdmVcbiAgICAgICAgICAgICAgICBjbGFzc05hbWU9XCJzaWduLW91dC1tZW51LWl0ZW1cIlxuICAgICAgICAgICAgICAgIGljb249XCJzaWduLW91dC1hbHRcIlxuICAgICAgICAgICAgICAgIGxhYmVsPXt0KFwiLnNpZ25fb3V0XCIsIHtkZWZhdWx0VmFsdWU6IFwiU2lnbiBvdXRcIn0pfVxuICAgICAgICAgICAgICAgIG9uQ2xpY2s9e3RoaXMudHQub25TaWduT3V0Q2xpY2tlZH1cbiAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICA8L1ZpZXc+XG4gICAgICAgIDwvV2l0aERlZmF1bHRTdHlsZT5cbiAgICAgIDwvVmlldz5cbiAgICApXG4gIH1cblxuICBvblNpZ25PdXRDbGlja2VkID0gYXN5bmMgKGUpID0+IHtcbiAgICBlLnByZXZlbnREZWZhdWx0KClcblxuICAgIHRyeSB7XG4gICAgICBhd2FpdCBEZXZpc2Uuc2lnbk91dCgpXG4gICAgICBGbGFzaE1lc3NhZ2Uuc3VjY2Vzcyh0aGlzLnQoXCIueW91X2hhdmVfYmVlbl9zaWduZWRfb3V0XCIsIHtkZWZhdWx0VmFsdWU6IFwiWW91IGhhdmUgYmVlbiBzaWduZWQgb3V0XCJ9KSlcbiAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgRmxhc2hNZXNzYWdlLmVycm9yUmVzcG9uc2UoZXJyb3IpXG4gICAgfVxuICB9XG59KSlcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBUUEsVUFBVSxFQUFFQyxJQUFJLFFBQU8sY0FBYztBQUM3QyxPQUFPQyxhQUFhLE1BQU0seUJBQXlCO0FBQ25ELE9BQU9DLElBQUksTUFBTSxxQkFBcUI7QUFDdEMsT0FBT0MsSUFBSSxNQUFNLDRCQUE0QjtBQUM3QyxPQUFPQyxJQUFJLE1BQU0sZUFBZTtBQUNoQyxPQUFPQyxXQUFXLE1BQU0sZ0JBQWdCO0FBQ3hDLE9BQU9DLFFBQVEsTUFBTSxhQUFhO0FBQ2xDLE9BQU9DLE1BQU0sTUFBTSxpQkFBaUI7QUFDcEMsT0FBT0MsU0FBUyxNQUFNLFlBQVk7QUFDbEMsT0FBT0MsY0FBYyxNQUFNLGtCQUFrQjtBQUM3QyxPQUFPQyxLQUFLLE1BQU0sT0FBTztBQUN6QixTQUFRQyxjQUFjLFFBQU8sdUNBQXVDO0FBQ3BFLE9BQU9DLElBQUksTUFBTSxxQkFBcUI7QUFDdEMsT0FBT0MsYUFBYSxNQUFNLHlCQUF5QjtBQUNuRCxPQUFPQyxjQUFjLE1BQU0sMkJBQTJCO0FBQ3RELE9BQU9DLE9BQU8sTUFBTSwrQkFBK0I7QUFDbkQsU0FBUUMsZ0JBQWdCLFFBQU8sOEJBQThCO0FBRTdELE1BQU1DLE1BQU0sR0FBR2xCLFVBQVUsQ0FBQ21CLE1BQU0sQ0FBQztFQUMvQkMsSUFBSSxFQUFFO0lBQ0pDLElBQUksRUFBRTtNQUNKQyxRQUFRLEVBQUUsT0FBTztNQUNqQkMsTUFBTSxFQUFFLENBQUM7TUFDVEMsU0FBUyxFQUFFLE1BQU07TUFDakJDLFNBQVMsRUFBRSxRQUFRO01BQ25CQyxHQUFHLEVBQUUsQ0FBQztNQUNOQyxJQUFJLEVBQUUsQ0FBQztNQUNQQyxNQUFNLEVBQUUsTUFBTTtNQUNkQyxhQUFhLEVBQUUsUUFBUTtNQUN2QkMsZUFBZSxFQUFFO0lBQ25CLENBQUM7SUFDREMsTUFBTSxFQUFFO01BQ05DLEtBQUssRUFBRSxNQUFNO01BQ2JDLFFBQVEsRUFBRSxHQUFHO01BQ2JDLFNBQVMsRUFBRSxPQUFPO01BQ2xCVixTQUFTLEVBQUU7SUFDYixDQUFDO0lBQ0RXLElBQUksRUFBRTtNQUNKSCxLQUFLLEVBQUU7SUFDVCxDQUFDO0lBQ0RJLElBQUksRUFBRTtNQUNKSixLQUFLLEVBQUU7SUFDVDtFQUNGLENBQUM7RUFDREssUUFBUSxFQUFFO0lBQ1JDLFVBQVUsRUFBRSxDQUFDO0lBQ2JDLFVBQVUsRUFBRTtFQUNkLENBQUM7RUFDREMsaUJBQWlCLEVBQUU7SUFDakJDLFFBQVEsRUFBRSxRQUFRO0lBQ2xCUixRQUFRLEVBQUU7RUFDWjtBQUNGLENBQUMsQ0FBQztBQUVGLGVBQWU3QixJQUFJLENBQUNRLGNBQWMsQ0FBQyxNQUFNOEIseUJBQXlCLFNBQVN4QyxhQUFhLENBQUM7RUFDdkYsT0FBT3lDLFNBQVMsR0FBR2pDLGNBQWMsQ0FBQztJQUNoQ2tDLE1BQU0sRUFBRW5DLFNBQVMsQ0FBQ29DLE1BQU07SUFDeEJDLFFBQVEsRUFBRXJDLFNBQVMsQ0FBQ3NDLElBQUksQ0FBQ0MsVUFBVTtJQUNuQ0Msa0JBQWtCLEVBQUV4QyxTQUFTLENBQUN5QyxJQUFJLENBQUNGLFVBQVU7SUFDN0NHLFNBQVMsRUFBRTFDLFNBQVMsQ0FBQ3NDLElBQUksQ0FBQ0M7RUFDNUIsQ0FBQyxDQUFDO0VBRUZJLEtBQUtBLENBQUEsRUFBRztJQUNOLE1BQU07TUFBQ2hCLElBQUk7TUFBRUwsTUFBTTtNQUFFSTtJQUFJLENBQUMsR0FBR3JCLGFBQWEsQ0FBQyxDQUFDO0lBQzVDLE1BQU07TUFBQ3VDO0lBQUMsQ0FBQyxHQUFHckMsT0FBTyxDQUFDO01BQUNzQyxTQUFTLEVBQUU7SUFBc0MsQ0FBQyxDQUFDO0lBQ3hFLE1BQU1DLFdBQVcsR0FBR3hDLGNBQWMsQ0FBQyxDQUFDO0lBRXBDLElBQUksQ0FBQ3lDLFdBQVcsQ0FBQztNQUFDRCxXQUFXO01BQUVuQixJQUFJO01BQUVMLE1BQU07TUFBRUksSUFBSTtNQUFFa0I7SUFBQyxDQUFDLENBQUM7RUFDeEQ7RUFFQUksTUFBTUEsQ0FBQSxFQUFHO0lBQ1AsTUFBTTtNQUFDRixXQUFXO01BQUVuQixJQUFJO01BQUVMLE1BQU07TUFBRUksSUFBSTtNQUFFa0I7SUFBQyxDQUFDLEdBQUcsSUFBSSxDQUFDSyxFQUFFO0lBQ3BELE1BQU07TUFBQ2QsTUFBTTtNQUFFRSxRQUFRO01BQUVLO0lBQVMsQ0FBQyxHQUFHLElBQUksQ0FBQ1EsS0FBSztJQUVoRCxNQUFNQyxLQUFLLEdBQUcsQ0FBQzFDLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDQyxJQUFJLENBQUM7SUFFaEMsSUFBSVUsTUFBTSxFQUFFNkIsS0FBSyxDQUFDQyxJQUFJLENBQUMzQyxNQUFNLENBQUNFLElBQUksQ0FBQ1csTUFBTSxDQUFDO0lBQzFDLElBQUlJLElBQUksRUFBRXlCLEtBQUssQ0FBQ0MsSUFBSSxDQUFDM0MsTUFBTSxDQUFDRSxJQUFJLENBQUNlLElBQUksQ0FBQztJQUN0QyxJQUFJQyxJQUFJLEVBQUV3QixLQUFLLENBQUNDLElBQUksQ0FBQzNDLE1BQU0sQ0FBQ0UsSUFBSSxDQUFDZ0IsSUFBSSxDQUFDO0lBRXRDLElBQUlMLE1BQU0sSUFBSSxDQUFDb0IsU0FBUyxFQUFFO01BQ3hCLE9BQU8sSUFBSTtJQUNiO0lBRUEsb0JBQ0V4QyxLQUFBLENBQUFtRCxhQUFBLENBQUM3RCxJQUFJO01BQUM4RCxPQUFPLEVBQUU7UUFBQ0MsU0FBUyxFQUFFLDJCQUEyQjtRQUFFYjtNQUFTLENBQUU7TUFBQ1MsS0FBSyxFQUFFQTtJQUFNLGdCQUMvRWpELEtBQUEsQ0FBQW1ELGFBQUEsQ0FBQzdDLGdCQUFnQjtNQUFDMkMsS0FBSyxFQUFFO1FBQUMvQyxJQUFJLEVBQUU7VUFBQ29ELEtBQUssRUFBRTtRQUFNO01BQUM7SUFBRSxnQkFDL0N0RCxLQUFBLENBQUFtRCxhQUFBLENBQUM3RCxJQUFJO01BQ0g4RCxPQUFPLEVBQUU7UUFBQ0csS0FBSyxFQUFFO01BQVcsQ0FBRTtNQUM5Qk4sS0FBSyxFQUFFO1FBQ0xuQixRQUFRLEVBQUUsUUFBUTtRQUNsQjBCLFNBQVMsRUFBRSxFQUFFO1FBQ2JDLFdBQVcsRUFBRSxNQUFNO1FBQ25CN0IsVUFBVSxFQUFFO01BQ2Q7SUFBRSxnQkFFRjVCLEtBQUEsQ0FBQW1ELGFBQUEsQ0FBQ3pELElBQUk7TUFBQzBELE9BQU8sRUFBRTtRQUFDRyxLQUFLLEVBQUU7TUFBZ0IsQ0FBRTtNQUFDRyxFQUFFLEVBQUU3RCxNQUFNLENBQUM4RCxVQUFVLENBQUMsQ0FBQyxDQUFDO0lBQUUsZ0JBQ2xFM0QsS0FBQSxDQUFBbUQsYUFBQSxDQUFDakQsSUFBSTtNQUNIK0MsS0FBSyxFQUFFO1FBQ0xXLFFBQVEsRUFBRSxFQUFFO1FBQ1pDLFlBQVksRUFBRSxVQUFVO1FBQ3hCQyxVQUFVLEVBQUU7TUFDZDtJQUFFLEdBQ0gsT0FFSyxDQUNGLENBQ0YsQ0FBQyxlQUNQOUQsS0FBQSxDQUFBbUQsYUFBQSxDQUFDN0QsSUFBSTtNQUFDOEQsT0FBTyxFQUFFO1FBQUNHLEtBQUssRUFBRTtNQUFtQixDQUFFO01BQUNOLEtBQUssRUFBRTtRQUFDTyxTQUFTLEVBQUU7TUFBRTtJQUFFLEdBQ2pFLENBQUNyQixRQUFRLGlCQUNSbkMsS0FBQSxDQUFBbUQsYUFBQSxDQUFDeEQsV0FBVztNQUFDc0MsTUFBTSxFQUFFQTtJQUFPLENBQUUsQ0FFNUIsQ0FBQyxlQUNQakMsS0FBQSxDQUFBbUQsYUFBQSxDQUFDN0QsSUFBSTtNQUFDOEQsT0FBTyxFQUFFO1FBQUNHLEtBQUssRUFBRTtNQUFtQixDQUFFO01BQUNOLEtBQUssRUFBRTtRQUFDTyxTQUFTLEVBQUUsTUFBTTtRQUFFTyxZQUFZLEVBQUU7TUFBRTtJQUFFLEdBQ3ZGbkIsV0FBVyxpQkFDVjVDLEtBQUEsQ0FBQW1ELGFBQUEsQ0FBQzdELElBQUk7TUFDSDhELE9BQU8sRUFBRTtRQUFDRyxLQUFLLEVBQUU7TUFBbUIsQ0FBRTtNQUN0Q04sS0FBSyxFQUFFO1FBQ0wvQixhQUFhLEVBQUUsS0FBSztRQUNwQjhDLFVBQVUsRUFBRSxRQUFRO1FBQ3BCUCxXQUFXLEVBQUUsRUFBRTtRQUNmTSxZQUFZLEVBQUUsRUFBRTtRQUNoQm5DLFVBQVUsRUFBRTtNQUNkO0lBQUUsZ0JBRUY1QixLQUFBLENBQUFtRCxhQUFBLENBQUM3RCxJQUFJO01BQ0g4RCxPQUFPLEVBQUU7UUFBQ0csS0FBSyxFQUFFO01BQWdCLENBQUU7TUFDbkNOLEtBQUssRUFBRTtRQUNMNUIsS0FBSyxFQUFFLEVBQUU7UUFDVEosTUFBTSxFQUFFLEVBQUU7UUFDVitDLFVBQVUsRUFBRSxRQUFRO1FBQ3BCQyxjQUFjLEVBQUUsUUFBUTtRQUN4QjlDLGVBQWUsRUFBRSxTQUFTO1FBQzFCK0MsWUFBWSxFQUFFO01BQ2hCO0lBQUUsZ0JBRUZsRSxLQUFBLENBQUFtRCxhQUFBLENBQUMzRCxJQUFJO01BQUMyRSxJQUFJLEVBQUMsTUFBTTtNQUFDQyxJQUFJLEVBQUU7SUFBRyxDQUFFLENBQ3pCLENBQUMsZUFDUHBFLEtBQUEsQ0FBQW1ELGFBQUEsQ0FBQzdELElBQUk7TUFBQytFLFNBQVMsRUFBQyxnQkFBZ0I7TUFBQ3BCLEtBQUssRUFBRTFDLE1BQU0sQ0FBQ21CO0lBQVMsZ0JBQ3REMUIsS0FBQSxDQUFBbUQsYUFBQSxDQUFDakQsSUFBSTtNQUFDa0QsT0FBTyxFQUFFO1FBQUNHLEtBQUssRUFBRTtNQUEwQixDQUFFO01BQUNOLEtBQUssRUFBRTFDLE1BQU0sQ0FBQ3NCO0lBQWtCLEdBQ2pGZSxXQUFXLENBQUN1QixJQUFJLENBQUMsQ0FDZCxDQUNGLENBQ0YsQ0FBQyxFQUVSdkIsV0FBVyxpQkFDVjVDLEtBQUEsQ0FBQW1ELGFBQUEsQ0FBQ3ZELFFBQVE7TUFDUHFDLE1BQU07TUFDTm9DLFNBQVMsRUFBQyxvQkFBb0I7TUFDOUJDLElBQUksRUFBQyxjQUFjO01BQ25CQyxLQUFLLEVBQUU3QixDQUFDLENBQUMsV0FBVyxFQUFFO1FBQUM4QixZQUFZLEVBQUU7TUFBVSxDQUFDLENBQUU7TUFDbERDLE9BQU8sRUFBRSxJQUFJLENBQUMxQixFQUFFLENBQUMyQjtJQUFpQixDQUNuQyxDQUVDLENBQ1UsQ0FDZCxDQUFDO0VBRVg7RUFFQUEsZ0JBQWdCLEdBQUcsTUFBT0MsQ0FBQyxJQUFLO0lBQzlCQSxDQUFDLENBQUNDLGNBQWMsQ0FBQyxDQUFDO0lBRWxCLElBQUk7TUFDRixNQUFNQyxNQUFNLENBQUNDLE9BQU8sQ0FBQyxDQUFDO01BQ3RCQyxZQUFZLENBQUNDLE9BQU8sQ0FBQyxJQUFJLENBQUN0QyxDQUFDLENBQUMsMkJBQTJCLEVBQUU7UUFBQzhCLFlBQVksRUFBRTtNQUEwQixDQUFDLENBQUMsQ0FBQztJQUN2RyxDQUFDLENBQUMsT0FBT1MsS0FBSyxFQUFFO01BQ2RGLFlBQVksQ0FBQ0csYUFBYSxDQUFDRCxLQUFLLENBQUM7SUFDbkM7RUFDRixDQUFDO0FBQ0gsQ0FBQyxDQUFDLENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=
@@ -0,0 +1,46 @@
1
+ import React, { useMemo } from "react";
2
+ import BaseComponent from "../../../base-component";
3
+ import { digg } from "diggerize";
4
+ import memo from "set-state-compare/src/memo";
5
+ import MenuItem from "./menu-item";
6
+ import models from "../../models";
7
+ import Params from "../../../params";
8
+ import PropTypes from "prop-types";
9
+ import PropTypesExact from "prop-types-exact";
10
+ import { shapeComponent } from "set-state-compare/src/shape-component";
11
+ import useCanCan from "../../../use-can-can";
12
+ import useI18n from "i18n-on-steroids/src/use-i18n";
13
+ export default memo(shapeComponent(class ComponentsAdminLayoutMenuContent extends BaseComponent {
14
+ static propTypes = PropTypesExact({
15
+ active: PropTypes.string
16
+ });
17
+ render() {
18
+ const {
19
+ locale
20
+ } = useI18n({
21
+ namespace: "js.api_maker.super_admin.layout.menu.menu_content"
22
+ });
23
+ const {
24
+ active
25
+ } = this.p;
26
+ const canCan = useCanCan(() => models.map(modelClass => [modelClass, ["index"]]));
27
+ const sortedModels = useMemo(() => models.sort((a, b) => a.modelName().human({
28
+ count: 2
29
+ }).toLowerCase().localeCompare(b.modelName().human({
30
+ count: 2
31
+ }).toLowerCase())), [locale]);
32
+ return /*#__PURE__*/React.createElement(React.Fragment, null, sortedModels.map(model => canCan?.can("index", model) && /*#__PURE__*/React.createElement(MenuItem, {
33
+ active: active,
34
+ icon: "sitemap",
35
+ identifier: digg(model.modelClassData(), "name"),
36
+ label: model.modelName().human({
37
+ count: 2
38
+ }),
39
+ key: model.modelClassData().name,
40
+ to: Params.withParams({
41
+ model: model.modelClassData().name
42
+ })
43
+ })));
44
+ }
45
+ }));
46
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJSZWFjdCIsInVzZU1lbW8iLCJCYXNlQ29tcG9uZW50IiwiZGlnZyIsIm1lbW8iLCJNZW51SXRlbSIsIm1vZGVscyIsIlBhcmFtcyIsIlByb3BUeXBlcyIsIlByb3BUeXBlc0V4YWN0Iiwic2hhcGVDb21wb25lbnQiLCJ1c2VDYW5DYW4iLCJ1c2VJMThuIiwiQ29tcG9uZW50c0FkbWluTGF5b3V0TWVudUNvbnRlbnQiLCJwcm9wVHlwZXMiLCJhY3RpdmUiLCJzdHJpbmciLCJyZW5kZXIiLCJsb2NhbGUiLCJuYW1lc3BhY2UiLCJwIiwiY2FuQ2FuIiwibWFwIiwibW9kZWxDbGFzcyIsInNvcnRlZE1vZGVscyIsInNvcnQiLCJhIiwiYiIsIm1vZGVsTmFtZSIsImh1bWFuIiwiY291bnQiLCJ0b0xvd2VyQ2FzZSIsImxvY2FsZUNvbXBhcmUiLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJtb2RlbCIsImNhbiIsImljb24iLCJpZGVudGlmaWVyIiwibW9kZWxDbGFzc0RhdGEiLCJsYWJlbCIsImtleSIsIm5hbWUiLCJ0byIsIndpdGhQYXJhbXMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvc3VwZXItYWRtaW4vbGF5b3V0L21lbnUvbWVudS1jb250ZW50LmpzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHt1c2VNZW1vfSBmcm9tIFwicmVhY3RcIlxuaW1wb3J0IEJhc2VDb21wb25lbnQgZnJvbSBcIi4uLy4uLy4uL2Jhc2UtY29tcG9uZW50XCJcbmltcG9ydCB7ZGlnZ30gZnJvbSBcImRpZ2dlcml6ZVwiXG5pbXBvcnQgbWVtbyBmcm9tIFwic2V0LXN0YXRlLWNvbXBhcmUvc3JjL21lbW9cIlxuaW1wb3J0IE1lbnVJdGVtIGZyb20gXCIuL21lbnUtaXRlbVwiXG5pbXBvcnQgbW9kZWxzIGZyb20gXCIuLi8uLi9tb2RlbHNcIlxuaW1wb3J0IFBhcmFtcyBmcm9tIFwiLi4vLi4vLi4vcGFyYW1zXCJcbmltcG9ydCBQcm9wVHlwZXMgZnJvbSBcInByb3AtdHlwZXNcIlxuaW1wb3J0IFByb3BUeXBlc0V4YWN0IGZyb20gXCJwcm9wLXR5cGVzLWV4YWN0XCJcbmltcG9ydCB7c2hhcGVDb21wb25lbnR9IGZyb20gXCJzZXQtc3RhdGUtY29tcGFyZS9zcmMvc2hhcGUtY29tcG9uZW50XCJcbmltcG9ydCB1c2VDYW5DYW4gZnJvbSBcIi4uLy4uLy4uL3VzZS1jYW4tY2FuXCJcbmltcG9ydCB1c2VJMThuIGZyb20gXCJpMThuLW9uLXN0ZXJvaWRzL3NyYy91c2UtaTE4blwiXG5cbmV4cG9ydCBkZWZhdWx0IG1lbW8oc2hhcGVDb21wb25lbnQoY2xhc3MgQ29tcG9uZW50c0FkbWluTGF5b3V0TWVudUNvbnRlbnQgZXh0ZW5kcyBCYXNlQ29tcG9uZW50IHtcbiAgc3RhdGljIHByb3BUeXBlcyA9IFByb3BUeXBlc0V4YWN0KHtcbiAgICBhY3RpdmU6IFByb3BUeXBlcy5zdHJpbmdcbiAgfSlcblxuICByZW5kZXIoKSB7XG4gICAgY29uc3Qge2xvY2FsZX0gPSB1c2VJMThuKHtuYW1lc3BhY2U6IFwianMuYXBpX21ha2VyLnN1cGVyX2FkbWluLmxheW91dC5tZW51Lm1lbnVfY29udGVudFwifSlcbiAgICBjb25zdCB7YWN0aXZlfSA9IHRoaXMucFxuICAgIGNvbnN0IGNhbkNhbiA9IHVzZUNhbkNhbigoKSA9PiBtb2RlbHMubWFwKChtb2RlbENsYXNzKSA9PiBbbW9kZWxDbGFzcywgW1wiaW5kZXhcIl1dKSlcbiAgICBjb25zdCBzb3J0ZWRNb2RlbHMgPSB1c2VNZW1vKFxuICAgICAgKCkgPT4gbW9kZWxzLnNvcnQoKGEsIGIpID0+IGEubW9kZWxOYW1lKCkuaHVtYW4oe2NvdW50OiAyfSkudG9Mb3dlckNhc2UoKS5sb2NhbGVDb21wYXJlKGIubW9kZWxOYW1lKCkuaHVtYW4oe2NvdW50OiAyfSkudG9Mb3dlckNhc2UoKSkpLFxuICAgICAgW2xvY2FsZV1cbiAgICApXG5cbiAgICByZXR1cm4gKFxuICAgICAgPD5cbiAgICAgICAge3NvcnRlZE1vZGVscy5tYXAoKG1vZGVsKSA9PiBjYW5DYW4/LmNhbihcImluZGV4XCIsIG1vZGVsKSAmJlxuICAgICAgICAgIDxNZW51SXRlbVxuICAgICAgICAgICAgYWN0aXZlPXthY3RpdmV9XG4gICAgICAgICAgICBpY29uPVwic2l0ZW1hcFwiXG4gICAgICAgICAgICBpZGVudGlmaWVyPXtkaWdnKG1vZGVsLm1vZGVsQ2xhc3NEYXRhKCksIFwibmFtZVwiKX1cbiAgICAgICAgICAgIGxhYmVsPXttb2RlbC5tb2RlbE5hbWUoKS5odW1hbih7Y291bnQ6IDJ9KX1cbiAgICAgICAgICAgIGtleT17bW9kZWwubW9kZWxDbGFzc0RhdGEoKS5uYW1lfVxuICAgICAgICAgICAgdG89e1BhcmFtcy53aXRoUGFyYW1zKHttb2RlbDogbW9kZWwubW9kZWxDbGFzc0RhdGEoKS5uYW1lfSl9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvPlxuICAgIClcbiAgfVxufSkpXG4iXSwibWFwcGluZ3MiOiJBQUFBLE9BQU9BLEtBQUssSUFBR0MsT0FBTyxRQUFPLE9BQU87QUFDcEMsT0FBT0MsYUFBYSxNQUFNLHlCQUF5QjtBQUNuRCxTQUFRQyxJQUFJLFFBQU8sV0FBVztBQUM5QixPQUFPQyxJQUFJLE1BQU0sNEJBQTRCO0FBQzdDLE9BQU9DLFFBQVEsTUFBTSxhQUFhO0FBQ2xDLE9BQU9DLE1BQU0sTUFBTSxjQUFjO0FBQ2pDLE9BQU9DLE1BQU0sTUFBTSxpQkFBaUI7QUFDcEMsT0FBT0MsU0FBUyxNQUFNLFlBQVk7QUFDbEMsT0FBT0MsY0FBYyxNQUFNLGtCQUFrQjtBQUM3QyxTQUFRQyxjQUFjLFFBQU8sdUNBQXVDO0FBQ3BFLE9BQU9DLFNBQVMsTUFBTSxzQkFBc0I7QUFDNUMsT0FBT0MsT0FBTyxNQUFNLCtCQUErQjtBQUVuRCxlQUFlUixJQUFJLENBQUNNLGNBQWMsQ0FBQyxNQUFNRyxnQ0FBZ0MsU0FBU1gsYUFBYSxDQUFDO0VBQzlGLE9BQU9ZLFNBQVMsR0FBR0wsY0FBYyxDQUFDO0lBQ2hDTSxNQUFNLEVBQUVQLFNBQVMsQ0FBQ1E7RUFDcEIsQ0FBQyxDQUFDO0VBRUZDLE1BQU1BLENBQUEsRUFBRztJQUNQLE1BQU07TUFBQ0M7SUFBTSxDQUFDLEdBQUdOLE9BQU8sQ0FBQztNQUFDTyxTQUFTLEVBQUU7SUFBbUQsQ0FBQyxDQUFDO0lBQzFGLE1BQU07TUFBQ0o7SUFBTSxDQUFDLEdBQUcsSUFBSSxDQUFDSyxDQUFDO0lBQ3ZCLE1BQU1DLE1BQU0sR0FBR1YsU0FBUyxDQUFDLE1BQU1MLE1BQU0sQ0FBQ2dCLEdBQUcsQ0FBRUMsVUFBVSxJQUFLLENBQUNBLFVBQVUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNuRixNQUFNQyxZQUFZLEdBQUd2QixPQUFPLENBQzFCLE1BQU1LLE1BQU0sQ0FBQ21CLElBQUksQ0FBQyxDQUFDQyxDQUFDLEVBQUVDLENBQUMsS0FBS0QsQ0FBQyxDQUFDRSxTQUFTLENBQUMsQ0FBQyxDQUFDQyxLQUFLLENBQUM7TUFBQ0MsS0FBSyxFQUFFO0lBQUMsQ0FBQyxDQUFDLENBQUNDLFdBQVcsQ0FBQyxDQUFDLENBQUNDLGFBQWEsQ0FBQ0wsQ0FBQyxDQUFDQyxTQUFTLENBQUMsQ0FBQyxDQUFDQyxLQUFLLENBQUM7TUFBQ0MsS0FBSyxFQUFFO0lBQUMsQ0FBQyxDQUFDLENBQUNDLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUN2SSxDQUFDYixNQUFNLENBQ1QsQ0FBQztJQUVELG9CQUNFbEIsS0FBQSxDQUFBaUMsYUFBQSxDQUFBakMsS0FBQSxDQUFBa0MsUUFBQSxRQUNHVixZQUFZLENBQUNGLEdBQUcsQ0FBRWEsS0FBSyxJQUFLZCxNQUFNLEVBQUVlLEdBQUcsQ0FBQyxPQUFPLEVBQUVELEtBQUssQ0FBQyxpQkFDdERuQyxLQUFBLENBQUFpQyxhQUFBLENBQUM1QixRQUFRO01BQ1BVLE1BQU0sRUFBRUEsTUFBTztNQUNmc0IsSUFBSSxFQUFDLFNBQVM7TUFDZEMsVUFBVSxFQUFFbkMsSUFBSSxDQUFDZ0MsS0FBSyxDQUFDSSxjQUFjLENBQUMsQ0FBQyxFQUFFLE1BQU0sQ0FBRTtNQUNqREMsS0FBSyxFQUFFTCxLQUFLLENBQUNQLFNBQVMsQ0FBQyxDQUFDLENBQUNDLEtBQUssQ0FBQztRQUFDQyxLQUFLLEVBQUU7TUFBQyxDQUFDLENBQUU7TUFDM0NXLEdBQUcsRUFBRU4sS0FBSyxDQUFDSSxjQUFjLENBQUMsQ0FBQyxDQUFDRyxJQUFLO01BQ2pDQyxFQUFFLEVBQUVwQyxNQUFNLENBQUNxQyxVQUFVLENBQUM7UUFBQ1QsS0FBSyxFQUFFQSxLQUFLLENBQUNJLGNBQWMsQ0FBQyxDQUFDLENBQUNHO01BQUksQ0FBQztJQUFFLENBQzdELENBQ0gsQ0FDQSxDQUFDO0VBRVA7QUFDRixDQUFDLENBQUMsQ0FBQyIsImlnbm9yZUxpc3QiOltdfQ==