* temp commit
* using onsubmit to continue using action on form
* added recaptcha site key to env example file
* moved the recaptcha lib loading logic to signup page
* removed unnecessary edit
* handle the case where the recaptcha token is not provided as env var
* added proper env var config for client
* recaptcha config for ansible
* recaptcha config for heroku
* recaptcha config for k8s
* updated app.json
* fixed the typos
* added more description for env vars
* removed api key
* minor typo fix
* added new integration button
* updated the add int default link
* added active and create new tabs
* added the empty components to tabs. will control the section manually.
* added proper grid for integrations page
* added vertical tabs
* Added secondary tabs to integrations page
* added separate page for new apis
* classname changes
* added new components for active queries, new queries etc.
* added a separate component for data source list
* adding screen component conditionally, to be showing upon user's choice
* 1. Added grid styling to datasource home
2. Added connect buttons to em
* fixed data source security banner
* updated the styling for new api page
* added tertiary menu for active integrations
* updated styling for active connections
* updated collapse component to work properly
* added show more option to active data sources
* Slash commands feature init commit
* Added more commands
* Introduced JSX to render custom commands
* Merge conflict fix
* Spacing changes
* removed apis/db tabs and replaced em with integrations tab
* removed the unnecessary + integrations btn
* Added slash commands button
* Adjust styles for better ui
* Ordered the action entries under integrations
* Added new datasource command
* updated the getURL with proper params
* updated the link of create datasource btn
* updated the back btn link from data source editor
* Show connect data cta in property pane
* Styling fixes
* Fix margin
* added scrollable content to create new
* added on click scroll to create new page
* fixed a bug, creating new datasource twice
* added new action creator for integrations.
* Minor changes to add new bindings command.
Changed ui behaviour of / button
* UI style change
* updated the query editor to match the over all theme
* updated the query editor tabs
* Added the run btn to empty response screens
* minor fix
* updated the bg color of api type drop down
* updated the url being visited after delete api/query
* removed log
* Insert binding command UI change
* More UI changes
* removed unnecessary junk from integrations editor index
* clean up, removed unnecessary files
* removed useless routes
* for debugger only checking if integrations editor
* Removed all the links for api/query home pages
* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget
* Added reverse binding for DB queries
* Show / button only on hover
* not routing to integrations on create query/api
* Hide actions from suggestions in action pages
* removed the query/datasource/api home pages
* Changes widget.data to widget in slash commands
* Show dependencies in property pane
* Fix warning
* fixed scrolling issue
* will show a list of queries and apis for action picker
* showing icons for each action under integrations
* Fix dropdown not showing up
* Minor refactoring.
Changed commands
* added a way to list data sources in action creators
* Update query page url
* cam show icons for datasources
* Removed unused code
* Feature/slash commands (#5002)
* Slash commands feature init commit
* Added more commands
* Introduced JSX to render custom commands
* Merge conflict fix
* Spacing changes
* Added slash commands button
* Adjust styles for better ui
* Added new datasource command
* Minor changes to add new bindings command.
Changed ui behaviour of / button
* UI style change
* Insert binding command UI change
* More UI changes
* Move command actions to a saga
Added support to binding the data back to the widget when are new API is created from widget
* Added reverse binding for DB queries
* Show / button only on hover
* Hide actions from suggestions in action pages
* Changes widget.data to widget in slash commands
* Minor refactoring.
Changed commands
* Removed unused code
* remove more unusued code
* Added support to generate new api from a datasource in quick commands
* Code correction to use types
* Refactored commands code
* Minor bug fixes
* Remove new integrations command for actions.
Fixed autocomplete not showing up
* Changes to prevent autocomplete trigger for navigation commands
* Prevent hinter execution when show hint is open already.
* Show hinter on focus
* Update text to be called in the omnibar
* updated the copy for empty active datasources
* Update url
* Fix text decoration
* updated the redirection for back btns
* Use themes
* Add cypress test
* fixed back btn nav
* fetching form configs for datasources
* a callback fixed
* Fix slash command not executed on click (#5540)
* Replace the value if not a string else append
* Log commands menu events
* updated mock data base navigation
* updated mock data base navigation
* updated the close editors and back buttons
* All back btns from editors will go back to data sources and back from data source will go back to canvas
* fixed bg colors
* minor styled updates
* removed margin from header of generic datasource
* warnings fixes
* If user is already on the location not redirecting em
* when editing, will check if the coming from data source and redirect accordingly
* updated redirection for newly created api/queries
* updated back btn for newly created datasources
* back for new curl goes to data sources
* Revert "[Fix] revert new nav (#5533)"
This reverts commit 1647815d
* remaining original reverted chagnes
* fixed the width of incoming/outgoing entity bar in property pane
* removing residue from resolved merge conflicts
* Fix widget icons not visible in dropdown menu
* minor fix to use proper integration URL
* updated the URLs for unified datasources
* converted back and close to btns from banners
* on accessing data source from sidebar, it'll always go to view mode
* updated the edit path for saas editors
* Added saved state for google sheet
* on google sheet delete redirecting to create new
* minor fix
* fixed the redirection call on saving a datasource
* removed save and test cmd as it wasn't needed
* Removing test cases to be fixed by Arun
* commenting more tests to be fixed by Arun
* updated call api cy command
* Fix extra margin issue
* fixed the update datasource saga
* fixed video spec
* Revert "commenting more tests to be fixed by Arun"
This reverts commit 42087a95ad77107401a1619e4c2d4c541a81d6c3.
* Revert "Removing test cases to be fixed by Arun"
This reverts commit f6fad67e558d22045114a90409428ef9b737478f.
* fixed the entity explorer query datasource spec
* cautious fix
* update widget locators
* fixed leave org test
* fixes for FormWidgets
* updated the image spec
* Use memo
* Fix debugger url checks
* for copy and delete widget pointing directly to svgs
* Fix entity text
* Fix styling and show tooltip for property pane dependencies
* removed the unnecessary callback
* added a separate saga to to redirect to new integrations using onSuccess
* Bug Fixes - New nav (#5629)
* will show scrollbar only on hover
* made mock data cards clickable
* fixed the grid view
* fixed the cursor position when clicking on / btn
* updated the hint for `/` command
* binding prompt will close on focus change
* hiding / command for api body
* hiding / command for query pane
* Added 2 new icons
* Fix cursor position on selecting a binding and clicking on the slash menu button
* trying out fix to copyWidget cy command
* removing zero width space characters from the property pane text
Co-authored-by: arunvjn <arun@appsmith.com>
Co-authored-by: Akash N <akash@codemonk.in>
Co-authored-by: arunvjn <32433245+arunvjn@users.noreply.github.com>
Co-authored-by: Rishabh Saxena <rishabh.robben@gmail.com>
213 lines
5.9 KiB
TypeScript
213 lines
5.9 KiB
TypeScript
const { match } = require("path-to-regexp");
|
|
|
|
export const BASE_URL = "/";
|
|
export const ORG_URL = "/org";
|
|
export const PAGE_NOT_FOUND_URL = "/404";
|
|
export const SERVER_ERROR_URL = "/500";
|
|
export const APPLICATIONS_URL = `/applications`;
|
|
export const BUILDER_URL = "/applications/:applicationId/pages/:pageId/edit";
|
|
export const USER_AUTH_URL = "/user";
|
|
export const PROFILE = "/profile";
|
|
export const USERS_URL = "/users";
|
|
export const VIEWER_URL_REGEX = /applications\/.*?\/pages\/.*/;
|
|
|
|
export type BuilderRouteParams = {
|
|
applicationId: string;
|
|
pageId: string;
|
|
};
|
|
|
|
export type AppViewerRouteParams = {
|
|
applicationId?: string;
|
|
pageId?: string;
|
|
};
|
|
|
|
export type APIEditorRouteParams = {
|
|
applicationId: string;
|
|
pageId: string;
|
|
apiId?: string;
|
|
};
|
|
|
|
export type ProviderViewerRouteParams = {
|
|
applicationId: string;
|
|
pageId: string;
|
|
providerId: string;
|
|
};
|
|
|
|
export type QueryEditorRouteParams = {
|
|
applicationId: string;
|
|
pageId: string;
|
|
queryId: string;
|
|
};
|
|
|
|
export const BUILDER_BASE_URL = (applicationId = ":applicationId"): string =>
|
|
`/applications/${applicationId}`;
|
|
|
|
export const BUILDER_PAGE_URL = (
|
|
applicationId?: string,
|
|
pageId?: string,
|
|
params?: Record<string, string>,
|
|
): string => {
|
|
if (!pageId) return APPLICATIONS_URL;
|
|
const queryParams = convertToQueryParams(params);
|
|
return (
|
|
`${BUILDER_BASE_URL(applicationId)}/pages/${pageId}/edit` + queryParams
|
|
);
|
|
};
|
|
|
|
export const API_EDITOR_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
): string => `${BUILDER_PAGE_URL(applicationId, pageId)}/api`;
|
|
|
|
export const PAGE_LIST_EDITOR_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
): string => `${BUILDER_PAGE_URL(applicationId, pageId)}/pages`;
|
|
|
|
export const DATA_SOURCES_EDITOR_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
): string => `${BUILDER_PAGE_URL(applicationId, pageId)}/datasource`;
|
|
|
|
export const DATA_SOURCES_EDITOR_ID_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
datasourceId = ":datasourceId",
|
|
params?: Record<string, string>,
|
|
): string => {
|
|
const queryparams = convertToQueryParams(params);
|
|
return `${DATA_SOURCES_EDITOR_URL(
|
|
applicationId,
|
|
pageId,
|
|
)}/${datasourceId}${queryparams}`;
|
|
};
|
|
|
|
export const QUERIES_EDITOR_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
): string => `${BUILDER_PAGE_URL(applicationId, pageId)}/queries`;
|
|
|
|
export const INTEGRATION_TABS = {
|
|
ACTIVE: "ACTIVE",
|
|
NEW: "NEW",
|
|
};
|
|
|
|
export const INTEGRATION_EDITOR_MODES = {
|
|
AUTO: "auto",
|
|
MOCK: "mock",
|
|
};
|
|
export const INTEGRATION_EDITOR_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
selectedTab = ":selectedTab",
|
|
mode = "",
|
|
): string =>
|
|
`${BUILDER_PAGE_URL(applicationId, pageId)}/datasources/${selectedTab}${
|
|
mode ? "?mode=" + mode : ""
|
|
}`;
|
|
|
|
export const QUERIES_EDITOR_ID_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
queryId = ":queryId",
|
|
params = {},
|
|
): string => {
|
|
const queryparams = convertToQueryParams(params);
|
|
return `${QUERIES_EDITOR_URL(
|
|
applicationId,
|
|
pageId,
|
|
)}/${queryId}${queryparams}`;
|
|
};
|
|
|
|
export const API_EDITOR_ID_URL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
apiId = ":apiId",
|
|
params = {},
|
|
): string => {
|
|
const queryParams = convertToQueryParams(params);
|
|
return `${API_EDITOR_URL(applicationId, pageId)}/${apiId}${queryParams}`;
|
|
};
|
|
|
|
export const API_EDITOR_URL_WITH_SELECTED_PAGE_ID = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
selectedPageId = ":importTo",
|
|
): string => {
|
|
return `${BUILDER_PAGE_URL(
|
|
applicationId,
|
|
pageId,
|
|
)}/api?importTo=${selectedPageId}`;
|
|
};
|
|
|
|
export const APP_VIEW_URL = `/applications/:applicationId`;
|
|
|
|
export const getApplicationViewerURL = (
|
|
applicationId = ":applicationId",
|
|
): string => `/applications/${applicationId}`;
|
|
|
|
export const getApplicationViewerPageURL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
params: Record<string, string> = {},
|
|
): string => {
|
|
const url = `/applications/${applicationId}/pages/${pageId}`;
|
|
const queryParams = convertToQueryParams(params);
|
|
return url + queryParams;
|
|
};
|
|
|
|
export function convertToQueryParams(
|
|
params: Record<string, string> = {},
|
|
): string {
|
|
const paramKeys = Object.keys(params);
|
|
const queryParams: string[] = [];
|
|
if (paramKeys) {
|
|
paramKeys.forEach((paramKey: string) => {
|
|
const value = params[paramKey];
|
|
if (paramKey && value) {
|
|
queryParams.push(`${paramKey}=${value}`);
|
|
}
|
|
});
|
|
}
|
|
return queryParams.length ? "?" + queryParams.join("&") : "";
|
|
}
|
|
|
|
export const getCurlImportPageURL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
): string => `${API_EDITOR_URL(applicationId, pageId)}/curl/curl-import`;
|
|
|
|
export const getProviderTemplatesURL = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
providerId = ":providerId",
|
|
): string => `${API_EDITOR_URL(applicationId, pageId)}/provider/${providerId}`;
|
|
|
|
export const QUERY_EDITOR_URL_WITH_SELECTED_PAGE_ID = (
|
|
applicationId = ":applicationId",
|
|
pageId = ":pageId",
|
|
selectedPageId = ":importTo",
|
|
): string => {
|
|
return `${BUILDER_PAGE_URL(
|
|
applicationId,
|
|
pageId,
|
|
)}/queries?importTo=${selectedPageId}`;
|
|
};
|
|
|
|
export const FORGOT_PASSWORD_URL = `${USER_AUTH_URL}/forgotPassword`;
|
|
export const RESET_PASSWORD_URL = `${USER_AUTH_URL}/resetPassword`;
|
|
export const BASE_SIGNUP_URL = `/signup`;
|
|
export const SIGN_UP_URL = `${USER_AUTH_URL}/signup`;
|
|
export const BASE_LOGIN_URL = `/login`;
|
|
export const AUTH_LOGIN_URL = `${USER_AUTH_URL}/login`;
|
|
export const SIGNUP_SUCCESS_URL = `/signup-success`;
|
|
|
|
export const ORG_INVITE_USERS_PAGE_URL = `${ORG_URL}/invite`;
|
|
export const ORG_SETTINGS_PAGE_URL = `${ORG_URL}/settings`;
|
|
|
|
export const matchApiPath = match(API_EDITOR_ID_URL());
|
|
export const matchDatasourcePath = match(DATA_SOURCES_EDITOR_ID_URL());
|
|
export const matchQueryPath = match(QUERIES_EDITOR_ID_URL());
|
|
export const matchBuilderPath = match(BUILDER_URL);
|
|
export const matchViewerPath = match(getApplicationViewerPageURL());
|