@endora-commerce/admin-shell 0.0.0-stage → 0.100.0

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 (428) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +49 -2
  3. package/dist/AdminRoot.d.ts +45 -0
  4. package/dist/AdminRoot.d.ts.map +1 -0
  5. package/dist/AdminRoot.js +39 -0
  6. package/dist/AdminRoot.js.map +1 -0
  7. package/dist/App.d.ts +42 -0
  8. package/dist/App.d.ts.map +1 -0
  9. package/dist/App.js +94 -0
  10. package/dist/App.js.map +1 -0
  11. package/dist/components/AppShell.d.ts +5 -0
  12. package/dist/components/AppShell.d.ts.map +1 -0
  13. package/dist/components/AppShell.js +1259 -0
  14. package/dist/components/AppShell.js.map +1 -0
  15. package/dist/components/BrandLogo.d.ts +21 -0
  16. package/dist/components/BrandLogo.d.ts.map +1 -0
  17. package/dist/components/BrandLogo.js +21 -0
  18. package/dist/components/BrandLogo.js.map +1 -0
  19. package/dist/components/FederatedSignIn.d.ts +42 -0
  20. package/dist/components/FederatedSignIn.d.ts.map +1 -0
  21. package/dist/components/FederatedSignIn.js +56 -0
  22. package/dist/components/FederatedSignIn.js.map +1 -0
  23. package/dist/components/FileDropzone.d.ts +17 -0
  24. package/dist/components/FileDropzone.d.ts.map +1 -0
  25. package/dist/components/FileDropzone.js +17 -0
  26. package/dist/components/FileDropzone.js.map +1 -0
  27. package/dist/components/IdleLogout.d.ts +2 -0
  28. package/dist/components/IdleLogout.d.ts.map +1 -0
  29. package/dist/components/IdleLogout.js +90 -0
  30. package/dist/components/IdleLogout.js.map +1 -0
  31. package/dist/components/ImpersonationBanner.d.ts +13 -0
  32. package/dist/components/ImpersonationBanner.d.ts.map +1 -0
  33. package/dist/components/ImpersonationBanner.js +10 -0
  34. package/dist/components/ImpersonationBanner.js.map +1 -0
  35. package/dist/components/LanguagePicker.d.ts +3 -0
  36. package/dist/components/LanguagePicker.d.ts.map +1 -0
  37. package/dist/components/LanguagePicker.js +127 -0
  38. package/dist/components/LanguagePicker.js.map +1 -0
  39. package/dist/components/LoginPage.d.ts +11 -0
  40. package/dist/components/LoginPage.d.ts.map +1 -0
  41. package/dist/components/LoginPage.js +44 -0
  42. package/dist/components/LoginPage.js.map +1 -0
  43. package/dist/components/PaginationFooter.d.ts +18 -0
  44. package/dist/components/PaginationFooter.d.ts.map +1 -0
  45. package/dist/components/PaginationFooter.js +17 -0
  46. package/dist/components/PaginationFooter.js.map +1 -0
  47. package/dist/components/ResponsiveTable.d.ts +18 -0
  48. package/dist/components/ResponsiveTable.d.ts.map +1 -0
  49. package/dist/components/ResponsiveTable.js +17 -0
  50. package/dist/components/ResponsiveTable.js.map +1 -0
  51. package/dist/components/RowActionMenu.d.ts +18 -0
  52. package/dist/components/RowActionMenu.d.ts.map +1 -0
  53. package/dist/components/RowActionMenu.js +17 -0
  54. package/dist/components/RowActionMenu.js.map +1 -0
  55. package/dist/components/SpeechToTextButton.d.ts +14 -0
  56. package/dist/components/SpeechToTextButton.d.ts.map +1 -0
  57. package/dist/components/SpeechToTextButton.js +19 -0
  58. package/dist/components/SpeechToTextButton.js.map +1 -0
  59. package/dist/components/StickyFormActions.d.ts +18 -0
  60. package/dist/components/StickyFormActions.d.ts.map +1 -0
  61. package/dist/components/StickyFormActions.js +17 -0
  62. package/dist/components/StickyFormActions.js.map +1 -0
  63. package/dist/components/TouchReorderButtons.d.ts +18 -0
  64. package/dist/components/TouchReorderButtons.d.ts.map +1 -0
  65. package/dist/components/TouchReorderButtons.js +17 -0
  66. package/dist/components/TouchReorderButtons.js.map +1 -0
  67. package/dist/components/admin-user-picker/AdminUserPicker.d.ts +18 -0
  68. package/dist/components/admin-user-picker/AdminUserPicker.d.ts.map +1 -0
  69. package/dist/components/admin-user-picker/AdminUserPicker.js +17 -0
  70. package/dist/components/admin-user-picker/AdminUserPicker.js.map +1 -0
  71. package/dist/components/asset-picker/AssetFieldPicker.d.ts +21 -0
  72. package/dist/components/asset-picker/AssetFieldPicker.d.ts.map +1 -0
  73. package/dist/components/asset-picker/AssetFieldPicker.js +20 -0
  74. package/dist/components/asset-picker/AssetFieldPicker.js.map +1 -0
  75. package/dist/components/category-picker/CategorySelect.d.ts +18 -0
  76. package/dist/components/category-picker/CategorySelect.d.ts.map +1 -0
  77. package/dist/components/category-picker/CategorySelect.js +17 -0
  78. package/dist/components/category-picker/CategorySelect.js.map +1 -0
  79. package/dist/components/category-tree-picker/CategoryTreePicker.d.ts +18 -0
  80. package/dist/components/category-tree-picker/CategoryTreePicker.d.ts.map +1 -0
  81. package/dist/components/category-tree-picker/CategoryTreePicker.js +17 -0
  82. package/dist/components/category-tree-picker/CategoryTreePicker.js.map +1 -0
  83. package/dist/components/category-tree-picker/category-tree-utils.d.ts +18 -0
  84. package/dist/components/category-tree-picker/category-tree-utils.d.ts.map +1 -0
  85. package/dist/components/category-tree-picker/category-tree-utils.js +17 -0
  86. package/dist/components/category-tree-picker/category-tree-utils.js.map +1 -0
  87. package/dist/components/category-tree-picker/index.d.ts +18 -0
  88. package/dist/components/category-tree-picker/index.d.ts.map +1 -0
  89. package/dist/components/category-tree-picker/index.js +17 -0
  90. package/dist/components/category-tree-picker/index.js.map +1 -0
  91. package/dist/components/charts/echart.d.ts +18 -0
  92. package/dist/components/charts/echart.d.ts.map +1 -0
  93. package/dist/components/charts/echart.js +17 -0
  94. package/dist/components/charts/echart.js.map +1 -0
  95. package/dist/components/cms-picker/CmsBlockPicker.d.ts +19 -0
  96. package/dist/components/cms-picker/CmsBlockPicker.d.ts.map +1 -0
  97. package/dist/components/cms-picker/CmsBlockPicker.js +18 -0
  98. package/dist/components/cms-picker/CmsBlockPicker.js.map +1 -0
  99. package/dist/components/cms-picker/CmsPagePicker.d.ts +19 -0
  100. package/dist/components/cms-picker/CmsPagePicker.d.ts.map +1 -0
  101. package/dist/components/cms-picker/CmsPagePicker.js +18 -0
  102. package/dist/components/cms-picker/CmsPagePicker.js.map +1 -0
  103. package/dist/components/country-select/index.d.ts +18 -0
  104. package/dist/components/country-select/index.d.ts.map +1 -0
  105. package/dist/components/country-select/index.js +17 -0
  106. package/dist/components/country-select/index.js.map +1 -0
  107. package/dist/components/customer-group-picker/CustomerGroupPicker.d.ts +18 -0
  108. package/dist/components/customer-group-picker/CustomerGroupPicker.d.ts.map +1 -0
  109. package/dist/components/customer-group-picker/CustomerGroupPicker.js +17 -0
  110. package/dist/components/customer-group-picker/CustomerGroupPicker.js.map +1 -0
  111. package/dist/components/customer-picker/CustomerPicker.d.ts +18 -0
  112. package/dist/components/customer-picker/CustomerPicker.d.ts.map +1 -0
  113. package/dist/components/customer-picker/CustomerPicker.js +17 -0
  114. package/dist/components/customer-picker/CustomerPicker.js.map +1 -0
  115. package/dist/components/hooks/useFocusTrap.d.ts +17 -0
  116. package/dist/components/hooks/useFocusTrap.d.ts.map +1 -0
  117. package/dist/components/hooks/useFocusTrap.js +17 -0
  118. package/dist/components/hooks/useFocusTrap.js.map +1 -0
  119. package/dist/components/hooks/useSpeechToText.d.ts +15 -0
  120. package/dist/components/hooks/useSpeechToText.d.ts.map +1 -0
  121. package/dist/components/hooks/useSpeechToText.js +63 -0
  122. package/dist/components/hooks/useSpeechToText.js.map +1 -0
  123. package/dist/components/hooks/useViewportTier.d.ts +18 -0
  124. package/dist/components/hooks/useViewportTier.d.ts.map +1 -0
  125. package/dist/components/hooks/useViewportTier.js +17 -0
  126. package/dist/components/hooks/useViewportTier.js.map +1 -0
  127. package/dist/components/notifications/NotificationBell.d.ts +13 -0
  128. package/dist/components/notifications/NotificationBell.d.ts.map +1 -0
  129. package/dist/components/notifications/NotificationBell.js +154 -0
  130. package/dist/components/notifications/NotificationBell.js.map +1 -0
  131. package/dist/components/notifications/index.d.ts +3 -0
  132. package/dist/components/notifications/index.d.ts.map +1 -0
  133. package/dist/components/notifications/index.js +3 -0
  134. package/dist/components/notifications/index.js.map +1 -0
  135. package/dist/components/notifications/useAdminNotifications.d.ts +41 -0
  136. package/dist/components/notifications/useAdminNotifications.d.ts.map +1 -0
  137. package/dist/components/notifications/useAdminNotifications.js +86 -0
  138. package/dist/components/notifications/useAdminNotifications.js.map +1 -0
  139. package/dist/components/organization-picker/OrganizationPicker.d.ts +19 -0
  140. package/dist/components/organization-picker/OrganizationPicker.d.ts.map +1 -0
  141. package/dist/components/organization-picker/OrganizationPicker.js +18 -0
  142. package/dist/components/organization-picker/OrganizationPicker.js.map +1 -0
  143. package/dist/components/organization-picker/OrganizationPickerMulti.d.ts +19 -0
  144. package/dist/components/organization-picker/OrganizationPickerMulti.d.ts.map +1 -0
  145. package/dist/components/organization-picker/OrganizationPickerMulti.js +18 -0
  146. package/dist/components/organization-picker/OrganizationPickerMulti.js.map +1 -0
  147. package/dist/components/organization-picker/OrganizationStatusBadge.d.ts +19 -0
  148. package/dist/components/organization-picker/OrganizationStatusBadge.d.ts.map +1 -0
  149. package/dist/components/organization-picker/OrganizationStatusBadge.js +18 -0
  150. package/dist/components/organization-picker/OrganizationStatusBadge.js.map +1 -0
  151. package/dist/components/organization-picker/index.d.ts +19 -0
  152. package/dist/components/organization-picker/index.d.ts.map +1 -0
  153. package/dist/components/organization-picker/index.js +18 -0
  154. package/dist/components/organization-picker/index.js.map +1 -0
  155. package/dist/components/organization-picker/useOrganizationsQuery.d.ts +19 -0
  156. package/dist/components/organization-picker/useOrganizationsQuery.d.ts.map +1 -0
  157. package/dist/components/organization-picker/useOrganizationsQuery.js +18 -0
  158. package/dist/components/organization-picker/useOrganizationsQuery.js.map +1 -0
  159. package/dist/components/payment-method-availability/MethodAvailabilityCell.d.ts +17 -0
  160. package/dist/components/payment-method-availability/MethodAvailabilityCell.d.ts.map +1 -0
  161. package/dist/components/payment-method-availability/MethodAvailabilityCell.js +17 -0
  162. package/dist/components/payment-method-availability/MethodAvailabilityCell.js.map +1 -0
  163. package/dist/components/prompt-actions/PromptModePanel.d.ts +24 -0
  164. package/dist/components/prompt-actions/PromptModePanel.d.ts.map +1 -0
  165. package/dist/components/prompt-actions/PromptModePanel.js +115 -0
  166. package/dist/components/prompt-actions/PromptModePanel.js.map +1 -0
  167. package/dist/components/prompt-actions/PromptPlanPreview.d.ts +20 -0
  168. package/dist/components/prompt-actions/PromptPlanPreview.d.ts.map +1 -0
  169. package/dist/components/prompt-actions/PromptPlanPreview.js +12 -0
  170. package/dist/components/prompt-actions/PromptPlanPreview.js.map +1 -0
  171. package/dist/components/reorder/ReorderAnnouncer.d.ts +18 -0
  172. package/dist/components/reorder/ReorderAnnouncer.d.ts.map +1 -0
  173. package/dist/components/reorder/ReorderAnnouncer.js +17 -0
  174. package/dist/components/reorder/ReorderAnnouncer.js.map +1 -0
  175. package/dist/components/reorder/useReorderList.d.ts +18 -0
  176. package/dist/components/reorder/useReorderList.d.ts.map +1 -0
  177. package/dist/components/reorder/useReorderList.js +17 -0
  178. package/dist/components/reorder/useReorderList.js.map +1 -0
  179. package/dist/components/rule-builder/RuleBuilder.d.ts +18 -0
  180. package/dist/components/rule-builder/RuleBuilder.d.ts.map +1 -0
  181. package/dist/components/rule-builder/RuleBuilder.js +17 -0
  182. package/dist/components/rule-builder/RuleBuilder.js.map +1 -0
  183. package/dist/components/sales-channel-picker/SalesChannelPicker.d.ts +19 -0
  184. package/dist/components/sales-channel-picker/SalesChannelPicker.d.ts.map +1 -0
  185. package/dist/components/sales-channel-picker/SalesChannelPicker.js +18 -0
  186. package/dist/components/sales-channel-picker/SalesChannelPicker.js.map +1 -0
  187. package/dist/components/scope-notice/ScopeNotice.d.ts +18 -0
  188. package/dist/components/scope-notice/ScopeNotice.d.ts.map +1 -0
  189. package/dist/components/scope-notice/ScopeNotice.js +17 -0
  190. package/dist/components/scope-notice/ScopeNotice.js.map +1 -0
  191. package/dist/components/ui/alert.d.ts +18 -0
  192. package/dist/components/ui/alert.d.ts.map +1 -0
  193. package/dist/components/ui/alert.js +17 -0
  194. package/dist/components/ui/alert.js.map +1 -0
  195. package/dist/components/ui/badge.d.ts +18 -0
  196. package/dist/components/ui/badge.d.ts.map +1 -0
  197. package/dist/components/ui/badge.js +17 -0
  198. package/dist/components/ui/badge.js.map +1 -0
  199. package/dist/components/ui/button.d.ts +18 -0
  200. package/dist/components/ui/button.d.ts.map +1 -0
  201. package/dist/components/ui/button.js +17 -0
  202. package/dist/components/ui/button.js.map +1 -0
  203. package/dist/components/ui/card.d.ts +17 -0
  204. package/dist/components/ui/card.d.ts.map +1 -0
  205. package/dist/components/ui/card.js +17 -0
  206. package/dist/components/ui/card.js.map +1 -0
  207. package/dist/components/ui/checkbox.d.ts +17 -0
  208. package/dist/components/ui/checkbox.d.ts.map +1 -0
  209. package/dist/components/ui/checkbox.js +17 -0
  210. package/dist/components/ui/checkbox.js.map +1 -0
  211. package/dist/components/ui/collapsible.d.ts +5 -0
  212. package/dist/components/ui/collapsible.d.ts.map +1 -0
  213. package/dist/components/ui/collapsible.js +5 -0
  214. package/dist/components/ui/collapsible.js.map +1 -0
  215. package/dist/components/ui/color-picker.d.ts +17 -0
  216. package/dist/components/ui/color-picker.d.ts.map +1 -0
  217. package/dist/components/ui/color-picker.js +17 -0
  218. package/dist/components/ui/color-picker.js.map +1 -0
  219. package/dist/components/ui/combobox.d.ts +18 -0
  220. package/dist/components/ui/combobox.d.ts.map +1 -0
  221. package/dist/components/ui/combobox.js +17 -0
  222. package/dist/components/ui/combobox.js.map +1 -0
  223. package/dist/components/ui/input.d.ts +17 -0
  224. package/dist/components/ui/input.d.ts.map +1 -0
  225. package/dist/components/ui/input.js +17 -0
  226. package/dist/components/ui/input.js.map +1 -0
  227. package/dist/components/ui/label.d.ts +17 -0
  228. package/dist/components/ui/label.d.ts.map +1 -0
  229. package/dist/components/ui/label.js +17 -0
  230. package/dist/components/ui/label.js.map +1 -0
  231. package/dist/components/ui/multi-select.d.ts +18 -0
  232. package/dist/components/ui/multi-select.d.ts.map +1 -0
  233. package/dist/components/ui/multi-select.js +17 -0
  234. package/dist/components/ui/multi-select.js.map +1 -0
  235. package/dist/components/ui/page-header.d.ts +18 -0
  236. package/dist/components/ui/page-header.d.ts.map +1 -0
  237. package/dist/components/ui/page-header.js +17 -0
  238. package/dist/components/ui/page-header.js.map +1 -0
  239. package/dist/components/ui/route-tabs.d.ts +18 -0
  240. package/dist/components/ui/route-tabs.d.ts.map +1 -0
  241. package/dist/components/ui/route-tabs.js +17 -0
  242. package/dist/components/ui/route-tabs.js.map +1 -0
  243. package/dist/components/ui/save-button-group.d.ts +18 -0
  244. package/dist/components/ui/save-button-group.d.ts.map +1 -0
  245. package/dist/components/ui/save-button-group.js +17 -0
  246. package/dist/components/ui/save-button-group.js.map +1 -0
  247. package/dist/components/ui/select.d.ts +17 -0
  248. package/dist/components/ui/select.d.ts.map +1 -0
  249. package/dist/components/ui/select.js +17 -0
  250. package/dist/components/ui/select.js.map +1 -0
  251. package/dist/components/ui/separator.d.ts +17 -0
  252. package/dist/components/ui/separator.d.ts.map +1 -0
  253. package/dist/components/ui/separator.js +17 -0
  254. package/dist/components/ui/separator.js.map +1 -0
  255. package/dist/components/ui/table.d.ts +17 -0
  256. package/dist/components/ui/table.d.ts.map +1 -0
  257. package/dist/components/ui/table.js +17 -0
  258. package/dist/components/ui/table.js.map +1 -0
  259. package/dist/components/ui/textarea.d.ts +17 -0
  260. package/dist/components/ui/textarea.d.ts.map +1 -0
  261. package/dist/components/ui/textarea.js +17 -0
  262. package/dist/components/ui/textarea.js.map +1 -0
  263. package/dist/i18n/TranslationProvider.d.ts +18 -0
  264. package/dist/i18n/TranslationProvider.d.ts.map +1 -0
  265. package/dist/i18n/TranslationProvider.js +17 -0
  266. package/dist/i18n/TranslationProvider.js.map +1 -0
  267. package/dist/i18n/app-language-context.d.ts +18 -0
  268. package/dist/i18n/app-language-context.d.ts.map +1 -0
  269. package/dist/i18n/app-language-context.js +17 -0
  270. package/dist/i18n/app-language-context.js.map +1 -0
  271. package/dist/i18n/interpolate.d.ts +17 -0
  272. package/dist/i18n/interpolate.d.ts.map +1 -0
  273. package/dist/i18n/interpolate.js +17 -0
  274. package/dist/i18n/interpolate.js.map +1 -0
  275. package/dist/i18n/language-storage.d.ts +17 -0
  276. package/dist/i18n/language-storage.d.ts.map +1 -0
  277. package/dist/i18n/language-storage.js +17 -0
  278. package/dist/i18n/language-storage.js.map +1 -0
  279. package/dist/i18n/preauth-login-copy.d.ts +36 -0
  280. package/dist/i18n/preauth-login-copy.d.ts.map +1 -0
  281. package/dist/i18n/preauth-login-copy.js +36 -0
  282. package/dist/i18n/preauth-login-copy.js.map +1 -0
  283. package/dist/i18n/resolver.d.ts +18 -0
  284. package/dist/i18n/resolver.d.ts.map +1 -0
  285. package/dist/i18n/resolver.js +17 -0
  286. package/dist/i18n/resolver.js.map +1 -0
  287. package/dist/i18n/types.d.ts +17 -0
  288. package/dist/i18n/types.d.ts.map +1 -0
  289. package/dist/i18n/types.js +2 -0
  290. package/dist/i18n/types.js.map +1 -0
  291. package/dist/i18n/useTranslation.d.ts +17 -0
  292. package/dist/i18n/useTranslation.d.ts.map +1 -0
  293. package/dist/i18n/useTranslation.js +17 -0
  294. package/dist/i18n/useTranslation.js.map +1 -0
  295. package/dist/index.d.ts +55 -0
  296. package/dist/index.d.ts.map +1 -0
  297. package/dist/index.js +51 -0
  298. package/dist/index.js.map +1 -0
  299. package/dist/lib/admin-actions/AdminActionsProvider.d.ts +29 -0
  300. package/dist/lib/admin-actions/AdminActionsProvider.d.ts.map +1 -0
  301. package/dist/lib/admin-actions/AdminActionsProvider.js +51 -0
  302. package/dist/lib/admin-actions/AdminActionsProvider.js.map +1 -0
  303. package/dist/lib/admin-actions/api.d.ts +10 -0
  304. package/dist/lib/admin-actions/api.d.ts.map +1 -0
  305. package/dist/lib/admin-actions/api.js +13 -0
  306. package/dist/lib/admin-actions/api.js.map +1 -0
  307. package/dist/lib/admin-actions/icon-map.d.ts +17 -0
  308. package/dist/lib/admin-actions/icon-map.d.ts.map +1 -0
  309. package/dist/lib/admin-actions/icon-map.js +17 -0
  310. package/dist/lib/admin-actions/icon-map.js.map +1 -0
  311. package/dist/lib/admin-actions/useAdminActions.d.ts +17 -0
  312. package/dist/lib/admin-actions/useAdminActions.d.ts.map +1 -0
  313. package/dist/lib/admin-actions/useAdminActions.js +34 -0
  314. package/dist/lib/admin-actions/useAdminActions.js.map +1 -0
  315. package/dist/lib/api-client.d.ts +17 -0
  316. package/dist/lib/api-client.d.ts.map +1 -0
  317. package/dist/lib/api-client.js +17 -0
  318. package/dist/lib/api-client.js.map +1 -0
  319. package/dist/lib/auth.d.ts +18 -0
  320. package/dist/lib/auth.d.ts.map +1 -0
  321. package/dist/lib/auth.js +17 -0
  322. package/dist/lib/auth.js.map +1 -0
  323. package/dist/lib/federated-sign-in/api.d.ts +4 -0
  324. package/dist/lib/federated-sign-in/api.d.ts.map +1 -0
  325. package/dist/lib/federated-sign-in/api.js +38 -0
  326. package/dist/lib/federated-sign-in/api.js.map +1 -0
  327. package/dist/lib/federated-sign-in/index.d.ts +4 -0
  328. package/dist/lib/federated-sign-in/index.d.ts.map +1 -0
  329. package/dist/lib/federated-sign-in/index.js +4 -0
  330. package/dist/lib/federated-sign-in/index.js.map +1 -0
  331. package/dist/lib/federated-sign-in/resolve.d.ts +47 -0
  332. package/dist/lib/federated-sign-in/resolve.d.ts.map +1 -0
  333. package/dist/lib/federated-sign-in/resolve.js +24 -0
  334. package/dist/lib/federated-sign-in/resolve.js.map +1 -0
  335. package/dist/lib/federated-sign-in/useFederatedSignIn.d.ts +15 -0
  336. package/dist/lib/federated-sign-in/useFederatedSignIn.d.ts.map +1 -0
  337. package/dist/lib/federated-sign-in/useFederatedSignIn.js +37 -0
  338. package/dist/lib/federated-sign-in/useFederatedSignIn.js.map +1 -0
  339. package/dist/lib/format.d.ts +17 -0
  340. package/dist/lib/format.d.ts.map +1 -0
  341. package/dist/lib/format.js +17 -0
  342. package/dist/lib/format.js.map +1 -0
  343. package/dist/lib/module-presence/index.d.ts +19 -0
  344. package/dist/lib/module-presence/index.d.ts.map +1 -0
  345. package/dist/lib/module-presence/index.js +18 -0
  346. package/dist/lib/module-presence/index.js.map +1 -0
  347. package/dist/lib/module-registry/index.d.ts +84 -0
  348. package/dist/lib/module-registry/index.d.ts.map +1 -0
  349. package/dist/lib/module-registry/index.js +104 -0
  350. package/dist/lib/module-registry/index.js.map +1 -0
  351. package/dist/lib/money.d.ts +17 -0
  352. package/dist/lib/money.d.ts.map +1 -0
  353. package/dist/lib/money.js +17 -0
  354. package/dist/lib/money.js.map +1 -0
  355. package/dist/lib/prompt-actions/api.d.ts +10 -0
  356. package/dist/lib/prompt-actions/api.d.ts.map +1 -0
  357. package/dist/lib/prompt-actions/api.js +41 -0
  358. package/dist/lib/prompt-actions/api.js.map +1 -0
  359. package/dist/lib/prompt-actions/usePromptRequest.d.ts +26 -0
  360. package/dist/lib/prompt-actions/usePromptRequest.d.ts.map +1 -0
  361. package/dist/lib/prompt-actions/usePromptRequest.js +113 -0
  362. package/dist/lib/prompt-actions/usePromptRequest.js.map +1 -0
  363. package/dist/lib/surface-visibility.d.ts +15 -0
  364. package/dist/lib/surface-visibility.d.ts.map +1 -0
  365. package/dist/lib/surface-visibility.js +14 -0
  366. package/dist/lib/surface-visibility.js.map +1 -0
  367. package/dist/lib/text-normalization.d.ts +17 -0
  368. package/dist/lib/text-normalization.d.ts.map +1 -0
  369. package/dist/lib/text-normalization.js +17 -0
  370. package/dist/lib/text-normalization.js.map +1 -0
  371. package/dist/lib/use-page-size-preference.d.ts +16 -0
  372. package/dist/lib/use-page-size-preference.d.ts.map +1 -0
  373. package/dist/lib/use-page-size-preference.js +15 -0
  374. package/dist/lib/use-page-size-preference.js.map +1 -0
  375. package/dist/lib/use-unsaved-changes-prompt.d.ts +17 -0
  376. package/dist/lib/use-unsaved-changes-prompt.d.ts.map +1 -0
  377. package/dist/lib/use-unsaved-changes-prompt.js +17 -0
  378. package/dist/lib/use-unsaved-changes-prompt.js.map +1 -0
  379. package/dist/lib/utils.d.ts +17 -0
  380. package/dist/lib/utils.d.ts.map +1 -0
  381. package/dist/lib/utils.js +17 -0
  382. package/dist/lib/utils.js.map +1 -0
  383. package/dist/lib/uuid.d.ts +17 -0
  384. package/dist/lib/uuid.d.ts.map +1 -0
  385. package/dist/lib/uuid.js +17 -0
  386. package/dist/lib/uuid.js.map +1 -0
  387. package/dist/modules/home/HomePage.d.ts +3 -0
  388. package/dist/modules/home/HomePage.d.ts.map +1 -0
  389. package/dist/modules/home/HomePage.js +137 -0
  390. package/dist/modules/home/HomePage.js.map +1 -0
  391. package/dist/modules/home/RecentActivityCard.d.ts +3 -0
  392. package/dist/modules/home/RecentActivityCard.d.ts.map +1 -0
  393. package/dist/modules/home/RecentActivityCard.js +94 -0
  394. package/dist/modules/home/RecentActivityCard.js.map +1 -0
  395. package/dist/modules/home/activity-render.d.ts +69 -0
  396. package/dist/modules/home/activity-render.d.ts.map +1 -0
  397. package/dist/modules/home/activity-render.js +53 -0
  398. package/dist/modules/home/activity-render.js.map +1 -0
  399. package/dist/modules/home/useRecentActivity.d.ts +41 -0
  400. package/dist/modules/home/useRecentActivity.d.ts.map +1 -0
  401. package/dist/modules/home/useRecentActivity.js +57 -0
  402. package/dist/modules/home/useRecentActivity.js.map +1 -0
  403. package/dist/modules/platform/ModuleActivationControl.d.ts +28 -0
  404. package/dist/modules/platform/ModuleActivationControl.d.ts.map +1 -0
  405. package/dist/modules/platform/ModuleActivationControl.js +88 -0
  406. package/dist/modules/platform/ModuleActivationControl.js.map +1 -0
  407. package/dist/modules/platform/ModulesPage.d.ts +76 -0
  408. package/dist/modules/platform/ModulesPage.d.ts.map +1 -0
  409. package/dist/modules/platform/ModulesPage.js +175 -0
  410. package/dist/modules/platform/ModulesPage.js.map +1 -0
  411. package/dist/modules/platform/RecentActivityVisibilityControl.d.ts +38 -0
  412. package/dist/modules/platform/RecentActivityVisibilityControl.d.ts.map +1 -0
  413. package/dist/modules/platform/RecentActivityVisibilityControl.js +26 -0
  414. package/dist/modules/platform/RecentActivityVisibilityControl.js.map +1 -0
  415. package/dist/modules/platform/api.d.ts +27 -0
  416. package/dist/modules/platform/api.d.ts.map +1 -0
  417. package/dist/modules/platform/api.js +33 -0
  418. package/dist/modules/platform/api.js.map +1 -0
  419. package/dist/modules/profile/ProfilePage.d.ts +11 -0
  420. package/dist/modules/profile/ProfilePage.d.ts.map +1 -0
  421. package/dist/modules/profile/ProfilePage.js +140 -0
  422. package/dist/modules/profile/ProfilePage.js.map +1 -0
  423. package/dist/registerSw.d.ts +7 -0
  424. package/dist/registerSw.d.ts.map +1 -0
  425. package/dist/registerSw.js +20 -0
  426. package/dist/registerSw.js.map +1 -0
  427. package/package.json +74 -3
  428. package/tailwind.css +14 -0
@@ -0,0 +1,140 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import { useEffect, useState } from 'react';
3
+ import { ApiError, apiClient } from '../../lib/api-client.js';
4
+ import { useAuth } from '../../lib/auth.js';
5
+ import { useAppLanguage } from '../../i18n/app-language-context.js';
6
+ import { setPreferredLanguage } from '../../i18n/language-storage.js';
7
+ import { useTranslation } from '../../i18n/useTranslation.js';
8
+ /**
9
+ * ProfilePage — feature 010 admin polish.
10
+ *
11
+ * Self-edit form for the logged-in admin user. Hits
12
+ * `PATCH /api/v1/admin/me`, which any authenticated admin can call
13
+ * without holding `admin_users:manage`. Linked from the avatar in the
14
+ * top-right corner of the AppShell.
15
+ */
16
+ export function ProfilePage() {
17
+ const t = useTranslation('core');
18
+ const { me, refresh } = useAuth();
19
+ const [firstName, setFirstName] = useState('');
20
+ const [lastName, setLastName] = useState('');
21
+ const [password, setPassword] = useState('');
22
+ const [submitting, setSubmitting] = useState(false);
23
+ const [error, setError] = useState(null);
24
+ const [info, setInfo] = useState(null);
25
+ useEffect(() => {
26
+ if (me) {
27
+ setFirstName(me.adminUser.firstName);
28
+ setLastName(me.adminUser.lastName);
29
+ }
30
+ }, [me]);
31
+ if (!me) {
32
+ return _jsx("div", { className: "b2b-page", children: t('profile.loading') });
33
+ }
34
+ const handleSubmit = async (e) => {
35
+ e.preventDefault();
36
+ setSubmitting(true);
37
+ setError(null);
38
+ setInfo(null);
39
+ try {
40
+ const body = {};
41
+ if (firstName !== me.adminUser.firstName)
42
+ body['firstName'] = firstName;
43
+ if (lastName !== me.adminUser.lastName)
44
+ body['lastName'] = lastName;
45
+ if (password.trim().length > 0)
46
+ body['password'] = password;
47
+ if (Object.keys(body).length === 0) {
48
+ setInfo(t('profile.info.nothingToSave'));
49
+ setSubmitting(false);
50
+ return;
51
+ }
52
+ await apiClient.patch('/api/v1/admin/me', body);
53
+ setPassword('');
54
+ setInfo(t('profile.info.updated'));
55
+ await refresh();
56
+ }
57
+ catch (err) {
58
+ setError(err instanceof ApiError ? err.envelope.error.message : t('profile.error.save'));
59
+ }
60
+ finally {
61
+ setSubmitting(false);
62
+ }
63
+ };
64
+ return (_jsxs("div", { className: "b2b-page", children: [_jsx("div", { className: "b2b-page-head", children: _jsxs("div", { className: "b2b-grow", children: [_jsx("div", { className: "b2b-page-head__title", children: t('profile.page.title') }), _jsxs("div", { className: "b2b-page-head__sub", children: [t('profile.page.descriptionPrefix'), " ", _jsx("code", { className: "b2b-mono", children: "admin_users:manage" }), " ", t('profile.page.descriptionSuffix')] })] }) }), error ? (_jsx("div", { className: "b2b-card", style: {
65
+ background: 'var(--danger-soft)',
66
+ color: 'var(--danger-soft-fg)',
67
+ padding: 12,
68
+ marginBottom: 16,
69
+ border: '1px solid hsl(8 80% 85%)',
70
+ }, children: error })) : null, info ? (_jsx("div", { className: "b2b-card", style: {
71
+ background: 'var(--success-soft)',
72
+ color: 'var(--success-soft-fg)',
73
+ padding: 12,
74
+ marginBottom: 16,
75
+ border: '1px solid hsl(142 50% 80%)',
76
+ }, children: info })) : null, _jsxs("form", { onSubmit: (e) => { void handleSubmit(e); }, children: [_jsxs("div", { className: "b2b-card", style: { marginBottom: 16 }, children: [_jsx("div", { className: "b2b-card__head", children: _jsx("h2", { children: t('profile.identityTitle') }) }), _jsx("div", { className: "b2b-card__body", children: _jsxs("div", { className: "b2b-grid b2b-grid--cols-2", children: [_jsxs("div", { children: [_jsx("label", { className: "b2b-label", htmlFor: "me-email", children: t('profile.field.email') }), _jsx("input", { id: "me-email", className: "b2b-field", value: me.adminUser.email, disabled: true }), _jsx("div", { className: "b2b-help", children: t('profile.emailHelp') })] }), _jsxs("div", { children: [_jsx("label", { className: "b2b-label", htmlFor: "me-role", children: t('profile.field.role') }), _jsx("input", { id: "me-role", className: "b2b-field", value: me.role?.name ?? '—', disabled: true })] }), _jsxs("div", { children: [_jsx("label", { className: "b2b-label", htmlFor: "me-first", children: t('profile.field.firstName') }), _jsx("input", { id: "me-first", className: "b2b-field", value: firstName, onChange: (e) => setFirstName(e.target.value), required: true, maxLength: 120 })] }), _jsxs("div", { children: [_jsx("label", { className: "b2b-label", htmlFor: "me-last", children: t('profile.field.lastName') }), _jsx("input", { id: "me-last", className: "b2b-field", value: lastName, onChange: (e) => setLastName(e.target.value), required: true, maxLength: 120 })] })] }) })] }), _jsxs("div", { className: "b2b-card", style: { marginBottom: 16 }, children: [_jsx("div", { className: "b2b-card__head", children: _jsx("h2", { children: t('profile.changePassword') }) }), _jsx("div", { className: "b2b-card__body", children: _jsxs("div", { children: [_jsx("label", { className: "b2b-label", htmlFor: "me-pwd", children: t('profile.field.newPassword') }), _jsx("input", { id: "me-pwd", className: "b2b-field", type: "password", value: password, onChange: (e) => setPassword(e.target.value), minLength: 12, maxLength: 120, autoComplete: "new-password", placeholder: t('profile.field.newPasswordPlaceholder') }), _jsx("div", { className: "b2b-help", children: t('profile.field.newPasswordHelp') })] }) })] }), _jsx("div", { className: "b2b-row", style: { gap: 8, justifyContent: 'flex-end' }, children: _jsx("button", { type: "submit", className: "b2b-btn b2b-btn--primary", disabled: submitting, children: submitting ? t('profile.saving') : t('profile.saveChanges') }) })] }), _jsx(LanguageSection, {})] }));
77
+ }
78
+ /**
79
+ * Language section — feature 019 / FR-002, FR-004, FR-005, FR-006.
80
+ *
81
+ * Self-service language picker. Calls
82
+ * `PATCH /api/v1/admin/me/preferred-language` and flips the
83
+ * `<TranslationProvider>` language at the App scope so every screen
84
+ * re-renders without sign-out.
85
+ */
86
+ function LanguageSection() {
87
+ const t = useTranslation('core');
88
+ const { language, setLanguage } = useAppLanguage();
89
+ const { refresh } = useAuth();
90
+ const [pending, setPending] = useState(language);
91
+ const [submitting, setSubmitting] = useState(false);
92
+ const [info, setInfo] = useState(null);
93
+ const [error, setError] = useState(null);
94
+ useEffect(() => {
95
+ setPending(language);
96
+ }, [language]);
97
+ const handleSave = async () => {
98
+ if (pending === language)
99
+ return;
100
+ setSubmitting(true);
101
+ setError(null);
102
+ setInfo(null);
103
+ const previous = language;
104
+ setLanguage(pending);
105
+ try {
106
+ await setPreferredLanguage(pending);
107
+ await refresh();
108
+ setInfo(t('profilePage.language.saved'));
109
+ }
110
+ catch (err) {
111
+ setLanguage(previous);
112
+ setPending(previous);
113
+ const message = err instanceof ApiError
114
+ ? err.envelope.error.message
115
+ : t('profilePage.language.failed');
116
+ setError(message);
117
+ }
118
+ finally {
119
+ setSubmitting(false);
120
+ }
121
+ };
122
+ return (_jsxs("div", { className: "b2b-card", style: { marginTop: 16 }, children: [_jsx("div", { className: "b2b-card__head", children: _jsx("h2", { children: t('profilePage.section.language') }) }), _jsxs("div", { className: "b2b-card__body", children: [_jsx("p", { className: "b2b-help", style: { marginBottom: 12 }, children: t('profilePage.section.language.help') }), error ? (_jsx("div", { className: "b2b-card", style: {
123
+ background: 'var(--danger-soft)',
124
+ color: 'var(--danger-soft-fg)',
125
+ padding: 12,
126
+ marginBottom: 12,
127
+ border: '1px solid hsl(8 80% 85%)',
128
+ }, children: error })) : null, info ? (_jsx("div", { className: "b2b-card", style: {
129
+ background: 'var(--success-soft)',
130
+ color: 'var(--success-soft-fg)',
131
+ padding: 12,
132
+ marginBottom: 12,
133
+ border: '1px solid hsl(142 50% 80%)',
134
+ }, children: info })) : null, _jsxs("div", { className: "b2b-row", style: { gap: 12, alignItems: 'center' }, children: [_jsxs("select", { className: "b2b-field", value: pending, onChange: (e) => setPending(e.target.value), style: { maxWidth: 240 }, children: [_jsx("option", { value: "en", children: t('profilePage.language.option.en') }), _jsx("option", { value: "pl", children: t('profilePage.language.option.pl') })] }), _jsx("button", { type: "button", className: "b2b-btn b2b-btn--primary", disabled: submitting || pending === language, onClick: () => {
135
+ void handleSave();
136
+ }, children: submitting
137
+ ? t('common.state.loading')
138
+ : t('profilePage.language.action.save') })] })] })] }));
139
+ }
140
+ //# sourceMappingURL=ProfilePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ProfilePage.js","sourceRoot":"","sources":["../../../src/modules/profile/ProfilePage.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Registers the admin service worker (feature 046, US6) for installability +
3
+ * asset caching. Fire-and-forget; disabled in dev and on unsupported browsers
4
+ * so the admin degrades to a plain SPA. No push (FR-025).
5
+ */
6
+ export declare function registerAdminServiceWorker(): void;
7
+ //# sourceMappingURL=registerSw.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerSw.d.ts","sourceRoot":"","sources":["../src/registerSw.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,wBAAgB,0BAA0B,IAAI,IAAI,CAUjD"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * Registers the admin service worker (feature 046, US6) for installability +
3
+ * asset caching. Fire-and-forget; disabled in dev and on unsupported browsers
4
+ * so the admin degrades to a plain SPA. No push (FR-025).
5
+ */
6
+ export function registerAdminServiceWorker() {
7
+ if (typeof window === 'undefined')
8
+ return;
9
+ if (!('serviceWorker' in navigator))
10
+ return;
11
+ if (import.meta.env.DEV)
12
+ return;
13
+ const version = import.meta.env['VITE_BUILD_ID'] ?? 'v1';
14
+ navigator.serviceWorker
15
+ .register(`/admin-service-worker.js?v=${encodeURIComponent(version)}`)
16
+ .catch(() => {
17
+ // Swallow — the admin still works as a normal SPA.
18
+ });
19
+ }
20
+ //# sourceMappingURL=registerSw.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registerSw.js","sourceRoot":"","sources":["../src/registerSw.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,UAAU,0BAA0B;IACxC,IAAI,OAAO,MAAM,KAAK,WAAW;QAAE,OAAO;IAC1C,IAAI,CAAC,CAAC,eAAe,IAAI,SAAS,CAAC;QAAE,OAAO;IAC5C,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG;QAAE,OAAO;IAChC,MAAM,OAAO,GAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,CAAwB,IAAI,IAAI,CAAC;IACjF,SAAS,CAAC,aAAa;SACpB,QAAQ,CAAC,8BAA8B,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC;SACrE,KAAK,CAAC,GAAG,EAAE;QACV,mDAAmD;IACrD,CAAC,CAAC,CAAC;AACP,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,77 @@
1
1
  {
2
2
  "name": "@endora-commerce/admin-shell",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "version": "0.100.0",
4
+ "type": "module",
5
+ "description": "The admin application itself (feature 110, FR-016) — the router, the sidebar and palette shell, the sign-in screen and the host's own screens. An instance depends on it and holds only index.html, main.tsx, the configuration, the brand assets, the theme overrides and the generated contribution registry.",
6
+ "license": "MIT",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "git+https://github.com/endora-commerce/endora-commerce.git",
10
+ "directory": "packages/admin-shell"
11
+ },
12
+ "publishConfig": {
13
+ "access": "public"
14
+ },
15
+ "exports": {
16
+ ".": {
17
+ "types": "./dist/index.d.ts",
18
+ "default": "./dist/index.js"
19
+ },
20
+ "./tailwind.css": "./tailwind.css",
21
+ "./package.json": "./package.json"
22
+ },
23
+ "files": [
24
+ "dist",
25
+ "tailwind.css"
26
+ ],
27
+ "engines": {
28
+ "node": ">=22.18.0"
29
+ },
30
+ "peerDependencies": {
31
+ "@radix-ui/react-collapsible": "^1.1.12",
32
+ "@tailwindcss/vite": "^4.2.4",
33
+ "@vitejs/plugin-react": "^5.2.0",
34
+ "lucide-react": "^1.11.0",
35
+ "react": "^19.0.0",
36
+ "react-dom": "^19.0.0",
37
+ "react-router-dom": "^7.18.2",
38
+ "tailwindcss": "^4.2.4",
39
+ "vite": "^7.3.2",
40
+ "@endora-commerce/admin-kit": "0.100.0",
41
+ "@endora-commerce/contracts": "0.100.0"
42
+ },
43
+ "peerDependenciesMeta": {
44
+ "@tailwindcss/vite": {
45
+ "optional": true
46
+ },
47
+ "@vitejs/plugin-react": {
48
+ "optional": true
49
+ },
50
+ "tailwindcss": {
51
+ "optional": true
52
+ },
53
+ "vite": {
54
+ "optional": true
55
+ }
56
+ },
57
+ "devDependencies": {
58
+ "@radix-ui/react-collapsible": "^1.1.12",
59
+ "@types/react": "^19.2.14",
60
+ "@types/react-dom": "^19.2.3",
61
+ "eslint-plugin-jsx-a11y": "^6.10.2",
62
+ "eslint-plugin-react-hooks": "^7.1.1",
63
+ "lucide-react": "^1.11.0",
64
+ "react": "^19.2.5",
65
+ "react-dom": "^19.2.5",
66
+ "react-router-dom": "^7.18.2",
67
+ "typescript": "^5.9.3",
68
+ "vite": "^7.3.2",
69
+ "@endora-commerce/admin-kit": "0.100.0",
70
+ "@endora-commerce/contracts": "0.100.0"
71
+ },
72
+ "scripts": {
73
+ "build": "tsc -p tsconfig.build.json",
74
+ "typecheck": "tsc -p tsconfig.json",
75
+ "lint": "eslint src"
76
+ }
6
77
  }
package/tailwind.css ADDED
@@ -0,0 +1,14 @@
1
+ /* @endora-commerce/admin-shell — AUTO-GENERATED by `pnpm --filter backend run manifests:generate`.
2
+ *
3
+ * The `@source` directives this package asks its host to scan
4
+ * (`specs/110-instance-repository/contracts/admin-stylesheet-composition.md` R1).
5
+ * They resolve relative to **this file**, so they hold wherever the package is
6
+ * installed — a workspace link here, `node_modules` in a client's instance.
7
+ *
8
+ * The `dist` line is what a published tarball ships and is what an instance
9
+ * scans; the `src` line is inert there and is what keeps `pnpm --filter admin
10
+ * run dev` reading source in this repository. Do not edit: run
11
+ * `pnpm --filter backend run manifests:generate`.
12
+ */
13
+ @source "./dist";
14
+ @source "./src";