chore: Updating embed settings feature tag from Business to Enterprise (#33448)
## Description - Updating embed settings feature tag from Business to Enterprise - Also, removing references of "edition" from all over the codebase - Also, fixing the issue for text input fields not getting cleared on click of reset button when the old value was a blank string Fixes [#33450](https://github.com/appsmithorg/appsmith/issues/33450) [#33449](https://github.com/appsmithorg/appsmith/issues/33449) ## Automation /ok-to-test tags="@tag.Settings, @tag.Fork, @tag.Workspace" ### 🔍 Cypress test results <!-- This is an auto-generated comment: Cypress test results --> > [!TIP] > 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉 > Workflow run: <https://github.com/appsmithorg/appsmith/actions/runs/9094357338> > Commit: 59f05f374b777778ee39bf1f7078844a50f6a72a > Cypress dashboard url: <a href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=9094357338&attempt=1" target="_blank">Click here!</a> <!-- end of auto-generated comment: Cypress test results --> ## Communication Should the DevRel and Marketing teams inform users about this change? - [ ] Yes - [ ] No
This commit is contained in:
parent
49bf9c64ea
commit
a6b8a36d6c
|
|
@ -8,7 +8,7 @@ import {
|
||||||
|
|
||||||
describe(
|
describe(
|
||||||
"Export application as a JSON file",
|
"Export application as a JSON file",
|
||||||
{ tags: ["@tag.ExportApplication"] },
|
{ tags: ["@tag.ImportExport"] },
|
||||||
function () {
|
function () {
|
||||||
let workspaceId, appid;
|
let workspaceId, appid;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@ describe("Private embed in-app ramp", { tags: ["@tag.Settings"] }, () => {
|
||||||
);
|
);
|
||||||
_.agHelper.GetNAssertElementText(
|
_.agHelper.GetNAssertElementText(
|
||||||
_.inviteModal.locators._privateEmbedRampAppSettings,
|
_.inviteModal.locators._privateEmbedRampAppSettings,
|
||||||
"To embed private Appsmith apps and seamlessly authenticate users through SSO",
|
Cypress.env("MESSAGES").IN_APP_EMBED_SETTING.rampSubtextSidebar(),
|
||||||
"contain.text",
|
"contain.text",
|
||||||
);
|
);
|
||||||
checkRampLink();
|
checkRampLink();
|
||||||
|
|
@ -19,7 +19,7 @@ describe("Private embed in-app ramp", { tags: ["@tag.Settings"] }, () => {
|
||||||
_.inviteModal.SelectEmbedTab();
|
_.inviteModal.SelectEmbedTab();
|
||||||
_.agHelper.GetNAssertElementText(
|
_.agHelper.GetNAssertElementText(
|
||||||
_.inviteModal.locators._privateEmbedRampAppSettings,
|
_.inviteModal.locators._privateEmbedRampAppSettings,
|
||||||
"Embed private Appsmith apps and seamlessly authenticate users through SSO in our Business Edition",
|
Cypress.env("MESSAGES").IN_APP_EMBED_SETTING.rampSubtextModal(),
|
||||||
"contain.text",
|
"contain.text",
|
||||||
);
|
);
|
||||||
checkRampLink();
|
checkRampLink();
|
||||||
|
|
@ -28,7 +28,7 @@ describe("Private embed in-app ramp", { tags: ["@tag.Settings"] }, () => {
|
||||||
cy.get(_.inviteModal.locators._privateEmbedRampLink)
|
cy.get(_.inviteModal.locators._privateEmbedRampLink)
|
||||||
.should("have.attr", "href")
|
.should("have.attr", "href")
|
||||||
.then((href) => {
|
.then((href) => {
|
||||||
expect(href).to.include("customer.appsmith.com");
|
expect(href).to.include("https://www.appsmith.com/pricing?");
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1923,13 +1923,13 @@ export const IN_APP_EMBED_SETTING = {
|
||||||
"Make your app public by visiting the share settings, and easily embed your Appsmith app into legacy applications",
|
"Make your app public by visiting the share settings, and easily embed your Appsmith app into legacy applications",
|
||||||
privateAppsText: () => "Private apps",
|
privateAppsText: () => "Private apps",
|
||||||
rampSubtextModal: () =>
|
rampSubtextModal: () =>
|
||||||
"Embed private Appsmith apps and seamlessly authenticate users through SSO in our Business Edition",
|
"Embed private Appsmith apps and seamlessly authenticate users through SSO in our Enterprise Edition",
|
||||||
rampSubtextSidebar: () =>
|
rampSubtextSidebar: () =>
|
||||||
"To embed private Appsmith apps and seamlessly authenticate users through SSO, try our ",
|
"To embed private Appsmith apps and seamlessly authenticate users through SSO, try our ",
|
||||||
rampLinktext: () => "Try Business",
|
rampLinktext: () => "Try Enterprise",
|
||||||
rampLinktextvariant2: () => "Business Edition",
|
rampLinktextvariant2: () => "Enterprise Edition",
|
||||||
upgradeContent: () => "Private embedding is now available in",
|
upgradeContent: () => "Private embedding is now available in",
|
||||||
appsmithBusinessEdition: () => "Appsmith Business Edition.",
|
appsmithEnterpriseEdition: () => "Appsmith Enterprise Edition.",
|
||||||
secondaryHeadingForAppSettings: () =>
|
secondaryHeadingForAppSettings: () =>
|
||||||
"Make your app public to embed your Appsmith app into legacy applications",
|
"Make your app public to embed your Appsmith app into legacy applications",
|
||||||
secondaryHeading: () =>
|
secondaryHeading: () =>
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,10 @@
|
||||||
import { createSelector } from "reselect";
|
import { createSelector } from "reselect";
|
||||||
import type { AppState } from "@appsmith/reducers";
|
import type { AppState } from "@appsmith/reducers";
|
||||||
import { getAppsmithConfigs } from "@appsmith/configs";
|
import { getAppsmithConfigs } from "@appsmith/configs";
|
||||||
import { CUSTOMER_PORTAL_URL_WITH_PARAMS } from "constants/ThirdPartyConstants";
|
import {
|
||||||
|
CUSTOMER_PORTAL_URL_WITH_PARAMS,
|
||||||
|
PRICING_PAGE_URL,
|
||||||
|
} from "constants/ThirdPartyConstants";
|
||||||
import {
|
import {
|
||||||
PRODUCT_RAMPS_LIST,
|
PRODUCT_RAMPS_LIST,
|
||||||
RAMP_FOR_ROLES,
|
RAMP_FOR_ROLES,
|
||||||
|
|
@ -12,27 +15,33 @@ import {
|
||||||
PERMISSION_TYPE,
|
PERMISSION_TYPE,
|
||||||
} from "@appsmith/utils/permissionHelpers";
|
} from "@appsmith/utils/permissionHelpers";
|
||||||
|
|
||||||
const { cloudHosting, customerPortalUrl } = getAppsmithConfigs();
|
const { cloudHosting, customerPortalUrl, pricingUrl } = getAppsmithConfigs();
|
||||||
|
|
||||||
const tenantState = (state: AppState) => state.tenant;
|
const tenantState = (state: AppState) => state.tenant;
|
||||||
const uiState = (state: AppState) => state.ui;
|
const uiState = (state: AppState) => state.ui;
|
||||||
|
|
||||||
export const getRampLink = ({
|
export const getRampLink = ({
|
||||||
feature,
|
feature,
|
||||||
|
isBusinessFeature = true,
|
||||||
section,
|
section,
|
||||||
}: {
|
}: {
|
||||||
section: string;
|
section: string;
|
||||||
feature: string;
|
feature: string;
|
||||||
|
isBusinessFeature?: boolean;
|
||||||
}) =>
|
}) =>
|
||||||
createSelector(tenantState, (tenant) => {
|
createSelector(tenantState, (tenant) => {
|
||||||
const instanceId = tenant?.instanceId;
|
const instanceId = tenant?.instanceId;
|
||||||
const source = cloudHosting ? "cloud" : "CE";
|
const source = cloudHosting ? "cloud" : "CE";
|
||||||
const RAMP_LINK_TO = CUSTOMER_PORTAL_URL_WITH_PARAMS(
|
const RAMP_LINK_TO = isBusinessFeature
|
||||||
|
? CUSTOMER_PORTAL_URL_WITH_PARAMS(
|
||||||
customerPortalUrl,
|
customerPortalUrl,
|
||||||
source,
|
source,
|
||||||
instanceId,
|
instanceId,
|
||||||
);
|
feature,
|
||||||
return `${RAMP_LINK_TO}&feature=${feature}§ion=${section}`;
|
section,
|
||||||
|
)
|
||||||
|
: PRICING_PAGE_URL(pricingUrl, source, instanceId, feature, section);
|
||||||
|
return RAMP_LINK_TO;
|
||||||
});
|
});
|
||||||
|
|
||||||
export const showProductRamps = (
|
export const showProductRamps = (
|
||||||
|
|
|
||||||
|
|
@ -14,7 +14,7 @@ const renderComponent = (
|
||||||
input: Partial<WrappedFieldInputProps>;
|
input: Partial<WrappedFieldInputProps>;
|
||||||
},
|
},
|
||||||
) => {
|
) => {
|
||||||
const value = componentProps.input.value || componentProps.defaultValue;
|
const value = componentProps.input.value || componentProps.defaultValue || "";
|
||||||
const showError = componentProps.meta.touched && !componentProps.meta.active;
|
const showError = componentProps.meta.touched && !componentProps.meta.active;
|
||||||
return componentProps.type === SettingSubtype.NUMBER ? (
|
return componentProps.type === SettingSubtype.NUMBER ? (
|
||||||
<NumberInput
|
<NumberInput
|
||||||
|
|
|
||||||
|
|
@ -18,9 +18,9 @@ import {
|
||||||
getRampLink,
|
getRampLink,
|
||||||
showProductRamps,
|
showProductRamps,
|
||||||
} from "@appsmith/selectors/rampSelectors";
|
} from "@appsmith/selectors/rampSelectors";
|
||||||
import BusinessTag from "components/BusinessTag";
|
|
||||||
import { FEATURE_FLAG } from "@appsmith/entities/FeatureFlag";
|
import { FEATURE_FLAG } from "@appsmith/entities/FeatureFlag";
|
||||||
import { useFeatureFlag } from "utils/hooks/useFeatureFlag";
|
import { useFeatureFlag } from "utils/hooks/useFeatureFlag";
|
||||||
|
import EnterpriseTag from "components/EnterpriseTag";
|
||||||
|
|
||||||
function PrivateEmbeddingContent(props: {
|
function PrivateEmbeddingContent(props: {
|
||||||
userAppPermissions: any[];
|
userAppPermissions: any[];
|
||||||
|
|
@ -51,6 +51,7 @@ export function PrivateEmbedRampModal() {
|
||||||
const rampLinkSelector = getRampLink({
|
const rampLinkSelector = getRampLink({
|
||||||
section: RampSection.ShareModal,
|
section: RampSection.ShareModal,
|
||||||
feature: RampFeature.PrivateEmbeds,
|
feature: RampFeature.PrivateEmbeds,
|
||||||
|
isBusinessFeature: false,
|
||||||
});
|
});
|
||||||
const rampLink = useSelector(rampLinkSelector);
|
const rampLink = useSelector(rampLinkSelector);
|
||||||
const isPrivateEmbedEnabled = useFeatureFlag(
|
const isPrivateEmbedEnabled = useFeatureFlag(
|
||||||
|
|
@ -71,7 +72,7 @@ export function PrivateEmbedRampModal() {
|
||||||
<Text kind="body-m">
|
<Text kind="body-m">
|
||||||
{createMessage(IN_APP_EMBED_SETTING.privateAppsText)}
|
{createMessage(IN_APP_EMBED_SETTING.privateAppsText)}
|
||||||
</Text>
|
</Text>
|
||||||
<BusinessTag classes="ml-1 mt-0.5" />
|
<EnterpriseTag classes="ml-1 mt-0.5" />
|
||||||
</div>
|
</div>
|
||||||
<Text
|
<Text
|
||||||
className="w-7/10 block"
|
className="w-7/10 block"
|
||||||
|
|
@ -99,6 +100,7 @@ export function PrivateEmbedRampSidebar() {
|
||||||
const rampLinkSelector = getRampLink({
|
const rampLinkSelector = getRampLink({
|
||||||
section: RampSection.AppSettings,
|
section: RampSection.AppSettings,
|
||||||
feature: RampFeature.PrivateEmbeds,
|
feature: RampFeature.PrivateEmbeds,
|
||||||
|
isBusinessFeature: false,
|
||||||
});
|
});
|
||||||
const rampLink = useSelector(rampLinkSelector);
|
const rampLink = useSelector(rampLinkSelector);
|
||||||
const isPrivateEmbedEnabled = useFeatureFlag(
|
const isPrivateEmbedEnabled = useFeatureFlag(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user