-
ViewSelected.js:
- Description: Defines a React component called
ViewSelectedfor displaying selected data in a dialog box. - Components:
EntityParameter: A functional component to render a table row for a particular parameter of the selected entities.ViewSelected: A class component to render a dialog box with a table displaying parameters of the selected entities.
- Description: Defines a React component called
-
auth.js:
- Description: Contains functions for initializing and handling authentication using Keycloak.
- Functions:
initAuth: Initializes Keycloak authentication.checkAuth: Checks the authentication status and handles different scenarios based on the application's context (standalone, framed, or delegate).verifyMessage: Verifies messages received from other tabs during the authentication process.
-
utils.js:
- Description: Contains utility functions used across the application.
- Functions:
capitalizeFirstLetter: Capitalizes the first letter of a string.formatBytes: Formats a byte size value into a human-readable format.getFileNameFromPath: Extracts the file name from a file path.getFormattedDateTime: Formats a date and time string.isValidURL: Checks if a string is a valid URL.
-
AuthWidget.js:
- Description: Defines a React component called
AuthWidgetfor displaying the authentication widget. - Props:
currentUser: The current user's name.setCurrentUser: A function to set the current user's name.
- Description: Defines a React component called
-
ColoredCircularProgress.js:
- Description: Defines a React component called
ColoredCircularProgressfor rendering a colored circular progress indicator. - Props:
- Inherits all props from Material-UI's
CircularProgresscomponent.
- Inherits all props from Material-UI's
- Description: Defines a React component called
-
WarningBox.js:
- Description: Defines a React component called
WarningBoxfor displaying warning messages. - Props:
message: The warning message to display. If the message is "ok" or undefined, nothing is rendered.
- Description: Defines a React component called
-
TestTable.js:
- Description: The
TestTablecomponent is a React component designed to display a table of test data. It utilizes themui-datatableslibrary for rendering the table and@material-ui/core/stylesfor theming. The component has several methods to handle actions like downloading selected JSON, hiding table rows, viewing selected items, adding tests to compare, and handling the closing of view selected items. It also defines a custom theme for the table using thecreateMuiThemefunction. The component is wrapped withwithSnackbarto enable notification features.
- Description: The
-
theme.js:
- Description: The
theme.jsfile exports a default object that defines a color scheme for various UI elements. It includes colors for backgrounds, table headers, table rows, text, buttons, and other UI elements. This theme object can be used throughout the app to maintain a consistent color scheme and styling.
- Description: The
-
ThreeWaySwitch.js:
- Description: The
ThreeWaySwitchcomponent is a React component that renders a three-way switch UI element. It uses styled-components to define styled divs and input elements for the switch, labels, and radio buttons. The component maintains a local state to keep track of the selected value and provides a method to handle changes to the selection. It renders a set of radio buttons and labels for each value, and a selection span that visually indicates the current selection. The position of the selection span is updated based on the selected value to provide a visual indication of the current selection to the user.
- Description: The
-
ValidationFramework.js:
- Description: Defines a class called
ValidationFrameworkfor validating form inputs. - Classes:
ValidationFramework: A class to handle form validation.- Methods:
validate: Validates the form data based on the defined rules.isValid: Checks if the form data is valid.getErrors: Retrieves the validation errors.
- Methods:
- Functions:
validateField: Validates a single form field based on the defined rules.validateForm: Validates the entire form based on the defined rules.
-
ConfigForm.js:
- Description: Defines a React component for rendering a configuration form.
-
ContextMain.js:
- Description: Defines the main context for the application using React's Context API.
- Exports:
ContextMain: The main context created usingReact.createContext().ContextMainProvider: A provider component forContextMainthat holds the state and methods for managing authentication, filters, model comparisons, test comparisons, and status.
- State:
auth: An object representing authentication state.filters: An object representing filter state.validFilterValues: A state for holding valid filter values, initially set tonull.compareModels: An object representing the state for comparing models.compareTests: An object representing the state for comparing tests.status: A string representing the status, initially set to an empty string.
-
datastore.js:
- Description: Contains functions for interacting with the data store.
- Functions:
fetchData: Fetches data from the data store.saveData: Saves data to the data store.
-
ErrorDialog.js:
- Description: Defines a React component called
ErrorDialogfor displaying error messages in a dialog.
- Description: Defines a React component called
-
globals.js:
- Description: Contains global variables and constants used across the application.
- Variables:
DevMode: A boolean indicating whether the application is in development mode. Set tofalsefor production.baseUrl: The base URL for the validation service.querySizeLimit: The maximum size for queries.collaboratoryOrigin: The origin URL for the collaboratory.hashChangedTopic: The topic for hash change events in the community app.updateSettingsTopic: The topic for updating settings in the community app.isParent: A boolean indicating whether the current window is a parent window.isIframe: A boolean indicating whether the current window is an iframe.isFramedApp: A boolean indicating whether the current app is framed.settingsDelimiter: The delimiter for settings, set to a comma.filterCommonKeys: Common filter keys for both models and tests.ADMIN_PROJECT_ID: The project ID for admin.corsProxy: The URL of the CORS proxy to use.
- Functions:
updateHash(value): Updates the hash in the URL and posts a message to the parent window if the app is framed.
-
globals-staging.js:
- Description: Contains staging global variables and constants used across the application, similar to globals.js but for the staging environment.
-
index.js:
- Description: Entry point of the application where the React app is rendered.
- Functions:
registerServiceWorker: Registers the service worker for offline caching.renderApp: Renders the React app.
-
Introduction.js:
- Description: Defines a React component called
Introductionfor displaying an introduction section.
- Description: Defines a React component called
-
LoadingIndicator.js:
- Description: Defines a React component called
LoadingIndicatorfor rendering a loading indicator.
- Description: Defines a React component called
-
LoadingIndicatorModal.js:
- Description: Defines a React component called
LoadingIndicatorModalfor rendering a modal with a loading indicator.
- Description: Defines a React component called
-
Markdown.js:
- Description: The
Markdown.jsfile contains utility functions for working with Markdown content. It exports a functionrenderMarkdownwhich takes a Markdown string as an argument and returns HTML string using themarkedlibrary.
- Description: The
-
ModelAddForm.js:
- Description: The
ModelAddForm.jsfile defines a React component namedModelAddFormfor adding a new model. It imports various components and libraries such as React, Material-UI components, and custom components. TheModelAddFormcomponent contains form fields for entering model details and has methods for handling form submission and validation.
- Description: The
-
ModelDetail.js:
- Description: The
ModelDetail.jsfile defines aModelDetailReact component for displaying detailed information about a model. - Key Points:
- Import Statements: Libraries and components such as React, PropTypes, Material-UI components, and custom components like
ModelDetailHeader,ModelDetailContent, etc., are imported. - Styles: A
stylesconstant is defined for styling elements within the component using Material-UI's styling solution. - TabPanel and MyDialogTitle Functions: Functional components for rendering tab panels and a custom dialog title bar are defined.
- ModelDetail Class:
- The class extends
React.Componentand initializes state variables liketabValue,results,loadingResult, etc., in the constructor. - Methods like
updateCurrentModelData,checkCompareStatus,addModelCompare,removeModelCompare, etc., are defined for various functionalities. - The
rendermethod defines the JSX structure of the component which includes a dialog with various tabs for displaying different pieces of information about the model.
- The class extends
- PropTypes and Export:
- PropTypes are defined for
ModelDetailto enforce the type of props that must be passed. - The
ModelDetailcomponent is exported as the default export of the module, wrapped withwithSnackbarandwithStyleshigher-order components for snackbar notifications and custom styles, respectively.
- PropTypes are defined for
- Import Statements: Libraries and components such as React, PropTypes, Material-UI components, and custom components like
- Description: The
-
ModelDetailContent.js:
- Description: Defines a React component called
ModelDetailContentfor rendering the content of the model detail view.
- Description: Defines a React component called
-
ModelDetailHeader.js:
- Description: Defines a React component called
ModelDetailHeaderfor rendering the header of the model detail view.
- Description: Defines a React component called
-
ModelDetailMetadata.js:
- Description: Defines a React component called
ModelDetailMetadatafor rendering the metadata of a model in the detail view.
- Description: Defines a React component called
-
ModelEditForm.js:
- Description: Defines a React component called
ModelEditFormfor editing an existing model.
- Description: Defines a React component called
-
ModelInstanceAddForm.js:
- Description: Defines a React component called
ModelInstanceAddFormfor adding a new model instance.
- Description: Defines a React component called
-
ModelInstanceArrayOfForms.js:
- Description: Defines a React component called
ModelInstanceArrayOfFormsfor rendering an array of model instance forms.
- Description: Defines a React component called
-
ModelInstanceEditForm.js:
- Description: Defines a React component called
ModelInstanceEditFormfor editing an existing model instance.
- Description: Defines a React component called
-
ModelInstanceForm.js:
- Description: Defines a React component called
ModelInstanceFormfor rendering a model instance form.
- Description: Defines a React component called
-
ModelResultOverview.js:
- Description: Defines a React component called
ModelResultOverviewfor displaying an overview of model results.
- Description: Defines a React component called
-
ModelTable.js:
- Description: Defines a React component called
ModelTablefor rendering a table of models.
- Description: Defines a React component called
-
MUIDataTableCustomRowToolbar.js:
- Description: Defines a custom row toolbar component used in the Material-UI DataTable.
-
MUIDataTableCustomToolbar.js:
- Description: Defines a custom toolbar component used in the Material-UI DataTable.
-
MultipleSelect.js:
- Description: Defines a React component called
MultipleSelectfor rendering a multiple select input field.
- Description: Defines a React component called
-
PersonSelect.js:
- Description: Defines a React component called
PersonSelectfor rendering a person select input field.
- Description: Defines a React component called
-
ResultDetail.js:
- Description: Defines a React component called
ResultDetailfor displaying detailed information about a test result.
- Description: Defines a React component called
-
ResultDetailContent.js:
- Description: Defines a React component called
ResultDetailContentfor rendering the content of the result detail view.
- Description: Defines a React component called
-
ResultDetailHeader.js:
- Description: Defines a React component called
ResultDetailHeaderfor rendering the header of the result detail view.
- Description: Defines a React component called
-
ResultGraphs.js:
- Description: Defines a React component called
ResultGraphsfor displaying graphs related to a test result.
- Description: Defines a React component called
/src ├── /components │ ├── /Auth │ │ ├── auth.js │ │ └── AuthWidget.js │ ├── /Forms │ │ ├── ConfigForm.js │ │ ├── ModelAddForm.js │ │ ├── ModelEditForm.js │ │ ├── ModelInstanceAddForm.js │ │ ├── ModelInstanceEditForm.js │ │ ├── ModelInstanceForm.js │ │ ├── TestAddForm.js │ │ ├── TestEditForm.js │ │ ├── TestInstanceAddForm.js │ │ ├── TestInstanceEditForm.js │ │ └── TestInstanceForm.js │ ├── /Layout │ │ ├── ConfigDisplaySimple.js │ │ ├── ConfigDisplayTop.js │ │ ├── ConfigDisplayTop.js │ │ ├── ErrorDialog.js │ │ ├── LoadingIndicator.js │ │ ├── LoadingIndicatorModal.js │ │ ├── Markdown.js │ │ ├── MUIDataTableCustomRowToolbar.js │ │ ├── MUIDataTableCustomToolbar.js │ │ └── SearchBar.js │ ├── /Model │ │ ├── ModelDetail.js │ │ ├── ModelDetailContent.js │ │ ├── ModelDetailHeader.js │ │ ├── ModelDetailMetadata.js │ │ ├── ModelResultOverview.js │ │ └── ModelTable.js │ ├── /Result │ │ ├── ResultDetail.js │ │ ├── ResultDetailContent.js │ │ ├── ResultDetailHeader.js │ │ ├── ResultGraphs.js │ │ ├── ResultModelTestInfo.js │ │ └── ResultRelatedFiles.js │ ├── /Compare │ │ ├── CompareMultiGraphs.js │ │ └── CompareMultiResults.js │ ├── /Select │ │ ├── MultipleSelect.js │ │ ├── PersonSelect.js │ │ └── SingleSelect.js │ ├── ColoredCircularProgress.js │ ├── SwitchMultiWay.js │ └── ContextMain.js ├── /services │ └── datastore.js ├── /utils │ ├── theme.js │ └── utils.js ├── globals-staging.js ├── globals.js ├── Introduction.js ├── ValidationFramework.js ├── App.css ├── index.js ├── setupTests.js └── ViewSelected.js