@dropins/storefront-company-management 1.0.0-beta2 → 1.0.0-beta21

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 (298) hide show
  1. package/api/allowCompanyRegistration/allowCompanyRegistration.d.ts +18 -0
  2. package/api/allowCompanyRegistration/graphql/allowCompanyRegistration.graphql.d.ts +18 -0
  3. package/api/allowCompanyRegistration/index.d.ts +18 -0
  4. package/api/checkCompanyCreditEnabled/checkCompanyCreditEnabled.d.ts +4 -0
  5. package/api/checkCompanyCreditEnabled/graphql/checkCompanyCreditEnabled.graphql.d.ts +18 -0
  6. package/api/checkCompanyCreditEnabled/index.d.ts +18 -0
  7. package/api/companyEnabled/companyEnabled.d.ts +18 -0
  8. package/api/companyEnabled/graphql/companyEnabled.graphql.d.ts +18 -0
  9. package/api/{checkIsCompanyEnabled → companyEnabled}/index.d.ts +1 -1
  10. package/api/companyRoles/createCompanyRole.d.ts +7 -0
  11. package/api/companyRoles/deleteCompanyRole.d.ts +7 -0
  12. package/api/companyRoles/getCompanyAclResources.d.ts +7 -0
  13. package/api/companyRoles/getCompanyRole.d.ts +8 -0
  14. package/api/companyRoles/getCompanyRoles.d.ts +8 -0
  15. package/api/companyRoles/graphql/fragments.d.ts +18 -0
  16. package/api/companyRoles/graphql/index.d.ts +20 -0
  17. package/api/companyRoles/graphql/mutations.d.ts +20 -0
  18. package/api/companyRoles/graphql/queries.d.ts +21 -0
  19. package/api/companyRoles/index.d.ts +27 -0
  20. package/api/companyRoles/isCompanyRoleNameAvailable.d.ts +7 -0
  21. package/api/companyRoles/updateCompanyRole.d.ts +7 -0
  22. package/api/companyRoles/utils.d.ts +11 -0
  23. package/api/createCompany/createCompany.d.ts +39 -0
  24. package/api/createCompany/graphql/createCompany.graphql.d.ts +18 -0
  25. package/api/createCompany/index.d.ts +18 -0
  26. package/api/createCompanyTeam/createCompanyTeam.d.ts +11 -0
  27. package/api/createCompanyTeam/graphql/createCompanyTeam.graphql.d.ts +18 -0
  28. package/api/createCompanyTeam/index.d.ts +18 -0
  29. package/api/createCompanyUser/createCompanyUser.d.ts +9 -0
  30. package/api/createCompanyUser/graphql/createCompanyUser.graphql.d.ts +18 -0
  31. package/api/createCompanyUser/index.d.ts +18 -0
  32. package/api/deleteCompanyTeam/deleteCompanyTeam.d.ts +9 -0
  33. package/api/deleteCompanyTeam/graphql/deleteCompanyTeam.graphql.d.ts +18 -0
  34. package/api/deleteCompanyTeam/index.d.ts +18 -0
  35. package/api/deleteCompanyUser/deleteCompanyUser.d.ts +10 -0
  36. package/api/deleteCompanyUser/graphql/deleteCompanyUser.graphql.d.ts +18 -0
  37. package/api/deleteCompanyUser/index.d.ts +18 -0
  38. package/api/fetchUserPermissions/fetchUserPermissions.d.ts +11 -0
  39. package/api/{getCompany → fetchUserPermissions}/graphql/getCustomerRole.graphql.d.ts +1 -1
  40. package/api/fetchUserPermissions/index.d.ts +18 -0
  41. package/api/getCompany/getCompany.d.ts +9 -3
  42. package/api/getCompanyCredit/getCompanyCredit.d.ts +4 -0
  43. package/api/getCompanyCredit/graphql/getCompanyCredit.graphql.d.ts +18 -0
  44. package/api/getCompanyCredit/index.d.ts +18 -0
  45. package/api/getCompanyCreditHistory/getCompanyCreditHistory.d.ts +5 -0
  46. package/api/getCompanyCreditHistory/graphql/getCompanyCreditHistory.graphql.d.ts +18 -0
  47. package/api/getCompanyCreditHistory/index.d.ts +19 -0
  48. package/api/getCompanyStructure/getCompanyStructure.d.ts +10 -0
  49. package/api/getCompanyStructure/graphql/getCompanyStructure.graphql.d.ts +18 -0
  50. package/api/getCompanyStructure/index.d.ts +18 -0
  51. package/api/getCompanyTeam/getCompanyTeam.d.ts +11 -0
  52. package/api/getCompanyTeam/graphql/getCompanyTeam.graphql.d.ts +18 -0
  53. package/api/getCompanyTeam/index.d.ts +18 -0
  54. package/api/getCompanyUser/getCompanyUser.d.ts +9 -0
  55. package/api/getCompanyUser/graphql/getCompanyUser.graphql.d.ts +18 -0
  56. package/api/getCompanyUser/index.d.ts +18 -0
  57. package/api/getCompanyUsers/getCompanyUsers.d.ts +12 -0
  58. package/api/getCompanyUsers/graphql/companyUsers.graphql.d.ts +18 -0
  59. package/api/getCompanyUsers/index.d.ts +18 -0
  60. package/api/getCustomerCompany/getCustomerCompany.d.ts +12 -0
  61. package/api/getCustomerCompany/graphql/getCustomerCompanyInfo.graphql.d.ts +18 -0
  62. package/api/getCustomerCompany/index.d.ts +18 -0
  63. package/api/getStoreConfig/getStoreConfig.d.ts +6 -0
  64. package/api/getStoreConfig/graphql/getStoreConfig.graphql.d.ts +18 -0
  65. package/api/getStoreConfig/index.d.ts +18 -0
  66. package/api/graphql/buildCompanyQueries.d.ts +9 -0
  67. package/api/index.d.ts +26 -2
  68. package/api/initialize/initialize.d.ts +2 -20
  69. package/api/isCompanyAdmin/graphql/isCompanyAdmin.graphql.d.ts +18 -0
  70. package/api/isCompanyAdmin/index.d.ts +18 -0
  71. package/api/isCompanyAdmin/isCompanyAdmin.d.ts +22 -0
  72. package/api/isCompanyUser/graphql/isCompanyUser.graphql.d.ts +18 -0
  73. package/api/isCompanyUser/index.d.ts +18 -0
  74. package/api/isCompanyUser/isCompanyUser.d.ts +22 -0
  75. package/api/isCompanyUserEmailAvailable/graphql/isCompanyUserEmailAvailable.graphql.d.ts +18 -0
  76. package/api/isCompanyUserEmailAvailable/index.d.ts +18 -0
  77. package/api/isCompanyUserEmailAvailable/isCompanyUserEmailAvailable.d.ts +7 -0
  78. package/api/updateCompanyStructure/graphql/updateCompanyStructure.graphql.d.ts +18 -0
  79. package/api/updateCompanyStructure/index.d.ts +18 -0
  80. package/api/updateCompanyStructure/updateCompanyStructure.d.ts +11 -0
  81. package/api/updateCompanyTeam/graphql/updateCompanyTeam.graphql.d.ts +18 -0
  82. package/api/updateCompanyTeam/index.d.ts +18 -0
  83. package/api/updateCompanyTeam/updateCompanyTeam.d.ts +11 -0
  84. package/api/updateCompanyUser/graphql/updateCompanyUser.graphql.d.ts +18 -0
  85. package/api/updateCompanyUser/index.d.ts +18 -0
  86. package/api/updateCompanyUser/updateCompanyUser.d.ts +9 -0
  87. package/api/updateCompanyUserStatus/graphql/updateCompanyUserStatus.graphql.d.ts +18 -0
  88. package/api/updateCompanyUserStatus/index.d.ts +18 -0
  89. package/api/updateCompanyUserStatus/updateCompanyUserStatus.d.ts +11 -0
  90. package/api.js +22 -1
  91. package/api.js.map +1 -1
  92. package/chunks/CompanyLoaders.js +4 -0
  93. package/chunks/CompanyLoaders.js.map +1 -0
  94. package/chunks/CompanyUserForm.js +4 -0
  95. package/chunks/CompanyUserForm.js.map +1 -0
  96. package/chunks/Tree.js +4 -0
  97. package/chunks/Tree.js.map +1 -0
  98. package/chunks/acdl.js +4 -0
  99. package/chunks/acdl.js.map +1 -0
  100. package/chunks/company-permissions.js +4 -0
  101. package/chunks/company-permissions.js.map +1 -0
  102. package/chunks/fetch-error.js +4 -0
  103. package/chunks/fetch-error.js.map +1 -0
  104. package/chunks/fetchUserPermissions.js +34 -0
  105. package/chunks/fetchUserPermissions.js.map +1 -0
  106. package/chunks/getCompanyCreditHistory.js +68 -0
  107. package/chunks/getCompanyCreditHistory.js.map +1 -0
  108. package/chunks/getCustomerCompany.js +26 -0
  109. package/chunks/getCustomerCompany.js.map +1 -0
  110. package/chunks/isCompanyRoleNameAvailable.js +121 -0
  111. package/chunks/isCompanyRoleNameAvailable.js.map +1 -0
  112. package/chunks/isCompanyUser.js +21 -0
  113. package/chunks/isCompanyUser.js.map +1 -0
  114. package/chunks/network-error.js +4 -0
  115. package/chunks/network-error.js.map +1 -0
  116. package/chunks/transform-store-config.js +44 -0
  117. package/chunks/transform-store-config.js.map +1 -0
  118. package/chunks/updateCompany.js +70 -0
  119. package/chunks/updateCompany.js.map +1 -0
  120. package/chunks/updateCompanyTeam.js +42 -0
  121. package/chunks/updateCompanyTeam.js.map +1 -0
  122. package/chunks/updateCompanyUser.js +37 -0
  123. package/chunks/updateCompanyUser.js.map +1 -0
  124. package/chunks/updateCompanyUserStatus.js +39 -0
  125. package/chunks/updateCompanyUserStatus.js.map +1 -0
  126. package/chunks/useCompanyContextListener.js +4 -0
  127. package/chunks/useCompanyContextListener.js.map +1 -0
  128. package/chunks/useCompanyRoles.js +4 -0
  129. package/chunks/useCompanyRoles.js.map +1 -0
  130. package/chunks/useCustomerCompanyInfo.js +4 -0
  131. package/chunks/useCustomerCompanyInfo.js.map +1 -0
  132. package/chunks/useInLineAlert.js +4 -0
  133. package/chunks/useInLineAlert.js.map +1 -0
  134. package/chunks/useUserPermissions.js +4 -0
  135. package/chunks/useUserPermissions.js.map +1 -0
  136. package/chunks/validateCompanyEmail.js +29 -0
  137. package/chunks/validateCompanyEmail.js.map +1 -0
  138. package/components/CompanyCreditDisplay/CompanyCreditDisplay.d.ts +7 -0
  139. package/components/CompanyCreditDisplay/index.d.ts +19 -0
  140. package/components/CompanyCreditHistoryDisplay/CompanyCreditHistoryDisplay.d.ts +15 -0
  141. package/components/CompanyCreditHistoryDisplay/index.d.ts +19 -0
  142. package/components/CompanyLoaders/CompanyLoaders.d.ts +14 -0
  143. package/components/CompanyRegistrationForm/CompanyRegistrationForm.d.ts +13 -0
  144. package/components/CompanyRegistrationForm/Form/Form.d.ts +5 -0
  145. package/components/CompanyRegistrationForm/Form/FormInputs/FormInputs.d.ts +5 -0
  146. package/components/CompanyRegistrationForm/Form/FormInputs/index.d.ts +18 -0
  147. package/components/CompanyRegistrationForm/Form/fieldHandlers.d.ts +26 -0
  148. package/components/CompanyRegistrationForm/Form/fieldValidationRules.d.ts +63 -0
  149. package/components/CompanyRegistrationForm/Form/formValidation.d.ts +17 -0
  150. package/components/CompanyRegistrationForm/Form/getCompanyFieldsConfig.d.ts +13 -0
  151. package/components/CompanyRegistrationForm/Form/index.d.ts +18 -0
  152. package/components/CompanyRegistrationForm/index.d.ts +20 -0
  153. package/components/CompanyRegistrationSuccess/CompanyRegistrationSuccess.d.ts +8 -0
  154. package/components/CompanyRegistrationSuccess/index.d.ts +18 -0
  155. package/components/CompanyStructureCard/CompanyStructureCard.d.ts +12 -0
  156. package/components/CompanyStructureCard/index.d.ts +18 -0
  157. package/components/CompanyStructureEmpty/CompanyStructureEmpty.d.ts +9 -0
  158. package/components/CompanyStructureEmpty/index.d.ts +19 -0
  159. package/components/CompanyTeamForm/CompanyTeamForm.d.ts +17 -0
  160. package/components/CompanyTeamForm/index.d.ts +18 -0
  161. package/components/CompanyUserForm/CompanyUserForm.d.ts +10 -0
  162. package/components/CompanyUserForm/index.d.ts +18 -0
  163. package/components/CompanyUsersFilters/CompanyUsersFilters.d.ts +29 -0
  164. package/components/CompanyUsersFilters/index.d.ts +18 -0
  165. package/components/CompanyUsersManagementModal/CompanyUsersManagementModal.d.ts +18 -0
  166. package/components/CompanyUsersManagementModal/index.d.ts +19 -0
  167. package/components/CustomerCompanyInfoCard/CustomerCompanyInfoCard.d.ts +9 -0
  168. package/components/CustomerCompanyInfoCard/index.d.ts +18 -0
  169. package/components/DeleteRoleModal/DeleteRoleModal.d.ts +9 -0
  170. package/components/DeleteRoleModal/index.d.ts +19 -0
  171. package/components/EditCompanyProfile/CompanyAccountFields.d.ts +1 -2
  172. package/components/EditCompanyProfile/LegalAddressFields.d.ts +1 -1
  173. package/components/EditRoleAndPermission/EditRoleAndPermission.d.ts +24 -0
  174. package/components/EditRoleAndPermission/index.d.ts +19 -0
  175. package/components/RoleAndPermissionTable/RoleAndPermissionTable.d.ts +23 -0
  176. package/components/RoleAndPermissionTable/index.d.ts +19 -0
  177. package/components/Tree/Tree.d.ts +62 -0
  178. package/components/Tree/index.d.ts +18 -0
  179. package/components/index.d.ts +15 -0
  180. package/containers/CompanyCredit/CompanyCredit.d.ts +16 -0
  181. package/containers/CompanyCredit/index.d.ts +19 -0
  182. package/containers/CompanyCredit.d.ts +3 -0
  183. package/containers/CompanyCredit.js +4 -0
  184. package/containers/CompanyCredit.js.map +1 -0
  185. package/containers/CompanyProfile.js +1 -1
  186. package/containers/CompanyProfile.js.map +1 -1
  187. package/containers/CompanyRegistration/CompanyRegistration.d.ts +15 -0
  188. package/containers/CompanyRegistration/index.d.ts +19 -0
  189. package/containers/CompanyRegistration.d.ts +3 -0
  190. package/containers/CompanyRegistration.js +4 -0
  191. package/containers/CompanyRegistration.js.map +1 -0
  192. package/containers/CompanyStructure/CompanyStructure.d.ts +5 -0
  193. package/containers/CompanyStructure/index.d.ts +19 -0
  194. package/containers/CompanyStructure.d.ts +3 -0
  195. package/containers/CompanyStructure.js +4 -0
  196. package/containers/CompanyStructure.js.map +1 -0
  197. package/containers/CompanyUsers/CompanyUsers.d.ts +7 -0
  198. package/containers/CompanyUsers/index.d.ts +19 -0
  199. package/containers/CompanyUsers.d.ts +3 -0
  200. package/containers/CompanyUsers.js +4 -0
  201. package/containers/CompanyUsers.js.map +1 -0
  202. package/containers/CustomerCompanyInfo/CustomerCompanyInfo.d.ts +9 -0
  203. package/containers/CustomerCompanyInfo/index.d.ts +19 -0
  204. package/containers/CustomerCompanyInfo.d.ts +1 -0
  205. package/containers/CustomerCompanyInfo.js +4 -0
  206. package/containers/CustomerCompanyInfo.js.map +1 -0
  207. package/containers/RolesAndPermissions/RolesAndPermissions.d.ts +8 -0
  208. package/containers/RolesAndPermissions/index.d.ts +19 -0
  209. package/containers/RolesAndPermissions.d.ts +3 -0
  210. package/containers/RolesAndPermissions.js +4 -0
  211. package/containers/RolesAndPermissions.js.map +1 -0
  212. package/containers/index.d.ts +7 -0
  213. package/data/models/company-credit-history.d.ts +54 -0
  214. package/data/models/company-credit-info.d.ts +33 -0
  215. package/data/models/company-role.d.ts +48 -0
  216. package/data/models/company-structure.d.ts +26 -0
  217. package/data/models/company-team.d.ts +24 -0
  218. package/data/models/company-user.d.ts +33 -0
  219. package/data/models/company.d.ts +58 -17
  220. package/data/models/customer-company-info.d.ts +23 -0
  221. package/data/models/index.d.ts +7 -0
  222. package/data/transforms/company.d.ts +5 -0
  223. package/data/transforms/index.d.ts +8 -0
  224. package/data/transforms/transform-company-credit-history.d.ts +5 -0
  225. package/data/transforms/transform-company-credit.d.ts +5 -0
  226. package/data/transforms/transform-company-roles.d.ts +15 -0
  227. package/data/transforms/transform-company-structure.d.ts +22 -0
  228. package/data/transforms/transform-company-team.d.ts +10 -0
  229. package/data/transforms/transform-company-user.d.ts +18 -0
  230. package/data/transforms/transform-company.d.ts +5 -1
  231. package/data/transforms/transform-customer-company-info.d.ts +10 -0
  232. package/data/transforms/transform-store-config.d.ts +4 -0
  233. package/hooks/containers/index.d.ts +3 -0
  234. package/hooks/containers/useCompanyCreditHistory.d.ts +32 -0
  235. package/hooks/containers/useCompanyProfile.d.ts +2 -8
  236. package/hooks/containers/useCompanyUsers.d.ts +34 -0
  237. package/hooks/containers/useCustomerCompanyInfo.d.ts +12 -0
  238. package/hooks/index.d.ts +9 -0
  239. package/hooks/useCompanyContextListener.d.ts +62 -0
  240. package/hooks/useCompanyRegistrationForm.d.ts +37 -0
  241. package/hooks/useCompanyRoles.d.ts +28 -0
  242. package/hooks/useCompanyStructureCard.d.ts +36 -0
  243. package/hooks/useCompanyTeamForm.d.ts +30 -0
  244. package/hooks/useCompanyUserForm.d.ts +37 -0
  245. package/hooks/useCountryAndRegionFields.d.ts +20 -0
  246. package/hooks/useModal.d.ts +24 -0
  247. package/hooks/usePermissions.d.ts +31 -0
  248. package/hooks/useUserPermissions.d.ts +26 -0
  249. package/i18n/en_US.json.d.ts +345 -4
  250. package/lib/acdl.d.ts +2 -1
  251. package/lib/company-permissions.d.ts +25 -0
  252. package/lib/encoding.d.ts +43 -0
  253. package/lib/fetch-error.d.ts +6 -1
  254. package/lib/index.d.ts +3 -0
  255. package/lib/network-error.d.ts +4 -0
  256. package/lib/userHelpers.d.ts +47 -0
  257. package/lib/validationFields.d.ts +16 -0
  258. package/package.json +1 -1
  259. package/render.js +12 -2
  260. package/render.js.map +1 -1
  261. package/types/api/{checkIsCompanyEnabled.types.d.ts → checkCompanyCreditEnabled.types.d.ts} +3 -3
  262. package/types/api/companyRoles.types.d.ts +137 -0
  263. package/types/api/companyUsers.types.d.ts +70 -0
  264. package/types/api/createCompanyTeam.types.d.ts +27 -0
  265. package/types/api/createCompanyUser.types.d.ts +31 -0
  266. package/types/api/deleteCompanyTeam.types.d.ts +20 -0
  267. package/types/api/deleteCompanyUser.types.d.ts +28 -0
  268. package/types/api/fetchUserPermissions.types.d.ts +43 -0
  269. package/types/api/getCompany.types.d.ts +1 -1
  270. package/types/api/getCompanyCredit.types.d.ts +40 -0
  271. package/types/api/getCompanyCreditHistory.types.d.ts +61 -0
  272. package/types/api/getCompanyCreditHistoryParams.types.d.ts +53 -0
  273. package/types/api/getCompanyStructure.types.d.ts +33 -0
  274. package/types/api/getCompanyTeam.types.d.ts +20 -0
  275. package/types/api/getCompanyUser.types.d.ts +20 -0
  276. package/types/api/getCustomerCompanyInfo.types.d.ts +40 -0
  277. package/types/api/getStoreConfig.types.d.ts +33 -0
  278. package/types/api/index.d.ts +29 -0
  279. package/types/api/initialize.types.d.ts +21 -0
  280. package/types/api/isCompanyUserEmailAvailable.types.d.ts +20 -0
  281. package/types/api/updateCompany.types.d.ts +1 -1
  282. package/types/api/updateCompanyStructure.types.d.ts +21 -0
  283. package/types/api/updateCompanyTeam.types.d.ts +22 -0
  284. package/types/api/updateCompanyUser.types.d.ts +27 -0
  285. package/types/api/updateCompanyUserStatus.types.d.ts +22 -0
  286. package/types/companyForm.types.d.ts +33 -0
  287. package/types/companyPermission.types.d.ts +33 -0
  288. package/types/companyProfile.types.d.ts +43 -0
  289. package/types/companyStructure.types.d.ts +28 -0
  290. package/types/customerCompanyInfo.types.d.ts +11 -0
  291. package/types/events.d.ts +21 -0
  292. package/types/form.types.d.ts +93 -0
  293. package/types/hook.types.d.ts +18 -0
  294. package/types/index.d.ts +25 -2
  295. package/api/checkIsCompanyEnabled/checkIsCompanyEnabled.d.ts +0 -4
  296. package/api/updateCompany/graphql/updateCompany.graphql.d.ts +0 -2
  297. package/chunks/getCountries.js +0 -135
  298. package/chunks/getCountries.js.map +0 -1
@@ -0,0 +1,10 @@
1
+ import { FunctionComponent } from 'preact';
2
+ import { CompanyUserFormProps } from '../../types/companyForm.types';
3
+
4
+ /**
5
+ * CompanyUserForm component for creating and editing company users
6
+ * Provides form fields for user information including name, email, role, and status
7
+ */
8
+ export declare const CompanyUserForm: FunctionComponent<CompanyUserFormProps>;
9
+ export default CompanyUserForm;
10
+ //# sourceMappingURL=CompanyUserForm.d.ts.map
@@ -0,0 +1,18 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './CompanyUserForm';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,29 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export type FilterType = 'all' | 'active' | 'inactive';
18
+ export interface CompanyUsersFiltersProps {
19
+ filterType: FilterType;
20
+ onFilterChange: (filter: FilterType) => void;
21
+ translations: {
22
+ showAllUsers: string;
23
+ showActiveUsers: string;
24
+ showInactiveUsers: string;
25
+ ariaFilterOptions: string;
26
+ };
27
+ }
28
+ export declare const CompanyUsersFilters: ({ filterType, onFilterChange, translations }: CompanyUsersFiltersProps) => import("preact").JSX.Element;
29
+ //# sourceMappingURL=CompanyUsersFilters.d.ts.map
@@ -0,0 +1,18 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './CompanyUsersFilters';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,18 @@
1
+ import { FunctionComponent } from 'preact';
2
+ import { HTMLAttributes } from 'preact/compat';
3
+ import { CompanyUserStatus } from '../../types';
4
+
5
+ export interface CompanyUsersManagementModalProps extends Omit<HTMLAttributes<HTMLDivElement>, 'onClose'> {
6
+ /** The ID of the user to manage */
7
+ userId: string;
8
+ /** The current status of the user */
9
+ userStatus: CompanyUserStatus;
10
+ /** Callback function called when the modal should be closed */
11
+ onClose: () => void;
12
+ /** Whether the modal is currently open */
13
+ isOpen?: boolean;
14
+ /** Callback for success messages */
15
+ onSuccess?: (message: string) => void;
16
+ }
17
+ export declare const CompanyUsersManagementModal: FunctionComponent<CompanyUsersManagementModalProps>;
18
+ //# sourceMappingURL=CompanyUsersManagementModal.d.ts.map
@@ -0,0 +1,19 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './CompanyUsersManagementModal';
18
+ export { CompanyUsersManagementModal as default } from './CompanyUsersManagementModal';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,9 @@
1
+ import { FunctionComponent } from 'preact';
2
+ import { CustomerCompanyInfoCardProps } from '../../types';
3
+
4
+ /**
5
+ * Component for displaying customer company information in a card format
6
+ * Shows company name, job title, and work phone number with loading states
7
+ */
8
+ export declare const CustomerCompanyInfoCard: FunctionComponent<CustomerCompanyInfoCardProps>;
9
+ //# sourceMappingURL=CustomerCompanyInfoCard.d.ts.map
@@ -0,0 +1,18 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export { CustomerCompanyInfoCard } from './CustomerCompanyInfoCard';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,9 @@
1
+
2
+ export interface DeleteRoleModalProps {
3
+ isOpen: boolean;
4
+ hasUsers?: boolean;
5
+ onConfirm: () => void;
6
+ onCancel: () => void;
7
+ }
8
+ export declare const DeleteRoleModal: ({ isOpen, hasUsers, onConfirm, onCancel, }: DeleteRoleModalProps) => import("preact").JSX.Element | null;
9
+ //# sourceMappingURL=DeleteRoleModal.d.ts.map
@@ -0,0 +1,19 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export { DeleteRoleModal } from './DeleteRoleModal';
18
+ export type { DeleteRoleModalProps } from './DeleteRoleModal';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -11,8 +11,7 @@ interface CompanyAccountFieldsProps {
11
11
  };
12
12
  errors: Record<string, string>;
13
13
  touched: Record<string, boolean>;
14
- onChange: (field: string) => (value: string) => void;
15
- onBlur: (field: string) => void;
14
+ onBlur: (field: string, value?: string) => void;
16
15
  /** Optional input name prefix for DOM names (defaults to none) */
17
16
  namePrefix?: string;
18
17
  /** Optional field path prefix used for change/blur handlers (defaults to none) */
@@ -16,7 +16,7 @@ interface LegalAddressFieldsProps {
16
16
  errors: Record<string, string>;
17
17
  touched: Record<string, boolean>;
18
18
  onChange: (field: string) => (value: string) => void;
19
- onBlur: (field: string) => void;
19
+ onBlur: (field: string, value?: string) => void;
20
20
  countryOptions: {
21
21
  text: string;
22
22
  value: string;
@@ -0,0 +1,24 @@
1
+ import { FunctionComponent } from 'preact';
2
+ import { CompanyRoleModel, CompanyAclResourceModel } from '../../data/models/company-role';
3
+
4
+ export interface EditRoleAndPermissionProps {
5
+ mode: 'create' | 'edit';
6
+ role?: CompanyRoleModel;
7
+ aclResources: CompanyAclResourceModel[];
8
+ existingRoleNames?: string[];
9
+ loading?: boolean;
10
+ onSubmit: (data: {
11
+ name: string;
12
+ permissions: string[];
13
+ }) => void;
14
+ onCancel: () => void;
15
+ inLineAlertProps?: {
16
+ type: 'success' | 'error' | 'warning';
17
+ text: string;
18
+ icon?: string;
19
+ };
20
+ prefillName?: string;
21
+ prefillPermissions?: CompanyAclResourceModel[] | any[];
22
+ }
23
+ export declare const EditRoleAndPermission: FunctionComponent<EditRoleAndPermissionProps>;
24
+ //# sourceMappingURL=EditRoleAndPermission.d.ts.map
@@ -0,0 +1,19 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export { EditRoleAndPermission } from './EditRoleAndPermission';
18
+ export type { EditRoleAndPermissionProps } from './EditRoleAndPermission';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,23 @@
1
+ import { FunctionComponent } from 'preact';
2
+ import { HTMLAttributes } from 'preact/compat';
3
+ import { CompanyRoleModel } from '../../data/models/company-role';
4
+
5
+ export interface RoleAndPermissionTableProps extends HTMLAttributes<HTMLDivElement> {
6
+ roles: CompanyRoleModel[];
7
+ isLoading: boolean;
8
+ canManageRoles?: boolean;
9
+ onShowCreateForm: () => void;
10
+ onShowEditForm: (roleId: string) => void;
11
+ onDuplicateRole?: (roleId: string) => void;
12
+ onDeleteRole?: (roleId: string) => void;
13
+ totalCount?: number;
14
+ currentPage?: number;
15
+ pageSize?: number;
16
+ onPageChange?: (page: number) => void;
17
+ onPageSizeChange?: (pageSize: number) => void;
18
+ onSortChange?: (columnKey: string, direction: 'asc' | 'desc') => void;
19
+ sortColumn?: string;
20
+ sortDirection?: 'asc' | 'desc';
21
+ }
22
+ export declare const RoleAndPermissionTable: FunctionComponent<RoleAndPermissionTableProps>;
23
+ //# sourceMappingURL=RoleAndPermissionTable.d.ts.map
@@ -0,0 +1,19 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export { RoleAndPermissionTable } from './RoleAndPermissionTable';
18
+ export type { RoleAndPermissionTableProps } from './RoleAndPermissionTable';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,62 @@
1
+ import { FunctionComponent } from 'preact';
2
+
3
+ export interface TreeItem {
4
+ id: string;
5
+ parentId?: string | null;
6
+ label: string;
7
+ }
8
+ export interface RenderNodeArgs {
9
+ item: TreeItem;
10
+ level: number;
11
+ expanded: boolean;
12
+ selected: boolean;
13
+ hasChildren: boolean;
14
+ toggle: () => void;
15
+ select: () => void;
16
+ expander?: () => any;
17
+ checkbox?: () => any;
18
+ icon?: () => any;
19
+ }
20
+ export interface TreeProps {
21
+ items: TreeItem[];
22
+ rootId?: string | null;
23
+ className?: string;
24
+ expandedIds: Set<string>;
25
+ selectedId?: string | null;
26
+ selectedIds?: Set<string>;
27
+ onExpandedChange: (next: Set<string>) => void;
28
+ onSelectedChange?: (id: string | null) => void;
29
+ onSelectedIdsChange?: (ids: Set<string>) => void;
30
+ renderNode: (args: RenderNodeArgs) => any;
31
+ role?: 'tree' | 'list' | 'grid';
32
+ preserveOrder?: boolean;
33
+ draggable?: (item: TreeItem) => boolean;
34
+ canDrop?: (dragId: string, targetId: string) => boolean;
35
+ onMove?: (args: {
36
+ id: string;
37
+ newParentId: string;
38
+ }) => void;
39
+ isCheckable?: (item: TreeItem) => boolean;
40
+ checkedIds?: Set<string>;
41
+ onCheckedChange?: (next: Set<string>) => void;
42
+ biDirectionalChecking?: boolean;
43
+ renderExpander?: (args: {
44
+ expanded: boolean;
45
+ hasChildren: boolean;
46
+ toggle: () => void;
47
+ }) => any;
48
+ renderCheckbox?: (args: {
49
+ checked: boolean;
50
+ indeterminate: boolean;
51
+ onCheck: () => void;
52
+ }) => any;
53
+ renderIcon?: (args: {
54
+ item: TreeItem;
55
+ level: number;
56
+ hasChildren: boolean;
57
+ expanded: boolean;
58
+ }) => any;
59
+ }
60
+ export declare const Tree: FunctionComponent<TreeProps>;
61
+ export default Tree;
62
+ //# sourceMappingURL=Tree.d.ts.map
@@ -0,0 +1,18 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './Tree';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -16,5 +16,20 @@
16
16
  *******************************************************************/
17
17
  export * from './CompanyLoaders';
18
18
  export * from './CompanyProfileCard';
19
+ export * from './CompanyStructureCard';
20
+ export * from './CompanyTeamForm';
21
+ export * from './CompanyUserForm';
22
+ export * from './CompanyUsersFilters';
23
+ export * from './CompanyUsersManagementModal';
24
+ export * from './DeleteRoleModal';
19
25
  export * from './EditCompanyProfile';
26
+ export * from './CustomerCompanyInfoCard';
27
+ export * from './Tree';
28
+ export * from './CompanyStructureEmpty';
29
+ export * from './CompanyRegistrationForm';
30
+ export * from './CompanyRegistrationSuccess';
31
+ export * from './CompanyCreditDisplay';
32
+ export * from './CompanyCreditHistoryDisplay';
33
+ export * from './EditRoleAndPermission';
34
+ export * from './RoleAndPermissionTable';
20
35
  //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,16 @@
1
+ import { HTMLAttributes } from 'preact/compat';
2
+ import { Container } from '@dropins/tools/types/elsie/src/lib';
3
+ import { GetCompanyCreditHistoryParams } from '../../types/api/getCompanyCreditHistoryParams.types';
4
+
5
+ export interface CompanyCreditProps extends HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Optional parameters for credit history filtering and pagination
8
+ */
9
+ creditHistoryParams?: GetCompanyCreditHistoryParams;
10
+ /**
11
+ * Whether to show the credit history section
12
+ */
13
+ showCreditHistory?: boolean;
14
+ }
15
+ export declare const CompanyCredit: Container<CompanyCreditProps>;
16
+ //# sourceMappingURL=CompanyCredit.d.ts.map
@@ -0,0 +1,19 @@
1
+ /********************************************************************
2
+ * ADOBE CONFIDENTIAL
3
+ * __________________
4
+ *
5
+ * Copyright 2025 Adobe
6
+ * All Rights Reserved.
7
+ *
8
+ * NOTICE: All information contained herein is, and remains
9
+ * the property of Adobe and its suppliers, if any. The intellectual
10
+ * and technical concepts contained herein are proprietary to Adobe
11
+ * and its suppliers and are protected by all applicable intellectual
12
+ * property laws, including trade secret and copyright laws.
13
+ * Dissemination of this information or reproduction of this material
14
+ * is strictly forbidden unless prior written permission is obtained
15
+ * from Adobe.
16
+ *******************************************************************/
17
+ export * from './CompanyCredit';
18
+ export { CompanyCredit as default } from './CompanyCredit';
19
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ export * from './CompanyCredit/index'
2
+ import _default from './CompanyCredit/index'
3
+ export default _default
@@ -0,0 +1,4 @@
1
+ /*! Copyright 2025 Adobe
2
+ All Rights Reserved. */
3
+ import{jsx as e,jsxs as v,Fragment as M}from"@dropins/tools/preact-jsx-runtime.js";import{useState as h,useRef as T,useMemo as k,useCallback as D,useEffect as R}from"@dropins/tools/preact-hooks.js";/* empty css */import{Card as I,InLineAlert as w,Price as B,Table as U,Button as _,Picker as Z}from"@dropins/tools/components.js";import{events as G}from"@dropins/tools/event-bus.js";import{g as $,a as q}from"../chunks/getCompanyCreditHistory.js";import{d as J,e as K}from"../chunks/CompanyLoaders.js";import{useText as j}from"@dropins/tools/i18n.js";import{classes as Q}from"@dropins/tools/lib.js";import"../chunks/network-error.js";import"@dropins/tools/fetch-graphql.js";const V=20,F=1,W=({initialParams:l={},translations:c})=>{const[s,a]=h([]),[m,p]=h(!1),[t,d]=h(l.currentPage||F),[u,r]=h(l.pageSize||V),[S,C]=h(0),[g,H]=h(1),[N,b]=h(""),f=T(c);f.current=c;const x=T(l),z=k(()=>({...x.current,currentPage:t,pageSize:u}),[t,u]),P=D(async()=>{var o;p(!0);try{const y=await $(z);y?(a(y.items),C(y.totalCount||y.items.length),H(((o=y.pageInfo)==null?void 0:o.totalPages)||1),b(f.current.ariaDataLoaded.replace("{count}",y.items.length.toString()))):(a([]),C(0),H(1),b(f.current.ariaDataLoaded.replace("{count}","0")))}catch(y){console.error("Failed to load company credit history:",y),a([]),C(0),H(1),b(f.current.ariaDataError)}finally{p(!1)}},[z]);R(()=>{P()},[P]);const E=D(o=>{let y;if(typeof o=="string")y=o;else if("target"in o&&o.target&&"value"in o.target)y=o.target.value;else return;const A=parseInt(y,10);isNaN(A)||(r(A),d(F))},[]),n=D(()=>{t>1&&d(t-1)},[t]),i=D(()=>{t<g&&d(t+1)},[t,g]),L=D(o=>{o>=1&&o<=g&&o!==t&&d(o)},[t,g]),O=D(async()=>{await P()},[P]);return{items:s,currentPage:t,pageSize:u,totalItems:S,totalPages:g,loading:m,announcement:N,handlePageSizeChange:E,handlePreviousPage:n,handleNextPage:i,handlePageChange:L,refreshCreditHistory:O}},X=({className:l,...c})=>{var g,H,N,b,f,x,z,P,E;const s=j({creditAvailable:"Company.CompanyCredit.creditAvailable",creditLimit:"Company.CompanyCredit.creditLimit",outstandingBalance:"Company.CompanyCredit.outstandingBalance",noData:"Company.shared.messages.noData",loading:"Company.shared.messages.loading",loadError:"Company.CompanyCredit.messages.loadError"}),[a,m]=h(null),[p,t]=h(!1),[d,u]=h(null),r=T(!1),S=T(!1),C=D(async()=>{if(!r.current){r.current=!0,t(!0),u(null);try{const n=await q();m(n)}catch(n){console.error("Failed to load company credit:",n),u(s.loadError),m(null)}finally{t(!1),r.current=!1}}},[s.loadError]);return R(()=>{S.current||(S.current=!0,C())},[C]),R(()=>{const n=()=>{m(null),S.current=!1,C()},i=G.on("companyContext/changed",n,{eager:!0});return()=>{var L;(L=i==null?void 0:i.off)==null||L.call(i)}},[C]),p?e("div",{...c,className:l,children:e(I,{variant:"primary",className:"company-management-company-credit-loading",children:e(J,{testId:"companyCreditLoader"})})}):d?e("div",{...c,className:l,children:e(w,{heading:d,type:"error",icon:void 0,variant:"primary",className:"company-management-company-credit-error",children:e("p",{children:d})})}):e("div",{...c,className:l,children:a===null||!a.credit?e(w,{heading:s.noData,type:"error",icon:void 0,variant:"primary",className:"company-management-company-credit-error",children:e("p",{children:s.noData})}):v("div",{className:"company-management-company-credit-grid",children:[e(I,{variant:"secondary",className:"company-management-company-credit-outstanding-balance",children:v("p",{children:[s.outstandingBalance,e("br",{}),e(B,{size:"large",amount:((g=a.credit.outstanding_balance)==null?void 0:g.value)??0,currency:((H=a.credit.outstanding_balance)==null?void 0:H.currency)??"",className:(((N=a.credit.outstanding_balance)==null?void 0:N.value)??0)<0?"company-management-company-credit-negative":void 0})]})}),e(I,{variant:"secondary",className:"company-management-company-credit-available-credit",children:v("p",{children:[s.creditAvailable,e("br",{}),e(B,{size:"large",amount:((b=a.credit.available_credit)==null?void 0:b.value)??0,currency:((f=a.credit.available_credit)==null?void 0:f.currency)??"",className:(((x=a.credit.available_credit)==null?void 0:x.value)??0)<0?"company-management-company-credit-negative":void 0})]})}),e(I,{variant:"secondary",className:"company-management-company-credit-credit-limit",children:v("p",{children:[s.creditLimit,e("br",{}),e(B,{size:"large",amount:((z=a.credit.credit_limit)==null?void 0:z.value)??0,currency:((P=a.credit.credit_limit)==null?void 0:P.currency)??"",className:(((E=a.credit.credit_limit)==null?void 0:E.value)??0)<0?".company-management-company-credit-grid .company-management-company-credit-negative":void 0})]})})]})})},Y=[{text:"20",value:"20"},{text:"30",value:"30"},{text:"50",value:"50"},{text:"100",value:"100"},{text:"200",value:"200"}],aa=l=>l.split("_").map(c=>c.charAt(0).toUpperCase()+c.slice(1).toLowerCase()).join(" "),ea=({className:l,initialParams:c={},...s})=>{const a=j({noData:"Company.shared.messages.noData",dateColumn:"Company.CompanyCreditHistory.columns.date",operationColumn:"Company.CompanyCreditHistory.columns.operation",amountColumn:"Company.CompanyCreditHistory.columns.amount",outstandingBalanceColumn:"Company.CompanyCreditHistory.columns.outstandingBalance",availableCreditColumn:"Company.CompanyCreditHistory.columns.availableCredit",creditLimitColumn:"Company.CompanyCreditHistory.columns.creditLimit",customReferenceColumn:"Company.CompanyCreditHistory.columns.customReference",updatedByColumn:"Company.CompanyCreditHistory.columns.updatedBy",itemsRangeText:"Company.CompanyCreditHistory.pagination.itemsRange",itemsPerPageLabel:"Company.CompanyCreditHistory.pagination.itemsPerPage",showLabel:"Company.CompanyCreditHistory.pagination.show",perPageLabel:"Company.CompanyCreditHistory.pagination.perPage",ariaDataLoaded:"Company.CompanyCreditHistory.ariaLabels.dataLoaded",ariaDataError:"Company.CompanyCreditHistory.ariaLabels.dataError",ariaLoadingHistory:"Company.CompanyCreditHistory.ariaLabels.loadingHistory",ariaHistoryTable:"Company.CompanyCreditHistory.ariaLabels.historyTable",ariaPaginationNav:"Company.CompanyCreditHistory.ariaLabels.paginationNav",ariaPageSizeSelector:"Company.CompanyCreditHistory.ariaLabels.pageSizeSelector",ariaPreviousPage:"Company.CompanyCreditHistory.ariaLabels.previousPage",ariaNextPage:"Company.CompanyCreditHistory.ariaLabels.nextPage",ariaGoToPage:"Company.CompanyCreditHistory.ariaLabels.goToPage",ariaCurrentPage:"Company.CompanyCreditHistory.ariaLabels.currentPage",ariaShowingHistory:"Company.CompanyCreditHistory.ariaLabels.showingHistory",ariaPageNavigation:"Company.CompanyCreditHistory.ariaLabels.pageNavigation"}),{items:m,loading:p,currentPage:t,pageSize:d,totalItems:u,totalPages:r,announcement:S,handlePageSizeChange:C,handlePreviousPage:g,handleNextPage:H,handlePageChange:N,refreshCreditHistory:b}=W({initialParams:c,translations:{ariaDataLoaded:a.ariaDataLoaded,ariaDataError:a.ariaDataError}}),f=u===0?0:(t-1)*d+1,x=Math.min(t*d,u),z=()=>{if(r<=5)return Array.from({length:r},(i,L)=>L+1);const n=[];return t<=3?n.push(1,2,3,4,"...",r):t>=r-2?n.push(1,"...",r-3,r-2,r-1,r):n.push(1,"...",t-1,t,t+1,"...",r),n};R(()=>{const n=()=>{b()},i=G.on("companyContext/changed",n,{eager:!0});return()=>{var L;(L=i==null?void 0:i.off)==null||L.call(i)}},[b]);const P=k(()=>[{key:"date",label:a.dateColumn},{key:"operation",label:a.operationColumn},{key:"amount",label:a.amountColumn},{key:"outstandingBalance",label:a.outstandingBalanceColumn},{key:"availableCredit",label:a.availableCreditColumn},{key:"creditLimit",label:a.creditLimitColumn},{key:"customReference",label:a.customReferenceColumn},{key:"updatedBy",label:a.updatedByColumn}],[a.dateColumn,a.operationColumn,a.amountColumn,a.outstandingBalanceColumn,a.availableCreditColumn,a.creditLimitColumn,a.customReferenceColumn,a.updatedByColumn]),E=k(()=>m.map(n=>({date:new Date(n.date).toLocaleDateString(),operation:aa(n.type),amount:n.amount.value===0?"":e("span",{children:e(B,{amount:n.amount.value,currency:n.amount.currency,size:"small",className:"company-management-price-normal"})}),outstandingBalance:e(B,{amount:n.balance.outstandingBalance.value,currency:n.balance.outstandingBalance.currency,size:"small",className:"company-management-price-normal"}),availableCredit:e(B,{amount:n.balance.availableCredit.value,currency:n.balance.availableCredit.currency,size:"small",className:"company-management-price-normal"}),creditLimit:e(B,{amount:n.balance.creditLimit.value,currency:n.balance.creditLimit.currency,size:"small",className:"company-management-price-normal"}),customReference:n.customReferenceNumber||"",updatedBy:n.updatedBy.name})),[m]);return v("section",{...s,className:Q(["company-management-company-credit-history-display",l]),children:[e("div",{className:"sr-only",role:"status","aria-live":"polite","aria-atomic":"true",children:S}),e("div",{"aria-busy":p,children:p?e("div",{className:"loadingContainer",role:"status","aria-live":"polite",children:e(K,{testId:"companyCreditHistoryLoader"})}):v(M,{children:[e(U,{className:"company-management-company-credit-history-table",columns:P,rowData:E,mobileLayout:"stacked","aria-label":a.ariaHistoryTable,summary:a.ariaShowingHistory.replace("{count}",m.length.toString())}),!m.length&&e(w,{type:"warning",heading:a.noData,className:"company-management-company-credit-history-no-data-alert"})]})}),!p&&m.length>0&&v("nav",{"aria-label":a.ariaPaginationNav,className:"paginationContainer",children:[e("div",{"aria-live":"polite","aria-atomic":"true",children:a.itemsRangeText.replace("{start}",f.toString()).replace("{end}",x.toString()).replace("{total}",u.toString())}),r>1&&v("div",{className:"paginationButtons",role:"group","aria-label":a.ariaPageNavigation,children:[e(_,{variant:"secondary",onClick:g,disabled:t===1||p,"aria-label":a.ariaPreviousPage,className:"paginationButton",children:"<"}),z().map((n,i)=>n==="..."?e("span",{className:"paginationEllipsis",children:"..."},`ellipsis-${i}`):e(_,{variant:t===n?"primary":"secondary",onClick:()=>N==null?void 0:N(n),disabled:p,"aria-label":t===n?a.ariaCurrentPage.replace("{page}",String(n)):a.ariaGoToPage.replace("{page}",String(n)),"aria-current":t===n?"page":void 0,className:"paginationButton",children:n},n)),e(_,{variant:"secondary",onClick:H,disabled:t===r||p,"aria-label":a.ariaNextPage,className:"paginationButton",children:">"})]}),v("div",{className:"pageSizeSelector",children:[e("label",{htmlFor:"page-size-select",id:"page-size-label",children:e("span",{children:a.showLabel})}),e(Z,{id:"page-size-select",name:"pageSize",value:d.toString(),options:Y,handleSelect:C,"aria-labelledby":"page-size-label","aria-describedby":"page-size-description"}),e("span",{id:"page-size-description",children:a.perPageLabel})]})]})]})},pa=({creditHistoryParams:l={},showCreditHistory:c=!0,className:s,children:a,...m})=>v("section",{...m,className:s,children:[e(X,{}),c&&e(ea,{initialParams:l,style:{marginTop:"24px"}}),a]});export{pa as CompanyCredit,pa as default};
4
+ //# sourceMappingURL=CompanyCredit.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CompanyCredit.js","sources":["/@dropins/storefront-company-management/src/hooks/containers/useCompanyCreditHistory.tsx","/@dropins/storefront-company-management/src/components/CompanyCreditDisplay/CompanyCreditDisplay.tsx","/@dropins/storefront-company-management/src/components/CompanyCreditHistoryDisplay/CompanyCreditHistoryDisplay.tsx","/@dropins/storefront-company-management/src/containers/CompanyCredit/CompanyCredit.tsx"],"sourcesContent":["/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n\nimport { useEffect, useState, useCallback, useRef, useMemo } from 'preact/hooks';\nimport { getCompanyCreditHistory } from '@/company-management/api';\nimport { CompanyCreditHistoryItem } from '@/company-management/data/models';\nimport { GetCompanyCreditHistoryParams } from '@/company-management/types/api/getCompanyCreditHistoryParams.types';\n\n// Constants\nconst DEFAULT_PAGE_SIZE = 20;\nconst FIRST_PAGE = 1;\n\nexport interface UseCompanyCreditHistoryProps {\n /** Initial parameters for the credit history query */\n initialParams?: GetCompanyCreditHistoryParams;\n /** Translations for accessibility announcements */\n translations: {\n ariaDataLoaded: string;\n ariaDataError: string;\n };\n}\n\nexport interface UseCompanyCreditHistoryReturn {\n // Core data\n items: CompanyCreditHistoryItem[];\n \n // Pagination state\n currentPage: number;\n pageSize: number;\n totalItems: number;\n totalPages: number;\n \n // Loading states\n loading: boolean;\n \n // UI state\n announcement: string;\n \n // Actions\n handlePageSizeChange: (event: Event | { target?: { value: string } } | string) => void;\n handlePreviousPage: () => void;\n handleNextPage: () => void;\n handlePageChange: (page: number) => void;\n refreshCreditHistory: () => Promise<void>;\n}\n\nexport const useCompanyCreditHistory = ({ \n initialParams = {}, \n translations \n}: UseCompanyCreditHistoryProps): UseCompanyCreditHistoryReturn => {\n const [items, setItems] = useState<CompanyCreditHistoryItem[]>([]);\n const [loading, setLoading] = useState(false);\n const [currentPage, setCurrentPage] = useState(initialParams.currentPage || FIRST_PAGE);\n const [pageSize, setPageSize] = useState(initialParams.pageSize || DEFAULT_PAGE_SIZE);\n const [totalItems, setTotalItems] = useState(0);\n const [totalPages, setTotalPages] = useState(1);\n const [announcement, setAnnouncement] = useState('');\n\n // Stable reference to translations to prevent unnecessary re-renders\n const translationsRef = useRef(translations);\n translationsRef.current = translations;\n\n // Keep track of initial params\n const initialParamsRef = useRef(initialParams);\n\n // Memoized params for API call\n const apiParams = useMemo((): GetCompanyCreditHistoryParams => ({\n ...initialParamsRef.current,\n currentPage,\n pageSize,\n }), [currentPage, pageSize]);\n\n // Fetch credit history data\n const fetchCreditHistory = useCallback(async () => {\n setLoading(true);\n try {\n const response = await getCompanyCreditHistory(apiParams);\n \n if (response) {\n // Batch state updates for better performance\n setItems(response.items);\n setTotalItems(response.totalCount || response.items.length);\n setTotalPages(response.pageInfo?.totalPages || 1);\n setAnnouncement(\n translationsRef.current.ariaDataLoaded.replace(\n '{count}', \n response.items.length.toString()\n )\n );\n } else {\n // Handle null response (treat as no data, not error)\n setItems([]);\n setTotalItems(0);\n setTotalPages(1);\n setAnnouncement(\n translationsRef.current.ariaDataLoaded.replace('{count}', '0')\n );\n }\n } catch (error) {\n console.error('Failed to load company credit history:', error);\n // Batch error state updates\n setItems([]);\n setTotalItems(0);\n setTotalPages(1);\n setAnnouncement(translationsRef.current.ariaDataError);\n } finally {\n setLoading(false);\n }\n }, [apiParams]);\n\n // Fetch credit history when dependencies change\n useEffect(() => {\n fetchCreditHistory();\n }, [fetchCreditHistory]);\n\n // Handle page size change\n const handlePageSizeChange = useCallback((event: Event | { target?: { value: string } } | string) => {\n let value: string;\n if (typeof event === 'string') {\n value = event;\n } else if ('target' in event && event.target && 'value' in event.target) {\n value = event.target.value;\n } else {\n return;\n }\n const newSize = parseInt(value, 10);\n if (!isNaN(newSize)) {\n setPageSize(newSize);\n setCurrentPage(FIRST_PAGE); // Reset to first page when page size changes\n }\n }, []);\n\n // Handle page navigation\n const handlePreviousPage = useCallback(() => {\n if (currentPage > 1) {\n setCurrentPage(currentPage - 1);\n }\n }, [currentPage]);\n\n const handleNextPage = useCallback(() => {\n if (currentPage < totalPages) {\n setCurrentPage(currentPage + 1);\n }\n }, [currentPage, totalPages]);\n\n // Handle direct page change (for pagination buttons like First, Last)\n const handlePageChange = useCallback((page: number) => {\n if (page >= 1 && page <= totalPages && page !== currentPage) {\n setCurrentPage(page);\n }\n }, [currentPage, totalPages]);\n\n // Expose refresh function for external use (e.g., after company context changes)\n const refreshCreditHistory = useCallback(async () => {\n await fetchCreditHistory();\n }, [fetchCreditHistory]);\n\n return {\n // Core data\n items,\n \n // Pagination state\n currentPage,\n pageSize,\n totalItems,\n totalPages,\n \n // Loading states\n loading,\n \n // UI state\n announcement,\n \n // Actions\n handlePageSizeChange,\n handlePreviousPage,\n handleNextPage,\n handlePageChange,\n refreshCreditHistory,\n };\n};","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n \nimport { FunctionComponent } from 'preact';\nimport { HTMLAttributes } from 'preact/compat';\nimport { useCallback, useEffect, useRef, useState } from 'preact/hooks';\nimport '@/company-management/components/CompanyCreditDisplay/CompanyCreditDisplay.css';\nimport { Card, InLineAlert, Price } from '@adobe-commerce/elsie/components';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\nimport { CompanyCreditInfo } from '@/company-management/data/models';\nimport { getCompanyCredit } from '@/company-management/api/getCompanyCredit';\nimport { CompanyCreditLoader } from '@/company-management/components/CompanyLoaders';\n\nexport interface CompanyCreditDisplayProps extends HTMLAttributes<HTMLDivElement> {\n // No props needed - component manages its own data\n}\n\nexport const CompanyCreditDisplay: FunctionComponent<CompanyCreditDisplayProps> = ({\n className,\n ...props\n}) => {\n const translations = useText({\n creditAvailable: 'Company.CompanyCredit.creditAvailable',\n creditLimit: 'Company.CompanyCredit.creditLimit',\n outstandingBalance: 'Company.CompanyCredit.outstandingBalance',\n noData: 'Company.shared.messages.noData',\n loading: 'Company.shared.messages.loading',\n loadError: 'Company.CompanyCredit.messages.loadError',\n });\n\n const [companyCreditData, setCompanyCreditData] = useState<CompanyCreditInfo | null>(null);\n const [loading, setLoading] = useState(false);\n const [error, setError] = useState<string | null>(null);\n \n // Keep stable references to avoid re-creating callbacks/effects\n const inFlightRef = useRef<boolean>(false);\n const didInitialFetchRef = useRef<boolean>(false);\n\n const fetchCompanyCredit = useCallback(async () => {\n if (inFlightRef.current) {\n return;\n }\n inFlightRef.current = true;\n setLoading(true);\n setError(null);\n \n try {\n const companyCreditInfo: CompanyCreditInfo | null = await getCompanyCredit();\n setCompanyCreditData(companyCreditInfo);\n } catch (error) {\n console.error('Failed to load company credit:', error);\n setError(translations.loadError);\n setCompanyCreditData(null);\n } finally {\n setLoading(false);\n inFlightRef.current = false;\n }\n }, [translations.loadError]);\n\n // Initial data fetch\n useEffect(() => {\n if (!didInitialFetchRef.current) {\n didInitialFetchRef.current = true;\n fetchCompanyCredit();\n }\n }, [fetchCompanyCredit]);\n\n // Listen to company context changes\n useEffect(() => {\n const handleCompanyContextChange = () => {\n setCompanyCreditData(null);\n didInitialFetchRef.current = false; // Allow re-fetch on context change\n fetchCompanyCredit();\n };\n\n // Use the same event pattern as other company components\n const subscription = events.on(\n 'companyContext/changed',\n handleCompanyContextChange,\n { eager: true }\n );\n \n return () => {\n subscription?.off?.();\n };\n }, [fetchCompanyCredit]);\n\n if (loading) {\n return (\n <div {...props} className={className}>\n <Card\n variant=\"primary\"\n className=\"company-management-company-credit-loading\"\n >\n <CompanyCreditLoader testId=\"companyCreditLoader\"/>\n </Card>\n </div>\n );\n }\n\n if (error) {\n return (\n <div {...props} className={className}>\n <InLineAlert\n heading={error}\n type=\"error\"\n icon={undefined}\n variant=\"primary\"\n className=\"company-management-company-credit-error\"\n >\n <p>{error}</p>\n </InLineAlert>\n </div>\n );\n }\n return (\n <div {...props} className={className}>\n {companyCreditData === null || !companyCreditData.credit ? (\n <InLineAlert\n heading={translations.noData}\n type=\"error\"\n icon={undefined}\n variant=\"primary\"\n className=\"company-management-company-credit-error\"\n >\n <p>{translations.noData}</p>\n </InLineAlert>\n ) : (\n <div className=\"company-management-company-credit-grid\">\n <Card\n variant=\"secondary\"\n className=\"company-management-company-credit-outstanding-balance\"\n >\n <p>{translations.outstandingBalance}<br/>\n <Price \n size='large'\n amount={companyCreditData.credit.outstanding_balance?.value ?? 0} \n currency={companyCreditData.credit.outstanding_balance?.currency ?? ''} \n className={(companyCreditData.credit.outstanding_balance?.value ?? 0) < 0 ? 'company-management-company-credit-negative' : undefined}\n /></p>\n </Card>\n <Card\n variant=\"secondary\"\n className=\"company-management-company-credit-available-credit\"\n >\n <p>{translations.creditAvailable}<br/>\n <Price\n size='large'\n amount={companyCreditData.credit.available_credit?.value ?? 0} \n currency={companyCreditData.credit.available_credit?.currency ?? ''} \n className={(companyCreditData.credit.available_credit?.value ?? 0) < 0 ? 'company-management-company-credit-negative' : undefined}\n /></p>\n </Card>\n <Card\n variant=\"secondary\"\n className=\"company-management-company-credit-credit-limit\"\n >\n <p>{translations.creditLimit}<br/>\n <Price \n size='large'\n amount={companyCreditData.credit.credit_limit?.value ?? 0} \n currency={companyCreditData.credit.credit_limit?.currency ?? ''} \n className={(companyCreditData.credit.credit_limit?.value ?? 0) < 0 ? '.company-management-company-credit-grid .company-management-company-credit-negative' : undefined}\n /></p>\n </Card>\n </div>\n )}\n </div>\n );\n};\n","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n \nimport { FunctionComponent } from 'preact';\nimport { useMemo, useEffect } from 'preact/hooks';\nimport { HTMLAttributes } from 'preact/compat';\nimport { classes } from '@adobe-commerce/elsie/lib';\nimport { Button, InLineAlert, Picker, Price, Table } from '@adobe-commerce/elsie/components';\nimport { useText } from '@adobe-commerce/elsie/i18n';\nimport { events } from '@adobe-commerce/event-bus';\nimport { CompanyCreditHistoryLoader } from '@/company-management/components/CompanyLoaders';\nimport { useCompanyCreditHistory } from '@/company-management/hooks/containers';\nimport './CompanyCreditHistoryDisplay.css';\n\nexport interface CompanyCreditHistoryDisplayProps extends Omit<HTMLAttributes<HTMLDivElement>, 'loading'> {\n /**\n * Optional initial parameters for credit history filtering and pagination\n */\n initialParams?: {\n pageSize?: number;\n currentPage?: number;\n filter?: any;\n };\n}\n\n// Constants\nconst PAGE_SIZE_OPTIONS = [\n { text: '20', value: '20' },\n { text: '30', value: '30' },\n { text: '50', value: '50' },\n { text: '100', value: '100' },\n { text: '200', value: '200' }\n];\n\n/**\n * Converts operation type from SCREAMING_SNAKE_CASE to Title Case\n * @param operationType - The operation type string (e.g., \"CREDIT_ADJUSTMENT\", \"PURCHASE\")\n * @returns Formatted string in title case (e.g., \"Credit Adjustment\", \"Purchase\")\n */\nconst formatOperationType = (operationType: string): string => {\n return operationType\n .split('_')\n .map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())\n .join(' ');\n};\n\nexport const CompanyCreditHistoryDisplay: FunctionComponent<CompanyCreditHistoryDisplayProps> = ({\n className,\n initialParams = {},\n ...props\n}) => {\n const translations = useText({\n noData: 'Company.shared.messages.noData',\n // Table columns\n dateColumn: 'Company.CompanyCreditHistory.columns.date',\n operationColumn: 'Company.CompanyCreditHistory.columns.operation',\n amountColumn: 'Company.CompanyCreditHistory.columns.amount', \n outstandingBalanceColumn: 'Company.CompanyCreditHistory.columns.outstandingBalance',\n availableCreditColumn: 'Company.CompanyCreditHistory.columns.availableCredit',\n creditLimitColumn: 'Company.CompanyCreditHistory.columns.creditLimit',\n customReferenceColumn: 'Company.CompanyCreditHistory.columns.customReference',\n updatedByColumn: 'Company.CompanyCreditHistory.columns.updatedBy',\n // Pagination\n itemsRangeText: 'Company.CompanyCreditHistory.pagination.itemsRange',\n itemsPerPageLabel: 'Company.CompanyCreditHistory.pagination.itemsPerPage',\n showLabel: 'Company.CompanyCreditHistory.pagination.show',\n perPageLabel: 'Company.CompanyCreditHistory.pagination.perPage',\n // Accessibility labels\n ariaDataLoaded: 'Company.CompanyCreditHistory.ariaLabels.dataLoaded',\n ariaDataError: 'Company.CompanyCreditHistory.ariaLabels.dataError',\n ariaLoadingHistory: 'Company.CompanyCreditHistory.ariaLabels.loadingHistory',\n ariaHistoryTable: 'Company.CompanyCreditHistory.ariaLabels.historyTable',\n ariaPaginationNav: 'Company.CompanyCreditHistory.ariaLabels.paginationNav',\n ariaPageSizeSelector: 'Company.CompanyCreditHistory.ariaLabels.pageSizeSelector',\n ariaPreviousPage: 'Company.CompanyCreditHistory.ariaLabels.previousPage',\n ariaNextPage: 'Company.CompanyCreditHistory.ariaLabels.nextPage',\n ariaGoToPage: 'Company.CompanyCreditHistory.ariaLabels.goToPage',\n ariaCurrentPage: 'Company.CompanyCreditHistory.ariaLabels.currentPage',\n ariaShowingHistory: 'Company.CompanyCreditHistory.ariaLabels.showingHistory',\n ariaPageNavigation: 'Company.CompanyCreditHistory.ariaLabels.pageNavigation',\n });\n\n // Use the credit history hook - component now manages its own data\n const {\n items,\n loading,\n currentPage,\n pageSize,\n totalItems,\n totalPages,\n announcement,\n handlePageSizeChange,\n handlePreviousPage,\n handleNextPage,\n handlePageChange,\n refreshCreditHistory,\n } = useCompanyCreditHistory({\n initialParams,\n translations: {\n ariaDataLoaded: translations.ariaDataLoaded,\n ariaDataError: translations.ariaDataError\n }\n });\n\n // Calculate item range for display\n const startItem = totalItems === 0 ? 0 : (currentPage - 1) * pageSize + 1;\n const endItem = Math.min(currentPage * pageSize, totalItems);\n\n // Generate page numbers to display\n const getPageNumbers = (): (number | string)[] => {\n if (totalPages <= 5) {\n return Array.from({ length: totalPages }, (_, i) => i + 1);\n }\n\n const pages: (number | string)[] = [];\n \n if (currentPage <= 3) {\n pages.push(1, 2, 3, 4, '...', totalPages);\n } else if (currentPage >= totalPages - 2) {\n pages.push(1, '...', totalPages - 3, totalPages - 2, totalPages - 1, totalPages);\n } else {\n pages.push(1, '...', currentPage - 1, currentPage, currentPage + 1, '...', totalPages);\n }\n\n return pages;\n };\n\n // Listen to company context changes\n useEffect(() => {\n const handleCompanyContextChange = () => {\n refreshCreditHistory();\n };\n\n const subscription = events.on(\n 'companyContext/changed',\n handleCompanyContextChange,\n { eager: true }\n );\n \n return () => {\n subscription?.off?.();\n };\n }, [refreshCreditHistory]);\n\n // Prepare table columns - memoized to prevent unnecessary re-renders\n const columns = useMemo(() => [\n { key: 'date', label: translations.dateColumn },\n { key: 'operation', label: translations.operationColumn },\n { key: 'amount', label: translations.amountColumn },\n { key: 'outstandingBalance', label: translations.outstandingBalanceColumn },\n { key: 'availableCredit', label: translations.availableCreditColumn },\n { key: 'creditLimit', label: translations.creditLimitColumn },\n { key: 'customReference', label: translations.customReferenceColumn },\n { key: 'updatedBy', label: translations.updatedByColumn }\n ], [\n translations.dateColumn,\n translations.operationColumn, \n translations.amountColumn,\n translations.outstandingBalanceColumn,\n translations.availableCreditColumn,\n translations.creditLimitColumn,\n translations.customReferenceColumn,\n translations.updatedByColumn\n ]);\n\n // Prepare table row data - memoized for performance\n const rowData = useMemo(() => items.map((item) => ({\n date: new Date(item.date).toLocaleDateString(),\n operation: formatOperationType(item.type),\n amount: item.amount.value === 0 ? '' : (\n <span>\n <Price \n amount={item.amount.value} \n currency={item.amount.currency}\n size=\"small\"\n className=\"company-management-price-normal\"\n />\n </span>\n ),\n outstandingBalance: (\n <Price \n amount={item.balance.outstandingBalance.value} \n currency={item.balance.outstandingBalance.currency}\n size=\"small\"\n className=\"company-management-price-normal\"\n />\n ),\n availableCredit: (\n <Price \n amount={item.balance.availableCredit.value} \n currency={item.balance.availableCredit.currency}\n size=\"small\"\n className=\"company-management-price-normal\"\n />\n ),\n creditLimit: (\n <Price \n amount={item.balance.creditLimit.value} \n currency={item.balance.creditLimit.currency}\n size=\"small\"\n className=\"company-management-price-normal\"\n />\n ),\n customReference: item.customReferenceNumber || '',\n updatedBy: item.updatedBy.name\n })), [items]);\n\n return (\n <section {...props} className={classes(['company-management-company-credit-history-display', className])}>\n {/* Screen reader announcements */}\n <div className=\"sr-only\" role=\"status\" aria-live=\"polite\" aria-atomic=\"true\">\n {announcement}\n </div>\n\n {/* Table with loading state */}\n <div aria-busy={loading}>\n {loading ? (\n <div className=\"loadingContainer\" role=\"status\" aria-live=\"polite\">\n <CompanyCreditHistoryLoader testId=\"companyCreditHistoryLoader\" />\n </div>\n ) : (\n <>\n <Table\n className=\"company-management-company-credit-history-table\"\n columns={columns}\n rowData={rowData}\n mobileLayout=\"stacked\"\n aria-label={translations.ariaHistoryTable}\n summary={translations.ariaShowingHistory.replace('{count}', items.length.toString())}\n />\n {!items.length && (\n <InLineAlert\n type=\"warning\"\n heading={translations.noData}\n className=\"company-management-company-credit-history-no-data-alert\"\n />\n )}\n </>\n )}\n </div>\n\n {/* Pagination controls */}\n {!loading && items.length > 0 && (\n <nav aria-label={translations.ariaPaginationNav} className=\"paginationContainer\">\n {/* Items range on the left */}\n <div aria-live=\"polite\" aria-atomic=\"true\">\n {translations.itemsRangeText\n .replace('{start}', startItem.toString())\n .replace('{end}', endItem.toString())\n .replace('{total}', totalItems.toString())}\n </div>\n\n {/* Pagination buttons in the center (only show when multiple pages) */}\n {totalPages > 1 && (\n <div className=\"paginationButtons\" role=\"group\" aria-label={translations.ariaPageNavigation}>\n <Button\n variant=\"secondary\"\n onClick={handlePreviousPage}\n disabled={currentPage === 1 || loading}\n aria-label={translations.ariaPreviousPage}\n className=\"paginationButton\"\n >\n &lt;\n </Button>\n \n {getPageNumbers().map((pageNum, index) => (\n pageNum === '...' ? (\n <span key={`ellipsis-${index}`} className=\"paginationEllipsis\">\n ...\n </span>\n ) : (\n <Button\n key={pageNum}\n variant={currentPage === pageNum ? 'primary' : 'secondary'}\n onClick={() => handlePageChange?.(pageNum as number)}\n disabled={loading}\n aria-label={currentPage === pageNum \n ? translations.ariaCurrentPage.replace('{page}', String(pageNum))\n : translations.ariaGoToPage.replace('{page}', String(pageNum))\n }\n aria-current={currentPage === pageNum ? 'page' : undefined}\n className=\"paginationButton\"\n >\n {pageNum}\n </Button>\n )\n ))}\n\n <Button\n variant=\"secondary\"\n onClick={handleNextPage}\n disabled={currentPage === totalPages || loading}\n aria-label={translations.ariaNextPage}\n className=\"paginationButton\"\n >\n &gt;\n </Button>\n </div>\n )}\n\n {/* Page size picker on the right */}\n <div className=\"pageSizeSelector\">\n <label htmlFor=\"page-size-select\" id=\"page-size-label\">\n <span>{translations.showLabel}</span>\n </label>\n <Picker\n id=\"page-size-select\"\n name=\"pageSize\"\n value={pageSize.toString()}\n options={PAGE_SIZE_OPTIONS}\n handleSelect={handlePageSizeChange}\n aria-labelledby=\"page-size-label\"\n aria-describedby=\"page-size-description\"\n />\n <span id=\"page-size-description\">{translations.perPageLabel}</span>\n </div>\n </nav>\n )}\n </section>\n );\n};","/********************************************************************\n * ADOBE CONFIDENTIAL\n * __________________\n *\n * Copyright 2025 Adobe\n * All Rights Reserved.\n *\n * NOTICE: All information contained herein is, and remains\n * the property of Adobe and its suppliers, if any. The intellectual\n * and technical concepts contained herein are proprietary to Adobe\n * and its suppliers and are protected by all applicable intellectual\n * property laws, including trade secret and copyright laws.\n * Dissemination of this information or reproduction of this material\n * is strictly forbidden unless prior written permission is obtained\n * from Adobe.\n *******************************************************************/\n \nimport { HTMLAttributes } from 'preact/compat';\nimport { Container } from '@adobe-commerce/elsie/lib';\nimport { CompanyCreditDisplay } from '@/company-management/components/CompanyCreditDisplay';\nimport { CompanyCreditHistoryDisplay } from '@/company-management/components/CompanyCreditHistoryDisplay';\nimport { GetCompanyCreditHistoryParams } from '@/company-management/types/api/getCompanyCreditHistoryParams.types';\n\nexport interface CompanyCreditProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Optional parameters for credit history filtering and pagination\n */\n creditHistoryParams?: GetCompanyCreditHistoryParams;\n \n /**\n * Whether to show the credit history section\n */\n showCreditHistory?: boolean;\n}\n \nexport const CompanyCredit: Container<CompanyCreditProps> = ({ \n creditHistoryParams = {}, \n showCreditHistory = true,\n className,\n children,\n ...props \n}) => {\n return (\n <section {...props} className={className}>\n <CompanyCreditDisplay />\n \n {showCreditHistory && (\n <CompanyCreditHistoryDisplay\n initialParams={creditHistoryParams}\n style={{ marginTop: '24px' }}\n />\n )}\n\n {children}\n </section>\n );\n};\n"],"names":["DEFAULT_PAGE_SIZE","FIRST_PAGE","useCompanyCreditHistory","initialParams","translations","items","setItems","useState","loading","setLoading","currentPage","setCurrentPage","pageSize","setPageSize","totalItems","setTotalItems","totalPages","setTotalPages","announcement","setAnnouncement","translationsRef","useRef","initialParamsRef","apiParams","useMemo","fetchCreditHistory","useCallback","response","getCompanyCreditHistory","_a","error","useEffect","handlePageSizeChange","event","value","newSize","handlePreviousPage","handleNextPage","handlePageChange","page","refreshCreditHistory","CompanyCreditDisplay","className","props","useText","companyCreditData","setCompanyCreditData","setError","inFlightRef","didInitialFetchRef","fetchCompanyCredit","companyCreditInfo","getCompanyCredit","handleCompanyContextChange","subscription","events","jsx","Card","CompanyCreditLoader","InLineAlert","jsxs","Price","_b","_c","_d","_e","_f","_g","_h","_i","PAGE_SIZE_OPTIONS","formatOperationType","operationType","word","CompanyCreditHistoryDisplay","startItem","endItem","getPageNumbers","_","i","pages","columns","rowData","item","classes","CompanyCreditHistoryLoader","Fragment","Table","Button","pageNum","index","Picker","CompanyCredit","creditHistoryParams","showCreditHistory","children"],"mappings":"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"}