From 1dbfa91ec652496beddd5b96944dd7e72a71a3c4 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?L=C3=A9o=20Banno-Cloutier?=
 <leo.banno-cloutier@savoirfairelinux.com>
Date: Tue, 8 Aug 2023 11:40:38 -0400
Subject: [PATCH] jams-react-client: rename all js files to tsx files

Change-Id: I00c425ad2eb352ed922bc3c84353f652bd11cb70
---
 jams-react-client/src/{api.js => api.tsx}     |  0
 jams-react-client/src/{auth.js => auth.tsx}   |  2 +-
 .../CaSetup/{CaSetup.js => CaSetup.tsx}       |  2 +-
 .../src/components/Card/{Card.js => Card.tsx} |  2 +-
 .../Card/{CardAvatar.js => CardAvatar.tsx}    |  2 +-
 .../Card/{CardBody.js => CardBody.tsx}        |  2 +-
 .../Card/{CardFooter.js => CardFooter.tsx}    |  2 +-
 .../Card/{CardHeader.js => CardHeader.tsx}    |  2 +-
 .../Card/{CardIcon.js => CardIcon.tsx}        |  2 +-
 .../{CountrySelect.js => CountrySelect.tsx}   |  0
 .../{CreateAdmin.js => CreateAdmin.tsx}       |  0
 .../CustomButtons/{Button.js => Button.tsx}   |  2 +-
 ...omImgDropZone.js => CustomImgDropZone.tsx} |  0
 .../{CustomInput.js => CustomInput.tsx}       |  2 +-
 ...stomPopupState.js => CustomPopupState.tsx} |  0
 ...CustomUiPreview.js => CustomUiPreview.tsx} |  0
 .../{JamiIdCard.js => JamiIdCard.tsx}         |  0
 .../CustomUiPreview/{TipBox.js => TipBox.tsx} |  0
 .../CustomUiPreview/{luma.js => luma.tsx}     |  0
 ...izedSteppers.js => CustomizedSteppers.tsx} |  0
 .../Devices/{Devices.js => Devices.tsx}       |  8 +++----
 .../Drawer/{Drawer.js => Drawer.tsx}          |  2 +-
 .../Footer/{Footer.js => Footer.tsx}          |  2 +-
 .../{FormikField.js => FormikField.tsx}       |  0
 .../{GridContainer.js => GridContainer.tsx}   |  0
 .../Grid/{GridItem.js => GridItem.tsx}        |  0
 .../{AdStorageForm.js => AdStorageForm.tsx}   |  0
 ...tyManagement.js => IdentityManagement.tsx} |  0
 ...LdapStorageForm.js => LdapStorageForm.tsx} |  0
 ...calStorageForm.js => LocalStorageForm.tsx} |  0
 .../{LanguagePicker.js => LanguagePicker.tsx} |  0
 .../Navbars/{Navbar.js => Navbar.tsx}         |  4 ++--
 .../{PasswordDialog.js => PasswordDialog.tsx} |  4 ++--
 ...rverParameters.js => ServerParameters.tsx} |  0
 .../Sidebar/{Sidebar.js => Sidebar.tsx}       |  2 +-
 ...printSnackbar.js => BlueprintSnackbar.tsx} |  0
 ...nfigured.route.js => configured.route.tsx} |  0
 .../src/{globalUrls.js => globalUrls.tsx}     |  0
 jams-react-client/src/{i18n.js => i18n.tsx}   |  0
 jams-react-client/src/{index.js => index.tsx} | 18 +++++++--------
 .../layouts/{BaseLayout.js => BaseLayout.tsx} | 18 +++++++--------
 .../layouts/{ListLayout.js => ListLayout.tsx} | 18 +++++++--------
 .../src/layouts/{SignIn.js => SignIn.tsx}     |  2 +-
 .../src/layouts/{SignUp.js => SignUp.tsx}     |  0
 ...protected.route.js => protected.route.tsx} |  0
 .../{BlueprintRoute.js => BlueprintRoute.tsx} |  2 +-
 ...BlueprintsRoute.js => BlueprintsRoute.tsx} |  4 ++--
 ...CreateUserRoute.js => CreateUserRoute.tsx} |  4 ++--
 .../routes/{GroupRoute.js => GroupRoute.tsx}  |  4 ++--
 .../{GroupsRoute.js => GroupsRoute.tsx}       |  4 ++--
 .../{SettingsRoute.js => SettingsRoute.tsx}   |  4 ++--
 .../routes/{UserRoute.js => UserRoute.tsx}    |  4 ++--
 .../routes/{UsersRoute.js => UsersRoute.tsx}  |  4 ++--
 jams-react-client/src/{tools.js => tools.tsx} |  0
 .../Blueprint/{Blueprint.js => Blueprint.tsx} |  0
 ...lorPickerPopup.js => ColorPickerPopup.tsx} |  0
 ...tion.js => EditBlueprintConfiguration.tsx} | 16 +++++++-------
 ...ssions.js => EditBlueprintPermissions.tsx} | 18 +++++++--------
 ...EditBlueprintUi.js => EditBlueprintUi.tsx} | 16 +++++++-------
 ...printUiForm.js => EditBlueprintUiForm.tsx} |  0
 ...cyDataContext.js => PolicyDataContext.tsx} |  0
 ...parsePolicyData.js => parsePolicyData.tsx} |  0
 ....constants.js => policyData.constants.tsx} |  0
 ...datePolicyData.js => updatePolicyData.tsx} |  0
 .../{Blueprints.js => Blueprints.tsx}         | 20 ++++++++---------
 ...intDialog.js => CreateBlueprintDialog.tsx} |  2 +-
 .../Contacts/{Contacts.js => Contacts.tsx}    | 22 +++++++++----------
 ...teGroupDialog.js => CreateGroupDialog.tsx} |  2 +-
 .../Groups/{EditGroup.js => EditGroup.tsx}    | 20 ++++++++---------
 .../views/Groups/{Groups.js => Groups.tsx}    | 18 +++++++--------
 ...ntsOptions.js => getBlueprintsOptions.tsx} |  0
 .../Settings/{General.js => General.tsx}      |  8 +++----
 .../Settings/{Settings.js => Settings.tsx}    |  2 +-
 .../{Subscription.js => Subscription.tsx}     |  8 +++----
 ...yUserProfile.js => DisplayUserProfile.tsx} | 20 ++++++++---------
 ...erProfile.js => EditCreateUserProfile.tsx} | 20 ++++++++---------
 .../{UserProfile.js => UserProfile.tsx}       |  2 +-
 .../{cropImage.js => cropImage.tsx}           |  0
 .../src/views/Users/{Users.js => Users.tsx}   | 20 ++++++++---------
 79 files changed, 171 insertions(+), 171 deletions(-)
 rename jams-react-client/src/{api.js => api.tsx} (100%)
 rename jams-react-client/src/{auth.js => auth.tsx} (99%)
 rename jams-react-client/src/components/CaSetup/{CaSetup.js => CaSetup.tsx} (99%)
 rename jams-react-client/src/components/Card/{Card.js => Card.tsx} (98%)
 rename jams-react-client/src/components/Card/{CardAvatar.js => CardAvatar.tsx} (98%)
 rename jams-react-client/src/components/Card/{CardBody.js => CardBody.tsx} (97%)
 rename jams-react-client/src/components/Card/{CardFooter.js => CardFooter.tsx} (97%)
 rename jams-react-client/src/components/Card/{CardHeader.js => CardHeader.tsx} (98%)
 rename jams-react-client/src/components/Card/{CardIcon.js => CardIcon.tsx} (97%)
 rename jams-react-client/src/components/CountrySelect/{CountrySelect.js => CountrySelect.tsx} (100%)
 rename jams-react-client/src/components/CreateAdmin/{CreateAdmin.js => CreateAdmin.tsx} (100%)
 rename jams-react-client/src/components/CustomButtons/{Button.js => Button.tsx} (98%)
 rename jams-react-client/src/components/CustomImgDropZone/{CustomImgDropZone.js => CustomImgDropZone.tsx} (100%)
 rename jams-react-client/src/components/CustomInput/{CustomInput.js => CustomInput.tsx} (98%)
 rename jams-react-client/src/components/CustomPopupState/{CustomPopupState.js => CustomPopupState.tsx} (100%)
 rename jams-react-client/src/components/CustomUiPreview/{CustomUiPreview.js => CustomUiPreview.tsx} (100%)
 rename jams-react-client/src/components/CustomUiPreview/{JamiIdCard.js => JamiIdCard.tsx} (100%)
 rename jams-react-client/src/components/CustomUiPreview/{TipBox.js => TipBox.tsx} (100%)
 rename jams-react-client/src/components/CustomUiPreview/{luma.js => luma.tsx} (100%)
 rename jams-react-client/src/components/CustomizedSteppers/{CustomizedSteppers.js => CustomizedSteppers.tsx} (100%)
 rename jams-react-client/src/components/Devices/{Devices.js => Devices.tsx} (98%)
 rename jams-react-client/src/components/Drawer/{Drawer.js => Drawer.tsx} (98%)
 rename jams-react-client/src/components/Footer/{Footer.js => Footer.tsx} (97%)
 rename jams-react-client/src/components/FormikField/{FormikField.js => FormikField.tsx} (100%)
 rename jams-react-client/src/components/Grid/{GridContainer.js => GridContainer.tsx} (100%)
 rename jams-react-client/src/components/Grid/{GridItem.js => GridItem.tsx} (100%)
 rename jams-react-client/src/components/IdentityManagement/{AdStorageForm.js => AdStorageForm.tsx} (100%)
 rename jams-react-client/src/components/IdentityManagement/{IdentityManagement.js => IdentityManagement.tsx} (100%)
 rename jams-react-client/src/components/IdentityManagement/{LdapStorageForm.js => LdapStorageForm.tsx} (100%)
 rename jams-react-client/src/components/IdentityManagement/{LocalStorageForm.js => LocalStorageForm.tsx} (100%)
 rename jams-react-client/src/components/LanguagePicker/{LanguagePicker.js => LanguagePicker.tsx} (100%)
 rename jams-react-client/src/components/Navbars/{Navbar.js => Navbar.tsx} (95%)
 rename jams-react-client/src/components/PasswordDialog/{PasswordDialog.js => PasswordDialog.tsx} (98%)
 rename jams-react-client/src/components/ServerParameters/{ServerParameters.js => ServerParameters.tsx} (100%)
 rename jams-react-client/src/components/Sidebar/{Sidebar.js => Sidebar.tsx} (99%)
 rename jams-react-client/src/components/Snackbar/{BlueprintSnackbar.js => BlueprintSnackbar.tsx} (100%)
 rename jams-react-client/src/{configured.route.js => configured.route.tsx} (100%)
 rename jams-react-client/src/{globalUrls.js => globalUrls.tsx} (100%)
 rename jams-react-client/src/{i18n.js => i18n.tsx} (100%)
 rename jams-react-client/src/{index.js => index.tsx} (87%)
 rename jams-react-client/src/layouts/{BaseLayout.js => BaseLayout.tsx} (94%)
 rename jams-react-client/src/layouts/{ListLayout.js => ListLayout.tsx} (94%)
 rename jams-react-client/src/layouts/{SignIn.js => SignIn.tsx} (99%)
 rename jams-react-client/src/layouts/{SignUp.js => SignUp.tsx} (100%)
 rename jams-react-client/src/{protected.route.js => protected.route.tsx} (100%)
 rename jams-react-client/src/routes/{BlueprintRoute.js => BlueprintRoute.tsx} (83%)
 rename jams-react-client/src/routes/{BlueprintsRoute.js => BlueprintsRoute.tsx} (54%)
 rename jams-react-client/src/routes/{CreateUserRoute.js => CreateUserRoute.tsx} (87%)
 rename jams-react-client/src/routes/{GroupRoute.js => GroupRoute.tsx} (64%)
 rename jams-react-client/src/routes/{GroupsRoute.js => GroupsRoute.tsx} (56%)
 rename jams-react-client/src/routes/{SettingsRoute.js => SettingsRoute.tsx} (55%)
 rename jams-react-client/src/routes/{UserRoute.js => UserRoute.tsx} (63%)
 rename jams-react-client/src/routes/{UsersRoute.js => UsersRoute.tsx} (56%)
 rename jams-react-client/src/{tools.js => tools.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{Blueprint.js => Blueprint.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{ColorPickerPopup.js => ColorPickerPopup.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{EditBlueprintConfiguration.js => EditBlueprintConfiguration.tsx} (98%)
 rename jams-react-client/src/views/Blueprint/{EditBlueprintPermissions.js => EditBlueprintPermissions.tsx} (97%)
 rename jams-react-client/src/views/Blueprint/{EditBlueprintUi.js => EditBlueprintUi.tsx} (94%)
 rename jams-react-client/src/views/Blueprint/{EditBlueprintUiForm.js => EditBlueprintUiForm.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{PolicyDataContext.js => PolicyDataContext.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{parsePolicyData.js => parsePolicyData.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{policyData.constants.js => policyData.constants.tsx} (100%)
 rename jams-react-client/src/views/Blueprint/{updatePolicyData.js => updatePolicyData.tsx} (100%)
 rename jams-react-client/src/views/Blueprints/{Blueprints.js => Blueprints.tsx} (94%)
 rename jams-react-client/src/views/Blueprints/{CreateBlueprintDialog.js => CreateBlueprintDialog.tsx} (98%)
 rename jams-react-client/src/views/Contacts/{Contacts.js => Contacts.tsx} (96%)
 rename jams-react-client/src/views/Groups/{CreateGroupDialog.js => CreateGroupDialog.tsx} (99%)
 rename jams-react-client/src/views/Groups/{EditGroup.js => EditGroup.tsx} (97%)
 rename jams-react-client/src/views/Groups/{Groups.js => Groups.tsx} (95%)
 rename jams-react-client/src/views/Groups/{getBlueprintsOptions.js => getBlueprintsOptions.tsx} (100%)
 rename jams-react-client/src/views/Settings/{General.js => General.tsx} (98%)
 rename jams-react-client/src/views/Settings/{Settings.js => Settings.tsx} (99%)
 rename jams-react-client/src/views/Settings/{Subscription.js => Subscription.tsx} (96%)
 rename jams-react-client/src/views/UserProfile/{DisplayUserProfile.js => DisplayUserProfile.tsx} (98%)
 rename jams-react-client/src/views/UserProfile/{EditCreateUserProfile.js => EditCreateUserProfile.tsx} (98%)
 rename jams-react-client/src/views/UserProfile/{UserProfile.js => UserProfile.tsx} (98%)
 rename jams-react-client/src/views/UserProfile/{cropImage.js => cropImage.tsx} (100%)
 rename jams-react-client/src/views/Users/{Users.js => Users.tsx} (95%)

diff --git a/jams-react-client/src/api.js b/jams-react-client/src/api.tsx
similarity index 100%
rename from jams-react-client/src/api.js
rename to jams-react-client/src/api.tsx
diff --git a/jams-react-client/src/auth.js b/jams-react-client/src/auth.tsx
similarity index 99%
rename from jams-react-client/src/auth.js
rename to jams-react-client/src/auth.tsx
index ec3b15a6..947ee504 100644
--- a/jams-react-client/src/auth.js
+++ b/jams-react-client/src/auth.tsx
@@ -1,4 +1,4 @@
-import configApiCall from "api.js";
+import configApiCall from "api";
 import axios from "axios";
 
 import {
diff --git a/jams-react-client/src/components/CaSetup/CaSetup.js b/jams-react-client/src/components/CaSetup/CaSetup.tsx
similarity index 99%
rename from jams-react-client/src/components/CaSetup/CaSetup.js
rename to jams-react-client/src/components/CaSetup/CaSetup.tsx
index 88497932..361c1ea4 100644
--- a/jams-react-client/src/components/CaSetup/CaSetup.js
+++ b/jams-react-client/src/components/CaSetup/CaSetup.tsx
@@ -6,7 +6,7 @@ import Button from "@mui/material/Button";
 import TextField from "@mui/material/TextField";
 import { makeStyles } from "@mui/styles";
 
-import CountrySelect from "components/CountrySelect/CountrySelect.js";
+import CountrySelect from "components/CountrySelect/CountrySelect";
 
 import auth from "../../auth";
 import axios from "axios";
diff --git a/jams-react-client/src/components/Card/Card.js b/jams-react-client/src/components/Card/Card.tsx
similarity index 98%
rename from jams-react-client/src/components/Card/Card.js
rename to jams-react-client/src/components/Card/Card.tsx
index acecb9ac..e0f03ac8 100644
--- a/jams-react-client/src/components/Card/Card.js
+++ b/jams-react-client/src/components/Card/Card.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 
 // core components
-import styles from "assets/jss/material-dashboard-react/components/cardStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/Card/CardAvatar.js b/jams-react-client/src/components/Card/CardAvatar.tsx
similarity index 98%
rename from jams-react-client/src/components/Card/CardAvatar.js
rename to jams-react-client/src/components/Card/CardAvatar.tsx
index 4cff1dc8..cf5a72b0 100644
--- a/jams-react-client/src/components/Card/CardAvatar.js
+++ b/jams-react-client/src/components/Card/CardAvatar.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 // core components
 
-import styles from "assets/jss/material-dashboard-react/components/cardAvatarStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardAvatarStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/Card/CardBody.js b/jams-react-client/src/components/Card/CardBody.tsx
similarity index 97%
rename from jams-react-client/src/components/Card/CardBody.js
rename to jams-react-client/src/components/Card/CardBody.tsx
index 93e9ee99..2ad5ecdd 100644
--- a/jams-react-client/src/components/Card/CardBody.js
+++ b/jams-react-client/src/components/Card/CardBody.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 
 // core components
-import styles from "assets/jss/material-dashboard-react/components/cardBodyStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardBodyStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/Card/CardFooter.js b/jams-react-client/src/components/Card/CardFooter.tsx
similarity index 97%
rename from jams-react-client/src/components/Card/CardFooter.js
rename to jams-react-client/src/components/Card/CardFooter.tsx
index 7cc2780e..31f09f0e 100644
--- a/jams-react-client/src/components/Card/CardFooter.js
+++ b/jams-react-client/src/components/Card/CardFooter.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 
 // core components
-import styles from "assets/jss/material-dashboard-react/components/cardFooterStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardFooterStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/Card/CardHeader.js b/jams-react-client/src/components/Card/CardHeader.tsx
similarity index 98%
rename from jams-react-client/src/components/Card/CardHeader.js
rename to jams-react-client/src/components/Card/CardHeader.tsx
index 88a9f1e1..594c3c38 100644
--- a/jams-react-client/src/components/Card/CardHeader.js
+++ b/jams-react-client/src/components/Card/CardHeader.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 
 // core components
-import styles from "assets/jss/material-dashboard-react/components/cardHeaderStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardHeaderStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/Card/CardIcon.js b/jams-react-client/src/components/Card/CardIcon.tsx
similarity index 97%
rename from jams-react-client/src/components/Card/CardIcon.js
rename to jams-react-client/src/components/Card/CardIcon.tsx
index 9da0bc7a..4daf5cd8 100644
--- a/jams-react-client/src/components/Card/CardIcon.js
+++ b/jams-react-client/src/components/Card/CardIcon.tsx
@@ -8,7 +8,7 @@ import { makeStyles } from "@mui/styles";
 // @mui/icons-material
 
 // core components
-import styles from "assets/jss/material-dashboard-react/components/cardIconStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/cardIconStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/CountrySelect/CountrySelect.js b/jams-react-client/src/components/CountrySelect/CountrySelect.tsx
similarity index 100%
rename from jams-react-client/src/components/CountrySelect/CountrySelect.js
rename to jams-react-client/src/components/CountrySelect/CountrySelect.tsx
diff --git a/jams-react-client/src/components/CreateAdmin/CreateAdmin.js b/jams-react-client/src/components/CreateAdmin/CreateAdmin.tsx
similarity index 100%
rename from jams-react-client/src/components/CreateAdmin/CreateAdmin.js
rename to jams-react-client/src/components/CreateAdmin/CreateAdmin.tsx
diff --git a/jams-react-client/src/components/CustomButtons/Button.js b/jams-react-client/src/components/CustomButtons/Button.tsx
similarity index 98%
rename from jams-react-client/src/components/CustomButtons/Button.js
rename to jams-react-client/src/components/CustomButtons/Button.tsx
index 3ce0082f..096a7150 100644
--- a/jams-react-client/src/components/CustomButtons/Button.js
+++ b/jams-react-client/src/components/CustomButtons/Button.tsx
@@ -8,7 +8,7 @@ import PropTypes from "prop-types";
 import { makeStyles } from "@mui/styles";
 import Button from "@mui/material/Button";
 
-import styles from "assets/jss/material-dashboard-react/components/buttonStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/buttonStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/CustomImgDropZone/CustomImgDropZone.js b/jams-react-client/src/components/CustomImgDropZone/CustomImgDropZone.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomImgDropZone/CustomImgDropZone.js
rename to jams-react-client/src/components/CustomImgDropZone/CustomImgDropZone.tsx
diff --git a/jams-react-client/src/components/CustomInput/CustomInput.js b/jams-react-client/src/components/CustomInput/CustomInput.tsx
similarity index 98%
rename from jams-react-client/src/components/CustomInput/CustomInput.js
rename to jams-react-client/src/components/CustomInput/CustomInput.tsx
index 2b20d1f2..bcf20d18 100644
--- a/jams-react-client/src/components/CustomInput/CustomInput.js
+++ b/jams-react-client/src/components/CustomInput/CustomInput.tsx
@@ -10,7 +10,7 @@ import Input from "@mui/material/Input";
 import Clear from "@mui/icons-material/Clear";
 import Check from "@mui/icons-material/Check";
 // core components
-import styles from "assets/jss/material-dashboard-react/components/customInputStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/customInputStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/CustomPopupState/CustomPopupState.js b/jams-react-client/src/components/CustomPopupState/CustomPopupState.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomPopupState/CustomPopupState.js
rename to jams-react-client/src/components/CustomPopupState/CustomPopupState.tsx
diff --git a/jams-react-client/src/components/CustomUiPreview/CustomUiPreview.js b/jams-react-client/src/components/CustomUiPreview/CustomUiPreview.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomUiPreview/CustomUiPreview.js
rename to jams-react-client/src/components/CustomUiPreview/CustomUiPreview.tsx
diff --git a/jams-react-client/src/components/CustomUiPreview/JamiIdCard.js b/jams-react-client/src/components/CustomUiPreview/JamiIdCard.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomUiPreview/JamiIdCard.js
rename to jams-react-client/src/components/CustomUiPreview/JamiIdCard.tsx
diff --git a/jams-react-client/src/components/CustomUiPreview/TipBox.js b/jams-react-client/src/components/CustomUiPreview/TipBox.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomUiPreview/TipBox.js
rename to jams-react-client/src/components/CustomUiPreview/TipBox.tsx
diff --git a/jams-react-client/src/components/CustomUiPreview/luma.js b/jams-react-client/src/components/CustomUiPreview/luma.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomUiPreview/luma.js
rename to jams-react-client/src/components/CustomUiPreview/luma.tsx
diff --git a/jams-react-client/src/components/CustomizedSteppers/CustomizedSteppers.js b/jams-react-client/src/components/CustomizedSteppers/CustomizedSteppers.tsx
similarity index 100%
rename from jams-react-client/src/components/CustomizedSteppers/CustomizedSteppers.js
rename to jams-react-client/src/components/CustomizedSteppers/CustomizedSteppers.tsx
diff --git a/jams-react-client/src/components/Devices/Devices.js b/jams-react-client/src/components/Devices/Devices.tsx
similarity index 98%
rename from jams-react-client/src/components/Devices/Devices.js
rename to jams-react-client/src/components/Devices/Devices.tsx
index 381d5eb2..535aad00 100755
--- a/jams-react-client/src/components/Devices/Devices.js
+++ b/jams-react-client/src/components/Devices/Devices.tsx
@@ -7,7 +7,7 @@ import { Formik, Field } from "formik";
 import { makeStyles } from "@mui/styles";
 import Tooltip from "@mui/material/Tooltip";
 import IconButton from "@mui/material/IconButton";
-import Button from "components/CustomButtons/Button.js";
+import Button from "components/CustomButtons/Button";
 import Table from "@mui/material/Table";
 import TableHead from "@mui/material/TableHead";
 import TableRow from "@mui/material/TableRow";
@@ -24,9 +24,9 @@ import TextField from "@mui/material/TextField";
 import Edit from "@mui/icons-material/Edit";
 import Close from "@mui/icons-material/Close";
 // core components
-import styles from "assets/jss/material-dashboard-react/components/devicesStyle.js";
-import auth from "auth.js";
-import configApiCall from "api.js";
+import styles from "assets/jss/material-dashboard-react/components/devicesStyle";
+import auth from "auth";
+import configApiCall from "api";
 import {
   api_path_delete_admin_device_revoke,
   api_path_delete_auth_device_revoke,
diff --git a/jams-react-client/src/components/Drawer/Drawer.js b/jams-react-client/src/components/Drawer/Drawer.tsx
similarity index 98%
rename from jams-react-client/src/components/Drawer/Drawer.js
rename to jams-react-client/src/components/Drawer/Drawer.tsx
index 3a81608b..19015582 100644
--- a/jams-react-client/src/components/Drawer/Drawer.js
+++ b/jams-react-client/src/components/Drawer/Drawer.tsx
@@ -1,7 +1,7 @@
 import React, { useCallback } from "react";
 import clsx from "clsx";
 import { makeStyles } from "@mui/styles";
-import CustomInput from "components/CustomInput/CustomInput.js";
+import CustomInput from "components/CustomInput/CustomInput";
 import Drawer from "@mui/material/Drawer";
 import List from "@mui/material/List";
 import Divider from "@mui/material/Divider";
diff --git a/jams-react-client/src/components/Footer/Footer.js b/jams-react-client/src/components/Footer/Footer.tsx
similarity index 97%
rename from jams-react-client/src/components/Footer/Footer.js
rename to jams-react-client/src/components/Footer/Footer.tsx
index 1f54292d..2586f390 100755
--- a/jams-react-client/src/components/Footer/Footer.js
+++ b/jams-react-client/src/components/Footer/Footer.tsx
@@ -2,7 +2,7 @@ import React from "react";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import styles from "assets/jss/material-dashboard-react/components/footerStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/footerStyle";
 
 const pjson = require("../../../package.json");
 
diff --git a/jams-react-client/src/components/FormikField/FormikField.js b/jams-react-client/src/components/FormikField/FormikField.tsx
similarity index 100%
rename from jams-react-client/src/components/FormikField/FormikField.js
rename to jams-react-client/src/components/FormikField/FormikField.tsx
diff --git a/jams-react-client/src/components/Grid/GridContainer.js b/jams-react-client/src/components/Grid/GridContainer.tsx
similarity index 100%
rename from jams-react-client/src/components/Grid/GridContainer.js
rename to jams-react-client/src/components/Grid/GridContainer.tsx
diff --git a/jams-react-client/src/components/Grid/GridItem.js b/jams-react-client/src/components/Grid/GridItem.tsx
similarity index 100%
rename from jams-react-client/src/components/Grid/GridItem.js
rename to jams-react-client/src/components/Grid/GridItem.tsx
diff --git a/jams-react-client/src/components/IdentityManagement/AdStorageForm.js b/jams-react-client/src/components/IdentityManagement/AdStorageForm.tsx
similarity index 100%
rename from jams-react-client/src/components/IdentityManagement/AdStorageForm.js
rename to jams-react-client/src/components/IdentityManagement/AdStorageForm.tsx
diff --git a/jams-react-client/src/components/IdentityManagement/IdentityManagement.js b/jams-react-client/src/components/IdentityManagement/IdentityManagement.tsx
similarity index 100%
rename from jams-react-client/src/components/IdentityManagement/IdentityManagement.js
rename to jams-react-client/src/components/IdentityManagement/IdentityManagement.tsx
diff --git a/jams-react-client/src/components/IdentityManagement/LdapStorageForm.js b/jams-react-client/src/components/IdentityManagement/LdapStorageForm.tsx
similarity index 100%
rename from jams-react-client/src/components/IdentityManagement/LdapStorageForm.js
rename to jams-react-client/src/components/IdentityManagement/LdapStorageForm.tsx
diff --git a/jams-react-client/src/components/IdentityManagement/LocalStorageForm.js b/jams-react-client/src/components/IdentityManagement/LocalStorageForm.tsx
similarity index 100%
rename from jams-react-client/src/components/IdentityManagement/LocalStorageForm.js
rename to jams-react-client/src/components/IdentityManagement/LocalStorageForm.tsx
diff --git a/jams-react-client/src/components/LanguagePicker/LanguagePicker.js b/jams-react-client/src/components/LanguagePicker/LanguagePicker.tsx
similarity index 100%
rename from jams-react-client/src/components/LanguagePicker/LanguagePicker.js
rename to jams-react-client/src/components/LanguagePicker/LanguagePicker.tsx
diff --git a/jams-react-client/src/components/Navbars/Navbar.js b/jams-react-client/src/components/Navbars/Navbar.tsx
similarity index 95%
rename from jams-react-client/src/components/Navbars/Navbar.js
rename to jams-react-client/src/components/Navbars/Navbar.tsx
index aacd9e71..2d849926 100755
--- a/jams-react-client/src/components/Navbars/Navbar.js
+++ b/jams-react-client/src/components/Navbars/Navbar.tsx
@@ -10,9 +10,9 @@ import Hidden from "@mui/material/Hidden";
 // @mui/icons-material
 import Menu from "@mui/icons-material/Menu";
 // core components
-import Button from "components/CustomButtons/Button.js";
+import Button from "components/CustomButtons/Button";
 
-import styles from "assets/jss/material-dashboard-react/components/headerStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/headerStyle";
 
 const useStyles = makeStyles(styles);
 
diff --git a/jams-react-client/src/components/PasswordDialog/PasswordDialog.js b/jams-react-client/src/components/PasswordDialog/PasswordDialog.tsx
similarity index 98%
rename from jams-react-client/src/components/PasswordDialog/PasswordDialog.js
rename to jams-react-client/src/components/PasswordDialog/PasswordDialog.tsx
index 5b588f69..0a49a25c 100644
--- a/jams-react-client/src/components/PasswordDialog/PasswordDialog.js
+++ b/jams-react-client/src/components/PasswordDialog/PasswordDialog.tsx
@@ -3,7 +3,7 @@ import React, { useEffect, useState } from "react";
 import { makeStyles } from "@mui/styles";
 // core components
 
-import Button from "components/CustomButtons/Button.js";
+import Button from "components/CustomButtons/Button";
 
 import Dialog from "@mui/material/Dialog";
 import DialogActions from "@mui/material/DialogActions";
@@ -19,7 +19,7 @@ import FormikField from "components/FormikField/FormikField";
 import * as Yup from "yup";
 
 import axios from "axios";
-import configApiCall from "api.js";
+import configApiCall from "api";
 import { api_path_put_update_user } from "globalUrls";
 
 import VpnKeyIcon from "@mui/icons-material/VpnKey";
diff --git a/jams-react-client/src/components/ServerParameters/ServerParameters.js b/jams-react-client/src/components/ServerParameters/ServerParameters.tsx
similarity index 100%
rename from jams-react-client/src/components/ServerParameters/ServerParameters.js
rename to jams-react-client/src/components/ServerParameters/ServerParameters.tsx
diff --git a/jams-react-client/src/components/Sidebar/Sidebar.js b/jams-react-client/src/components/Sidebar/Sidebar.tsx
similarity index 99%
rename from jams-react-client/src/components/Sidebar/Sidebar.js
rename to jams-react-client/src/components/Sidebar/Sidebar.tsx
index 146e00d0..d2750c6e 100755
--- a/jams-react-client/src/components/Sidebar/Sidebar.js
+++ b/jams-react-client/src/components/Sidebar/Sidebar.tsx
@@ -16,7 +16,7 @@ import Snackbar from "@mui/material/Snackbar/Snackbar";
 import ExitToAppIcon from "@mui/icons-material/ExitToApp";
 import UpdateIcon from "@mui/icons-material/Update";
 
-import styles from "assets/jss/material-dashboard-react/components/sidebarStyle.js";
+import styles from "assets/jss/material-dashboard-react/components/sidebarStyle";
 
 import auth from "auth";
 
diff --git a/jams-react-client/src/components/Snackbar/BlueprintSnackbar.js b/jams-react-client/src/components/Snackbar/BlueprintSnackbar.tsx
similarity index 100%
rename from jams-react-client/src/components/Snackbar/BlueprintSnackbar.js
rename to jams-react-client/src/components/Snackbar/BlueprintSnackbar.tsx
diff --git a/jams-react-client/src/configured.route.js b/jams-react-client/src/configured.route.tsx
similarity index 100%
rename from jams-react-client/src/configured.route.js
rename to jams-react-client/src/configured.route.tsx
diff --git a/jams-react-client/src/globalUrls.js b/jams-react-client/src/globalUrls.tsx
similarity index 100%
rename from jams-react-client/src/globalUrls.js
rename to jams-react-client/src/globalUrls.tsx
diff --git a/jams-react-client/src/i18n.js b/jams-react-client/src/i18n.tsx
similarity index 100%
rename from jams-react-client/src/i18n.js
rename to jams-react-client/src/i18n.tsx
diff --git a/jams-react-client/src/index.js b/jams-react-client/src/index.tsx
similarity index 87%
rename from jams-react-client/src/index.js
rename to jams-react-client/src/index.tsx
index ba4e3798..ad3206aa 100644
--- a/jams-react-client/src/index.js
+++ b/jams-react-client/src/index.tsx
@@ -30,16 +30,16 @@ import {
 } from "@mui/material";
 
 // core components
-import UsersRoute from "routes/UsersRoute.js";
-import UserRoute from "routes/UserRoute.js";
-import CreateUserRoute from "routes/CreateUserRoute.js";
-import GroupsRoute from "routes/GroupsRoute.js";
-import GroupRoute from "routes/GroupRoute.js";
-import BlueprintsRoute from "routes/BlueprintsRoute.js";
-import BlueprintRoute from "routes/BlueprintRoute.js";
-import SettingsRoute from "routes/SettingsRoute.js";
+import UsersRoute from "routes/UsersRoute";
+import UserRoute from "routes/UserRoute";
+import CreateUserRoute from "routes/CreateUserRoute";
+import GroupsRoute from "routes/GroupsRoute";
+import GroupRoute from "routes/GroupRoute";
+import BlueprintsRoute from "routes/BlueprintsRoute";
+import BlueprintRoute from "routes/BlueprintRoute";
+import SettingsRoute from "routes/SettingsRoute";
 
-import SignIn from "layouts/SignIn.js";
+import SignIn from "layouts/SignIn";
 
 import "assets/css/material-dashboard-react.css?v=1.9.0";
 
diff --git a/jams-react-client/src/layouts/BaseLayout.js b/jams-react-client/src/layouts/BaseLayout.tsx
similarity index 94%
rename from jams-react-client/src/layouts/BaseLayout.js
rename to jams-react-client/src/layouts/BaseLayout.tsx
index f36ecff8..0dce2c33 100644
--- a/jams-react-client/src/layouts/BaseLayout.js
+++ b/jams-react-client/src/layouts/BaseLayout.tsx
@@ -5,9 +5,9 @@ import "perfect-scrollbar/css/perfect-scrollbar.css";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import Navbar from "components/Navbars/Navbar.js";
-import Footer from "components/Footer/Footer.js";
-import Sidebar from "components/Sidebar/Sidebar.js";
+import Navbar from "components/Navbars/Navbar";
+import Footer from "components/Footer/Footer";
+import Sidebar from "components/Sidebar/Sidebar";
 
 // @mui/icons-material
 import Person from "@mui/icons-material/Person";
@@ -15,19 +15,19 @@ import Group from "@mui/icons-material/Group";
 import AllInbox from "@mui/icons-material/AllInbox";
 import SettingsIcon from "@mui/icons-material/Settings";
 // core components/views for Admin layout
-import Users from "views/Users/Users.js";
-import Groups from "views/Groups/Groups.js";
-import Blueprints from "views/Blueprints/Blueprints.js";
-import Settings from "views/Settings/Settings.js";
+import Users from "views/Users/Users";
+import Groups from "views/Groups/Groups";
+import Blueprints from "views/Blueprints/Blueprints";
+import Settings from "views/Settings/Settings";
 // core components/views for RTL layout
 
-import styles from "assets/jss/material-dashboard-react/layouts/adminStyle.js";
+import styles from "assets/jss/material-dashboard-react/layouts/adminStyle";
 
 import bgImage from "assets/img/sidebar-2.jpg";
 import logo from "assets/img/jams_logo_white_no_gnu_package.svg";
 
 import auth from "auth";
-import configApiCall from "api.js";
+import configApiCall from "api";
 import { api_path_get_start_update } from "globalUrls";
 
 import axios from "axios";
diff --git a/jams-react-client/src/layouts/ListLayout.js b/jams-react-client/src/layouts/ListLayout.tsx
similarity index 94%
rename from jams-react-client/src/layouts/ListLayout.js
rename to jams-react-client/src/layouts/ListLayout.tsx
index e0c29c58..1b5cf876 100644
--- a/jams-react-client/src/layouts/ListLayout.js
+++ b/jams-react-client/src/layouts/ListLayout.tsx
@@ -5,9 +5,9 @@ import "perfect-scrollbar/css/perfect-scrollbar.css";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import Navbar from "components/Navbars/Navbar.js";
-import Footer from "components/Footer/Footer.js";
-import Sidebar from "components/Sidebar/Sidebar.js";
+import Navbar from "components/Navbars/Navbar";
+import Footer from "components/Footer/Footer";
+import Sidebar from "components/Sidebar/Sidebar";
 
 // @mui/icons-material
 import AccountCircleIcon from "@mui/icons-material/AccountCircle";
@@ -16,19 +16,19 @@ import Group from "@mui/icons-material/Group";
 import AllInbox from "@mui/icons-material/AllInbox";
 import SettingsIcon from "@mui/icons-material/Settings";
 // core components/views for Admin layout
-import Users from "views/Users/Users.js";
-import Groups from "views/Groups/Groups.js";
-import Blueprints from "views/Blueprints/Blueprints.js";
-import Settings from "views/Settings/Settings.js";
+import Users from "views/Users/Users";
+import Groups from "views/Groups/Groups";
+import Blueprints from "views/Blueprints/Blueprints";
+import Settings from "views/Settings/Settings";
 // core components/views for RTL layout
 
-import styles from "assets/jss/material-dashboard-react/layouts/adminStyle.js";
+import styles from "assets/jss/material-dashboard-react/layouts/adminStyle";
 
 import bgImage from "assets/img/sidebar-2.jpg";
 import logo from "assets/img/jams_logo_white_no_gnu_package.svg";
 
 import auth from "auth";
-import configApiCall from "api.js";
+import configApiCall from "api";
 import { api_path_get_start_update } from "globalUrls";
 
 import axios from "axios";
diff --git a/jams-react-client/src/layouts/SignIn.js b/jams-react-client/src/layouts/SignIn.tsx
similarity index 99%
rename from jams-react-client/src/layouts/SignIn.js
rename to jams-react-client/src/layouts/SignIn.tsx
index 8193e236..e785aeae 100644
--- a/jams-react-client/src/layouts/SignIn.js
+++ b/jams-react-client/src/layouts/SignIn.tsx
@@ -10,7 +10,7 @@ import Typography from "@mui/material/Typography";
 import { makeStyles } from "@mui/styles";
 import Container from "@mui/material/Container";
 import MuiAlert from "@mui/material/Alert";
-import auth from "../auth.js";
+import auth from "../auth";
 
 import LanguagePicker from "../components/LanguagePicker/LanguagePicker";
 
diff --git a/jams-react-client/src/layouts/SignUp.js b/jams-react-client/src/layouts/SignUp.tsx
similarity index 100%
rename from jams-react-client/src/layouts/SignUp.js
rename to jams-react-client/src/layouts/SignUp.tsx
diff --git a/jams-react-client/src/protected.route.js b/jams-react-client/src/protected.route.tsx
similarity index 100%
rename from jams-react-client/src/protected.route.js
rename to jams-react-client/src/protected.route.tsx
diff --git a/jams-react-client/src/routes/BlueprintRoute.js b/jams-react-client/src/routes/BlueprintRoute.tsx
similarity index 83%
rename from jams-react-client/src/routes/BlueprintRoute.js
rename to jams-react-client/src/routes/BlueprintRoute.tsx
index 69958c57..cc9834d9 100644
--- a/jams-react-client/src/routes/BlueprintRoute.js
+++ b/jams-react-client/src/routes/BlueprintRoute.tsx
@@ -1,6 +1,6 @@
 import React from "react";
 
-import BaseLayout from "layouts/BaseLayout.js";
+import BaseLayout from "layouts/BaseLayout";
 import Blueprint from "views/Blueprint/Blueprint";
 
 export default function BlueprintRoute(props) {
diff --git a/jams-react-client/src/routes/BlueprintsRoute.js b/jams-react-client/src/routes/BlueprintsRoute.tsx
similarity index 54%
rename from jams-react-client/src/routes/BlueprintsRoute.js
rename to jams-react-client/src/routes/BlueprintsRoute.tsx
index 5faa5f57..0ef35978 100644
--- a/jams-react-client/src/routes/BlueprintsRoute.js
+++ b/jams-react-client/src/routes/BlueprintsRoute.tsx
@@ -1,8 +1,8 @@
 import React from "react";
 
-import Blueprints from "views/Blueprints/Blueprints.js";
+import Blueprints from "views/Blueprints/Blueprints";
 
-import ListLayout from "layouts/ListLayout.js";
+import ListLayout from "layouts/ListLayout";
 
 export default function BlueprintsRoute() {
   return <ListLayout component={<Blueprints />} />;
diff --git a/jams-react-client/src/routes/CreateUserRoute.js b/jams-react-client/src/routes/CreateUserRoute.tsx
similarity index 87%
rename from jams-react-client/src/routes/CreateUserRoute.js
rename to jams-react-client/src/routes/CreateUserRoute.tsx
index 59a8afec..b0566210 100644
--- a/jams-react-client/src/routes/CreateUserRoute.js
+++ b/jams-react-client/src/routes/CreateUserRoute.tsx
@@ -1,8 +1,8 @@
 import React from "react";
 
-import EditCreateUserProfile from "views/UserProfile/EditCreateUserProfile.js";
+import EditCreateUserProfile from "views/UserProfile/EditCreateUserProfile";
 
-import ListLayout from "layouts/ListLayout.js";
+import ListLayout from "layouts/ListLayout";
 
 export default function CreateUserRoute() {
   return <ListLayout component={<EditCreateUserProfile createUser={true} />} />;
diff --git a/jams-react-client/src/routes/GroupRoute.js b/jams-react-client/src/routes/GroupRoute.tsx
similarity index 64%
rename from jams-react-client/src/routes/GroupRoute.js
rename to jams-react-client/src/routes/GroupRoute.tsx
index 1e3e21f7..f0ce8fb3 100644
--- a/jams-react-client/src/routes/GroupRoute.js
+++ b/jams-react-client/src/routes/GroupRoute.tsx
@@ -1,7 +1,7 @@
 import React from "react";
 
-import ListLayout from "layouts/ListLayout.js";
-import EditGroup from "views/Groups/EditGroup.js";
+import ListLayout from "layouts/ListLayout";
+import EditGroup from "views/Groups/EditGroup";
 
 export default function GroupRoute(props) {
   return (
diff --git a/jams-react-client/src/routes/GroupsRoute.js b/jams-react-client/src/routes/GroupsRoute.tsx
similarity index 56%
rename from jams-react-client/src/routes/GroupsRoute.js
rename to jams-react-client/src/routes/GroupsRoute.tsx
index 2f016c19..b25da065 100644
--- a/jams-react-client/src/routes/GroupsRoute.js
+++ b/jams-react-client/src/routes/GroupsRoute.tsx
@@ -1,7 +1,7 @@
 import React from "react";
 
-import ListLayout from "layouts/ListLayout.js";
-import Groups from "views/Groups/Groups.js";
+import ListLayout from "layouts/ListLayout";
+import Groups from "views/Groups/Groups";
 
 export default function GroupsRoute() {
   return <ListLayout component={<Groups />} />;
diff --git a/jams-react-client/src/routes/SettingsRoute.js b/jams-react-client/src/routes/SettingsRoute.tsx
similarity index 55%
rename from jams-react-client/src/routes/SettingsRoute.js
rename to jams-react-client/src/routes/SettingsRoute.tsx
index be364822..146d0106 100644
--- a/jams-react-client/src/routes/SettingsRoute.js
+++ b/jams-react-client/src/routes/SettingsRoute.tsx
@@ -1,8 +1,8 @@
 import React from "react";
 
-import Settings from "views/Settings/Settings.js";
+import Settings from "views/Settings/Settings";
 
-import BaseLayout from "layouts/BaseLayout.js";
+import BaseLayout from "layouts/BaseLayout";
 
 export default function SettingsRoute() {
   return <BaseLayout component={<Settings />} />;
diff --git a/jams-react-client/src/routes/UserRoute.js b/jams-react-client/src/routes/UserRoute.tsx
similarity index 63%
rename from jams-react-client/src/routes/UserRoute.js
rename to jams-react-client/src/routes/UserRoute.tsx
index 3f3e1ff3..2be35c56 100644
--- a/jams-react-client/src/routes/UserRoute.js
+++ b/jams-react-client/src/routes/UserRoute.tsx
@@ -1,8 +1,8 @@
 import React from "react";
 
-import UserProfile from "views/UserProfile/UserProfile.js";
+import UserProfile from "views/UserProfile/UserProfile";
 
-import BaseLayout from "layouts/BaseLayout.js";
+import BaseLayout from "layouts/BaseLayout";
 
 export default function UsersRoute(props) {
   return (
diff --git a/jams-react-client/src/routes/UsersRoute.js b/jams-react-client/src/routes/UsersRoute.tsx
similarity index 56%
rename from jams-react-client/src/routes/UsersRoute.js
rename to jams-react-client/src/routes/UsersRoute.tsx
index 565e8247..6bfd698e 100644
--- a/jams-react-client/src/routes/UsersRoute.js
+++ b/jams-react-client/src/routes/UsersRoute.tsx
@@ -1,8 +1,8 @@
 import React from "react";
 
-import Users from "views/Users/Users.js";
+import Users from "views/Users/Users";
 
-import ListLayout from "layouts/ListLayout.js";
+import ListLayout from "layouts/ListLayout";
 
 export default function UsersRoute() {
   return <ListLayout component={<Users />} />;
diff --git a/jams-react-client/src/tools.js b/jams-react-client/src/tools.tsx
similarity index 100%
rename from jams-react-client/src/tools.js
rename to jams-react-client/src/tools.tsx
diff --git a/jams-react-client/src/views/Blueprint/Blueprint.js b/jams-react-client/src/views/Blueprint/Blueprint.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/Blueprint.js
rename to jams-react-client/src/views/Blueprint/Blueprint.tsx
diff --git a/jams-react-client/src/views/Blueprint/ColorPickerPopup.js b/jams-react-client/src/views/Blueprint/ColorPickerPopup.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/ColorPickerPopup.js
rename to jams-react-client/src/views/Blueprint/ColorPickerPopup.tsx
diff --git a/jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.js b/jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.tsx
similarity index 98%
rename from jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.js
rename to jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.tsx
index f6e5d50e..2fc0d60c 100644
--- a/jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.js
+++ b/jams-react-client/src/views/Blueprint/EditBlueprintConfiguration.tsx
@@ -7,12 +7,12 @@ import InputLabel from "@mui/material/InputLabel";
 
 // core components
 import Grid from "@mui/material/Grid";
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import Card from "components/Card/Card.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardIcon from "components/Card/CardIcon.js";
-import CardBody from "components/Card/CardBody.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import Card from "components/Card/Card";
+import CardHeader from "components/Card/CardHeader";
+import CardIcon from "components/Card/CardIcon";
+import CardBody from "components/Card/CardBody";
 import FormGroup from "@mui/material/FormGroup";
 import FormControlLabel from "@mui/material/FormControlLabel";
 import FormControl from "@mui/material/FormControl";
@@ -35,8 +35,8 @@ import LanguageOutlinedIcon from "@mui/icons-material/LanguageOutlined";
 
 import i18next from "i18next";
 
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
-import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
+import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react";
 
 import BlueprintSnackbar from "components/Snackbar/BlueprintSnackbar";
 import CustomPopupState from "components/CustomPopupState/CustomPopupState";
diff --git a/jams-react-client/src/views/Blueprint/EditBlueprintPermissions.js b/jams-react-client/src/views/Blueprint/EditBlueprintPermissions.tsx
similarity index 97%
rename from jams-react-client/src/views/Blueprint/EditBlueprintPermissions.js
rename to jams-react-client/src/views/Blueprint/EditBlueprintPermissions.tsx
index 85604544..9ab64a98 100644
--- a/jams-react-client/src/views/Blueprint/EditBlueprintPermissions.js
+++ b/jams-react-client/src/views/Blueprint/EditBlueprintPermissions.tsx
@@ -23,19 +23,19 @@ import AddCircleOutlineIcon from "@mui/icons-material/AddCircleOutline";
 import PriorityHighOutlinedIcon from "@mui/icons-material/PriorityHighOutlined";
 
 import BlueprintSnackbar from "components/Snackbar/BlueprintSnackbar";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardBody from "components/Card/CardBody.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardIcon from "components/Card/CardIcon.js";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardBody from "components/Card/CardBody";
+import CardHeader from "components/Card/CardHeader";
+import CardIcon from "components/Card/CardIcon";
 import CustomPopupState from "components/CustomPopupState/CustomPopupState";
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
 import TemporaryDrawer from "components/Drawer/Drawer";
 
-import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react.js";
+import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react";
 import noProfilePicture from "assets/img/faces/no-profile-picture.png";
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
 
 import auth from "../../auth";
 import configApiCall from "../../api";
diff --git a/jams-react-client/src/views/Blueprint/EditBlueprintUi.js b/jams-react-client/src/views/Blueprint/EditBlueprintUi.tsx
similarity index 94%
rename from jams-react-client/src/views/Blueprint/EditBlueprintUi.js
rename to jams-react-client/src/views/Blueprint/EditBlueprintUi.tsx
index 451a6799..82c0b8a8 100644
--- a/jams-react-client/src/views/Blueprint/EditBlueprintUi.js
+++ b/jams-react-client/src/views/Blueprint/EditBlueprintUi.tsx
@@ -5,14 +5,14 @@ import Grid from "@mui/material/Grid";
 import SettingsIcon from "@mui/icons-material/Settings";
 
 import BlueprintSnackbar from "components/Snackbar/BlueprintSnackbar";
-import Card from "components/Card/Card.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardIcon from "components/Card/CardIcon.js";
-import CardBody from "components/Card/CardBody.js";
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
+import Card from "components/Card/Card";
+import CardHeader from "components/Card/CardHeader";
+import CardIcon from "components/Card/CardIcon";
+import CardBody from "components/Card/CardBody";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
 
-import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react.js";
+import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react";
 
 import {
   api_path_get_image,
@@ -21,7 +21,7 @@ import {
   url_port,
 } from "../../globalUrls";
 
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
 
 import i18next from "i18next";
 
diff --git a/jams-react-client/src/views/Blueprint/EditBlueprintUiForm.js b/jams-react-client/src/views/Blueprint/EditBlueprintUiForm.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/EditBlueprintUiForm.js
rename to jams-react-client/src/views/Blueprint/EditBlueprintUiForm.tsx
diff --git a/jams-react-client/src/views/Blueprint/PolicyDataContext.js b/jams-react-client/src/views/Blueprint/PolicyDataContext.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/PolicyDataContext.js
rename to jams-react-client/src/views/Blueprint/PolicyDataContext.tsx
diff --git a/jams-react-client/src/views/Blueprint/parsePolicyData.js b/jams-react-client/src/views/Blueprint/parsePolicyData.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/parsePolicyData.js
rename to jams-react-client/src/views/Blueprint/parsePolicyData.tsx
diff --git a/jams-react-client/src/views/Blueprint/policyData.constants.js b/jams-react-client/src/views/Blueprint/policyData.constants.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/policyData.constants.js
rename to jams-react-client/src/views/Blueprint/policyData.constants.tsx
diff --git a/jams-react-client/src/views/Blueprint/updatePolicyData.js b/jams-react-client/src/views/Blueprint/updatePolicyData.tsx
similarity index 100%
rename from jams-react-client/src/views/Blueprint/updatePolicyData.js
rename to jams-react-client/src/views/Blueprint/updatePolicyData.tsx
diff --git a/jams-react-client/src/views/Blueprints/Blueprints.js b/jams-react-client/src/views/Blueprints/Blueprints.tsx
similarity index 94%
rename from jams-react-client/src/views/Blueprints/Blueprints.js
rename to jams-react-client/src/views/Blueprints/Blueprints.tsx
index 3d204a78..5579325c 100644
--- a/jams-react-client/src/views/Blueprints/Blueprints.js
+++ b/jams-react-client/src/views/Blueprints/Blueprints.tsx
@@ -3,14 +3,14 @@ import { Link, useHistory } from "react-router-dom";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import CustomInput from "components/CustomInput/CustomInput.js";
-import Button from "components/CustomButtons/Button.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import CustomInput from "components/CustomInput/CustomInput";
+import Button from "components/CustomButtons/Button";
 import IconButton from "@mui/material/IconButton";
-import Card from "components/Card/Card.js";
-import CardBody from "components/Card/CardBody.js";
-import CardFooter from "components/Card/CardFooter.js";
+import Card from "components/Card/Card";
+import CardBody from "components/Card/CardBody";
+import CardFooter from "components/Card/CardFooter";
 
 import GroupIcon from "@mui/icons-material/Group";
 import PersonIcon from "@mui/icons-material/Person";
@@ -19,15 +19,15 @@ import DeleteOutlineIcon from "@mui/icons-material/DeleteOutline";
 import InfoIcon from "@mui/icons-material/Info";
 
 import axios from "axios";
-import configApiCall from "api.js";
-import auth from "auth.js";
+import configApiCall from "api";
+import auth from "auth";
 import { api_path_blueprints } from "globalUrls";
 
 import AddCircleOutlineIcon from "@mui/icons-material/AddCircleOutline";
 
 import LinearProgress from "@mui/material/LinearProgress";
 
-import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle.js";
+import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle";
 
 import Dialog from "@mui/material/Dialog";
 import DialogActions from "@mui/material/DialogActions";
diff --git a/jams-react-client/src/views/Blueprints/CreateBlueprintDialog.js b/jams-react-client/src/views/Blueprints/CreateBlueprintDialog.tsx
similarity index 98%
rename from jams-react-client/src/views/Blueprints/CreateBlueprintDialog.js
rename to jams-react-client/src/views/Blueprints/CreateBlueprintDialog.tsx
index b7d3de00..bf1d2cbb 100644
--- a/jams-react-client/src/views/Blueprints/CreateBlueprintDialog.js
+++ b/jams-react-client/src/views/Blueprints/CreateBlueprintDialog.tsx
@@ -16,7 +16,7 @@ import { AllInbox } from "@mui/icons-material";
 import configApiCall from "api";
 import { api_path_blueprints } from "globalUrls";
 
-import Button from "components/CustomButtons/Button.js";
+import Button from "components/CustomButtons/Button";
 
 const getHelperText = (disableCreate, blueprintName) => {
   if (disableCreate && blueprintName.length > 0) {
diff --git a/jams-react-client/src/views/Contacts/Contacts.js b/jams-react-client/src/views/Contacts/Contacts.tsx
similarity index 96%
rename from jams-react-client/src/views/Contacts/Contacts.js
rename to jams-react-client/src/views/Contacts/Contacts.tsx
index 9e11c61a..5736bdc6 100644
--- a/jams-react-client/src/views/Contacts/Contacts.js
+++ b/jams-react-client/src/views/Contacts/Contacts.tsx
@@ -3,14 +3,14 @@ import { useHistory } from "react-router-dom";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import CustomInput from "components/CustomInput/CustomInput.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardAvatar from "components/Card/CardAvatar.js";
-import CardBody from "components/Card/CardBody.js";
-import CardFooter from "components/Card/CardFooter.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import CustomInput from "components/CustomInput/CustomInput";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardAvatar from "components/Card/CardAvatar";
+import CardBody from "components/Card/CardBody";
+import CardFooter from "components/Card/CardFooter";
 
 import BusinessOutlinedIcon from "@mui/icons-material/BusinessOutlined";
 import QuestionAnswerIcon from "@mui/icons-material/QuestionAnswer";
@@ -21,8 +21,8 @@ import Search from "@mui/icons-material/Search";
 import IconButton from "@mui/material/IconButton";
 
 import axios from "axios";
-import configApiCall from "api.js";
-import auth from "auth.js";
+import configApiCall from "api";
+import auth from "auth";
 import {
   api_path_get_auth_contacts,
   api_path_get_admin_contacts,
@@ -39,7 +39,7 @@ import jami from "assets/img/faces/jami.png";
 import noProfilePicture from "assets/img/faces/no-profile-picture.png";
 import LinearProgress from "@mui/material/LinearProgress";
 
-import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle.js";
+import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle";
 import TemporaryDrawer from "components/Drawer/Drawer";
 import Dialog from "@mui/material/Dialog";
 import DialogActions from "@mui/material/DialogActions";
diff --git a/jams-react-client/src/views/Groups/CreateGroupDialog.js b/jams-react-client/src/views/Groups/CreateGroupDialog.tsx
similarity index 99%
rename from jams-react-client/src/views/Groups/CreateGroupDialog.js
rename to jams-react-client/src/views/Groups/CreateGroupDialog.tsx
index 88b2e821..9661ac59 100644
--- a/jams-react-client/src/views/Groups/CreateGroupDialog.js
+++ b/jams-react-client/src/views/Groups/CreateGroupDialog.tsx
@@ -23,7 +23,7 @@ import {
 import { getBlueprintsOptions } from "./getBlueprintsOptions";
 import auth from "auth";
 import * as tool from "../../tools";
-import Button from "components/CustomButtons/Button.js";
+import Button from "components/CustomButtons/Button";
 
 const getHelperText = (disableCreate, groupName) => {
   if (disableCreate && groupName.length > 0) {
diff --git a/jams-react-client/src/views/Groups/EditGroup.js b/jams-react-client/src/views/Groups/EditGroup.tsx
similarity index 97%
rename from jams-react-client/src/views/Groups/EditGroup.js
rename to jams-react-client/src/views/Groups/EditGroup.tsx
index d49ef7d9..9f396c5a 100644
--- a/jams-react-client/src/views/Groups/EditGroup.js
+++ b/jams-react-client/src/views/Groups/EditGroup.tsx
@@ -7,13 +7,13 @@ import { makeStyles } from "@mui/styles";
 
 // core components
 import Grid from "@mui/material/Grid";
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardIcon from "components/Card/CardIcon.js";
-import CardBody from "components/Card/CardBody.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardHeader from "components/Card/CardHeader";
+import CardIcon from "components/Card/CardIcon";
+import CardBody from "components/Card/CardBody";
 import FormControl from "@mui/material/FormControl";
 import Input from "@mui/material/Input";
 import InputAdornment from "@mui/material/InputAdornment";
@@ -48,8 +48,8 @@ import {
   api_path_delete_group_member,
 } from "../../globalUrls";
 
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
-import devicesStyle from "assets/jss/material-dashboard-react/components/devicesStyle.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
+import devicesStyle from "assets/jss/material-dashboard-react/components/devicesStyle";
 import Avatar from "@mui/material/Avatar";
 
 import noProfilePicture from "assets/img/faces/no-profile-picture.png";
@@ -59,7 +59,7 @@ import * as tool from "../../tools";
 
 import i18next from "i18next";
 
-import auth from "auth.js";
+import auth from "auth";
 
 import { debounce } from "lodash";
 
diff --git a/jams-react-client/src/views/Groups/Groups.js b/jams-react-client/src/views/Groups/Groups.tsx
similarity index 95%
rename from jams-react-client/src/views/Groups/Groups.js
rename to jams-react-client/src/views/Groups/Groups.tsx
index 3a769220..63b8adb2 100644
--- a/jams-react-client/src/views/Groups/Groups.js
+++ b/jams-react-client/src/views/Groups/Groups.tsx
@@ -3,13 +3,13 @@ import { Link, useHistory } from "react-router-dom";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardBody from "components/Card/CardBody.js";
-import CardFooter from "components/Card/CardFooter.js";
-import CustomInput from "components/CustomInput/CustomInput.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardBody from "components/Card/CardBody";
+import CardFooter from "components/Card/CardFooter";
+import CustomInput from "components/CustomInput/CustomInput";
 
 import IconButton from "@mui/material/IconButton";
 import DeleteOutlineIcon from "@mui/icons-material/DeleteOutline";
@@ -19,8 +19,8 @@ import PersonIcon from "@mui/icons-material/Person";
 import InfoIcon from "@mui/icons-material/Info";
 
 import axios from "axios";
-import configApiCall from "api.js";
-import auth from "auth.js";
+import configApiCall from "api";
+import auth from "auth";
 import {
   api_path_get_list_group,
   api_path_delete_group,
diff --git a/jams-react-client/src/views/Groups/getBlueprintsOptions.js b/jams-react-client/src/views/Groups/getBlueprintsOptions.tsx
similarity index 100%
rename from jams-react-client/src/views/Groups/getBlueprintsOptions.js
rename to jams-react-client/src/views/Groups/getBlueprintsOptions.tsx
diff --git a/jams-react-client/src/views/Settings/General.js b/jams-react-client/src/views/Settings/General.tsx
similarity index 98%
rename from jams-react-client/src/views/Settings/General.js
rename to jams-react-client/src/views/Settings/General.tsx
index 04ebe33a..2d8ade87 100644
--- a/jams-react-client/src/views/Settings/General.js
+++ b/jams-react-client/src/views/Settings/General.tsx
@@ -15,10 +15,10 @@ import IconButton from "@mui/material/IconButton";
 import VpnKeyIcon from "@mui/icons-material/VpnKey";
 import InputAdornment from "@mui/material/InputAdornment";
 
-import GridContainer from "components/Grid/GridContainer.js";
-import Card from "components/Card/Card.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardBody from "components/Card/CardBody.js";
+import GridContainer from "components/Grid/GridContainer";
+import Card from "components/Card/Card";
+import CardHeader from "components/Card/CardHeader";
+import CardBody from "components/Card/CardBody";
 
 import axios from "axios";
 import configApiCall from "../../api";
diff --git a/jams-react-client/src/views/Settings/Settings.js b/jams-react-client/src/views/Settings/Settings.tsx
similarity index 99%
rename from jams-react-client/src/views/Settings/Settings.js
rename to jams-react-client/src/views/Settings/Settings.tsx
index b762eaf0..02b37f41 100644
--- a/jams-react-client/src/views/Settings/Settings.js
+++ b/jams-react-client/src/views/Settings/Settings.tsx
@@ -12,7 +12,7 @@ import Box from "@mui/material/Box";
 
 import MuiAlert from "@mui/material/Alert";
 
-import auth from "auth.js";
+import auth from "auth";
 
 import i18next from "i18next";
 
diff --git a/jams-react-client/src/views/Settings/Subscription.js b/jams-react-client/src/views/Settings/Subscription.tsx
similarity index 96%
rename from jams-react-client/src/views/Settings/Subscription.js
rename to jams-react-client/src/views/Settings/Subscription.tsx
index 32ce443d..a578ed6b 100644
--- a/jams-react-client/src/views/Settings/Subscription.js
+++ b/jams-react-client/src/views/Settings/Subscription.tsx
@@ -7,10 +7,10 @@ import Grid from "@mui/material/Grid";
 import Typography from "@mui/material/Typography";
 import { makeStyles } from "@mui/styles";
 
-import GridContainer from "components/Grid/GridContainer.js";
-import Card from "components/Card/Card.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardBody from "components/Card/CardBody.js";
+import GridContainer from "components/Grid/GridContainer";
+import Card from "components/Card/Card";
+import CardHeader from "components/Card/CardHeader";
+import CardBody from "components/Card/CardBody";
 
 import axios from "axios";
 import configApiCall from "../../api";
diff --git a/jams-react-client/src/views/UserProfile/DisplayUserProfile.js b/jams-react-client/src/views/UserProfile/DisplayUserProfile.tsx
similarity index 98%
rename from jams-react-client/src/views/UserProfile/DisplayUserProfile.js
rename to jams-react-client/src/views/UserProfile/DisplayUserProfile.tsx
index 7863a4c6..7a4b33e0 100644
--- a/jams-react-client/src/views/UserProfile/DisplayUserProfile.js
+++ b/jams-react-client/src/views/UserProfile/DisplayUserProfile.tsx
@@ -5,11 +5,11 @@ import classnames from "classnames";
 // @mui/material components
 import { makeStyles } from "@mui/styles";
 // core components
-import GridContainer from "components/Grid/GridContainer.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardBody from "components/Card/CardBody.js";
-import CardFooter from "components/Card/CardFooter.js";
+import GridContainer from "components/Grid/GridContainer";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardBody from "components/Card/CardBody";
+import CardFooter from "components/Card/CardFooter";
 import noProfilePicture from "assets/img/faces/no-profile-picture.png";
 
 import Dialog from "@mui/material/Dialog";
@@ -28,7 +28,7 @@ import TableBody from "@mui/material/TableBody";
 import TableCell from "@mui/material/TableCell";
 
 import Grid from "@mui/material/Grid";
-import GridItem from "components/Grid/GridItem.js";
+import GridItem from "components/Grid/GridItem";
 import BusinessCenterOutlinedIcon from "@mui/icons-material/BusinessCenterOutlined";
 import AlternateEmailOutlinedIcon from "@mui/icons-material/AlternateEmailOutlined";
 import PhoneInTalkOutlinedIcon from "@mui/icons-material/PhoneInTalkOutlined";
@@ -49,8 +49,8 @@ import ListItemText from "@mui/material/ListItemText";
 
 import LinearProgress from "@mui/material/LinearProgress";
 
-import auth from "auth.js";
-import configApiCall from "api.js";
+import auth from "auth";
+import configApiCall from "api";
 import {
   api_path_get_admin_user,
   api_path_get_auth_user,
@@ -63,9 +63,9 @@ import {
   api_path_delete_group_member,
 } from "globalUrls";
 
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
 
-import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react.js";
+import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react";
 import axios from "axios";
 
 import PasswordDialog from "components/PasswordDialog/PasswordDialog";
diff --git a/jams-react-client/src/views/UserProfile/EditCreateUserProfile.js b/jams-react-client/src/views/UserProfile/EditCreateUserProfile.tsx
similarity index 98%
rename from jams-react-client/src/views/UserProfile/EditCreateUserProfile.js
rename to jams-react-client/src/views/UserProfile/EditCreateUserProfile.tsx
index 38917923..0cfde311 100644
--- a/jams-react-client/src/views/UserProfile/EditCreateUserProfile.js
+++ b/jams-react-client/src/views/UserProfile/EditCreateUserProfile.tsx
@@ -6,14 +6,14 @@ import { makeStyles } from "@mui/styles";
 
 // core components
 import Grid from "@mui/material/Grid";
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
-import CardAvatar from "components/Card/CardAvatar.js";
-import CardHeader from "components/Card/CardHeader.js";
-import CardBody from "components/Card/CardBody.js";
-import CardFooter from "components/Card/CardFooter.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
+import CardAvatar from "components/Card/CardAvatar";
+import CardHeader from "components/Card/CardHeader";
+import CardBody from "components/Card/CardBody";
+import CardFooter from "components/Card/CardFooter";
 import InputAdornment from "@mui/material/InputAdornment";
 import Slider from "@mui/material/Slider";
 import Typography from "@mui/material/Typography";
@@ -25,7 +25,7 @@ import DialogTitle from "@mui/material/DialogTitle";
 import Cropper from "react-easy-crop";
 import getCroppedImg from "./cropImage";
 
-import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react.js";
+import { hexToRgb, blackColor } from "assets/jss/material-dashboard-react";
 
 import AccountCircleIcon from "@mui/icons-material/AccountCircle";
 import BusinessCenterOutlinedIcon from "@mui/icons-material/BusinessCenterOutlined";
@@ -63,7 +63,7 @@ import {
   api_path_get_ns_addr_from_name,
 } from "../../globalUrls";
 
-import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle.js";
+import dashboardStyle from "assets/jss/material-dashboard-react/views/dashboardStyle";
 
 import FormikField from "components/FormikField/FormikField";
 import { Formik } from "formik";
diff --git a/jams-react-client/src/views/UserProfile/UserProfile.js b/jams-react-client/src/views/UserProfile/UserProfile.tsx
similarity index 98%
rename from jams-react-client/src/views/UserProfile/UserProfile.js
rename to jams-react-client/src/views/UserProfile/UserProfile.tsx
index 08629f9f..4fd5fe81 100755
--- a/jams-react-client/src/views/UserProfile/UserProfile.js
+++ b/jams-react-client/src/views/UserProfile/UserProfile.tsx
@@ -1,7 +1,7 @@
 import React, { useEffect, useState } from "react";
 import { useHistory } from "react-router-dom";
 // core components
-import Devices from "components/Devices/Devices.js";
+import Devices from "components/Devices/Devices";
 
 import PropTypes from "prop-types";
 import AppBar from "@mui/material/AppBar";
diff --git a/jams-react-client/src/views/UserProfile/cropImage.js b/jams-react-client/src/views/UserProfile/cropImage.tsx
similarity index 100%
rename from jams-react-client/src/views/UserProfile/cropImage.js
rename to jams-react-client/src/views/UserProfile/cropImage.tsx
diff --git a/jams-react-client/src/views/Users/Users.js b/jams-react-client/src/views/Users/Users.tsx
similarity index 95%
rename from jams-react-client/src/views/Users/Users.js
rename to jams-react-client/src/views/Users/Users.tsx
index ebc30a49..c509559e 100644
--- a/jams-react-client/src/views/Users/Users.js
+++ b/jams-react-client/src/views/Users/Users.tsx
@@ -5,14 +5,14 @@ import { useHistory } from "react-router-dom";
 import { makeStyles } from "@mui/styles";
 import { Pagination } from "@mui/material";
 // core components
-import GridItem from "components/Grid/GridItem.js";
-import GridContainer from "components/Grid/GridContainer.js";
-import CustomInput from "components/CustomInput/CustomInput.js";
-import Button from "components/CustomButtons/Button.js";
-import Card from "components/Card/Card.js";
+import GridItem from "components/Grid/GridItem";
+import GridContainer from "components/Grid/GridContainer";
+import CustomInput from "components/CustomInput/CustomInput";
+import Button from "components/CustomButtons/Button";
+import Card from "components/Card/Card";
 
-import CardAvatar from "components/Card/CardAvatar.js";
-import CardBody from "components/Card/CardBody.js";
+import CardAvatar from "components/Card/CardAvatar";
+import CardBody from "components/Card/CardBody";
 
 import InfoIcon from "@mui/icons-material/Info";
 import BusinessOutlinedIcon from "@mui/icons-material/BusinessOutlined";
@@ -20,14 +20,14 @@ import Search from "@mui/icons-material/Search";
 import Checkbox from "@mui/material/Checkbox";
 import FormControlLabel from "@mui/material/FormControlLabel";
 import axios from "axios";
-import configApiCall from "api.js";
-import auth from "auth.js";
+import configApiCall from "api";
+import auth from "auth";
 import { api_path_get_user_directory_search } from "globalUrls";
 import AddCircleOutlineIcon from "@mui/icons-material/AddCircleOutline";
 import jami from "assets/img/faces/jami.png";
 import noProfilePicture from "assets/img/faces/no-profile-picture.png";
 import LinearProgress from "@mui/material/LinearProgress";
-import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle.js";
+import headerLinksStyle from "assets/jss/material-dashboard-react/components/headerLinksStyle";
 import { debounce } from "lodash";
 
 import i18next from "i18next";
-- 
GitLab