+
{newAppname}
- {
- isCloud && (
-
-
-
-
-
- )
- }
+
+
+
+
+
{
if (canEditApp) {
const editUrl = "/apps/edit/" + (app?.id || app?.objectID);
navigate(editUrl)
- }else{
+ } else {
const forkUrl = "/apps/new?id=" + (app?.id || app?.objectID);
navigate(forkUrl)
}
@@ -735,7 +732,7 @@ const AppModal = ({ open, onClose, app, globalUrl }) => {
bgcolor: '#FF8544',
'&:hover': { bgcolor: '#FF8544' },
textTransform: 'none',
- borderRadius: 1,
+ borderRadius: "4px",
py: 1,
px: 7,
fontSize: "14px",
diff --git a/frontend/src/components/AppSelection.jsx b/frontend/src/components/AppSelection.jsx
index e9539eeb..73528ec2 100644
--- a/frontend/src/components/AppSelection.jsx
+++ b/frontend/src/components/AppSelection.jsx
@@ -466,14 +466,16 @@ const AppSelection = props => {
fontSize: 16,
color: "rgba(158, 158, 158, 1)",
fontFamily: theme?.typography?.fontFamily,
+ lineHeight: "24px"
}}
>
- Your organization has no apps yet, select your starting apps here
- or discover more apps using the {
- navigate("/apps2?tab=all_apps")
+ navigate("/apps?tab=all_apps")
}}
- style={{ color: "#FF8444", fontWeight: "medium", fontSize: 16, cursor:"pointer" }}>App Library
+ style={{ color: "#FF8444", fontWeight: "medium", fontSize: 16, cursor:"pointer", marginLeft: 6 }}>App Library
)
diff --git a/frontend/src/components/Billing.jsx b/frontend/src/components/Billing.jsx
index c1ce38a3..1bafe19b 100644
--- a/frontend/src/components/Billing.jsx
+++ b/frontend/src/components/Billing.jsx
@@ -51,11 +51,13 @@ import BillingStats from "./BillingStats.jsx";
import { handlePayasyougo } from "../views/HandlePaymentNew.jsx"
import DeleteIcon from '@mui/icons-material/Delete';
import { Context } from "../context/ContextApi.jsx";
+import LicencePopup from "./LicencePopup.jsx";
const Billing = memo((props) => {
- const { globalUrl, userdata, serverside, billingInfo, stripeKey, selectedOrganization, handleGetOrg, clickedFromOrgTab } = props;
+ const { globalUrl, userdata, serverside, billingInfo, stripeKey,isLoaded, selectedOrganization, handleGetOrg, clickedFromOrgTab, removeCookie} = props;
//const alert = useAlert();
let navigate = useNavigate();
+ const [isLoggedIn, setIsLoggedIn] = useState(false)
const [selectedDealModalOpen, setSelectedDealModalOpen] = React.useState(false);
const [dealList, setDealList] = React.useState([]);
const [dealName, setDealName] = React.useState("");
@@ -73,14 +75,17 @@ const Billing = memo((props) => {
const [currentAppRunsInNumber, setCurrentAppRunsInNumber] = useState(0);
const [alertThresholds, setAlertThresholds] = useState(selectedOrganization.Billing !== undefined && selectedOrganization.Billing.AlertThreshold !== undefined && selectedOrganization.Billing.AlertThreshold !== null ? selectedOrganization.Billing.AlertThreshold : [{ percentage: '', count: '', Email_send: false }]);
const [currentIndex, setCurrentIndex] = useState(0);
+ const [deleteAlertIndex, setDeleteAlertIndex] = useState(-1);
const [deleteAlertVerification, setDeleteAlertVerification] = useState(false);
-
useEffect(() => {
if (userdata.app_execution_limit !== undefined && userdata.app_execution_usage !== undefined) {
const percentage = (userdata.app_execution_usage / userdata.app_execution_limit) * 100;
setCurrentAppRunsInPercentage(Math.round(percentage));
setCurrentAppRunsInNumber(userdata.app_execution_limit - userdata.app_execution_usage);
}
+ if (userdata?.id?.length > 0 && isLoggedIn === false){
+ setIsLoggedIn(true)
+ }
}, [userdata]);
const [BillingEmail, setBillingEmail] = useState(selectedOrganization?.Billing?.Email);
@@ -182,7 +187,8 @@ const Billing = memo((props) => {
const isCloud =
window.location.host === "localhost:3002" ||
- window.location.host === "shuffler.io";
+ window.location.host === "shuffler.io" ||
+ window.location.host === "sandbox.shuffler.io";
billingInfo.subscription = {
"active": true,
@@ -419,8 +425,16 @@ const Billing = memo((props) => {
const data = {
org_id: orgId,
email: newBillingEmail,
+ name: selectedOrganization.name,
+ description: selectedOrganization.description,
+ image: selectedOrganization.image,
+ defaults: selectedOrganization.defaults,
+ sso_config: selectedOrganization.sso_config,
+ mfa_required: selectedOrganization.mfa_required,
billing: {
email: newBillingEmail,
+ AlertThreshold: selectedOrganization?.Billing?.AlertThreshold,
+ Consultation: selectedOrganization?.Billing?.Consultation,
},
};
@@ -747,13 +761,21 @@ const Billing = memo((props) => {
open={openChangeEmailBox}
onClose={handleCloseChangeEmailBox}
PaperProps={{
- style: {
- padding: '20px',
- borderRadius: '8px',
- maxWidth: '500px',
- width: '100%'
+ sx: {
+ borderRadius: theme?.palette?.DialogStyle?.borderRadius,
+ border: theme?.palette?.DialogStyle?.border,
+ minWidth: '440px',
+ fontFamily: theme?.typography?.fontFamily,
+ backgroundColor: theme?.palette?.DialogStyle?.backgroundColor,
+ zIndex: 1000,
+ '& .MuiDialogContent-root': {
+ backgroundColor: theme?.palette?.DialogStyle?.backgroundColor,
+ },
+ '& .MuiDialogTitle-root': {
+ backgroundColor: theme?.palette?.DialogStyle?.backgroundColor,
+ },
}
- }}
+ }}
>
Change Billing Email
@@ -810,7 +832,7 @@ const Billing = memo((props) => {
color="primary"
style={{
marginTop: !userdata.has_card_available ? 20 : 10,
- borderRadius: 8,
+ borderRadius: 4,
height: 40,
fontSize: 16,
color: userdata.has_card_available ? "#ff8544" : "#1a1a1a",
@@ -843,7 +865,7 @@ const Billing = memo((props) => {
color="primary"
style={{
marginTop: 10,
- borderRadius: 8,
+ borderRadius: 4,
height: 40,
fontSize: 16,
color: "#1a1a1a",
@@ -933,11 +955,19 @@ const Billing = memo((props) => {
const url = `${globalUrl}/api/v1/orgs/${selectedOrganization.id}`;
const data = {
org_id: selectedOrganization.id,
+ name: selectedOrganization.name,
+ description: selectedOrganization.description,
+ image: selectedOrganization.image,
+ defaults: selectedOrganization.defaults,
+ sso_config: selectedOrganization.sso_config,
+ mfa_required: selectedOrganization.mfa_required,
Billing: {
Consultation: {
hours: String(inputHour),
minutes: String(inputMinutes),
},
+ AlertThreshold: selectedOrganization.Billing.AlertThreshold,
+ email: selectedOrganization.Billing.email,
}
};
@@ -1030,9 +1060,9 @@ const Billing = memo((props) => {
{
color="primary"
style={{
marginTop: userdata.support ? 0 : 10,
- borderRadius: 8,
+ borderRadius: 4,
height: 40,
fontSize: 16,
color: "#1A1A1A",
@@ -1142,8 +1172,23 @@ const Billing = memo((props) => {
>
Buy
-
-
+