mod-arch-shared 0.1.9 → 1.1.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 (305) hide show
  1. package/README.md +23 -268
  2. package/dist/__tests__/unit/jest.setup.d.ts +1 -0
  3. package/dist/__tests__/unit/jest.setup.d.ts.map +1 -1
  4. package/dist/__tests__/unit/jest.setup.js +3 -46
  5. package/dist/__tests__/unit/jest.setup.js.map +1 -1
  6. package/dist/components/EditableLabelsDescriptionListGroup.d.ts +1 -0
  7. package/dist/components/EditableLabelsDescriptionListGroup.d.ts.map +1 -1
  8. package/dist/components/EditableLabelsDescriptionListGroup.js +15 -12
  9. package/dist/components/EditableLabelsDescriptionListGroup.js.map +1 -1
  10. package/dist/components/EditableTextDescriptionListGroup.d.ts +1 -0
  11. package/dist/components/EditableTextDescriptionListGroup.d.ts.map +1 -1
  12. package/dist/components/EditableTextDescriptionListGroup.js +13 -6
  13. package/dist/components/EditableTextDescriptionListGroup.js.map +1 -1
  14. package/dist/components/WhosMyAdministrator.d.ts.map +1 -1
  15. package/dist/components/WhosMyAdministrator.js +5 -2
  16. package/dist/components/WhosMyAdministrator.js.map +1 -1
  17. package/dist/components/index.d.ts +0 -5
  18. package/dist/components/index.d.ts.map +1 -1
  19. package/dist/components/index.js +0 -5
  20. package/dist/components/index.js.map +1 -1
  21. package/dist/config/transform.file.d.ts +2 -1
  22. package/dist/config/transform.file.d.ts.map +1 -1
  23. package/dist/config/transform.file.js +2 -7
  24. package/dist/config/transform.file.js.map +1 -1
  25. package/dist/config/transform.style.js +1 -0
  26. package/dist/config/transform.style.js.map +1 -1
  27. package/dist/images/index.d.ts +2 -2
  28. package/dist/images/index.d.ts.map +1 -1
  29. package/dist/images/index.js +2 -2
  30. package/dist/images/index.js.map +1 -1
  31. package/dist/images/index.ts +2 -2
  32. package/dist/images/logo-odh-dark-theme.svg +18 -0
  33. package/dist/images/logo-odh-light-theme.svg +18 -0
  34. package/dist/index.d.ts +0 -4
  35. package/dist/index.d.ts.map +1 -1
  36. package/dist/index.js +1 -15
  37. package/dist/index.js.map +1 -1
  38. package/dist/jest.config.d.ts +1 -0
  39. package/dist/jest.config.js +3 -1
  40. package/dist/jest.config.js.map +1 -1
  41. package/dist/types/common.d.ts +0 -43
  42. package/dist/types/common.d.ts.map +1 -1
  43. package/dist/types/common.js +0 -1
  44. package/dist/types/common.js.map +1 -1
  45. package/dist/utilities/__tests__/markdown.spec.d.ts +2 -0
  46. package/dist/utilities/__tests__/markdown.spec.d.ts.map +1 -0
  47. package/dist/utilities/__tests__/markdown.spec.js +17 -0
  48. package/dist/utilities/__tests__/markdown.spec.js.map +1 -0
  49. package/dist/utilities/__tests__/string.spec.d.ts +2 -0
  50. package/dist/utilities/__tests__/string.spec.d.ts.map +1 -0
  51. package/dist/utilities/__tests__/string.spec.js +51 -0
  52. package/dist/utilities/__tests__/string.spec.js.map +1 -0
  53. package/dist/utilities/__tests__/time.spec.d.ts +2 -0
  54. package/dist/utilities/__tests__/time.spec.d.ts.map +1 -0
  55. package/dist/utilities/__tests__/time.spec.js +61 -0
  56. package/dist/utilities/__tests__/time.spec.js.map +1 -0
  57. package/dist/utilities/index.d.ts +0 -5
  58. package/dist/utilities/index.d.ts.map +1 -1
  59. package/dist/utilities/index.js +0 -5
  60. package/dist/utilities/index.js.map +1 -1
  61. package/dist/utilities/utils.d.ts +0 -23
  62. package/dist/utilities/utils.d.ts.map +1 -1
  63. package/dist/utilities/utils.js +0 -93
  64. package/dist/utilities/utils.js.map +1 -1
  65. package/package.json +28 -36
  66. package/LICENSE +0 -201
  67. package/dist/__tests__/__mocks__/mockGenericResponse.d.ts +0 -8
  68. package/dist/__tests__/__mocks__/mockGenericResponse.d.ts.map +0 -1
  69. package/dist/__tests__/__mocks__/mockGenericResponse.js +0 -6
  70. package/dist/__tests__/__mocks__/mockGenericResponse.js.map +0 -1
  71. package/dist/__tests__/__mocks__/styleMock.d.ts +0 -2
  72. package/dist/__tests__/__mocks__/styleMock.d.ts.map +0 -1
  73. package/dist/__tests__/__mocks__/styleMock.js +0 -3
  74. package/dist/__tests__/__mocks__/styleMock.js.map +0 -1
  75. package/dist/__tests__/unit/testUtils/hooks.d.ts +0 -80
  76. package/dist/__tests__/unit/testUtils/hooks.d.ts.map +0 -1
  77. package/dist/__tests__/unit/testUtils/hooks.js +0 -126
  78. package/dist/__tests__/unit/testUtils/hooks.js.map +0 -1
  79. package/dist/__tests__/unit/testUtils/hooks.spec.d.ts +0 -2
  80. package/dist/__tests__/unit/testUtils/hooks.spec.d.ts.map +0 -1
  81. package/dist/__tests__/unit/testUtils/hooks.spec.js +0 -192
  82. package/dist/__tests__/unit/testUtils/hooks.spec.js.map +0 -1
  83. package/dist/api/__tests__/errorUtils.spec.d.ts +0 -2
  84. package/dist/api/__tests__/errorUtils.spec.d.ts.map +0 -1
  85. package/dist/api/__tests__/errorUtils.spec.js +0 -27
  86. package/dist/api/__tests__/errorUtils.spec.js.map +0 -1
  87. package/dist/api/apiUtils.d.ts +0 -16
  88. package/dist/api/apiUtils.d.ts.map +0 -1
  89. package/dist/api/apiUtils.js +0 -96
  90. package/dist/api/apiUtils.js.map +0 -1
  91. package/dist/api/const.d.ts +0 -3
  92. package/dist/api/const.d.ts.map +0 -1
  93. package/dist/api/const.js +0 -4
  94. package/dist/api/const.js.map +0 -1
  95. package/dist/api/errorUtils.d.ts +0 -2
  96. package/dist/api/errorUtils.d.ts.map +0 -1
  97. package/dist/api/errorUtils.js +0 -22
  98. package/dist/api/errorUtils.js.map +0 -1
  99. package/dist/api/index.d.ts +0 -7
  100. package/dist/api/index.d.ts.map +0 -1
  101. package/dist/api/index.js +0 -8
  102. package/dist/api/index.js.map +0 -1
  103. package/dist/api/k8s.d.ts +0 -10
  104. package/dist/api/k8s.d.ts.map +0 -1
  105. package/dist/api/k8s.js +0 -16
  106. package/dist/api/k8s.js.map +0 -1
  107. package/dist/api/types.d.ts +0 -19
  108. package/dist/api/types.d.ts.map +0 -1
  109. package/dist/api/types.js +0 -2
  110. package/dist/api/types.js.map +0 -1
  111. package/dist/api/useAPIState.d.ts +0 -3
  112. package/dist/api/useAPIState.d.ts.map +0 -1
  113. package/dist/api/useAPIState.js +0 -22
  114. package/dist/api/useAPIState.js.map +0 -1
  115. package/dist/components/NavBar.d.ts +0 -8
  116. package/dist/components/NavBar.d.ts.map +0 -1
  117. package/dist/components/NavBar.js +0 -53
  118. package/dist/components/NavBar.js.map +0 -1
  119. package/dist/components/NavSidebar.d.ts +0 -8
  120. package/dist/components/NavSidebar.d.ts.map +0 -1
  121. package/dist/components/NavSidebar.js +0 -25
  122. package/dist/components/NavSidebar.js.map +0 -1
  123. package/dist/components/ToastNotification.d.ts +0 -8
  124. package/dist/components/ToastNotification.d.ts.map +0 -1
  125. package/dist/components/ToastNotification.js +0 -29
  126. package/dist/components/ToastNotification.js.map +0 -1
  127. package/dist/components/ToastNotifications.d.ts +0 -4
  128. package/dist/components/ToastNotifications.d.ts.map +0 -1
  129. package/dist/components/ToastNotifications.js +0 -10
  130. package/dist/components/ToastNotifications.js.map +0 -1
  131. package/dist/components/__tests__/NavBar.test.d.ts +0 -2
  132. package/dist/components/__tests__/NavBar.test.d.ts.map +0 -1
  133. package/dist/components/__tests__/NavBar.test.js +0 -65
  134. package/dist/components/__tests__/NavBar.test.js.map +0 -1
  135. package/dist/components/browserStorage/BrowserStorageContext.d.ts +0 -25
  136. package/dist/components/browserStorage/BrowserStorageContext.d.ts.map +0 -1
  137. package/dist/components/browserStorage/BrowserStorageContext.js +0 -97
  138. package/dist/components/browserStorage/BrowserStorageContext.js.map +0 -1
  139. package/dist/components/browserStorage/index.d.ts +0 -2
  140. package/dist/components/browserStorage/index.d.ts.map +0 -1
  141. package/dist/components/browserStorage/index.js +0 -2
  142. package/dist/components/browserStorage/index.js.map +0 -1
  143. package/dist/components/table/__tests__/useCheckboxTable.spec.d.ts +0 -2
  144. package/dist/components/table/__tests__/useCheckboxTable.spec.d.ts.map +0 -1
  145. package/dist/components/table/__tests__/useCheckboxTable.spec.js +0 -45
  146. package/dist/components/table/__tests__/useCheckboxTable.spec.js.map +0 -1
  147. package/dist/config/stylePaths.d.ts +0 -2
  148. package/dist/config/stylePaths.d.ts.map +0 -1
  149. package/dist/config/stylePaths.js +0 -17
  150. package/dist/config/stylePaths.js.map +0 -1
  151. package/dist/context/ModularArchContext.d.ts +0 -20
  152. package/dist/context/ModularArchContext.d.ts.map +0 -1
  153. package/dist/context/ModularArchContext.js +0 -68
  154. package/dist/context/ModularArchContext.js.map +0 -1
  155. package/dist/context/NotificationContext.d.ts +0 -15
  156. package/dist/context/NotificationContext.d.ts.map +0 -1
  157. package/dist/context/NotificationContext.js +0 -43
  158. package/dist/context/NotificationContext.js.map +0 -1
  159. package/dist/context/ThemeContext.d.ts +0 -13
  160. package/dist/context/ThemeContext.d.ts.map +0 -1
  161. package/dist/context/ThemeContext.js +0 -23
  162. package/dist/context/ThemeContext.js.map +0 -1
  163. package/dist/context/__tests__/ModularArchContext.test.d.ts +0 -2
  164. package/dist/context/__tests__/ModularArchContext.test.d.ts.map +0 -1
  165. package/dist/context/__tests__/ModularArchContext.test.js +0 -331
  166. package/dist/context/__tests__/ModularArchContext.test.js.map +0 -1
  167. package/dist/context/index.d.ts +0 -4
  168. package/dist/context/index.d.ts.map +0 -1
  169. package/dist/context/index.js +0 -4
  170. package/dist/context/index.js.map +0 -1
  171. package/dist/hooks/__tests__/useModularArchContext.test.d.ts +0 -2
  172. package/dist/hooks/__tests__/useModularArchContext.test.d.ts.map +0 -1
  173. package/dist/hooks/__tests__/useModularArchContext.test.js +0 -39
  174. package/dist/hooks/__tests__/useModularArchContext.test.js.map +0 -1
  175. package/dist/hooks/__tests__/useNamespaces.test.d.ts +0 -2
  176. package/dist/hooks/__tests__/useNamespaces.test.d.ts.map +0 -1
  177. package/dist/hooks/__tests__/useNamespaces.test.js +0 -62
  178. package/dist/hooks/__tests__/useNamespaces.test.js.map +0 -1
  179. package/dist/hooks/index.d.ts +0 -9
  180. package/dist/hooks/index.d.ts.map +0 -1
  181. package/dist/hooks/index.js +0 -9
  182. package/dist/hooks/index.js.map +0 -1
  183. package/dist/hooks/useModularArchContext.d.ts +0 -5
  184. package/dist/hooks/useModularArchContext.d.ts.map +0 -1
  185. package/dist/hooks/useModularArchContext.js +0 -11
  186. package/dist/hooks/useModularArchContext.js.map +0 -1
  187. package/dist/hooks/useNamespaceSelector.d.ts +0 -10
  188. package/dist/hooks/useNamespaceSelector.d.ts.map +0 -1
  189. package/dist/hooks/useNamespaceSelector.js +0 -13
  190. package/dist/hooks/useNamespaceSelector.js.map +0 -1
  191. package/dist/hooks/useNamespaces.d.ts +0 -6
  192. package/dist/hooks/useNamespaces.d.ts.map +0 -1
  193. package/dist/hooks/useNamespaces.js +0 -34
  194. package/dist/hooks/useNamespaces.js.map +0 -1
  195. package/dist/hooks/useNotification.d.ts +0 -18
  196. package/dist/hooks/useNotification.d.ts.map +0 -1
  197. package/dist/hooks/useNotification.js +0 -75
  198. package/dist/hooks/useNotification.js.map +0 -1
  199. package/dist/hooks/useQueryParamNamespaces.d.ts +0 -2
  200. package/dist/hooks/useQueryParamNamespaces.d.ts.map +0 -1
  201. package/dist/hooks/useQueryParamNamespaces.js +0 -9
  202. package/dist/hooks/useQueryParamNamespaces.js.map +0 -1
  203. package/dist/hooks/useSettings.d.ts +0 -9
  204. package/dist/hooks/useSettings.d.ts.map +0 -1
  205. package/dist/hooks/useSettings.js +0 -72
  206. package/dist/hooks/useSettings.js.map +0 -1
  207. package/dist/hooks/useThemeContext.d.ts +0 -6
  208. package/dist/hooks/useThemeContext.d.ts.map +0 -1
  209. package/dist/hooks/useThemeContext.js +0 -10
  210. package/dist/hooks/useThemeContext.js.map +0 -1
  211. package/dist/hooks/useTimeBasedRefresh.d.ts +0 -4
  212. package/dist/hooks/useTimeBasedRefresh.d.ts.map +0 -1
  213. package/dist/hooks/useTimeBasedRefresh.js +0 -32
  214. package/dist/hooks/useTimeBasedRefresh.js.map +0 -1
  215. package/dist/images/logo-dark-theme.svg +0 -43
  216. package/dist/images/logo-light-theme.svg +0 -43
  217. package/dist/style/MUI-theme.scss +0 -995
  218. package/dist/style/index.d.ts +0 -2
  219. package/dist/style/index.d.ts.map +0 -1
  220. package/dist/style/index.js +0 -6
  221. package/dist/style/index.js.map +0 -1
  222. package/dist/style/index.ts +0 -6
  223. package/dist/utilities/appUtils.d.ts +0 -2
  224. package/dist/utilities/appUtils.d.ts.map +0 -1
  225. package/dist/utilities/appUtils.js +0 -4
  226. package/dist/utilities/appUtils.js.map +0 -1
  227. package/dist/utilities/const.d.ts +0 -13
  228. package/dist/utilities/const.d.ts.map +0 -1
  229. package/dist/utilities/const.js +0 -20
  230. package/dist/utilities/const.js.map +0 -1
  231. package/dist/utilities/useFetchState.d.ts +0 -92
  232. package/dist/utilities/useFetchState.d.ts.map +0 -1
  233. package/dist/utilities/useFetchState.js +0 -153
  234. package/dist/utilities/useFetchState.js.map +0 -1
  235. package/dist/utilities/useGenericObjectState.d.ts +0 -9
  236. package/dist/utilities/useGenericObjectState.d.ts.map +0 -1
  237. package/dist/utilities/useGenericObjectState.js +0 -14
  238. package/dist/utilities/useGenericObjectState.js.map +0 -1
  239. package/dist/utilities/useMakeFetchObject.d.ts +0 -4
  240. package/dist/utilities/useMakeFetchObject.d.ts.map +0 -1
  241. package/dist/utilities/useMakeFetchObject.js +0 -6
  242. package/dist/utilities/useMakeFetchObject.js.map +0 -1
  243. package/images/Icon-Layered_A_Black-RGB.svg +0 -66
  244. package/images/Icon-Storage-A-Black-RGB.svg +0 -3
  245. package/images/Icon-Sys_admin-A-Black-RGB.svg +0 -8
  246. package/images/UI_icon-Branch-RGB.svg +0 -1
  247. package/images/UI_icon-Connected-RGB.svg +0 -1
  248. package/images/UI_icon-Cubes-RGB.svg +0 -1
  249. package/images/UI_icon-Double_arrow_right-RGB.svg +0 -1
  250. package/images/UI_icon-Folder-RGB.svg +0 -1
  251. package/images/UI_icon-Notebook-Images-RGB.svg +0 -9
  252. package/images/UI_icon-Server-RGB.svg +0 -1
  253. package/images/UI_icon-Server_upload-RGB.svg +0 -1
  254. package/images/UI_icon-Shared_workspace-RGB.svg +0 -8
  255. package/images/UI_icon-Storage-RGB.svg +0 -1
  256. package/images/UI_icon-User-RGB.svg +0 -1
  257. package/images/UI_icon-Wrench-RGB.svg +0 -1
  258. package/images/empty-state-cluster-storage.svg +0 -472
  259. package/images/empty-state-data-connections.svg +0 -299
  260. package/images/empty-state-model-registries.svg +0 -9
  261. package/images/empty-state-model-serving.svg +0 -249
  262. package/images/empty-state-notebooks.svg +0 -392
  263. package/images/empty-state-pipelines.svg +0 -393
  264. package/images/empty-state-project-overview.svg +0 -482
  265. package/images/empty-state-projects-color.svg +0 -275
  266. package/images/empty-state-storage-classes.svg +0 -56
  267. package/images/icons/AcceleratorProfileIcon.ts +0 -13
  268. package/images/icons/ArtifactIcon.ts +0 -13
  269. package/images/icons/BuildIcon.ts +0 -13
  270. package/images/icons/ClusterSettingsIcon.ts +0 -13
  271. package/images/icons/ConfigurationIcon.ts +0 -13
  272. package/images/icons/CreateAndTrainIcon.ts +0 -13
  273. package/images/icons/DataConnectionIcon.ts +0 -13
  274. package/images/icons/DeployedModelIcon.ts +0 -13
  275. package/images/icons/DistributedWorkloadIcon.ts +0 -13
  276. package/images/icons/EnabledApplicationsIcon.ts +0 -13
  277. package/images/icons/ExperimentIcon.ts +0 -13
  278. package/images/icons/ExploreApplicationsIcon.ts +0 -13
  279. package/images/icons/GroupIcon.ts +0 -13
  280. package/images/icons/ModelIcon.ts +0 -13
  281. package/images/icons/ModelRegistryIcon.ts +0 -13
  282. package/images/icons/ModelServerIcon.ts +0 -13
  283. package/images/icons/MultiModelIcon.ts +0 -13
  284. package/images/icons/NotebookIcon.ts +0 -13
  285. package/images/icons/NotebookImageIcon.ts +0 -13
  286. package/images/icons/PermissionsIcon.ts +0 -13
  287. package/images/icons/PipelineExecutionIcon.ts +0 -13
  288. package/images/icons/PipelineIcon.ts +0 -13
  289. package/images/icons/PipelineRunIcon.ts +0 -13
  290. package/images/icons/ProjectIcon.ts +0 -13
  291. package/images/icons/RegisteredModelIcon.ts +0 -13
  292. package/images/icons/ResourcesIcon.ts +0 -13
  293. package/images/icons/ServingRuntimeIcon.ts +0 -13
  294. package/images/icons/SingleModelIcon.ts +0 -13
  295. package/images/icons/StorageClassIcon.ts +0 -13
  296. package/images/icons/StorageIcon.ts +0 -13
  297. package/images/icons/UserIcon.ts +0 -13
  298. package/images/icons/index.ts +0 -31
  299. package/images/index.ts +0 -62
  300. package/images/logo-dark-theme.svg +0 -43
  301. package/images/logo-light-theme.svg +0 -43
  302. package/images/no-models-model-registry.svg +0 -180
  303. package/images/no-versions-model-registry.svg +0 -149
  304. package/style/MUI-theme.scss +0 -995
  305. package/style/index.ts +0 -6
package/README.md CHANGED
@@ -1,292 +1,47 @@
1
- # Modular Architecture Shared Library
1
+ # mod-arch-shared
2
2
 
3
- ## Overview
4
-
5
- `mod-arch-shared` is a shared library providing common UI components and utilities for micro-frontend projects following a modular architecture. This library follows a modular design to ensure reusability and maintainability across various projects. The library is versioned to facilitate consistent updates and integration.
3
+ Shared UI components and utilities for modular architecture micro-frontend projects.
6
4
 
7
5
  ## Installation
8
6
 
9
7
  ```bash
10
- npm install mod-arch-shared @mui/material @mui/icons-material @mui/types sass sass-loader
8
+ npm install mod-arch-shared sass sass-loader
11
9
  ```
12
10
 
13
- The library requires peer dependencies to be installed alongside the main package:
14
- - **MUI dependencies** (`@mui/material`, `@mui/icons-material`, `@mui/types`) are required for both PatternFly and MUI theme support
15
- - **SASS dependencies** (`sass`, `sass-loader`) are required to process SCSS files used by the library components
16
-
17
- ### SASS/SCSS Processing Requirements
18
-
19
- This library contains SCSS files that need to be processed by your application's build system. You must:
11
+ ## Peer Dependencies
20
12
 
21
- 1. **Install the required dependencies:**
22
- ```bash
23
- npm install sass sass-loader
24
- ```
13
+ - `react` (>=16.8.0)
14
+ - `react-dom` (>=16.8.0)
25
15
 
26
- 2. **Configure your webpack to handle SCSS files** by adding this rule to your webpack configuration:
27
- ```js
28
- {
29
- test: /\.s[ac]ss$/i,
30
- use: [
31
- // Creates `style` nodes from JS strings
32
- 'style-loader',
33
- // Translates CSS into CommonJS
34
- 'css-loader',
35
- // Compiles Sass to CSS
36
- 'sass-loader',
37
- ],
38
- }
39
- ```
40
-
41
- If you're using Create React App, Vite, or similar build tools, SCSS support is typically included by default when you install the `sass` package.
16
+ Note: This package includes PatternFly components and requires SASS processing capabilities in your build system.
42
17
 
43
18
  ## Usage
44
19
 
45
- Import components and utilities as needed:
46
-
47
- ```jsx
48
- import { DashboardSearchField, useNamespaces, ToastNotification } from 'mod-arch-shared';
49
-
50
- const MyComponent = () => {
51
- const { namespaces, loading } = useNamespaces();
52
-
53
- return (
54
- <>
55
- <DashboardSearchField onChange={handleSearch} />
56
- {/* Your component code */}
57
- <ToastNotification title="Success" type="success" message="Operation completed" />
58
- </>
59
- );
60
- };
61
- ```
62
-
63
- ## Using Styles and Images
64
-
65
- This library exports both style files and image assets that can be imported and used in your application.
66
-
67
- ### Importing Styles
68
-
69
- You can import specific styles or all styles at once:
70
-
71
- ```javascript
72
- // Import all styles
73
- import { style } from 'mod-arch-shared';
74
-
75
- // Or import specific style components directly
76
- import 'mod-arch-shared/style';
77
- ```
78
-
79
- ### Importing Images
80
-
81
- Images can be imported in several ways:
82
-
83
- ```javascript
84
- // Import specific images
85
- import { emptyStateNotebooks, iconRedHatStorage } from 'mod-arch-shared/images';
86
-
87
- // Or import all images as a namespace
88
- import * as Images from 'mod-arch-shared/images';
89
-
90
- // Then use them in your components
91
- <img src={emptyStateNotebooks} alt="Empty state notebooks" />
92
- ```
93
-
94
- ## Folder Structure
95
-
96
- The repository contains the following modules:
97
-
98
- - **api**: API utilities for making service calls and handling errors
99
- - **components**: Reusable UI components
100
- - **hooks**: Custom React hooks
101
- - **utilities**: Utility functions
102
- - **context**: Context providers
103
- - **style**: Global styles
104
- - **types**: TypeScript type definitions
105
-
106
- ## Provider Setup
107
-
108
- The Modular Architecture library requires proper context setup to function correctly. The library provides two essential providers that must be configured at the root of your application:
109
-
110
- ### ModularArchContextProvider
111
-
112
- The `ModularArchContextProvider` is **mandatory** for using this library. It provides essential configuration and state management for:
113
-
114
- - **Deployment mode configuration** (Standalone, Federated, or Kubeflow)
115
- - **Namespace management** and selection
116
- - **API endpoint configuration**
117
- - **Script loading state** for Kubeflow integration
118
- - **Mandatory namespace enforcement** when required
119
-
120
- ### ThemeProvider
121
-
122
- The `ThemeProvider` manages UI theming and supports:
123
-
124
- - **PatternFly theme** (default)
125
- - **Material-UI theme** with CSS variables support
126
- - **Dynamic theme switching** at runtime
127
-
128
- ### Complete Setup Example
129
-
130
- Here's how to properly set up your application root with both providers:
131
-
132
20
  ```typescript
133
- import React from 'react';
134
- import { createRoot } from 'react-dom/client';
135
- import { BrowserRouter as Router } from 'react-router-dom';
136
- import {
137
- ModularArchContextProvider,
138
- ThemeProvider,
139
- BrowserStorageContextProvider,
140
- NotificationContextProvider,
141
- DeploymentMode,
142
- Theme
21
+ import {
22
+ DashboardSearchField,
23
+ DashboardModalFooter,
24
+ SimpleSelect,
25
+ MarkdownView,
26
+ images
143
27
  } from 'mod-arch-shared';
144
-
145
- // Define your configuration
146
- const modularArchConfig: ModularArchConfig = {
147
- deploymentMode: DeploymentMode.Standalone, // or Federated, Kubeflow
148
- URL_PREFIX: '/api',
149
- BFF_API_VERSION: 'v1',
150
- // Optional: Force a specific namespace
151
- // mandatoryNamespace: 'production'
152
- };
153
-
154
- const container = document.getElementById('root');
155
- const root = createRoot(container!);
156
-
157
- root.render(
158
- <React.StrictMode>
159
- <Router>
160
- <ModularArchContextProvider config={modularArchConfig}>
161
- <ThemeProvider theme={Theme.Patternfly}>
162
- <BrowserStorageContextProvider>
163
- <NotificationContextProvider>
164
- <App />
165
- </NotificationContextProvider>
166
- </BrowserStorageContextProvider>
167
- </ThemeProvider>
168
- </ModularArchContextProvider>
169
- </Router>
170
- </React.StrictMode>,
171
- );
172
- ```
173
-
174
- ### Configuration Options
175
-
176
- #### Deployment Modes
177
-
178
- - **`DeploymentMode.Standalone`**: For single-application deployments
179
- - **`DeploymentMode.Federated`**: For micro-frontend architectures
180
- - **`DeploymentMode.Kubeflow`**: For integration with Kubeflow environments
181
-
182
- #### Theme Options
183
-
184
- - **`Theme.Patternfly`**: Red Hat PatternFly design system (default)
185
- - **`Theme.MUI`**: Material-UI design system with CSS variables
186
-
187
- Both themes require the MUI peer dependencies to be installed.
188
-
189
- ### Using the Context in Components
190
-
191
- Once providers are set up, you can access the configuration and state throughout your application:
192
-
193
- ```typescript
194
- import { useModularArchContext, useThemeContext } from 'mod-arch-shared';
195
-
196
- const MyComponent = () => {
197
- const {
198
- config,
199
- namespaces,
200
- preferredNamespace,
201
- updatePreferredNamespace
202
- } = useModularArchContext();
203
-
204
- const { theme } = useThemeContext();
205
-
206
- return (
207
- <div>
208
- <p>Current deployment mode: {config.deploymentMode}</p>
209
- <p>Available namespaces: {namespaces.length}</p>
210
- <p>Current theme: {theme}</p>
211
- </div>
212
- );
213
- };
214
28
  ```
215
29
 
216
- ## Configuration
217
-
218
- ### ModularArchConfig
219
-
220
- The library supports various configuration options through the `ModularArchConfig` interface:
221
-
222
- ```typescript
223
- interface ModularArchConfig {
224
- deploymentMode: DeploymentMode;
225
- URL_PREFIX: string;
226
- BFF_API_VERSION: string;
227
- mandatoryNamespace?: string; // Optional: Force a specific namespace
228
- }
229
- ```
230
-
231
- #### Mandatory Namespace
232
-
233
- The `mandatoryNamespace` option allows you to enforce a specific namespace throughout the application:
234
-
235
- ```typescript
236
- const config = {
237
- deploymentMode: DeploymentMode.Standalone,
238
- URL_PREFIX: '/api',
239
- BFF_API_VERSION: 'v1',
240
- mandatoryNamespace: 'production' // Force the use of 'production' namespace
241
- };
242
- ```
30
+ ## What's Included
243
31
 
244
- When `mandatoryNamespace` is set:
32
+ - **Components**: Common UI components like search fields, modals, tables, and form elements
33
+ - **Utilities**: Shared utility functions for UI interactions
34
+ - **Images**: Common image assets and icons
35
+ - **Types**: Shared TypeScript type definitions
245
36
 
246
- - The namespace selector in the UI will be disabled
247
- - All API calls will be restricted to the specified namespace
248
- - Users cannot switch to different namespaces
249
- - The `useNamespaces` hook will only return the mandatory namespace
37
+ ## SASS/SCSS Requirements
250
38
 
251
- This is useful for production environments or when you want to restrict users to a specific namespace.
252
-
253
- ## Development
254
-
255
- ### Prerequisites
256
-
257
- - Node.js >= 20.17
258
- - npm >= 10.8
259
-
260
- ### Setup
261
-
262
- ```bash
263
- git clone <repository-url>
264
- cd mod-arch-shared
265
- npm install
266
- ```
267
-
268
- ### Building
269
-
270
- ```bash
271
- npm run build
272
- ```
273
-
274
- ### Testing
275
-
276
- ```bash
277
- npm test
278
- ```
279
-
280
- ### Linting
281
-
282
- ```bash
283
- npm run lint
284
- ```
39
+ This package contains SCSS files that need to be processed by your build system. Most modern build tools (Create React App, Vite, etc.) support SASS out of the box when you install the `sass` package.
285
40
 
286
- ## Contributing
41
+ ## Documentation
287
42
 
288
- We welcome contributions to the project. Please see the [CONTRIBUTING.md](CONTRIBUTING.md) file for more information.
43
+ For detailed documentation, visit the [main repository](https://github.com/opendatahub-io/mod-arch-library).
289
44
 
290
45
  ## License
291
46
 
292
- This project is licensed under the Apache License 2.0. See the [LICENSE](LICENSE) file for details.
47
+ Apache-2.0
@@ -1,2 +1,3 @@
1
+ import '@testing-library/jest-dom';
1
2
  import 'core-js/actual/array/to-sorted';
2
3
  //# sourceMappingURL=jest.setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"jest.setup.d.ts","sourceRoot":"","sources":["../../../__tests__/unit/jest.setup.ts"],"names":[],"mappings":"AAEA,OAAO,gCAAgC,CAAC"}
1
+ {"version":3,"file":"jest.setup.d.ts","sourceRoot":"","sources":["../../../__tests__/unit/jest.setup.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,gCAAgC,CAAC"}
@@ -1,48 +1,5 @@
1
- import { TextEncoder } from 'util';
1
+ import '@testing-library/jest-dom';
2
2
  import 'core-js/actual/array/to-sorted';
3
- import { createComparativeValue, } from '../../__tests__/unit/testUtils/hooks';
4
- global.TextEncoder = TextEncoder;
5
- const tryExpect = (expectFn) => {
6
- try {
7
- expectFn();
8
- }
9
- catch (e) {
10
- const { matcherResult } = e;
11
- if (matcherResult) {
12
- return { ...matcherResult, message: () => matcherResult.message };
13
- }
14
- throw e;
15
- }
16
- return {
17
- pass: true,
18
- message: () => '',
19
- };
20
- };
21
- expect.extend({
22
- // custom asymmetric matchers
23
- /**
24
- * Checks that a value is what you expect.
25
- * It uses Object.is to check strict equality.
26
- *
27
- * Usage:
28
- * expect.isIdentifyEqual(...)
29
- */
30
- isIdentityEqual: (actual, expected) => ({
31
- pass: Object.is(actual, expected),
32
- message: () => `expected ${actual} to be identity equal to ${expected}`,
33
- }),
34
- // hook related custom matchers
35
- hookToBe: (actual, expected) => tryExpect(() => expect(actual.result.current).toBe(expected)),
36
- hookToStrictEqual: (actual, expected) => tryExpect(() => expect(actual.result.current).toStrictEqual(expected)),
37
- hookToHaveUpdateCount: (actual, expected) => tryExpect(() => expect(actual.getUpdateCount()).toBe(expected)),
38
- hookToBeStable: (actual, expected) => {
39
- if (actual.getUpdateCount() <= 1) {
40
- throw new Error('Cannot assert stability as the hook has not run at least 2 times.');
41
- }
42
- if (typeof expected === 'undefined') {
43
- return tryExpect(() => expect(actual.result.current).toBe(actual.getPreviousResult()));
44
- }
45
- return tryExpect(() => expect(actual.result.current).toStrictEqual(createComparativeValue(actual.getPreviousResult(), expected)));
46
- },
47
- });
3
+ // Set up Jest environment for React component testing
4
+ // This file is referenced in jest.config.js setupFilesAfterEnv
48
5
  //# sourceMappingURL=jest.setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"jest.setup.js","sourceRoot":"","sources":["../../../__tests__/unit/jest.setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,MAAM,CAAC;AAEnC,OAAO,gCAAgC,CAAC;AACxC,OAAO,EAGL,sBAAsB,GACvB,MAAM,kCAAkC,CAAC;AAE1C,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;AAEjC,MAAM,SAAS,GAAG,CAAC,QAAoB,EAAE,EAAE;IACzC,IAAI,CAAC;QACH,QAAQ,EAAE,CAAC;IACb,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,EAAE,aAAa,EAAE,GAAG,CAAuB,CAAC;QAClD,IAAI,aAAa,EAAE,CAAC;YAClB,OAAO,EAAE,GAAG,aAAa,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACpE,CAAC;QACD,MAAM,CAAC,CAAC;IACV,CAAC;IACD,OAAO;QACL,IAAI,EAAE,IAAI;QACV,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KAClB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,CAAC;IACZ,6BAA6B;IAE7B;;;;;;OAMG;IACH,eAAe,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QACtC,IAAI,EAAE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,QAAQ,CAAC;QACjC,OAAO,EAAE,GAAG,EAAE,CAAC,YAAY,MAAM,4BAA4B,QAAQ,EAAE;KACxE,CAAC;IAEF,+BAA+B;IAC/B,QAAQ,EAAE,CAAC,MAA6C,EAAE,QAAQ,EAAE,EAAE,CACpE,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAE/D,iBAAiB,EAAE,CAAC,MAA6C,EAAE,QAAQ,EAAE,EAAE,CAC7E,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;IAExE,qBAAqB,EAAE,CAAC,MAA6C,EAAE,QAAgB,EAAE,EAAE,CACzF,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAEjE,cAAc,EAAE,CAAI,MAAuC,EAAE,QAA2B,EAAE,EAAE;QAC1F,IAAI,MAAM,CAAC,cAAc,EAAE,IAAI,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;QACvF,CAAC;QACD,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,CAAC;YACpC,OAAO,SAAS,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC;QACzF,CAAC;QACD,OAAO,SAAS,CAAC,GAAG,EAAE,CACpB,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,aAAa,CACzC,sBAAsB,CAAC,MAAM,CAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,CAC7D,CACF,CAAC;IACJ,CAAC;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"jest.setup.js","sourceRoot":"","sources":["../../../__tests__/unit/jest.setup.ts"],"names":[],"mappings":"AAAA,OAAO,2BAA2B,CAAC;AACnC,OAAO,gCAAgC,CAAC;AAExC,sDAAsD;AACtD,+DAA+D"}
@@ -10,6 +10,7 @@ interface EditableLabelsProps {
10
10
  labelProps?: LabelProps;
11
11
  overflowCount?: number;
12
12
  isCollapsible?: boolean;
13
+ onEditingChange?: (editingState: boolean) => void;
13
14
  }
14
15
  export declare const EditableLabelsDescriptionListGroup: React.FC<EditableLabelsProps>;
15
16
  export default EditableLabelsDescriptionListGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"EditableLabelsDescriptionListGroup.d.ts","sourceRoot":"","sources":["../../components/EditableLabelsDescriptionListGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAA0C,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAI5F,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,eAAO,MAAM,kCAAkC,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA+O5E,CAAC;AAEF,eAAe,kCAAkC,CAAC"}
1
+ {"version":3,"file":"EditableLabelsDescriptionListGroup.d.ts","sourceRoot":"","sources":["../../components/EditableLabelsDescriptionListGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAA0C,UAAU,EAAE,MAAM,wBAAwB,CAAC;AAI5F,UAAU,mBAAmB;IAC3B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,cAAc,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACpD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD;AAED,eAAO,MAAM,kCAAkC,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAsP5E,CAAC;AAEF,eAAe,kCAAkC,CAAC"}
@@ -2,11 +2,15 @@ import React, { useState } from 'react';
2
2
  import { Label, LabelGroup, Alert, AlertVariant } from '@patternfly/react-core';
3
3
  import spacing from '@patternfly/react-styles/css/utilities/Spacing/spacing';
4
4
  import DashboardDescriptionListGroup from '../components/DashboardDescriptionListGroup';
5
- export const EditableLabelsDescriptionListGroup = ({ title = 'Labels', contentWhenEmpty = 'No labels', labels, onLabelsChange, isArchive, allExistingKeys, labelProps = {}, isCollapsible = true, overflowCount, }) => {
6
- const [isEditing, setIsEditing] = useState(false);
5
+ export const EditableLabelsDescriptionListGroup = ({ title = 'Labels', contentWhenEmpty = 'No labels', labels, onLabelsChange, isArchive, allExistingKeys, labelProps = {}, isCollapsible = true, overflowCount, onEditingChange, }) => {
7
6
  const [isSavingEdits, setIsSavingEdits] = useState(false);
8
7
  const [hasSavedEdits, setHasSavedEdits] = useState(false);
9
8
  const [unsavedLabels, setUnsavedLabels] = useState(labels);
9
+ const [isEditing, setIsEditing] = React.useState(false);
10
+ const handleEditingStateChange = (editingState) => {
11
+ setIsEditing(editingState);
12
+ onEditingChange?.(editingState);
13
+ };
10
14
  const validateLabels = () => {
11
15
  const errors = [];
12
16
  const duplicatesMap = new Map();
@@ -90,10 +94,8 @@ export const EditableLabelsDescriptionListGroup = ({ title = 'Labels', contentWh
90
94
  }
91
95
  return false;
92
96
  };
93
- // Add a ref for the alert
94
- const alertRef = React.useRef(null);
95
97
  return (React.createElement(DashboardDescriptionListGroup, { editButtonTestId: "editable-labels-group-edit", saveButtonTestId: "editable-labels-group-save", title: title, isEmpty: labels.length === 0, contentWhenEmpty: contentWhenEmpty, isEditable: !isArchive, isEditing: isEditing, isSavingEdits: isSavingEdits, contentWhenEditing: React.createElement(React.Fragment, null,
96
- React.createElement(LabelGroup, { "data-testid": "editable-label-group", isEditable: !isSavingEdits, numLabels: unsavedLabels.length, addLabelControl: !isSavingEdits ? (React.createElement(Label, { variant: "overflow", color: "blue", onClick: addNewLabel, "data-testid": "add-label-button" }, "Add label")) : undefined }, unsavedLabels.map((label, index) => (React.createElement(Label, { "data-testid": `editable-label-${label}`, key: label + index, isEditable: !isSavingEdits, onClose: () => removeUnsavedLabel(index), closeBtnProps: {
98
+ React.createElement(LabelGroup, { "data-testid": "editable-label-group", isEditable: !isSavingEdits, numLabels: unsavedLabels.length, addLabelControl: !isSavingEdits ? (React.createElement(Label, { variant: "overflow", color: "blue", onClick: addNewLabel, "data-testid": "add-label-button" }, "Add label")) : undefined, className: spacing.mbMd }, unsavedLabels.map((label, index) => (React.createElement(Label, { "data-testid": `editable-label-${label}`, key: label + index, isEditable: !isSavingEdits, onClose: () => removeUnsavedLabel(index), closeBtnProps: {
97
99
  isDisabled: isSavingEdits,
98
100
  'data-testid': `remove-label-${label}`,
99
101
  }, onEditComplete: (event, newText) => handleEditComplete(event, newText, label), editableProps: {
@@ -101,12 +103,13 @@ export const EditableLabelsDescriptionListGroup = ({ title = 'Labels', contentWh
101
103
  'aria-label': 'Edit label',
102
104
  'data-testid': `edit-label-input-${label}`,
103
105
  }, ...labelProps, color: hasDuplicate(label, index) ? 'red' : (labelProps.color ?? 'blue'), variant: hasDuplicate(label, index) ? 'filled' : labelProps.variant }, label)))),
104
- labelErrors.length > 0 && (React.createElement(Alert, { ref: alertRef, "data-testid": "label-error-alert", variant: AlertVariant.danger, isInline: true, title: "Label validation errors:", "aria-live": "polite", isPlain: true, tabIndex: -1, className: spacing.mtMd },
105
- React.createElement("ul", null, labelErrors.map((error, index) => (React.createElement("li", { key: index }, error
106
- .split('**')
107
- .map((part, i) => (i % 2 === 0 ? part : React.createElement("strong", { key: i }, part)))))))))), onEditClick: () => {
106
+ labelErrors.length > 0 &&
107
+ labelErrors.map((error, index) => (React.createElement(Alert, { key: index, "data-testid": "label-error-alert", variant: AlertVariant.danger, isInline: true, title: error
108
+ .split('**')
109
+ .map((part, i) => (i % 2 === 0 ? part : React.createElement("strong", { key: i }, part))), "aria-live": "polite", isPlain: true, tabIndex: -1 }))),
110
+ onEditingChange && isEditing && (React.createElement(Alert, { "data-testid": "editing-labels-alert", variant: AlertVariant.info, isInline: true, title: "Changes affect all model versions", "aria-live": "polite", isPlain: true, tabIndex: -1 }))), onEditClick: () => {
108
111
  setUnsavedLabels(labels);
109
- setIsEditing(true);
112
+ handleEditingStateChange(true);
110
113
  }, onSaveEditsClick: async () => {
111
114
  if (labelErrors.length > 0) {
112
115
  return;
@@ -118,11 +121,11 @@ export const EditableLabelsDescriptionListGroup = ({ title = 'Labels', contentWh
118
121
  finally {
119
122
  setHasSavedEdits(true);
120
123
  setIsSavingEdits(false);
121
- setIsEditing(false);
124
+ handleEditingStateChange(false);
122
125
  }
123
126
  }, onDiscardEditsClick: () => {
124
127
  setUnsavedLabels(labels);
125
- setIsEditing(false);
128
+ handleEditingStateChange(false);
126
129
  } },
127
130
  React.createElement(LabelGroup, { "data-testid": "display-label-group", defaultIsOpen: hasSavedEdits, key: String(hasSavedEdits), numLabels: isCollapsible ? overflowCount : labels.length }, labels.map((label) => (React.createElement(Label, { key: label, color: "blue", "data-testid": "label", ...labelProps }, label))))));
128
131
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EditableLabelsDescriptionListGroup.js","sourceRoot":"","sources":["../../components/EditableLabelsDescriptionListGroup.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditableLabelsDescriptionListGroup.js","sourceRoot":"","sources":["../../components/EditableLabelsDescriptionListGroup.tsx"],"names":[],"mappings":"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"}
@@ -7,6 +7,7 @@ type EditableTextDescriptionListGroupProps = Pick<DashboardDescriptionListGroupP
7
7
  isArchive?: boolean;
8
8
  editableVariant: 'TextInput' | 'TextArea';
9
9
  truncateMaxLines?: number;
10
+ onEditingChange?: (editingState: boolean) => void;
10
11
  };
11
12
  declare const EditableTextDescriptionListGroup: React.FC<EditableTextDescriptionListGroupProps>;
12
13
  export default EditableTextDescriptionListGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"EditableTextDescriptionListGroup.d.ts","sourceRoot":"","sources":["../../components/EditableTextDescriptionListGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B,OAAsC,EACpC,kCAAkC,EACnC,MAAM,4CAA4C,CAAC;AAGpD,KAAK,qCAAqC,GAAG,IAAI,CAC/C,kCAAkC,EAClC,OAAO,GAAG,kBAAkB,CAC7B,GAAG;IACF,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,WAAW,GAAG,UAAU,CAAC;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,QAAA,MAAM,gCAAgC,EAAE,KAAK,CAAC,EAAE,CAAC,qCAAqC,CAgFrF,CAAC;AAEF,eAAe,gCAAgC,CAAC"}
1
+ {"version":3,"file":"EditableTextDescriptionListGroup.d.ts","sourceRoot":"","sources":["../../components/EditableTextDescriptionListGroup.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,OAAsC,EACpC,kCAAkC,EACnC,MAAM,4CAA4C,CAAC;AAGpD,KAAK,qCAAqC,GAAG,IAAI,CAC/C,kCAAkC,EAClC,OAAO,GAAG,kBAAkB,CAC7B,GAAG;IACF,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,eAAe,EAAE,WAAW,GAAG,UAAU,CAAC;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,KAAK,IAAI,CAAC;CACnD,CAAC;AAEF,QAAA,MAAM,gCAAgC,EAAE,KAAK,CAAC,EAAE,CAAC,qCAAqC,CAuGrF,CAAC;AAEF,eAAe,gCAAgC,CAAC"}
@@ -1,16 +1,23 @@
1
1
  import * as React from 'react';
2
- import { ExpandableSection, TextArea, TextInput } from '@patternfly/react-core';
2
+ import { Alert, AlertVariant, ExpandableSection, TextArea, TextInput, } from '@patternfly/react-core';
3
+ import spacing from '@patternfly/react-styles/css/utilities/Spacing/spacing';
3
4
  import DashboardDescriptionListGroup from '../components/DashboardDescriptionListGroup';
4
5
  import FormFieldset from '../components/FormFieldset';
5
- const EditableTextDescriptionListGroup = ({ title, contentWhenEmpty, value, isArchive, saveEditedValue, baseTestId, editableVariant, truncateMaxLines = 12, }) => {
6
+ const EditableTextDescriptionListGroup = ({ title, contentWhenEmpty, value, isArchive, saveEditedValue, baseTestId, editableVariant, truncateMaxLines = 12, onEditingChange, }) => {
6
7
  const [isEditing, setIsEditing] = React.useState(false);
7
8
  const [unsavedValue, setUnsavedValue] = React.useState(value);
8
9
  const [isSavingEdits, setIsSavingEdits] = React.useState(false);
9
10
  const [isTextExpanded, setIsTextExpanded] = React.useState(false);
11
+ const handleEditingStateChange = (editingState) => {
12
+ setIsEditing(editingState);
13
+ onEditingChange?.(editingState);
14
+ };
10
15
  const editableTextArea = editableVariant === 'TextInput' ? (React.createElement(TextInput, { autoFocus: true, "data-testid": baseTestId && `${baseTestId}-input`, "aria-label": `Text input for editing ${title}`, value: unsavedValue, onChange: (_event, v) => setUnsavedValue(v), isDisabled: isSavingEdits })) : (React.createElement(TextArea, { autoFocus: true, "data-testid": baseTestId && `${baseTestId}-input`, "aria-label": `Text box for editing ${title}`, value: unsavedValue, onChange: (_event, v) => setUnsavedValue(v), isDisabled: isSavingEdits, rows: 24, resizeOrientation: "vertical" }));
11
- return (React.createElement(DashboardDescriptionListGroup, { title: title, isEmpty: !value, contentWhenEmpty: contentWhenEmpty, isEditable: !isArchive, isEditing: isEditing, isSavingEdits: isSavingEdits, groupTestId: baseTestId && `${baseTestId}-group`, editButtonTestId: baseTestId && `${baseTestId}-edit`, saveButtonTestId: baseTestId && `${baseTestId}-save`, cancelButtonTestId: baseTestId && `${baseTestId}-cancel`, contentWhenEditing: React.createElement(FormFieldset, { component: editableTextArea }), onEditClick: () => {
16
+ return (React.createElement(DashboardDescriptionListGroup, { title: title, isEmpty: !value, contentWhenEmpty: contentWhenEmpty, isEditable: !isArchive, isEditing: isEditing, isSavingEdits: isSavingEdits, groupTestId: baseTestId && `${baseTestId}-group`, editButtonTestId: baseTestId && `${baseTestId}-edit`, saveButtonTestId: baseTestId && `${baseTestId}-save`, cancelButtonTestId: baseTestId && `${baseTestId}-cancel`, contentWhenEditing: React.createElement(React.Fragment, null,
17
+ React.createElement(FormFieldset, { component: editableTextArea }),
18
+ onEditingChange && isEditing && (React.createElement(Alert, { "data-testid": "editing-description-alert", className: spacing.mtMd, variant: AlertVariant.info, isInline: true, title: "Changes affect all model versions", "aria-live": "polite", isPlain: true, tabIndex: -1 }))), onEditClick: () => {
12
19
  setUnsavedValue(value);
13
- setIsEditing(true);
20
+ handleEditingStateChange(true);
14
21
  }, onSaveEditsClick: async () => {
15
22
  setIsSavingEdits(true);
16
23
  try {
@@ -19,10 +26,10 @@ const EditableTextDescriptionListGroup = ({ title, contentWhenEmpty, value, isAr
19
26
  finally {
20
27
  setIsSavingEdits(false);
21
28
  }
22
- setIsEditing(false);
29
+ handleEditingStateChange(false);
23
30
  }, onDiscardEditsClick: () => {
24
31
  setUnsavedValue(value);
25
- setIsEditing(false);
32
+ handleEditingStateChange(false);
26
33
  } },
27
34
  React.createElement(ExpandableSection, { "data-testid": baseTestId, variant: "truncate", truncateMaxLines: truncateMaxLines, toggleText: isTextExpanded ? 'Show less' : 'Show more', onToggle: (_event, isExpanded) => setIsTextExpanded(isExpanded), isExpanded: isTextExpanded }, value)));
28
35
  };
@@ -1 +1 @@
1
- {"version":3,"file":"EditableTextDescriptionListGroup.js","sourceRoot":"","sources":["../../components/EditableTextDescriptionListGroup.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"EditableTextDescriptionListGroup.js","sourceRoot":"","sources":["../../components/EditableTextDescriptionListGroup.tsx"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"WhosMyAdministrator.d.ts","sourceRoot":"","sources":["../../components/WhosMyAdministrator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAK1E,KAAK,KAAK,GAAG;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAiCxC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"WhosMyAdministrator.d.ts","sourceRoot":"","sources":["../../components/WhosMyAdministrator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAmB,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAI1E,KAAK,KAAK,GAAG;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC,CAAC;AAEF,QAAA,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAqCxC,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -2,8 +2,11 @@ import * as React from 'react';
2
2
  import { Button, Popover, PopoverPosition } from '@patternfly/react-core';
3
3
  import { OutlinedQuestionCircleIcon } from '@patternfly/react-icons';
4
4
  import PopoverListContent from '../components/PopoverListContent';
5
- import { FindAdministratorOptions } from '../utilities/const';
6
- const WhosMyAdministrator = ({ buttonLabel = "Who's my administrator?", headerContent, leadText, isInline, contentTestId, linkTestId, popoverPosition = PopoverPosition.bottom, }) => (React.createElement(Popover, { showClose: true, position: popoverPosition, headerContent: headerContent || 'Your administrator might be:', hasAutoWidth: true, maxWidth: "370px", bodyContent: React.createElement(PopoverListContent, { "data-testid": contentTestId, leadText: leadText, listHeading: headerContent ? 'Your administrator might be:' : undefined, listItems: FindAdministratorOptions }) },
5
+ const WhosMyAdministrator = ({ buttonLabel = "Who's my administrator?", headerContent, leadText, isInline, contentTestId, linkTestId, popoverPosition = PopoverPosition.bottom, }) => (React.createElement(Popover, { showClose: true, position: popoverPosition, headerContent: headerContent || 'Your administrator might be:', hasAutoWidth: true, maxWidth: "370px", bodyContent: React.createElement(PopoverListContent, { "data-testid": contentTestId, leadText: leadText, listHeading: headerContent ? 'Your administrator might be:' : undefined, listItems: [
6
+ 'The person who gave you your username, or who helped you to log in for the first time',
7
+ 'Someone in your IT department or help desk',
8
+ 'A project manager or developer',
9
+ ] }) },
7
10
  React.createElement(Button, { isInline: isInline, variant: "link", icon: React.createElement(OutlinedQuestionCircleIcon, null), "data-testid": linkTestId }, buttonLabel)));
8
11
  export default WhosMyAdministrator;
9
12
  //# sourceMappingURL=WhosMyAdministrator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"WhosMyAdministrator.js","sourceRoot":"","sources":["../../components/WhosMyAdministrator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAY7D,MAAM,mBAAmB,GAAoB,CAAC,EAC5C,WAAW,GAAG,yBAAyB,EACvC,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,UAAU,EACV,eAAe,GAAG,eAAe,CAAC,MAAM,GACzC,EAAE,EAAE,CAAC,CACJ,oBAAC,OAAO,IACN,SAAS,QACT,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,aAAa,IAAI,8BAA8B,EAC9D,YAAY,QACZ,QAAQ,EAAC,OAAO,EAChB,WAAW,EACT,oBAAC,kBAAkB,mBACJ,aAAa,EAC1B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,SAAS,EACvE,SAAS,EAAE,wBAAwB,GACnC;IAGJ,oBAAC,MAAM,IACL,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,MAAM,EACd,IAAI,EAAE,oBAAC,0BAA0B,OAAG,iBACvB,UAAU,IAEtB,WAAW,CACL,CACD,CACX,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"WhosMyAdministrator.js","sourceRoot":"","sources":["../../components/WhosMyAdministrator.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,MAAM,yBAAyB,CAAC;AACrE,OAAO,kBAAkB,MAAM,iCAAiC,CAAC;AAYjE,MAAM,mBAAmB,GAAoB,CAAC,EAC5C,WAAW,GAAG,yBAAyB,EACvC,aAAa,EACb,QAAQ,EACR,QAAQ,EACR,aAAa,EACb,UAAU,EACV,eAAe,GAAG,eAAe,CAAC,MAAM,GACzC,EAAE,EAAE,CAAC,CACJ,oBAAC,OAAO,IACN,SAAS,QACT,QAAQ,EAAE,eAAe,EACzB,aAAa,EAAE,aAAa,IAAI,8BAA8B,EAC9D,YAAY,QACZ,QAAQ,EAAC,OAAO,EAChB,WAAW,EACT,oBAAC,kBAAkB,mBACJ,aAAa,EAC1B,QAAQ,EAAE,QAAQ,EAClB,WAAW,EAAE,aAAa,CAAC,CAAC,CAAC,8BAA8B,CAAC,CAAC,CAAC,SAAS,EACvE,SAAS,EAAE;YACT,uFAAuF;YACvF,4CAA4C;YAC5C,gCAAgC;SACjC,GACD;IAGJ,oBAAC,MAAM,IACL,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAC,MAAM,EACd,IAAI,EAAE,oBAAC,0BAA0B,OAAG,iBACvB,UAAU,IAEtB,WAAW,CACL,CACD,CACX,CAAC;AAEF,eAAe,mBAAmB,CAAC"}
@@ -12,17 +12,12 @@ export { default as FormFieldset } from './FormFieldset';
12
12
  export { default as InlineTruncatedClipboardCopy } from './InlineTruncatedClipboardCopy';
13
13
  export { default as KubeflowDocs } from './KubeflowDocs';
14
14
  export { default as MarkdownView } from './MarkdownView';
15
- export { default as NavBar } from './NavBar';
16
- export { default as NavSidebar } from './NavSidebar';
17
15
  export { default as PopoverListContent } from './PopoverListContent';
18
16
  export { default as ResourceNameTooltip } from './ResourceNameTooltip';
19
17
  export { default as SimpleSelect } from './SimpleSelect';
20
- export { default as ToastNotification } from './ToastNotification';
21
- export { default as ToastNotifications } from './ToastNotifications';
22
18
  export { default as TruncatedText } from './TruncatedText';
23
19
  export { default as TypeaheadSelect } from './TypeaheadSelect';
24
20
  export { default as WhosMyAdministrator } from './WhosMyAdministrator';
25
- export * from './browserStorage';
26
21
  export * from './dashboard';
27
22
  export * from './design';
28
23
  export * from './notFound';