From 84960176ecaea3d0f00c40cb59f430656534544f Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Tue, 30 Jul 2024 11:05:05 +0530 Subject: [PATCH 1/7] Add subscription approval --- .../webapp/source/src/app/ProtectedApp.jsx | 2 + .../Base/Header/navbar/GlobalNavBar.jsx | 2 +- .../Base/Header/navbar/GlobalNavLinks.jsx | 14 + .../src/app/components/Shared/CustomIcon.jsx | 50 ++ .../Subscription/LeftMenu/LeftMenu.jsx | 113 ++++ .../components/Subscription/Subscription.jsx | 49 ++ .../SubscriptionCreation/ListLabels.jsx | 596 ++++++++++++++++++ .../SubscriptionUpdate/ListLabels.jsx | 596 ++++++++++++++++++ 8 files changed, 1421 insertions(+), 1 deletion(-) create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx diff --git a/portals/publisher/src/main/webapp/source/src/app/ProtectedApp.jsx b/portals/publisher/src/main/webapp/source/src/app/ProtectedApp.jsx index dd784b10199..cc5c2a3d602 100644 --- a/portals/publisher/src/main/webapp/source/src/app/ProtectedApp.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/ProtectedApp.jsx @@ -40,6 +40,7 @@ import Progress from 'AppComponents/Shared/Progress'; import Configurations from 'Config'; import { QueryClientProviderX } from 'AppData/hooks/ReactQueryX'; import Scopes from 'AppComponents/Scopes/Scopes'; +import Subscription from 'AppComponents/Subscription/Subscription'; import CommonPolicies from 'AppComponents/CommonPolicies/CommonPolicies'; import GlobalPolicies from 'AppComponents/GlobalPolicies/GlobalPolicies'; import merge from 'lodash/merge'; @@ -221,6 +222,7 @@ export default class Protected extends Component { + diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavBar.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavBar.jsx index aa915d13169..73142141a6c 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavBar.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavBar.jsx @@ -94,7 +94,7 @@ const GlobalNavBar = (props) => { let isRootPage = false; const { pathname } = location; - if (/^\/(apis|api-products|scopes|policies|global-policies|service-catalog)($|\/$)/g.test(pathname)) { + if (/^\/(apis|subscription|api-products|scopes|policies|global-policies|service-catalog)($|\/$)/g.test(pathname)) { isRootPage = true; } useEffect(() => { diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx index 7340390834f..160559aecf5 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx @@ -191,6 +191,20 @@ function GlobalNavLinks(props) { )} + {(!isRestricted(['apim:api_manage', 'apim:api_publish'])) && ( +
+ + + +
)} ); diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Shared/CustomIcon.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Shared/CustomIcon.jsx index a27c126264c..65e216c064e 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Shared/CustomIcon.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Shared/CustomIcon.jsx @@ -443,6 +443,56 @@ export default function CustomIcon(props) { ); + } else if (icon === 'subscriptioncreation') { + return ( + + ); + } + else if (icon === 'subscriptionupdate') { + return ( + + ); } return null; } diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx new file mode 100644 index 00000000000..fd0f834072d --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx @@ -0,0 +1,113 @@ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React from 'react'; +import { styled } from '@mui/material/styles'; +import { Link } from 'react-router-dom'; +import Box from '@mui/material/Box'; +import AddTaskIcon from '@mui/icons-material/AddTask'; +import CustomIcon from 'AppComponents/Shared/CustomIcon'; +import Divider from '@mui/material/Divider'; +import UpgradeIcon from '@mui/icons-material/Upgrade'; +import LeftMenuItem from 'AppComponents/Shared/LeftMenuItem'; +import Typography from '@mui/material/Typography'; + +const PREFIX = 'LeftMenu'; + +const classes = { + LeftMenu: `${PREFIX}-LeftMenu`, + leftLInkMain: `${PREFIX}-leftLInkMain`, + content: `${PREFIX}-content`, + contentInside: `${PREFIX}-contentInside`, + footeremaillink: `${PREFIX}-footeremaillink`, + root: `${PREFIX}-root`, + heading: `${PREFIX}-heading`, + expanded: `${PREFIX}-expanded`, + leftLInkText: `${PREFIX}-leftLInkText`, + expandIconColor: `${PREFIX}-expandIconColor`, + headingText: `${PREFIX}-headingText`, + customIcon: `${PREFIX}-customIcon` +}; + +const StyledBox = styled(Box)(( + { + theme + } +) => ({ + + [`& .${classes.LeftMenu}`]: { + backgroundColor: theme.palette.background.leftMenu, + width: theme.custom.leftMenuWidth, + minHeight: `calc(100vh - ${64 + theme.custom.footer.height}px)`, + }, + + [`& .${classes.headingText}`]: { + marginTop: '10px', + marginBottom: '10px', + fontWeight: 800, + color: '#ffffff', + textAlign: 'left', + marginLeft: '8px', + }, + [`& .${classes.customIcon}`]: { + marginTop: (theme.custom.apis.topMenu.height - theme.custom.leftMenuIconMainSize) / 2, + } + +})); + +/** + * Left Menu of the Approval tasks page + */ +export default function LeftMenu() { + + return ( + + + + ); + +} diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx new file mode 100644 index 00000000000..8d077eaee20 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2020, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React from 'react'; +import { Route, Switch } from 'react-router-dom'; +import ResourceNotFound from 'AppComponents/Base/Errors/ResourceNotFound'; +import SubscriptionCreation from './SubscriptionCreation/ListLabels.jsx'; +import SubscriptionUpdate from './SubscriptionUpdate/ListLabels.jsx'; + +/** + * `Route` elements for shared scopes UI. + * @returns {JSX} Shared scope routes. + */ +const Subscription = () => { + return ( +
+ + + + + +
+ ); +}; + +export default Subscription; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx new file mode 100644 index 00000000000..74158e96c9b --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx @@ -0,0 +1,596 @@ +/* eslint-disable react/jsx-props-no-spreading */ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React, { useEffect, useState } from 'react'; +import { FormattedMessage, useIntl } from 'react-intl'; +import { styled } from '@mui/material/styles'; +import AppBar from '@mui/material/AppBar'; +import Toolbar from '@mui/material/Toolbar'; +import Typography from '@mui/material/Typography'; +import Grid from '@mui/material/Grid'; +import TextField from '@mui/material/TextField'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; +import SearchIcon from '@mui/icons-material/Search'; +import RefreshIcon from '@mui/icons-material/Refresh'; +import Card from '@mui/material/Card'; +import CardActions from '@mui/material/CardActions'; +import CardContent from '@mui/material/CardContent'; +import { Dialog, DialogActions, DialogContent, DialogContentText, + DialogTitle, Alert as MUIAlert } from '@mui/material'; +import MUIDataTable from 'mui-datatables'; +import ContentBase from 'AppComponents/Addons/Addons/ContentBase'; +import InlineProgress from 'AppComponents/Addons/Addons/InlineProgress'; +import Alert from 'AppComponents/Shared/Alert'; +import List from '@mui/material/List'; +import ListItem from '@mui/material/ListItem'; +import ListItemIcon from '@mui/material/ListItemIcon'; +import ListItemText from '@mui/material/ListItemText'; +import HelpBase from 'AppComponents/Addons/Addons/HelpBase'; +import DescriptionIcon from '@mui/icons-material/Description'; +import Link from '@mui/material/Link'; +import Configurations from 'Config'; +import API from 'AppData/api'; +import Button from '@mui/material/Button'; +import * as dayjs from 'dayjs'; +import relativeTime from 'dayjs/plugin/relativeTime'; +import localizedFormat from 'dayjs/plugin/localizedFormat'; +import CheckIcon from '@mui/icons-material/Check'; +import ClearIcon from '@mui/icons-material/Clear'; +import Box from '@mui/material/Box'; +import CircularProgress from '@mui/material/CircularProgress'; +import WarningBase from 'AppComponents/Addons/Addons/WarningBase'; +import LeftMenu from '../LeftMenu/LeftMenu'; + +const PREFIX = 'subscriptioncreation'; + +const classes = { + LeftMenu: `${PREFIX}-LeftMenu`, + leftLInkMain: `${PREFIX}-leftLInkMain`, + content: `${PREFIX}-content`, + contentInside: `${PREFIX}-contentInside`, + footeremaillink: `${PREFIX}-footeremaillink`, + root: `${PREFIX}-root`, + heading: `${PREFIX}-heading`, + expanded: `${PREFIX}-expanded`, + leftLInkText: `${PREFIX}-leftLInkText`, + expandIconColor: `${PREFIX}-expandIconColor`, + headingText: `${PREFIX}-headingText`, + customIcon: `${PREFIX}-customIcon` +}; + +const StyledBox = styled(Box)(( + { + theme + } +) => ({ + [`& .${classes.main}`]: { + paddingTop: '0', + }, + + [`& .${classes.LeftMenu}`]: { + backgroundColor: theme.palette.background.leftMenu, + width: theme.custom.leftMenuWidth, + minHeight: `calc(100vh - ${64 + theme.custom.footer.height}px)`, + }, + + [`& .${classes.content}`]: { + display: 'flex', + flexGrow: 1, + flexDirection: 'column', + paddingBottom: theme.spacing(3), + overflow: 'auto', + }, + +})); + +/** + * Render a list + * @param {JSON} props props passed from parent + * @returns {JSX} Header AppBar components. + */ +function ListLabels() { + const intl = useIntl(); + const [data, setData] = useState(null); + const restApi = new API(); + + const [searchText, setSearchText] = useState(''); + const [isUpdating, setIsUpdating] = useState(null); + const [buttonValue, setButtonValue] = useState(); + const [hasListPermission, setHasListPermission] = useState(true); + const [openMenu, setOpenMenu] = useState(false); + const [errorMessage, setError] = useState(null); + + /** + * API call to get Detected Data + * @returns {Promise}. + */ + function apiCall() { + return restApi.workflowsGet('AM_SUBSCRIPTION_CREATION') + .then((result) => { + console.log(result); + const workflowlist = result.body.list.map((obj) => { + console.log(obj.properties); + return { + description: obj.description, + api: obj.properties.apiName + '-' + obj.properties.apiVersion, + applicationName: obj.properties.applicationName, + subscriber: obj.properties.subscriber, + tier: obj.properties.tier, + referenceId: obj.referenceId, + createdTime: obj.createdTime, + properties: obj.properties, + }; + }); + return workflowlist; + }) + .catch((error) => { + const { status } = error; + if (status === 401) { + setHasListPermission(false); + } else { + Alert.error(intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.apicall.has.errors', + defaultMessage: 'Unable to get workflow pending requests for Subscription Creation', + })); + throw (error); + } + }); + } + + const fetchData = () => { + // Fetch data from backend + setData(null); + const promiseAPICall = apiCall(); + promiseAPICall.then((LocalData) => { + setData(LocalData); + }).catch((e) => { + console.error('Unable to fetch data. ', e.message); + setError(e.message); + }); + }; + + const handleRequestOpen = () => { + setOpenMenu(true); + }; + + const handleRequestClose = () => { + setOpenMenu(false); + }; + + useEffect(() => { + fetchData(); + }, []); + + const updateStatus = (referenceId, value) => { + setButtonValue(value); + const body = { status: value, attributes: {}, description: '' }; + setIsUpdating(true); + if (value === 'APPROVED') { + body.description = 'Approve workflow request.'; + } + if (value === 'REJECTED') { + body.description = 'Reject workflow request.'; + } + const promisedupdateWorkflow = restApi.updateWorkflow(referenceId, body); + return promisedupdateWorkflow + .then(() => { + setIsUpdating(false); + Alert.success(intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.update.success', + defaultMessage: 'Workflow status is updated successfully', + })); + }) + .catch((error) => { + console.log(error); + const { response, status } = error; + const { body: { description } } = response; + if (status === 401) { + Alert.error(description); + } else if (response.body) { + Alert.error(intl.formatMessage({ + id: 'Workflow.ApplicationCreation.updateStatus.has.errors', + defaultMessage: 'Unable to complete subscription creation approve/reject process. ', + })); + throw (response.body.description); + } + setIsUpdating(false); + return null; + }) + .then(() => { + fetchData(); + }); + }; + + const pageProps = { + help: ( + + + + + + + + + )} + /> + + + + ), + + pageStyle: 'half', + title: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.title.subscriptioncreation', + defaultMessage: 'Subscription Creation - Approval Tasks', + }), + }; + + const columProps = [ + { + name: 'description', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Description', + defaultMessage: 'Description', + }), + options: { + sort: false, + display: false, + }, + }, + { + name: 'api', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.API', + defaultMessage: 'API', + }), + options: { + sort: false, + filter: true, + }, + }, + { + name: 'applicationName', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Application', + defaultMessage: 'Application', + }), + options: { + sort: false, + filter: true, + }, + }, + { + name: 'tier', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Tier', + defaultMessage: 'Tier', + }), + options: { + sort: false, + filter: true, + }, + }, + { + name: 'subscriber', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Subscriber', + defaultMessage: 'Subscriber', + }), + options: { + sort: false, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const { properties } = dataRow; + const { createdTime } = dataRow; + dayjs.extend(relativeTime); + const time = dayjs(createdTime).fromNow(); + dayjs.extend(localizedFormat); + const format = dayjs(createdTime).format('LLL'); + return ( +
+ {properties.subscriber} +
+ + + {time} + + +
+ ); + }, + }, + }, + { + name: 'action', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Action', + defaultMessage: 'Action', + }), + options: { + sort: false, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const { referenceId } = dataRow; + return ( +
+ + +    + + + + + + + + + + + + + + + + +
+ ); + }, + }, + }, + ]; + + const addButtonProps = {}; + const addButtonOverride = null; + const noDataMessage = ( + + ); + + const searchActive = true; + const searchPlaceholder = intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.search.default', + defaultMessage: 'Search by API, Application or Subscriber', + }); + + const filterData = (event) => { + setSearchText(event.target.value); + }; + + const columns = [ + ...columProps, + ]; + + const options = { + filterType: 'checkbox', + selectableRows: 'none', + filter: false, + search: false, + print: false, + download: false, + viewColumns: false, + customToolbar: null, + responsive: 'vertical', + searchText, + }; + if (data && data.length === 0) { + return ( + + + + + + + + + + + + {addButtonOverride || ( + // eslint-disable-next-line react/no-unknown-property + + )} + + + + ); + } + if (!hasListPermission) { + return ( + + )} + content={( + + )} + /> + ); + } + if (!errorMessage && !data) { + return ( + + + + + ); + } + if (errorMessage) { + return ( + + {errorMessage} + + + ); + } + return ( + + + + + + + {(searchActive || addButtonProps) && ( + + + + + {searchActive && ()} + + + {searchActive && ( + ({ + + '& .search-input': { + fontSize: theme.typography.fontSize, + }, + })} + InputProps={{ + disableUnderline: true, + className: 'search-input', + }} + onChange={filterData} + /> + )} + + + {addButtonOverride || ( + + + )} + + )} + > + + + + + + + + + )} + {data && data.length > 0 && ( + + )} + {data && data.length === 0 && ( +
+ + {noDataMessage} + +
+ )} +
+
+
+ ); +} + +export default ListLabels; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx new file mode 100644 index 00000000000..1352b43e678 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx @@ -0,0 +1,596 @@ +/* eslint-disable react/jsx-props-no-spreading */ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React, { useEffect, useState } from 'react'; +import { FormattedMessage, useIntl } from 'react-intl'; +import { styled } from '@mui/material/styles'; +import AppBar from '@mui/material/AppBar'; +import Toolbar from '@mui/material/Toolbar'; +import Typography from '@mui/material/Typography'; +import Grid from '@mui/material/Grid'; +import TextField from '@mui/material/TextField'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; +import SearchIcon from '@mui/icons-material/Search'; +import RefreshIcon from '@mui/icons-material/Refresh'; +import Card from '@mui/material/Card'; +import CardActions from '@mui/material/CardActions'; +import CardContent from '@mui/material/CardContent'; +import MUIDataTable from 'mui-datatables'; +import ContentBase from 'AppComponents/Addons/Addons/ContentBase'; +import InlineProgress from 'AppComponents/Addons/Addons/InlineProgress'; +import Alert from 'AppComponents/Shared/Alert'; +import List from '@mui/material/List'; +import ListItem from '@mui/material/ListItem'; +import ListItemIcon from '@mui/material/ListItemIcon'; +import ListItemText from '@mui/material/ListItemText'; +import HelpBase from 'AppComponents/Addons/Addons/HelpBase'; +import DescriptionIcon from '@mui/icons-material/Description'; +import Link from '@mui/material/Link'; +import Configurations from 'Config'; +import API from 'AppData/api'; +import Button from '@mui/material/Button'; +import * as dayjs from 'dayjs'; +import relativeTime from 'dayjs/plugin/relativeTime'; +import localizedFormat from 'dayjs/plugin/localizedFormat'; +import CheckIcon from '@mui/icons-material/Check'; +import ClearIcon from '@mui/icons-material/Clear'; +import Box from '@mui/material/Box'; +import CircularProgress from '@mui/material/CircularProgress'; +import WarningBase from 'AppComponents/Addons/Addons/WarningBase'; +import { Dialog, DialogActions, DialogContent, DialogContentText, + DialogTitle, Alert as MUIAlert } from '@mui/material'; +import LeftMenu from '../LeftMenu/LeftMenu.jsx'; + +const PREFIX = 'subscriptionupdate'; + +const classes = { + LeftMenu: `${PREFIX}-LeftMenu`, + leftLInkMain: `${PREFIX}-leftLInkMain`, + content: `${PREFIX}-content`, + contentInside: `${PREFIX}-contentInside`, + footeremaillink: `${PREFIX}-footeremaillink`, + root: `${PREFIX}-root`, + heading: `${PREFIX}-heading`, + expanded: `${PREFIX}-expanded`, + leftLInkText: `${PREFIX}-leftLInkText`, + expandIconColor: `${PREFIX}-expandIconColor`, + headingText: `${PREFIX}-headingText`, + customIcon: `${PREFIX}-customIcon` +}; + +const StyledBox = styled(Box)(( + { + theme + } +) => ({ + [`& .${classes.LeftMenu}`]: { + backgroundColor: theme.palette.background.leftMenu, + width: theme.custom.leftMenuWidth, + minHeight: `calc(100vh - ${64 + theme.custom.footer.height}px)`, + }, + + [`& .${classes.content}`]: { + display: 'flex', + flexGrow: 1, + flexDirection: 'column', + paddingBottom: theme.spacing(3), + overflow: 'auto', + }, + +})); + +/** + * Render a list + * @param {JSON} props props passed from parent + * @returns {JSX} Header AppBar components. + */ +function ListLabels() { + const intl = useIntl(); + const [data, setData] = useState(null); + const restApi = new API(); + + const [searchText, setSearchText] = useState(''); + const [isUpdating, setIsUpdating] = useState(null); + const [buttonValue, setButtonValue] = useState(); + const [hasListPermission, setHasListPermission] = useState(true); + const [openMenu, setOpenMenu] = useState(false); + const [errorMessage, setError] = useState(null); + + /** + * API call to get Detected Data + * @returns {Promise}. + */ + function apiCall() { + return restApi.workflowsGet('AM_SUBSCRIPTION_UPDATE') + .then((result) => { + const workflowlist = result.body.list.map((obj) => { + return { + description: obj.description, + api: obj.properties.apiName + '-' + obj.properties.apiVersion, + applicationName: obj.properties.applicationName, + subscriber: obj.properties.subscriber, + currentTier: obj.properties.currentTier, + requestedTier: obj.properties.requestedTier, + referenceId: obj.referenceId, + createdTime: obj.createdTime, + properties: obj.properties, + }; + }); + return workflowlist; + }) + .catch((error) => { + const { status } = error; + if (status === 401) { + setHasListPermission(false); + } else { + Alert.error(intl.formatMessage({ + id: 'Workflow.SubscriptionUpdate.apicall.has.errors', + defaultMessage: 'Unable to get workflow pending requests for Subscription Update', + })); + throw (error); + } + }); + } + + const fetchData = () => { + // Fetch data from backend + setData(null); + const promiseAPICall = apiCall(); + promiseAPICall.then((LocalData) => { + setData(LocalData); + }).catch((e) => { + console.error('Unable to fetch data. ', e.message); + setError(e.message); + }); + }; + + useEffect(() => { + fetchData(); + }, []); + + const handleRequestOpen = () => { + setOpenMenu(true); + }; + + const handleRequestClose = () => { + setOpenMenu(false); + }; + + const updateStatus = (referenceId, value) => { + setButtonValue(value); + const body = { status: value, attributes: {}, description: '' }; + setIsUpdating(true); + if (value === 'APPROVED') { + body.description = 'Approve workflow request.'; + } + if (value === 'REJECTED') { + body.description = 'Reject workflow request.'; + } + const promisedupdateWorkflow = restApi.updateWorkflow(referenceId, body); + return promisedupdateWorkflow + .then(() => { + setIsUpdating(false); + Alert.success(intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.update.success', + defaultMessage: 'Workflow status is updated successfully', + })); + }) + .catch((error) => { + console.log(error); + const { response, status } = error; + const { body: { description } } = response; + if (status === 401) { + Alert.error(description); + } else if (response.body) { + Alert.error(intl.formatMessage({ + id: 'Workflow.ApplicationCreation.updateStatus.has.errors', + defaultMessage: 'Unable to complete subscription update approve/reject process. ', + })); + throw (response.body.description); + } + setIsUpdating(false); + return null; + }) + .then(() => { + fetchData(); + }); + }; + + const pageProps = { + help: ( + + + + + + + + + )} + /> + + + + ), + + pageStyle: 'half', + title: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.title.subscriptionupdate', + defaultMessage: 'Subscription Update - Approval Tasks', + }), + }; + + const columProps = [ + { + name: 'description', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Description', + defaultMessage: 'Description', + }), + options: { + sort: false, + display: false, + }, + }, + { + name: 'api', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.API', + defaultMessage: 'API', + }), + options: { + sort: false, + filter: true, + }, + }, + { + name: 'applicationName', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Application', + defaultMessage: 'Application', + }), + options: { + sort: false, + filter: true, + }, + }, + { + name: 'requestedTier', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Tier', + defaultMessage: 'Tier', + }), + options: { + sort: false, + filter: true, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const { properties } = dataRow; + return ( +
+ {properties.currentTier} : {properties.requestedTier} +
+ ); + }, + }, + }, + { + name: 'subscriber', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Subscriber', + defaultMessage: 'Subscriber', + }), + options: { + sort: false, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const { properties } = dataRow; + const { createdTime } = dataRow; + dayjs.extend(relativeTime); + const time = dayjs(createdTime).fromNow(); + dayjs.extend(localizedFormat); + const format = dayjs(createdTime).format('LLL'); + return ( +
+ {properties.subscriber} +
+ + + {time} + + +
+ ); + }, + }, + }, + { + name: 'action', + label: intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.table.header.Action', + defaultMessage: 'Action', + }), + options: { + sort: false, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const { referenceId } = dataRow; + return ( +
+ + +    + + + + + + + + + + + + + + + + +
+ ); + }, + }, + }, + ]; + + const addButtonProps = {}; + const addButtonOverride = null; + const noDataMessage = ( + + ); + + const searchActive = true; + const searchPlaceholder = intl.formatMessage({ + id: 'Workflow.SubscriptionCreation.search.default', + defaultMessage: 'Search by API, Application or Subscriber', + }); + + const filterData = (event) => { + setSearchText(event.target.value); + }; + + const columns = [ + ...columProps, + ]; + + const options = { + filterType: 'checkbox', + selectableRows: 'none', + filter: false, + search: false, + print: false, + download: false, + viewColumns: false, + customToolbar: null, + responsive: 'vertical', + searchText, + }; + if (data && data.length === 0) { + return ( + + + + + + + + + + + + {addButtonOverride || ( + // eslint-disable-next-line react/no-unknown-property + + )} + + + + ); + } + if (!hasListPermission) { + return ( + + )} + content={( + + )} + /> + ); + } + if (!errorMessage && !data) { + return ( + + + + + ); + } + if (errorMessage) { + return ( + + {errorMessage} + + + ); + } + return ( + + + + + + + {(searchActive || addButtonProps) && ( + + + + + {searchActive && ()} + + + {searchActive && ( + ({ + '& .search-input': { + fontSize: theme.typography.fontSize, + }, + })} + InputProps={{ + disableUnderline: true, + className: 'search-input', + }} + onChange={filterData} + /> + )} + + + {addButtonOverride || ( + + + )} + + )} + > + + + + + + + + + )} + {data && data.length > 0 && ( + + )} + {data && data.length === 0 && ( +
+ + {noDataMessage} + +
+ )} +
+
+
+ ); +} + +export default ListLabels; From fba586d8e915e55c209394f18531bb49d57bd0e0 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Tue, 30 Jul 2024 17:12:29 +0530 Subject: [PATCH 2/7] Add subscription approval --- .../Base/Header/navbar/GlobalNavLinks.jsx | 2 +- .../SubscriptionCreation/ListLabels.jsx | 77 +++++++++++-------- .../SubscriptionUpdate/ListLabels.jsx | 64 ++++++++------- 3 files changed, 80 insertions(+), 63 deletions(-) diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx index 160559aecf5..1527a1d7e50 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx @@ -191,7 +191,7 @@ function GlobalNavLinks(props) { )} - {(!isRestricted(['apim:api_manage', 'apim:api_publish'])) && ( + {(!isRestricted(['apim:subscription_approval_view', 'apim:subscription_approval_manage'])) && (
{(isUpdating && buttonValue === 'APPROVED') && } @@ -368,19 +368,18 @@ function ListLabels() { id='Task.SubscriptionCreation.table.button.reject' defaultMessage='Reject' /> - {(isUpdating && buttonValue === 'REJECTED') && } @@ -388,7 +387,7 @@ function ListLabels() { @@ -397,9 +396,11 @@ function ListLabels() { onClick={() => updateStatus(referenceId, 'REJECTED')} > + {(isUpdating && buttonValue === 'REJECTED') && + } @@ -415,7 +416,7 @@ function ListLabels() { const addButtonOverride = null; const noDataMessage = ( ); @@ -448,33 +449,41 @@ function ListLabels() { }; if (data && data.length === 0) { return ( - - - - - - - - - - - - {addButtonOverride || ( - // eslint-disable-next-line react/no-unknown-property - - )} - - - + + + + + + + + + + + + + + + + + {addButtonOverride || ( + // eslint-disable-next-line react/no-unknown-property + + )} + + + + + ); } if (!hasListPermission) { diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx index 1352b43e678..6e6e9ea0a56 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx @@ -380,7 +380,8 @@ function ListLabels() { @@ -449,33 +450,40 @@ function ListLabels() { }; if (data && data.length === 0) { return ( - - - - - - - - - - - - {addButtonOverride || ( - // eslint-disable-next-line react/no-unknown-property - - )} - - - + + + + + + + + + + + + + + + + + {addButtonOverride || ( + // eslint-disable-next-line react/no-unknown-property + + )} + + + + + ); } if (!hasListPermission) { From 1c5cab6e5df11de1adaa8a2524f1c1f783869d35 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Tue, 30 Jul 2024 17:29:05 +0530 Subject: [PATCH 3/7] Add subscription approval --- .../publisher/src/main/webapp/WEB-INF/web.xml | 1 + .../webapp/site/public/conf/settings.json | 3 ++ .../main/webapp/source/src/app/data/api.js | 42 +++++++++++++++++++ 3 files changed, 46 insertions(+) diff --git a/portals/publisher/src/main/webapp/WEB-INF/web.xml b/portals/publisher/src/main/webapp/WEB-INF/web.xml index 514f259158d..bd89aebef26 100644 --- a/portals/publisher/src/main/webapp/WEB-INF/web.xml +++ b/portals/publisher/src/main/webapp/WEB-INF/web.xml @@ -123,6 +123,7 @@ index /apis/* + /subscription/* /scopes/* /settings/* /policies/* diff --git a/portals/publisher/src/main/webapp/site/public/conf/settings.json b/portals/publisher/src/main/webapp/site/public/conf/settings.json index a46e3c516b3..cf12f03c9b9 100644 --- a/portals/publisher/src/main/webapp/site/public/conf/settings.json +++ b/portals/publisher/src/main/webapp/site/public/conf/settings.json @@ -36,6 +36,9 @@ "decodeEntries": true, "tagsNotAllowed": [] }, + "workflows": { + "limit": 30 + }, "loadDefaultLocales": false, "supportedDocTypes": "application/vnd.openxmlformats-officedocument.wordprocessingml.document, application/msword, application/pdf, text/plain, application/vnd.ms-excel, application/vnd.openxmlformats-officedocument.spreadsheetml.sheet, application/vnd.oasis.opendocument.text, application/vnd.oasis.opendocument.spreadsheet, application/json, application/x-yaml, .yaml, .md" }, diff --git a/portals/publisher/src/main/webapp/source/src/app/data/api.js b/portals/publisher/src/main/webapp/source/src/app/data/api.js index bcfc78b083e..daade3ba01f 100644 --- a/portals/publisher/src/main/webapp/source/src/app/data/api.js +++ b/portals/publisher/src/main/webapp/source/src/app/data/api.js @@ -143,6 +143,48 @@ class API extends Resource { return promise_create; } + /** + * Get list of workflow pending requests + */ + workflowsGet(workflowType) { + var limit = Configurations.app.workflows.limit; + return this.client.then((client) => { + return client.apis['Workflow (Collection)'].get_workflows( + { workflowType: workflowType, limit: limit }, + this._requestMetaData(), + ); + }); + } + + /** + * Get workflow pending request according to external workflow reference + */ + workflowGet(externalWorkflowReference) { + return this.client.then((client) => { + return client.apis['Workflows (Individual)'].get_workflows__externalWorkflowRef_( + { externalWorkflowReference: externalWorkflowReference }, + this._requestMetaData(), + ); + }); + } + + /** + * Update workflow request according to external workflow reference + */ + updateWorkflow(workflowReferenceId,body) { + return this.client.then((client) => { + const payload = { + workflowReferenceId: workflowReferenceId, + 'Content-Type': 'application/json', + }; + return client.apis['Workflows (Individual)'].post_workflows_update_workflow_status( + payload, + { requestBody: body }, + this._requestMetaData(), + ); + }); + } + static validateOpenAPIByFile(openAPIData) { const apiClient = new APIClientFactory().getAPIClient(Utils.getCurrentEnvironment(), Utils.CONST.API_CLIENT).client; let payload, promisedValidate; From df88df92dc98c24eefed90ba80320c693d1b8278 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Wed, 31 Jul 2024 20:58:33 +0530 Subject: [PATCH 4/7] Add default messages --- .../main/webapp/site/public/locales/fr.json | 810 ++++++++++++++++++ .../webapp/site/public/locales/raw.en.json | 75 ++ .../main/webapp/site/public/locales/si.json | 15 + .../components/Addons/Addons/ContentBase.jsx | 121 +++ .../Addons/Addons/FormDialogBase.jsx | 141 +++ .../app/components/Addons/Addons/HelpBase.jsx | 73 ++ .../Addons/Addons/InlineProgress.jsx | 64 ++ .../Addons/Addons/InputListBase.jsx | 137 +++ .../app/components/Addons/Addons/ListBase.jsx | 401 +++++++++ .../components/Addons/Addons/WarningBase.jsx | 56 ++ 10 files changed, 1893 insertions(+) create mode 100644 portals/publisher/src/main/webapp/site/public/locales/fr.json create mode 100644 portals/publisher/src/main/webapp/site/public/locales/si.json create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx create mode 100644 portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx diff --git a/portals/publisher/src/main/webapp/site/public/locales/fr.json b/portals/publisher/src/main/webapp/site/public/locales/fr.json new file mode 100644 index 00000000000..537f2b25e37 --- /dev/null +++ b/portals/publisher/src/main/webapp/site/public/locales/fr.json @@ -0,0 +1,810 @@ +{ + "Admin.KeyManager.form.type": "", + "Admin.KeyManager.label.ConsumerKey.Claim": "", + "Admin.KeyManager.label.DisplayName": "", + "Admin.KeyManager.label.Enable.EnableOAithAppCreation": "", + "Admin.KeyManager.label.Enable.OutOfBandProvisioning": "", + "Admin.KeyManager.label.Enable.TokenGen": "", + "Admin.KeyManager.label.Scopes.Claim": "", + "Admin.KeyManager.label.allow.exchange.token": "", + "Admin.KeyManager.label.message.allow.direct.token": "", + "Admin.KeyManager.label.token.audience": "", + "Admin.KeyManager.permission.type": "", + "Admin.Throttling.Advanced.Throttling.policy.table.header.name": "", + "Admin.Throttling.Advanced.Throttling.policy.table.header.quota": "", + "Admin.Throttling.Advanced.Throttling.policy.table.header.quota.policy": "", + "Admin.Throttling.Advanced.Throttling.policy.table.header.unit.time": "", + "Admin.Throttling.Application.AddEdit.burst.control.add.description": "", + "Admin.Throttling.Application.Throttling.Policy.add.burst.limits.details": "", + "Admin.Throttling.Application.Throttling.Policy.add.data.amount.helper.text": "", + "Admin.Throttling.Application.Throttling.Policy.add.description.helper.text": "", + "Admin.Throttling.Application.Throttling.Policy.add.general.details": "", + "Admin.Throttling.Application.Throttling.Policy.add.name.helper.text": "", + "Admin.Throttling.Application.Throttling.Policy.add.quota.limits.details": "", + "Admin.Throttling.Application.Throttling.Policy.add.request.count.helper.text": "", + "Admin.Throttling.Application.Throttling.Policy.add.time.helper.text": "", + "Admin.Throttling.Application.Throttling.policy.table.header.name": "", + "Admin.Throttling.Application.Throttling.policy.table.header.quota": "", + "Admin.Throttling.Application.Throttling.policy.table.header.unit.time": "", + "Admin.Throttling.Blacklist.Throttling.Policy.add.condition.type": "", + "Admin.Throttling.Blacklist.Throttling.policy.table.header.condition.status": "", + "Admin.Throttling.Blacklist.Throttling.policy.table.header.condition.type": "", + "Admin.Throttling.Blacklist.Throttling.policy.table.header.conditional.value": "", + "Admin.Throttling.Blacklist.policy.add.invert.condition": "", + "Admin.Throttling.Blacklist.policy.enable.condition": "", + "Admin.Throttling.Custom.Throttling.policy.table.header.description": "", + "Admin.Throttling.Custom.Throttling.policy.table.header.key.template": "", + "Admin.Throttling.Custom.Throttling.policy.table.header.name": "", + "Admin.Throttling.Custom.policy.add.policy.description": "", + "Admin.Throttling.Custom.policy.add.policy.name": "", + "Admin.Throttling.Custom.policy.add.siddhi.query": "", + "Admin.Throttling.Custom.policy.add.siddhi.query.description": "", + "Admin.Throttling.Custom.policy.add.siddhi.query.key.template": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.name": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.quota": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.quota.policy": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.rate.limit": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.time.unit": "", + "Admin.Throttling.Subscription.Throttling.policy.table.header.unit.time": "", + "AdminPages.Addons.InlineProgress.message": "", + "AdminPages.Addons.InputListBase.textfield.remove.label": "", + "AdminPages.Addons.ListBase.noDataError": "", + "AdminPages.Addons.ListBase.nodata.message": "", + "AdminPages.Addons.ListBase.reload": "", + "AdminPages.ApiCategories.AddEdit.form.add.successful": "", + "AdminPages.ApiCategories.AddEdit.form.edit.successful": "", + "AdminPages.ApiCategories.AddEdit.form.name": "", + "AdminPages.ApiCategories.Delete.form.delete.successful": "", + "AdminPages.ApiCategories.List.addButtonProps.title": "", + "AdminPages.ApiCategories.List.addButtonProps.triggerButtonText": "", + "AdminPages.ApiCategories.List.empty.content.apicategories": "", + "AdminPages.ApiCategories.List.empty.title.apicategories": "", + "AdminPages.ApiCategories.List.help.link.one": "", + "AdminPages.ApiCategories.List.search.default": "", + "AdminPages.ApiCategories.List.title.apicategories": "", + "AdminPages.ApiCategories.table.header.category.description": "", + "AdminPages.ApiCategories.table.header.category.name": "", + "AdminPages.ApiCategories.table.header.category.number.of.apis": "", + "AdminPages.ApiSettings.EditApi.form.edit.error": "", + "AdminPages.ApiSettings.EditApi.form.edit.other.error": "", + "AdminPages.ApiSettings.EditApi.form.edit.successful": "", + "AdminPages.ApiSettings.EditApi.form.edit.user.notvalid": "", + "AdminPages.ApplicationSettings.Edit.form.edit.successful": "", + "AdminPages.ApplicationSettings.Edit.form.helperText": "", + "AdminPages.ApplicationSettings.Edit.form.name": "", + "AdminPages.Gateways.Delete.form.delete.confirmation.message": "", + "AdminPages.Gateways.Delete.form.delete.successful": "", + "AdminPages.Gateways.List.addButtonProps.title": "", + "AdminPages.Gateways.List.addButtonProps.triggerButtonText": "", + "AdminPages.Gateways.List.empty.content.Gateways": "", + "AdminPages.Gateways.List.empty.title": "", + "AdminPages.Gateways.List.search.default": "", + "AdminPages.Gateways.List.title": "", + "AdminPages.Gateways.table.header.description": "", + "AdminPages.Gateways.table.header.displayName": "", + "AdminPages.Gateways.table.header.gatewayType": "", + "AdminPages.Gateways.table.header.type": "", + "AdminPages.Gateways.table.header.vhosts": "", + "AdminPages.KeyManager.Delete.form.delete.confirmation.message": "", + "AdminPages.KeyManagers.Delete.form.delete.successful": "", + "AdminPages.KeyManagers.List.empty.content.keymanagers": "", + "AdminPagesGatewayEnvironments.AddEditGWEnvironment.form.environment.displayName.empty": "", + "AdminPagesGatewayEnvironments.AddEditGWEnvironment.form.environment.vhost.duplicate": "", + "AdminPagesGatewayEnvironments.AddEditGWEnvironment.form.environment.vhost.empty": "", + "Api.Name": "", + "Api.Provider": "", + "Api.Version": "", + "Apis.Details.Scopes.CreateScope.roles.help": "", + "Apis.Details.Scopes.Roles.Invalid": "", + "Apis.Listing.Listing.apis.search": "", + "Apis.Listing.Listing.apis.search.label": "", + "Apis.Listing.Listing.apis.searching": "", + "Apis.Listing.Listing.clear.search": "", + "Apis.Listing.Listing.empty.message": "", + "Apis.Listing.Listing.search.placeholder": "", + "Apis.Listing.apiTableHead.name": "", + "Apis.Listing.apiTableHead.provider": "", + "Apis.Listing.apiTableHead.version": "", + "Apis.Shared.AdminRootErrorBoundary.refresh": "", + "Apis.Shared.AdminRootErrorBoundary.refresh.or.try.again.message": "", + "Apis.Shared.AdminRootErrorBoundary.something.went.wrong.while.rendering.button": "", + "Apis.Shared.AdminRootErrorBoundary.something.went.wrong.while.rendering.heading": "", + "Apis.Shared.AppErrorBoundary.something.went.wrong": "", + "Apis.Shared.ConfirmDialog.are.you.sure": "", + "Apis.Shared.ConfirmDialog.cancel": "", + "Apis.Shared.ConfirmDialog.ok": "", + "Apis.Shared.ConfirmDialog.please.confirm": "", + "Apis.Shared.RedirectToLogin.you.will.be.redirected.to": "", + "Application.Name": "", + "Application.Owner": "", + "Application.organization": "", + "Applications.Listing.ApplicationTableHead.actions": "", + "Applications.Listing.ApplicationTableHead.name": "", + "Applications.Listing.ApplicationTableHead.owner": "", + "Applications.Listing.Listing.applications.search": "", + "Applications.Listing.Listing.applications.search.label": "", + "Applications.Listing.Listing.applications.searching": "", + "Applications.Listing.Listing.clear.search": "", + "Applications.Listing.Listing.empty.message": "", + "Applications.Listing.Listing.search.placeholder": "", + "Base.Errors.ResourceNotFound.api.list": "", + "Base.Errors.ResourceNotFound.api.product.list": "", + "Base.Errors.ResourceNotFound.more.links": "", + "Base.Errors.ResourceNotfound.default_body": "", + "Base.Errors.ResourceNotfound.default_tittle": "", + "Base.Footer.Footer.product_details": "", + "Base.Header.avatar.Avatar.logout": "", + "Base.RouteMenuMapping.advanced": "", + "Base.RouteMenuMapping.advanced.throttling.policies": "", + "Base.RouteMenuMapping.advanced.throttling.policies.Adding": "", + "Base.RouteMenuMapping.advanced.throttling.policies.Editing": "", + "Base.RouteMenuMapping.api.categories": "", + "Base.RouteMenuMapping.apis": "", + "Base.RouteMenuMapping.application.creation": "", + "Base.RouteMenuMapping.application.deletion": "", + "Base.RouteMenuMapping.application.throttling.policies": "", + "Base.RouteMenuMapping.applications": "", + "Base.RouteMenuMapping.blacklisted.items": "", + "Base.RouteMenuMapping.custom.throttling.policies": "", + "Base.RouteMenuMapping.custom.throttling.policies.items.Adding": "", + "Base.RouteMenuMapping.custom.throttling.policies.items.Editing": "", + "Base.RouteMenuMapping.dashboard": "", + "Base.RouteMenuMapping.gateways": "", + "Base.RouteMenuMapping.keymanagers": "", + "Base.RouteMenuMapping.keymanagers.items.Adding": "", + "Base.RouteMenuMapping.keymanagers.items.Editing": "", + "Base.RouteMenuMapping.role.permissions": "", + "Base.RouteMenuMapping.settings": "", + "Base.RouteMenuMapping.subscription.creation": "", + "Base.RouteMenuMapping.subscription.deletion": "", + "Base.RouteMenuMapping.subscription.throttling.policies": "", + "Base.RouteMenuMapping.subscription.throttling.policies.Adding": "", + "Base.RouteMenuMapping.subscription.throttling.policies.Editing": "", + "Base.RouteMenuMapping.subscription.update": "", + "Base.RouteMenuMapping.tasks": "", + "Base.RouteMenuMapping.tenant.theme": "", + "Base.RouteMenuMapping.throttling.policies": "", + "Base.RouteMenuMapping.user.creation": "", + "Claim.Mapping.already.exists": "", + "Dashboard.apiCategories.apiCategoriesListing.card.title": "", + "Dashboard.apiCategories.apiCategoriesListing.card.view.all.link.text": "", + "Dashboard.apiCategories.apiCategoriesListing.no.description": "", + "Dashboard.apiCategories.noApiCategories.card.add.new.link.text": "", + "Dashboard.apiCategories.noApiCategories.card.description": "", + "Dashboard.apiCategories.noApiCategories.card.title": "", + "Dashboard.rateLimiting.card.advancedPolicies.description": "", + "Dashboard.rateLimiting.card.advancedPolicies.name": "", + "Dashboard.rateLimiting.card.applicationPolicies.description": "", + "Dashboard.rateLimiting.card.applicationPolicies.name": "", + "Dashboard.rateLimiting.card.customPolicies.description": "", + "Dashboard.rateLimiting.card.customPolicies.name": "", + "Dashboard.rateLimiting.card.subscriptionPolicies.description": "", + "Dashboard.rateLimiting.card.subscriptionPolicies.name": "", + "Dashboard.rateLimiting.card.title": "", + "Dashboard.tasksWorkflow.compactTasks.apiProductStateChange.name": "", + "Dashboard.tasksWorkflow.compactTasks.apiRevisionDeployment.name": "", + "Dashboard.tasksWorkflow.compactTasks.apiStateChange.name": "", + "Dashboard.tasksWorkflow.compactTasks.applicationCreation.name": "", + "Dashboard.tasksWorkflow.compactTasks.applicationDeletion.name": "", + "Dashboard.tasksWorkflow.compactTasks.applicationRegistration.name": "", + "Dashboard.tasksWorkflow.compactTasks.card.numberOfPendingTasks.postFix.plural": "", + "Dashboard.tasksWorkflow.compactTasks.card.numberOfPendingTasks.postFix.singular": "", + "Dashboard.tasksWorkflow.compactTasks.card.title": "", + "Dashboard.tasksWorkflow.compactTasks.subscriptionCreation.name": "", + "Dashboard.tasksWorkflow.compactTasks.subscriptionDeletion.name": "", + "Dashboard.tasksWorkflow.compactTasks.subscriptionUpdate.name": "", + "Dashboard.tasksWorkflow.compactTasks.userCreation.name": "", + "Dashboard.tasksWorkflow.noTasks.card.description": "", + "Dashboard.tasksWorkflow.noTasks.card.title": "", + "GatewayEnvironments.AddEditGWEnvironment.form.description.help": "", + "GatewayEnvironments.AddEditGWEnvironment.form.displayName": "", + "GatewayEnvironments.AddEditGWEnvironment.form.displayName.help": "", + "GatewayEnvironments.AddEditGWEnvironment.form.environment.name.empty": "", + "GatewayEnvironments.AddEditGWEnvironment.form.environment.name.invalid": "", + "GatewayEnvironments.AddEditGWEnvironment.form.info.add.successful": "", + "GatewayEnvironments.AddEditGWEnvironment.form.info.edit.successful": "", + "GatewayEnvironments.AddEditGWEnvironment.form.name": "", + "GatewayEnvironments.AddEditGWEnvironment.form.save.button.label": "", + "GatewayEnvironments.AddEditGWEnvironment.form.vhost.context.invalid": "", + "GatewayEnvironments.AddEditGWEnvironment.form.vhost.host.empty": "", + "GatewayEnvironments.AddEditGWEnvironment.form.vhost.host.invalid": "", + "GatewayEnvironments.AddEditVhost.host": "", + "GatewayEnvironments.AddEditVhost.httpPort": "", + "GatewayEnvironments.AddEditVhost.httpsPort": "", + "GatewayEnvironments.AddEditVhost.wsPort": "", + "GatewayEnvironments.AddEditVhost.wssPort": "", + "KeyManager.AddEditKeyManager.permissions.add.description": "", + "KeyManager.Claim.Helper.text": "", + "KeyManager.Connector.Configuration.Helper.text": "", + "KeyManager.KeyValidation.CUSTOM": "", + "KeyManager.KeyValidation.JWT": "", + "KeyManager.KeyValidation.REFERENCE": "", + "KeyManager.KeyValidation.token.validation.type": "", + "KeyManager.add.success": "", + "KeyManager.add.success.msg": "", + "KeyManager.edit.success": "", + "KeyManager.enter.permission.allowed": "", + "KeyManager.enter.permission.denied": "", + "KeyManager.permissions": "", + "KeyManagers.AddEditKeyManager.\n form.scopeManagementEndpoint": "", + "KeyManagers.AddEditKeyManager.\n form.displayRevokeEndpoint": "", + "KeyManagers.AddEditKeyManager.External.KeyManager\n .general.details.description": "", + "KeyManagers.AddEditKeyManager.KeyManager.type": "", + "KeyManagers.AddEditKeyManager.advanced": "", + "KeyManagers.AddEditKeyManager.advanced.description": "", + "KeyManagers.AddEditKeyManager.api.invocation.method": "", + "KeyManagers.AddEditKeyManager.api.no.usages": "", + "KeyManagers.AddEditKeyManager.application.no.usages": "", + "KeyManagers.AddEditKeyManager.certificate": "", + "KeyManagers.AddEditKeyManager.certificate.description": "", + "KeyManagers.AddEditKeyManager.claim.mappings.hidden.help": "", + "KeyManagers.AddEditKeyManager.claim.mappings.title": "", + "KeyManagers.AddEditKeyManager.claim.uris": "", + "KeyManagers.AddEditKeyManager.claim.uris.description": "", + "KeyManagers.AddEditKeyManager.connector.configurations": "", + "KeyManagers.AddEditKeyManager.connector.configurations.description": "", + "KeyManagers.AddEditKeyManager.endpoints": "", + "KeyManagers.AddEditKeyManager.endpoints.description": "", + "KeyManagers.AddEditKeyManager.exchange.token.form.\n token.audience.help": "", + "KeyManagers.AddEditKeyManager.form.\n clientRegistrationEndpoint": "", + "KeyManagers.AddEditKeyManager.form.\n introspectionEndpoint": "", + "KeyManagers.AddEditKeyManager.form.Issuer": "", + "KeyManagers.AddEditKeyManager.form.add": "", + "KeyManagers.AddEditKeyManager.form.authorizeEndpoint": "", + "KeyManagers.AddEditKeyManager.form.authorizeEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.cancel": "", + "KeyManagers.AddEditKeyManager.form.claim.help": "", + "KeyManagers.AddEditKeyManager.form.clientRegistrationEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.consumerKeyClaim.help": "", + "KeyManagers.AddEditKeyManager.form.description": "", + "KeyManagers.AddEditKeyManager.form.description.help": "", + "KeyManagers.AddEditKeyManager.form.displayName.help": "", + "KeyManagers.AddEditKeyManager.form.displayRevokeEndpoint": "", + "KeyManagers.AddEditKeyManager.form.displayTokenEndpoint": "", + "KeyManagers.AddEditKeyManager.form.has.errors": "", + "KeyManagers.AddEditKeyManager.form.introspectionEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.issuer.help": "", + "KeyManagers.AddEditKeyManager.form.name": "", + "KeyManagers.AddEditKeyManager.form.name.help": "", + "KeyManagers.AddEditKeyManager.form.revokeEndpoint": "", + "KeyManagers.AddEditKeyManager.form.revokeEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.scopeManagementEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.scopesClaim.help": "", + "KeyManagers.AddEditKeyManager.form.token.audience.help": "", + "KeyManagers.AddEditKeyManager.form.tokenEndpoint": "", + "KeyManagers.AddEditKeyManager.form.tokenEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.tokentype.error": "", + "KeyManagers.AddEditKeyManager.form.type.help": "", + "KeyManagers.AddEditKeyManager.form.update.btn": "", + "KeyManagers.AddEditKeyManager.form.userInfoEndpoint": "", + "KeyManagers.AddEditKeyManager.form.userInfoEndpoint.help": "", + "KeyManagers.AddEditKeyManager.form.wellKnownUrl": "", + "KeyManagers.AddEditKeyManager.form.wellKnownUrl.help": "", + "KeyManagers.AddEditKeyManager.general.details": "", + "KeyManagers.AddEditKeyManager.general.details.description": "", + "KeyManagers.AddEditKeyManager.grant.types": "", + "KeyManagers.AddEditKeyManager.grant.types.description": "", + "KeyManagers.AddEditKeyManager.import.button.message": "", + "KeyManagers.AddEditKeyManager.importing.message": "", + "KeyManagers.AddEditKeyManager.is.empty.error": "", + "KeyManagers.AddEditKeyManager.is.empty.error.key.config": "", + "KeyManagers.AddEditKeyManager.resident.endpoints.description": "", + "KeyManagers.AddEditKeyManager.selfvalidate": "", + "KeyManagers.AddEditKeyManager.space.error": "", + "KeyManagers.AddEditKeyManager.title.edit": "", + "KeyManagers.AddEditKeyManager.title.editGlobal": "", + "KeyManagers.AddEditKeyManager.title.new": "", + "KeyManagers.AddEditKeyManager.title.newGlobal": "", + "KeyManagers.AddEditKeyManager.token.handling.options": "", + "KeyManagers.AddEditKeyManager.token.validation.method": "", + "KeyManagers.AddEditKeyManager.usages": "", + "KeyManagers.AddEditKeyManager.useIntrospect": "", + "KeyManagers.AddEditTokenExchangeIDP.form.Issuer": "", + "KeyManagers.AddEditTokenExchangeIDP.form.issuer.help": "", + "KeyManagers.AddEditTokenExchangeIDP.form.tokenEndpoint": "", + "KeyManagers.AddEditTokenExchangeIDP.form.tokenEndpoint.help": "", + "KeyManagers.AddEditTokenExchangeIDP.form.wellKnownUrl": "", + "KeyManagers.AddEditTokenExchangeIDP.form.wellKnownUrl.help": "", + "KeyManagers.Certificates.browse.files.to.upload": "", + "KeyManagers.Certificates.drag.and.drop.message": "", + "KeyManagers.Certificates.file.error": "", + "KeyManagers.Certificates.jwks.url": "", + "KeyManagers.Certificates.override.message": "", + "KeyManagers.Certificates.paste.label": "", + "KeyManagers.ImportConfig.dialog.btn.import": "", + "KeyManagers.ImportConfig.dialog.tilte.add.new": "", + "KeyManagers.ImportConfig.dialog.trigger.import": "", + "KeyManagers.ImportConfig.form.url": "", + "KeyManagers.ImportConfig.form.url.help": "", + "KeyManagers.ListKeyManagerAPIUsages.error": "", + "KeyManagers.ListKeyManagerApplicationUsages.error": "", + "KeyManagers.ListKeyManagerUsages.empty.content": "", + "KeyManagers.ListKeyManagerUsages.empty.title": "", + "KeyManagers.ListKeyManagerUsages.permission.denied.content": "", + "KeyManagers.ListKeyManagerUsages.permission.denied.title": "", + "KeyManagers.ListKeyManagers.List.title": "", + "KeyManagers.ListKeyManagers.addButtonProps.triggerButtonText": "", + "KeyManagers.ListKeyManagers.addGlobalKeyManager": "", + "KeyManagers.ListKeyManagers.edit.success": "", + "KeyManagers.ListKeyManagers.empty.title": "", + "KeyManagers.ListKeyManagers.table.header.label.description": "", + "KeyManagers.ListKeyManagers.table.header.label.name": "", + "KeyManagers.ListKeyManagers.table.header.label.provider": "", + "KeyManagers.ListKeyManagers.table.header.label.tokenType": "", + "KeyManagers.ListKeyManagers.table.header.label.usage": "", + "Keymanager.Claim.Action": "", + "Keymanager.KeyValidation.Action": "", + "Keymanager.KeyValidation.ClaimKey": "", + "Keymanager.KeyValidation.ClaimValue.Regex": "", + "Keymanager.Local.Claim": "", + "Keymanager.Local.Claim.remove": "", + "Keymanager.Remote.Claim": "", + "LoginDenied.logout": "", + "LoginDenied.message": "", + "LoginDenied.retry": "", + "LoginDenied.title": "", + "Manage.Alerts.abnormal.backend.time.description": "", + "Manage.Alerts.abnormal.backend.time.name": "", + "Manage.Alerts.abnormal.request.access.description": "", + "Manage.Alerts.abnormal.request.access.name": "", + "Manage.Alerts.abnormal.request.count.description": "", + "Manage.Alerts.abnormal.request.count.name": "", + "Manage.Alerts.abnormal.response.time.description": "", + "Manage.Alerts.abnormal.response.time.name": "", + "Manage.Alerts.analytics.disabled.empty.content": "", + "Manage.Alerts.analytics.disabled.empty.title": "", + "Manage.Alerts.cancel.btn": "", + "Manage.Alerts.confirm.btn": "", + "Manage.Alerts.health.availability.description": "", + "Manage.Alerts.health.availability.name": "", + "Manage.Alerts.help.link.one": "", + "Manage.Alerts.loading.error.msg": "", + "Manage.Alerts.subscribe.error.msg": "", + "Manage.Alerts.subscribe.success.msg": "", + "Manage.Alerts.subscribe.to.alerts.subheading": "", + "Manage.Alerts.tier.crossing.description": "", + "Manage.Alerts.tier.crossing.name": "", + "Manage.Alerts.title": "", + "Manage.Alerts.unseen.source.ip.address.description": "", + "Manage.Alerts.unseen.source.ip.address.name": "", + "Manage.Alerts.unsubscribe.confirm.dialog.heading": "", + "Manage.Alerts.unsubscribe.confirm.dialog.message": "", + "Manage.Alerts.unsubscribe.error.msg": "", + "Manage.Alerts.unsubscribe.success.msg": "", + "RolePermissions.Common.AddRoleWizard.add.mapping.button": "", + "RolePermissions.Common.AddRoleWizard.add.mapping.title": "", + "RolePermissions.Common.AddRoleWizard.add.role.warn.empty": "", + "RolePermissions.Common.AddRoleWizard.add.scope.error": "", + "RolePermissions.Common.DeletePermission.delete.scope.error": "", + "RolePermissions.ListRoles.error.retrieving.perm": "", + "RolePermissions.ListRoles.page.description": "", + "RolePermissions.ListRoles.permission.denied.content": "", + "RolePermissions.ListRoles.permission.denied.title": "", + "RolePermissions.ListRoles.scope.assignment.button": "", + "RolePermissions.ListRoles.title.role.permissions": "", + "RolePermissions.TreeView.PermissionsSelector.scope.assignment.button": "", + "RolePermissions.TreeView.PermissionsSelector.scope.assignment.title": "", + "RolePermissions.TreeView.PermissionsSelector.update.scope.error": "", + "ScopeAssignments.List.search.default": "", + "Settings.Advanced.TenantConf.edit.success": "", + "Settings.Advanced.TenantConfSave.form.cancel": "", + "Settings.Advanced.TenantConfSave.form.save": "", + "Settings.Advanced.TenantConfSave.title.save": "", + "TenantTheme.Upload.Theme.browse.files.to.upload": "", + "TenantTheme.Upload.Theme.button.upload": "", + "TenantTheme.Upload.Theme.download.error": "", + "TenantTheme.Upload.Theme.drag.and.drop.message": "", + "TenantTheme.Upload.Theme.help.link.one": "", + "TenantTheme.Upload.Theme.info.message": "", + "TenantTheme.Upload.Theme.page.heading": "", + "TenantTheme.Upload.Theme.upload.files": "", + "TenantTheme.Upload.Theme.upload.successful": "", + "TenantTheme.Upload.Theme.warning.message": "", + "Throttling.Advanced.AddEdit.ConditionalGroups.form.description.help": "", + "Throttling.Advanced.AddEdit.add.conditional.group": "", + "Throttling.Advanced.AddEdit.add.conditional.group.add": "", + "Throttling.Advanced.AddEdit.add.success": "", + "Throttling.Advanced.AddEdit.conditional.group.description": "", + "Throttling.Advanced.AddEdit.default.limits": "", + "Throttling.Advanced.AddEdit.default.limits.description": "", + "Throttling.Advanced.AddEdit.edit.success": "", + "Throttling.Advanced.AddEdit.empty.error": "", + "Throttling.Advanced.AddEdit.form.add.btn": "", + "Throttling.Advanced.AddEdit.form.bandwidth.allowed.help": "", + "Throttling.Advanced.AddEdit.form.cancel": "", + "Throttling.Advanced.AddEdit.form.dataAmount.label": "", + "Throttling.Advanced.AddEdit.form.description": "", + "Throttling.Advanced.AddEdit.form.description.help": "", + "Throttling.Advanced.AddEdit.form.has.errors": "", + "Throttling.Advanced.AddEdit.form.name.help": "", + "Throttling.Advanced.AddEdit.form.policyName": "", + "Throttling.Advanced.AddEdit.form.requestCount.label": "", + "Throttling.Advanced.AddEdit.form.timeUnit.day": "", + "Throttling.Advanced.AddEdit.form.timeUnit.hour": "", + "Throttling.Advanced.AddEdit.form.timeUnit.minute": "", + "Throttling.Advanced.AddEdit.form.timeUnit.month": "", + "Throttling.Advanced.AddEdit.form.unit.time.help": "", + "Throttling.Advanced.AddEdit.form.unit.time.label": "", + "Throttling.Advanced.AddEdit.form.update.btn": "", + "Throttling.Advanced.AddEdit.general.details": "", + "Throttling.Advanced.AddEdit.general.details.description": "", + "Throttling.Advanced.AddEdit.is.empty.error": "", + "Throttling.Advanced.AddEdit.policy.name.too.long.error.msg": "", + "Throttling.Advanced.AddEdit.special.characters.error": "", + "Throttling.Advanced.AddEdit.title.edit": "", + "Throttling.Advanced.AddEdit.title.new": "", + "Throttling.Advanced.AddEditConditionPolicy.dialog.btn.save": "", + "Throttling.Advanced.AddEditConditionPolicy.dialog.tilte.add.new": "", + "Throttling.Advanced.AddEditConditionPolicy.dialog.tilte.edit": "", + "Throttling.Advanced.AddEditConditionPolicy.dialog.trigger.add": "", + "Throttling.Advanced.AddEditConditionPolicy.form.name": "", + "Throttling.Advanced.AddEditConditionPolicy.form.name.help": "", + "Throttling.Advanced.AddEditConditionPolicy.form.value": "", + "Throttling.Advanced.AddEditConditionPolicy.form.value.help": "", + "Throttling.Advanced.AddEditConditionPolicyIP.dialog.btn.save": "", + "Throttling.Advanced.AddEditConditionPolicyIP.dialog.tilte.add.new": "", + "Throttling.Advanced.AddEditConditionPolicyIP.dialog.title.edit": "", + "Throttling.Advanced.AddEditConditionPolicyIP.dialog.trigger.add": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.end.ip": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.end.ip.help": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.specific.ip": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.specific.ip.help": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.start.ip": "", + "Throttling.Advanced.AddEditConditionPolicyIP.form.start.ip.help": "", + "Throttling.Advanced.AddEditConditionPolicyIP.ip.condition.type": "", + "Throttling.Advanced.AddEditConditionPolicyIP.ip.range": "", + "Throttling.Advanced.AddEditConditionPolicyIP.is.empty.error": "", + "Throttling.Advanced.AddEditConditionPolicyIP.specific.ip": "", + "Throttling.Advanced.AddEditConditionPolicyIP.valid.ip.address.error": "", + "Throttling.Advanced.AddEditConditionPolicyIP.valid.ip.range.error": "", + "Throttling.Advanced.AddEditExecution.default.limit.option": "", + "Throttling.Advanced.ConditionalGroup.alert": "", + "Throttling.Advanced.ConditionalGroup.condition.policies": "", + "Throttling.Advanced.ConditionalGroup.execution.policy": "", + "Throttling.Advanced.ConditionalGroup.from": "", + "Throttling.Advanced.ConditionalGroup.header": "", + "Throttling.Advanced.ConditionalGroup.header.help": "", + "Throttling.Advanced.ConditionalGroup.header.name": "", + "Throttling.Advanced.ConditionalGroup.header.value": "", + "Throttling.Advanced.ConditionalGroup.invert.condition": "", + "Throttling.Advanced.ConditionalGroup.ip": "", + "Throttling.Advanced.ConditionalGroup.ip.header.name": "", + "Throttling.Advanced.ConditionalGroup.ip.header.value": "", + "Throttling.Advanced.ConditionalGroup.ip.help": "", + "Throttling.Advanced.ConditionalGroup.ip.iprange": "", + "Throttling.Advanced.ConditionalGroup.ip.specific": "", + "Throttling.Advanced.ConditionalGroup.jwt": "", + "Throttling.Advanced.ConditionalGroup.jwt.help": "", + "Throttling.Advanced.ConditionalGroup.query.param": "", + "Throttling.Advanced.ConditionalGroup.query.param.help": "", + "Throttling.Advanced.ConditionalGroup.to": "", + "Throttling.Advanced.ConditionalGroups.form.description": "", + "Throttling.Advanced.Delete.confirm.text": "", + "Throttling.Advanced.Delete.ip.iprange": "", + "Throttling.Advanced.Delete.ip.specific": "", + "Throttling.Advanced.Delete.save.text": "", + "Throttling.Advanced.Delete.success": "", + "Throttling.Advanced.Delete.title": "", + "Throttling.Advanced.Delete.will.be.deleted": "", + "Throttling.Advanced.DeleteConditionGroup.question": "", + "Throttling.Advanced.DeleteConditionGroup.title": "", + "Throttling.Advanced.List.add.new.polcy": "", + "Throttling.Advanced.List.addButtonProps.title": "", + "Throttling.Advanced.List.addButtonProps.triggerButtonText": "", + "Throttling.Advanced.List.empty.content": "", + "Throttling.Advanced.List.empty.title": "", + "Throttling.Advanced.List.help.link.one": "", + "Throttling.Advanced.List.help.link.two": "", + "Throttling.Advanced.List.search.default": "", + "Throttling.Advanced.List.title.main": "", + "Throttling.Application.AddEdit.burst.control.limit": "", + "Throttling.Application.AddEdit.form.request.rate": "", + "Throttling.Application.Policy..List.search.default": "", + "Throttling.Application.Policy.List.addButtonProps.title": "", + "Throttling.Application.Policy.List.addButtonProps.triggerButtonText": "", + "Throttling.Application.Policy.List.empty.content.application.policies": "", + "Throttling.Application.Policy.List.empty.title.application.policies": "", + "Throttling.Application.Policy.List.help.link.one": "", + "Throttling.Application.Policy.List.help.link.two": "", + "Throttling.Application.Policy.policy.add.success": "", + "Throttling.Application.Policy.policy.data.amount.empty": "", + "Throttling.Application.Policy.policy.delete.error": "", + "Throttling.Application.Policy.policy.delete.success": "", + "Throttling.Application.Policy.policy.dialog.delete.error": "", + "Throttling.Application.Policy.policy.edit.success": "", + "Throttling.Application.Policy.policy.name.empty": "", + "Throttling.Application.Policy.policy.name.invalid.character": "", + "Throttling.Application.Policy.policy.name.space": "", + "Throttling.Application.Policy.policy.name.too.long": "", + "Throttling.Application.Policy.policy.request.count.empty": "", + "Throttling.Application.Policy.policy.unit.time.empty": "", + "Throttling.Application.Policy.policy.unit.time.negative": "", + "Throttling.Application.Policy.search.default": "", + "Throttling.Blacklist.Policy.List.addButtonProps.title": "", + "Throttling.Blacklist.Policy.List.addButtonProps.triggerButtonText": "", + "Throttling.Blacklist.Policy.List.empty.content.blacklist.policies and abuse by": "", + "Throttling.Blacklist.Policy.List.empty.title.blacklist.policies": "", + "Throttling.Blacklist.Policy.List.help.link.one": "", + "Throttling.Blacklist.Policy.List.search.default": "", + "Throttling.Blacklist.Policy.policy.add.success": "", + "Throttling.Blacklist.Policy.policy.delete.error": "", + "Throttling.Blacklist.Policy.policy.delete.success": "", + "Throttling.Blacklist.Policy.policy.dialog.delete.error": "", + "Throttling.Blacklist.Policy.policy.endingIp.blank": "", + "Throttling.Blacklist.Policy.policy.endingIp.invalid": "", + "Throttling.Blacklist.Policy.policy.endingIp.white.spaces": "", + "Throttling.Blacklist.Policy.policy.fixedIp.blank": "", + "Throttling.Blacklist.Policy.policy.fixedIp.invalid": "", + "Throttling.Blacklist.Policy.policy.fixedIp.white.spaces": "", + "Throttling.Blacklist.Policy.policy.startingIp.blank": "", + "Throttling.Blacklist.Policy.policy.startingIp.invalid": "", + "Throttling.Blacklist.Policy.policy.startingIp.white.spaces": "", + "Throttling.Blacklist.Policy.policy.update.success": "", + "Throttling.Blacklist.Policy.search.default": "", + "Throttling.Custom.AddEdit.form.add": "", + "Throttling.Custom.AddEdit.form.cancel": "", + "Throttling.Custom.AddEdit.form.edit": "", + "Throttling.Custom.AddEdit.title.add": "", + "Throttling.Custom.AddEdit.title.edit": "", + "Throttling.Custom.List.add.new.polcy": "", + "Throttling.Custom.Policy.List.addButtonProps.title": "", + "Throttling.Custom.Policy.List.addButtonProps.triggerButtonText": "", + "Throttling.Custom.Policy.List.empty.content.custom.policies and abuse by": "", + "Throttling.Custom.Policy.List.empty.title.custom.policies": "", + "Throttling.Custom.Policy.List.help.link.one": "", + "Throttling.Custom.Policy.List.search.default": "", + "Throttling.Custom.Policy.policy.add.success": "", + "Throttling.Custom.Policy.policy.delete.error": "", + "Throttling.Custom.Policy.policy.delete.success": "", + "Throttling.Custom.Policy.policy.dialog.delete.error": "", + "Throttling.Custom.Policy.policy.edit.success": "", + "Throttling.Custom.Policy.policy.invalid.key.template": "", + "Throttling.Custom.Policy.policy.name.empty": "", + "Throttling.Custom.Policy.policy.name.invalid.character": "", + "Throttling.Custom.Policy.policy.name.space": "", + "Throttling.Custom.Policy.policy.name.too.long.error.msg": "", + "Throttling.Custom.Policy.search.default": "", + "Throttling.Subscription.AddEdit.burst.control.add.description": "", + "Throttling.Subscription.AddEdit.burst.control.limit": "", + "Throttling.Subscription.AddEdit.burst.control.limits": "", + "Throttling.Subscription.AddEdit.custom.attributes.add.description": "", + "Throttling.Subscription.AddEdit.form.add": "", + "Throttling.Subscription.AddEdit.form.cancel": "", + "Throttling.Subscription.AddEdit.form.dataAmount.name": "", + "Throttling.Subscription.AddEdit.form.description": "", + "Throttling.Subscription.AddEdit.form.description.help": "", + "Throttling.Subscription.AddEdit.form.eventCount.count": "", + "Throttling.Subscription.AddEdit.form.max.complexity": "", + "Throttling.Subscription.AddEdit.form.max.depth": "", + "Throttling.Subscription.AddEdit.form.max.webhooks.connections": "", + "Throttling.Subscription.AddEdit.form.name.help": "", + "Throttling.Subscription.AddEdit.form.policyName": "", + "Throttling.Subscription.AddEdit.form.request.rate": "", + "Throttling.Subscription.AddEdit.form.requestCount.count": "", + "Throttling.Subscription.AddEdit.general.details": "", + "Throttling.Subscription.AddEdit.general.details.description": "", + "Throttling.Subscription.AddEdit.graphql.add.description": "", + "Throttling.Subscription.AddEdit.permissions.add.description": "", + "Throttling.Subscription.AddEdit.policy.flags.add.description": "", + "Throttling.Subscription.AddEdit.quota.limits": "", + "Throttling.Subscription.AddEdit.quota.policies.add.description": "", + "Throttling.Subscription.AddEdit.subscription.count.add.description": "", + "Throttling.Subscription.AddEdit.title.add": "", + "Throttling.Subscription.AddEdit.title.edit": "", + "Throttling.Subscription.AddEdit.unitTime": "", + "Throttling.Subscription.Billing.Plan": "", + "Throttling.Subscription.Fixed.Rate": "", + "Throttling.Subscription.GraphQL": "", + "Throttling.Subscription.Policy..List.search.default": "", + "Throttling.Subscription.Policy.Flags": "", + "Throttling.Subscription.Policy.List.addButtonProps.title": "", + "Throttling.Subscription.Policy.List.empty.title.subscription.policies": "", + "Throttling.Subscription.Policy.List.help.link.one": "", + "Throttling.Subscription.Policy.List.help.link.three": "", + "Throttling.Subscription.Policy.List.help.link.two": "", + "Throttling.Subscription.Policy.policy.add.success": "", + "Throttling.Subscription.Policy.policy.data.amount.empty.error.msg": "", + "Throttling.Subscription.Policy.policy.delete.error": "", + "Throttling.Subscription.Policy.policy.delete.success": "", + "Throttling.Subscription.Policy.policy.dialog.delete.error": "", + "Throttling.Subscription.Policy.policy.edit.success": "", + "Throttling.Subscription.Policy.policy.event.count.empty.error.msg": "", + "Throttling.Subscription.Policy.policy.name.empty.error.msg": "", + "Throttling.Subscription.Policy.policy.name.invalid.character.error.msg": "", + "Throttling.Subscription.Policy.policy.name.space.error.msg": "", + "Throttling.Subscription.Policy.policy.name.too.long.error.msg": "", + "Throttling.Subscription.Policy.policy.request.count.empty.error.msg": "", + "Throttling.Subscription.Policy.policy.unit.time.empty.error.msg": "", + "Throttling.Subscription.Policy.policy.unit.time.negative.error.msg": "", + "Throttling.Subscription.Policy.search.default": "", + "Throttling.Subscription.Properties.Properties.show.add.property.property.name": "", + "Throttling.Subscription.Properties.property.value": "", + "Throttling.Subscription.Subscriber.Count": "", + "Throttling.Subscription.attribute.delete.tooltip": "", + "Throttling.Subscription.billing.cycle": "", + "Throttling.Subscription.currency": "", + "Throttling.Subscription.custom.attributes": "", + "Throttling.Subscription.custom.attributes.add": "", + "Throttling.Subscription.dynamic.usage": "", + "Throttling.Subscription.dynamic.usage.tooltip": "", + "Throttling.Subscription.enter.permission.allowed": "", + "Throttling.Subscription.enter.permission.denied": "", + "Throttling.Subscription.fixed.rate.tooltip": "", + "Throttling.Subscription.monetization.plan": "", + "Throttling.Subscription.monetization.plan.tooltip": "", + "Throttling.Subscription.permissions": "", + "Throttling.Subscription.stop.quota.reach": "", + "Throttling.Subsription.Policy.List.empty.content.subscription.policies": "", + "UnexpectedError.logout": "", + "UnexpectedError.message": "", + "UnexpectedError.title": "", + "Workflow.APIProductStateChange.List.empty.content.apiProduct.statechange": "", + "Workflow.APIProductStateChange.List.empty.title.apistatechange": "", + "Workflow.APIProductStateChange.apicall.has.errors": "", + "Workflow.APIProductStateChange.updateStatus.has.errors": "", + "Workflow.APIRevisionDeployment.List.empty.content.revisiondeployments": "", + "Workflow.APIRevisionDeployment.List.empty.title.revisiondeployments": "", + "Workflow.APIRevisionDeployment.apiCall.has.errors": "", + "Workflow.APIRevisionDeployment.help.link.one": "", + "Workflow.APIRevisionDeployment.permission.denied.content": "", + "Workflow.APIRevisionDeployment.permission.denied.title": "", + "Workflow.APIRevisionDeployment.search.default": "", + "Workflow.APIRevisionDeployment.table.button.approve": "", + "Workflow.APIRevisionDeployment.table.button.reject": "", + "Workflow.APIRevisionDeployment.table.header.Action": "", + "Workflow.APIRevisionDeployment.table.header.apiName": "", + "Workflow.APIRevisionDeployment.table.header.apiVersion": "", + "Workflow.APIRevisionDeployment.table.header.description": "", + "Workflow.APIRevisionDeployment.table.header.environment": "", + "Workflow.APIRevisionDeployment.table.header.revisionId": "", + "Workflow.APIRevisionDeployment.table.header.userName": "", + "Workflow.APIRevisionDeployment.title.revisiondeployment": "", + "Workflow.APIRevisionDeployment.update.success": "", + "Workflow.APIRevisionDeployment.updateStatus.has.errors": "", + "Workflow.APIStateChange.List.empty.content.apistatechange": "", + "Workflow.APIStateChange.List.empty.title.apistatechange": "", + "Workflow.APIStateChange.apicall.has.errors": "", + "Workflow.APIStateChange.table.button.approve": "", + "Workflow.APIStateChange.table.button.reject": "", + "Workflow.APIStateChange.table.header.Action": "", + "Workflow.APIStateChange.table.header.ApiProvider": "", + "Workflow.APIStateChange.table.header.CurrentState": "", + "Workflow.APIStateChange.table.header.Description": "", + "Workflow.APIStateChange.table.header.RequestState": "", + "Workflow.APIStateChange.update.success": "", + "Workflow.APIStateChange.updateStatus.has.errors": "", + "Workflow.APIStatechange.help.link.one": "", + "Workflow.ApiProduct.StateChange.permission.denied.content": "", + "Workflow.ApiStateChange.permission.denied.content": "", + "Workflow.ApiStateChange.permission.denied.title": "", + "Workflow.ApplicationCreation.List.empty.content.applicationcreations": "", + "Workflow.ApplicationCreation.List.empty.title.applicationcreations": "", + "Workflow.ApplicationCreation.apicall.has.errors": "", + "Workflow.ApplicationCreation.help.link.one": "", + "Workflow.ApplicationCreation.permission.denied.content": "", + "Workflow.ApplicationCreation.permission.denied.title": "", + "Workflow.ApplicationCreation.table.button.approve": "", + "Workflow.ApplicationCreation.table.button.reject": "", + "Workflow.ApplicationCreation.table.header.Action": "", + "Workflow.ApplicationCreation.table.header.ApplicationTier": "", + "Workflow.ApplicationCreation.table.header.applicationName": "", + "Workflow.ApplicationCreation.table.header.description": "", + "Workflow.ApplicationCreation.table.header.userName": "", + "Workflow.ApplicationCreation.title.applicationcreation": "", + "Workflow.ApplicationCreation.update.success": "", + "Workflow.ApplicationCreation.updateStatus.has.errors": "", + "Workflow.ApplicationDeletion.List.empty.content.applicationdeletions": "", + "Workflow.ApplicationDeletion.List.empty.title.applicationdeletions": "", + "Workflow.ApplicationDeletion.apicall.has.errors": "", + "Workflow.ApplicationDeletion.help.link.one": "", + "Workflow.ApplicationDeletion.permission.denied.content": "", + "Workflow.ApplicationDeletion.permission.denied.title": "", + "Workflow.ApplicationDeletion.table.button.approve": "", + "Workflow.ApplicationDeletion.table.button.reject": "", + "Workflow.ApplicationDeletion.table.header.Action": "", + "Workflow.ApplicationDeletion.table.header.ApplicationTier": "", + "Workflow.ApplicationDeletion.table.header.applicationName": "", + "Workflow.ApplicationDeletion.table.header.description": "", + "Workflow.ApplicationDeletion.table.header.userName": "", + "Workflow.ApplicationDeletion.title.applicationdeletion": "", + "Workflow.ApplicationDeletion.update.success": "", + "Workflow.ApplicationDeletion.updateStatus.has.errors": "", + "Workflow.ApplicationRegistration.List.empty.content.applicationregistrations": "", + "Workflow.ApplicationRegistration.List.empty.title.applicationregistrations": "", + "Workflow.ListUserCreation.search.default": "", + "Workflow.ListUserCreation.title.usercreation": "", + "Workflow.RegistrationCreation.apicall.has.errors": "", + "Workflow.RegistrationCreation.link.one": "", + "Workflow.RegistrationCreation.permission.denied.content": "", + "Workflow.RegistrationCreation.permission.denied.title": "", + "Workflow.RegistrationCreation.search.default": "", + "Workflow.RegistrationCreation.table.button.approve": "", + "Workflow.RegistrationCreation.table.button.reject": "", + "Workflow.RegistrationCreation.table.header.Action": "", + "Workflow.RegistrationCreation.table.header.Application": "", + "Workflow.RegistrationCreation.table.header.ApplicationTier": "", + "Workflow.RegistrationCreation.table.header.Creater": "", + "Workflow.RegistrationCreation.table.header.Description": "", + "Workflow.RegistrationCreation.table.header.KeyType": "", + "Workflow.RegistrationCreation.title.registrationcreation": "", + "Workflow.RegistrationCreation.update.success": "", + "Workflow.RegistrationCreation.updateStatus.has.errors": "", + "Workflow.SubscriptionCreation.List.empty.content.subscriptioncreations": "", + "Workflow.SubscriptionCreation.List.empty.title.subscriptioncreations": "", + "Workflow.SubscriptionCreation.apicall.has.errors": "", + "Workflow.SubscriptionCreation.help.link.one": "", + "Workflow.SubscriptionCreation.permission.denied.content": "", + "Workflow.SubscriptionCreation.permission.denied.title": "", + "Workflow.SubscriptionCreation.search.default": "", + "Workflow.SubscriptionCreation.table.button.approve": "", + "Workflow.SubscriptionCreation.table.button.reject": "", + "Workflow.SubscriptionCreation.table.header.API": "", + "Workflow.SubscriptionCreation.table.header.Action": "", + "Workflow.SubscriptionCreation.table.header.Application": "", + "Workflow.SubscriptionCreation.table.header.Description": "", + "Workflow.SubscriptionCreation.table.header.Subscriber": "", + "Workflow.SubscriptionCreation.title.subscriptioncreation": "", + "Workflow.SubscriptionCreation.title.subscriptionupdate": "", + "Workflow.SubscriptionCreation.update.success": "", + "Workflow.SubscriptionDeletion.List.empty.content.subscriptiondeletions": "", + "Workflow.SubscriptionDeletion.List.empty.title.subscriptiondeletions": "", + "Workflow.SubscriptionDeletion.apicall.has.errors": "", + "Workflow.SubscriptionDeletion.help.link.one": "", + "Workflow.SubscriptionDeletion.permission.denied.content": "", + "Workflow.SubscriptionDeletion.permission.denied.title": "", + "Workflow.SubscriptionDeletion.search.default": "", + "Workflow.SubscriptionDeletion.table.button.approve": "", + "Workflow.SubscriptionDeletion.table.button.reject": "", + "Workflow.SubscriptionDeletion.table.header.API": "", + "Workflow.SubscriptionDeletion.table.header.Action": "", + "Workflow.SubscriptionDeletion.table.header.Application": "", + "Workflow.SubscriptionDeletion.table.header.Description": "", + "Workflow.SubscriptionDeletion.table.header.Subscriber": "", + "Workflow.SubscriptionDeletion.title.subscriptiondeletion": "", + "Workflow.SubscriptionDeletion.update.success": "", + "Workflow.SubscriptionUpdate.List.empty.content.subscriptionUpdates": "", + "Workflow.SubscriptionUpdate.List.empty.title.subscriptionUpdate": "", + "Workflow.SubscriptionUpdate.apicall.has.errors": "", + "Workflow.SubscriptionUpdate.help.link.one": "", + "Workflow.SubscriptionUpdate.permission.denied.content": "", + "Workflow.SubscriptionUpdate.permission.denied.title": "", + "Workflow.SubscriptionUpdate.search.default": "", + "Workflow.SubscriptionUpdate.table.button.approve": "", + "Workflow.SubscriptionUpdate.table.button.reject": "", + "Workflow.SubscriptionUpdate.table.header.API": "", + "Workflow.SubscriptionUpdate.table.header.Action": "", + "Workflow.SubscriptionUpdate.table.header.Application": "", + "Workflow.SubscriptionUpdate.table.header.Description": "", + "Workflow.SubscriptionUpdate.table.header.Subscriber": "", + "Workflow.SubscriptionUpdate.update.success": "", + "Workflow.SubscriptionUpdate.updateStatus.has.errors": "", + "Workflow.SubsriptionDeletion.updateStatus.has.errors": "", + "Workflow.UserCreation.List.empty.content.usercreations": "", + "Workflow.UserCreation.List.empty.title.usercreations": "", + "Workflow.UserCreation.apicall.has.errors": "", + "Workflow.UserCreation.help.link.one": "", + "Workflow.UserCreation.permission.denied.content": "", + "Workflow.UserCreation.permission.denied.title": "", + "Workflow.UserCreation.table.button.approve": "", + "Workflow.UserCreation.table.button.reject": "", + "Workflow.UserCreation.table.header.Action": "", + "Workflow.UserCreation.table.header.Description": "", + "Workflow.UserCreation.table.header.ElapsedTime": "", + "Workflow.UserCreation.table.header.TenantDomain": "", + "Workflow.UserCreation.table.header.TenantName": "", + "Workflow.UserCreation.update.success": "", + "Workflow.UserCreation.updateStatus.has.errors": "", + "Workflow.api.statechange.search.default": "", + "Workflow.apiProduct.statechange.search.default": "", + "Workflow.applicationcreation.search.default": "", + "Workflow.applicationdeletion.search.default": "", + "dsdds": "", + "error.list.401": "", + "error.list.401.description": "", + "error.list.403": "", + "error.list.403.description": "", + "error.list.404": "", + "error.list.404.description": "", + "error.list.500": "", + "error.list.500.description": "" +} diff --git a/portals/publisher/src/main/webapp/site/public/locales/raw.en.json b/portals/publisher/src/main/webapp/site/public/locales/raw.en.json index fcb3912eb3d..980f86eef0f 100644 --- a/portals/publisher/src/main/webapp/site/public/locales/raw.en.json +++ b/portals/publisher/src/main/webapp/site/public/locales/raw.en.json @@ -17,6 +17,21 @@ "Adding.Policy.Mapping.Error": { "defaultMessage": "Error occurred while adding the policy mapping" }, + "AdminPages.Addons.InlineProgress.message": { + "defaultMessage": "Loading..." + }, + "AdminPages.Addons.InputListBase.textfield.remove.label": { + "defaultMessage": "Remove" + }, + "AdminPages.Addons.ListBase.noDataError": { + "defaultMessage": "Error while retrieving data." + }, + "AdminPages.Addons.ListBase.nodata.message": { + "defaultMessage": "No items yet" + }, + "AdminPages.Addons.ListBase.reload": { + "defaultMessage": "Reload" + }, "Api.category.dropdown.tooltip": { "defaultMessage": "Allow to group APIs that have similar attributes. There has to be pre-defined API categories in the environment in order to be attached to an API." }, @@ -4104,6 +4119,12 @@ "Base.Header.navbar.GlobalNavBar.Service.Catalog": { "defaultMessage": "Services" }, + "Base.Header.navbar.GlobalNavBar.SubscriptionCreation": { + "defaultMessage": "Subscripton Creation" + }, + "Base.Header.navbar.GlobalNavBar.SubscriptionUpdate": { + "defaultMessage": "Subscripton Update" + }, "Base.Header.navbar.GlobalNavBar.analytics": { "defaultMessage": "Analytics" }, @@ -4770,6 +4791,12 @@ "ServiceCatalog.ServicesTableView.ServicesTableView.version": { "defaultMessage": "Version" }, + "SubscriptionApproval.Addons.ListBase.reload": { + "defaultMessage": "Reload" + }, + "SubscriptionAproval.Addons.ListBase.nodata.message": { + "defaultMessage": "No items yet" + }, "Undeploy": { "defaultMessage": "Undeploy" }, @@ -4782,6 +4809,54 @@ "UnexpectedError.title": { "defaultMessage": "Internal Server Error" }, + "Workflow.ApplicationCreation.updateStatus.has.errors": { + "defaultMessage": "Unable to complete subscription creation approve/reject process." + }, + "Workflow.SubscriptionCreation.List.empty.content.subscriptioncreations": { + "defaultMessage": "There are no pending workflow requests for subscription creation." + }, + "Workflow.SubscriptionCreation.List.empty.title.subscriptioncreations": { + "defaultMessage": "Subscription Creation" + }, + "Workflow.SubscriptionCreation.apicall.has.errors": { + "defaultMessage": "Unable to get workflow pending requests for Subscription Creation" + }, + "Workflow.SubscriptionCreation.help.link.one": { + "defaultMessage": "Create a subscription creation request" + }, + "Workflow.SubscriptionCreation.permission.denied.content": { + "defaultMessage": "You dont have enough permission to view Subscription Creation - Approval Tasks. Please contact the site administrator." + }, + "Workflow.SubscriptionCreation.permission.denied.title": { + "defaultMessage": "Permission Denied" + }, + "Workflow.SubscriptionCreation.search.default": { + "defaultMessage": "Search by API, Application or Subscriber" + }, + "Workflow.SubscriptionCreation.table.header.API": { + "defaultMessage": "API" + }, + "Workflow.SubscriptionCreation.table.header.Action": { + "defaultMessage": "Action" + }, + "Workflow.SubscriptionCreation.table.header.Application": { + "defaultMessage": "Application" + }, + "Workflow.SubscriptionCreation.table.header.Description": { + "defaultMessage": "Description" + }, + "Workflow.SubscriptionCreation.table.header.Subscriber": { + "defaultMessage": "Subscriber" + }, + "Workflow.SubscriptionCreation.table.header.Tier": { + "defaultMessage": "Tier" + }, + "Workflow.SubscriptionCreation.title.subscriptioncreation": { + "defaultMessage": "Subscription Creation - Approval Tasks" + }, + "Workflow.SubscriptionCreation.update.success": { + "defaultMessage": "Workflow status is updated successfully" + }, "api.console.security.heading": { "defaultMessage": "Security" }, diff --git a/portals/publisher/src/main/webapp/site/public/locales/si.json b/portals/publisher/src/main/webapp/site/public/locales/si.json new file mode 100644 index 00000000000..f1b50afa723 --- /dev/null +++ b/portals/publisher/src/main/webapp/site/public/locales/si.json @@ -0,0 +1,15 @@ +{ + "name": "නම", + "next": "ඊළඟ", + "password": "රහස් පදය", + "save": "සුරකින්න", + "security": "ආරක්ෂාව", + "status": "තත්ත්වය", + "summary": "සාරාංශය", + "timeout": "කාලය හමාරයි", + "type": "වර්ගය", + "url": "URL", + "username": "පරිශීලක නාමය", + "version": "පිටපත", + "welcome.to.wso2.api.manager": "WSO2 API කළමනාකරු වෙත සාදරයෙන් පිළිගනිමු" +} \ No newline at end of file diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx new file mode 100644 index 00000000000..e7554216b28 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx @@ -0,0 +1,121 @@ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import React from 'react'; +import { styled } from '@mui/material/styles'; +import PropTypes from 'prop-types'; +import Toolbar from '@mui/material/Toolbar'; +import Typography from '@mui/material/Typography'; +import Paper from '@mui/material/Paper'; +import Box from '@mui/material/Box'; +import Grid from '@mui/material/Grid'; + +const Root = styled('div')({ + flexGrow: 1, + minHeight: `calc(100vh - (${43 + 57}px))`, + backgroundColor: '#eaeff1', +}); + +/** + * Render base for content. + * @param {JSON} props - Component properties + * @param {string} props.title - Page title + * @param {object} props.children - Page content + * @param {object} props.help - Page help component + * @param {string} props.backgroundColor - Page background color in #xxxxxx format + * @param {object} props.paperProps - Page background color in #xxxxxx format + * @param {object} props.pageStyle - Page style one of 'half' 'full' or 'small' + * @returns {JSX} Header AppBar components. + */ +function ContentBase(props) { + const { + title, pageDescription, children, help, width, pageStyle, PaperProps, paperLess, + } = props; + let size = 8;// default half/medium + if ([width, pageStyle].includes('small')) { + size = 5; + } else if ([width, pageStyle].includes('full')) { + size = 11; + } + return ( + + + + + + + + {title} + + + { + pageDescription !== null && ( + + {pageDescription} + + ) + } + + + + {help} + + + + + + + {pageStyle === 'paperLess' || paperLess ? children : ( + + {children} + + )} + + + + + + ); +} +ContentBase.defaultProps = { + width: 'medium', + PaperProps: {}, + pageStyle: 'half', + paperLess: false, + pageDescription: null, +}; +ContentBase.propTypes = { + help: PropTypes.element.isRequired, + title: PropTypes.string.isRequired, + pageDescription: PropTypes.string, + children: PropTypes.element.isRequired, + width: PropTypes.oneOf(['medium', 'full', 'small']), + pageStyle: PropTypes.oneOf(['half', 'full', 'small']), // @deprecated + PaperProps: PropTypes.shape({ elevation: PropTypes.number }), + /** + * Override or extend the styles applied to the component. + * See [CSS API](#css) below for more details. + */ + paperLess: PropTypes.bool, +}; + +export default ContentBase; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx new file mode 100644 index 00000000000..05bd8a2b427 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx @@ -0,0 +1,141 @@ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React, { useState } from 'react'; +import PropTypes from 'prop-types'; +import Button from '@mui/material/Button'; +import Dialog from '@mui/material/Dialog'; +import DialogActions from '@mui/material/DialogActions'; +import DialogContent from '@mui/material/DialogContent'; +import DialogTitle from '@mui/material/DialogTitle'; +import IconButton from '@mui/material/IconButton'; +import CircularProgress from '@mui/material/CircularProgress'; +import Alert from 'AppComponents/Shared/Alert'; + +/** + * Render base for dialogs. + * @returns {JSX} Header AppBar components. + */ +function FormDialogBase({ + title, + children, + icon, + triggerButtonText, + saveButtonText, + triggerButtonProps, + formSaveCallback, + dialogOpenCallback, + triggerIconProps, +}) { + const [open, setOpen] = React.useState(false); + const [saving, setSaving] = useState(false); + + const handleClickOpen = () => { + dialogOpenCallback(); + setOpen(true); + }; + + const handleClose = () => { + setOpen(false); + }; + + const saveTriggerd = () => { + const savedPromise = formSaveCallback(); + if (typeof savedPromise === 'function') { + savedPromise(setOpen); + } else if (savedPromise) { + setSaving(true); + savedPromise.then((data) => { + Alert.success(data); + }).catch((e) => { + Alert.error(e); + }).finally(() => { + setSaving(false); + handleClose(); + }); + } + }; + + return ( + <> + {icon && ( + + {icon} + + )} + {triggerButtonText && ( + // eslint-disable-next-line react/jsx-props-no-spreading + + )} + + + {title} + + {children} + + + + + + + + ); +} +FormDialogBase.defaultProps = { + dialogOpenCallback: () => {}, + triggerButtonProps: { + variant: 'contained', + color: 'primary', + }, + triggerIconProps: { + color: 'primary', + component: 'span', + }, +}; + +FormDialogBase.propTypes = { + title: PropTypes.string.isRequired, + children: PropTypes.element.isRequired, + icon: PropTypes.element.isRequired, + triggerButtonText: PropTypes.oneOfType([ + PropTypes.element.isRequired, + PropTypes.string.isRequired, + ]).isRequired, + saveButtonText: PropTypes.oneOfType([ + PropTypes.string.isRequired, + PropTypes.element.isRequired, + ]).isRequired, + triggerButtonProps: PropTypes.shape({}), + triggerIconProps: PropTypes.shape({}), + formSaveCallback: PropTypes.func.isRequired, + dialogOpenCallback: PropTypes.func, +}; + +export default FormDialogBase; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx new file mode 100644 index 00000000000..93e9e2923f0 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx @@ -0,0 +1,73 @@ +/* + * Copyright (c) 2020, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React from 'react'; +import PropTypes from 'prop-types'; +import Popover from '@mui/material/Popover'; +import HelpIcon from '@mui/icons-material/Help'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; + +/** + * Render base for help links on top right corner of the page. + * @returns {JSX} Header AppBar components. + */ +function HelpBase({ children }) { + const [anchorEl, setAnchorEl] = React.useState(null); + + const handleClick = (event) => { + setAnchorEl(event.currentTarget); + }; + + const handleClose = () => { + setAnchorEl(null); + }; + + const open = Boolean(anchorEl); + const id = open ? 'simple-popover' : undefined; + + return ( +
+ + + + + + + {children} + +
+ ); +} +HelpBase.propTypes = { + children: PropTypes.element.isRequired, +}; +export default HelpBase; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx new file mode 100644 index 00000000000..1db32c20f41 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx @@ -0,0 +1,64 @@ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React from 'react'; +import { styled } from '@mui/material/styles'; +import PropTypes from 'prop-types'; +import Typography from '@mui/material/Typography'; +import CircularProgress from '@mui/material/CircularProgress'; +import { FormattedMessage } from 'react-intl'; + +const Root = styled('div')(() => ({})); + +/** + * Render progress inside a container centering in the container. + * @param {JSON} props component props. + * @returns {JSX} Loading animation. + */ +function InlineProgress(props) { + const { message } = props; + return ( + * + *': { + marginLeft: 2, + }, + justifyContent: 'center', + padding: 20, + }} + > + + + {message || ( + + )} + + + ); +} +InlineProgress.defaultProps = { + message: null, +}; +InlineProgress.propTypes = { + message: PropTypes.string, +}; +export default InlineProgress; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx new file mode 100644 index 00000000000..f69cb0566a5 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx @@ -0,0 +1,137 @@ +import React, { useEffect, useState } from 'react'; +import PropTypes from 'prop-types'; +import { FormattedMessage } from 'react-intl'; +import { createMuiTheme } from 'mui/styles'; +import FormGroup from '@mui/material/FormGroup'; +import Grid from '@mui/material/Grid'; +import TextField from '@mui/material/TextField'; +import Button from '@mui/material/Button'; +import Box from '@mui/material/Box'; + +const theme = createMuiTheme(); +theme.spacing(2); + +const defaultValidationFn = () => { + return false; +}; + +const InputList = (props) => { + const { + onInputListChange, initialList, inputLabelPrefix, helperText, addButtonLabel, onValidation, + } = props; + const [userInputItems, setUserInputItems] = useState([]); + const [id, setId] = useState(0); + + const handleInput = ({ target: { name, value } }) => { + let tempItems = userInputItems.filter((item) => item.key !== name); + const fieldErrors = onValidation(value); + tempItems = [...tempItems, { key: '' + name, value, error: fieldErrors }]; + tempItems.sort((a, b) => { + return a.key - b.key; + }); + setUserInputItems(tempItems); + }; + + const handleDelete = (deletingKey) => { + const tempItems = userInputItems.filter((item) => (item.key !== deletingKey)); + setUserInputItems(tempItems); + }; + + useEffect(() => { + const nonEmptyItems = []; + for (let i = 0; i < userInputItems.length; i++) { + if (userInputItems[i].value && userInputItems[i].value.trim() !== '') { + nonEmptyItems.push(userInputItems[i].value.trim()); + } + } + onInputListChange(nonEmptyItems); + }, [userInputItems]); + + useEffect(() => { + if (initialList) { + let i = 0; + setUserInputItems(initialList.map((item) => { + return { key: '' + i++, value: item, error: onValidation(item) }; + })); + setId(i); + } else { + setId(id + 1); + setUserInputItems([{ key: '' + id, value: '' }]); + } + }, []); + + const onAddInputField = () => { + setId(id + 1); + const newUserItemList = [...userInputItems, { key: '' + id, value: '' }]; + setUserInputItems(newUserItemList); + }; + + let labelCounter = 1; + return ( + + + + {userInputItems.map((item) => { + return ( + + obj.key === item.key).error || helperText + } + variant='outlined' + error={userInputItems.find((obj) => obj.key === item.key).error} + /> + + + + + ); + })} + + + + + + + + + ); +}; + +InputList.defaultProps = { + inputLabelPrefix: 'Item', + helperText: 'Enter item', + addButtonLabel: 'Add item', + initialList: null, + onValidation: defaultValidationFn, +}; + +InputList.propTypes = { + inputLabelPrefix: PropTypes.string, + helperText: PropTypes.string, + addButtonLabel: PropTypes.string, + onInputListChange: PropTypes.func.isRequired, + initialList: PropTypes.shape([]), + onValidation: PropTypes.func, +}; + +export default InputList; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx new file mode 100644 index 00000000000..174cb07344a --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx @@ -0,0 +1,401 @@ +/* eslint-disable react/jsx-props-no-spreading */ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import React, { useEffect, useLayoutEffect, useState } from 'react'; +import { FormattedMessage, useIntl } from 'react-intl'; +import PropTypes from 'prop-types'; +import AppBar from '@mui/material/AppBar'; +import Toolbar from '@mui/material/Toolbar'; +import Typography from '@mui/material/Typography'; +import Grid from '@mui/material/Grid'; +import TextField from '@mui/material/TextField'; +import Tooltip from '@mui/material/Tooltip'; +import IconButton from '@mui/material/IconButton'; +import SearchIcon from '@mui/icons-material/Search'; +import RefreshIcon from '@mui/icons-material/Refresh'; +import Card from '@mui/material/Card'; +import CardActions from '@mui/material/CardActions'; +import CardContent from '@mui/material/CardContent'; +import MUIDataTable from 'mui-datatables'; +import ContentBase from 'AppComponents/Addons/Addons/ContentBase'; +import InlineProgress from 'AppComponents/Addons/Addons/InlineProgress'; +import { Link as RouterLink } from 'react-router-dom'; +import EditIcon from '@mui/icons-material/Edit'; +import Alert from '@mui/material/Alert'; + +/** + * Render a list + * @param {JSON} props props passed from parent + * @returns {JSX} Header AppBar components. + */ +function ListBase(props) { + const { + EditComponent, editComponentProps, DeleteComponent, showActionColumn, + columProps, pageProps, addButtonProps, addButtonOverride, + searchProps: { active: searchActive, searchPlaceholder }, apiCall, emptyBoxProps: { + title: emptyBoxTitle, + content: emptyBoxContent, + }, + noDataMessage, + addedActions, + } = props; + + const [searchText, setSearchText] = useState(''); + const [data, setData] = useState(null); + const [error, setError] = useState(null); + const intl = useIntl(); + + const filterData = (event) => { + setSearchText(event.target.value); + }; + + const sortBy = (field, reverse, primer) => { + const key = primer + ? (x) => { + return primer(x[field]); + } + : (x) => { + return x[field]; + }; + + // eslint-disable-next-line no-param-reassign + reverse = !reverse ? 1 : -1; + + return (a, b) => { + const aValue = key(a); + const bValue = key(b); + return reverse * ((aValue > bValue) - (bValue > aValue)); + }; + }; + const onColumnSortChange = (changedColumn, direction) => { + const sorted = [...data].sort(sortBy(changedColumn, direction === 'descending')); + setData(sorted); + }; + + const fetchData = () => { + // Fetch data from backend when an apiCall is provided + setData(null); + if (apiCall) { + const promiseAPICall = apiCall(); + promiseAPICall.then((LocalData) => { + if (LocalData) { + setData(LocalData); + setError(null); + } else { + setError(intl.formatMessage({ + id: 'Publisher.Addons.ListBase.noDataError', + defaultMessage: 'Error while retrieving data.', + })); + } + }) + .catch((e) => { + setError(e.message); + }); + } + setSearchText(''); + }; + + useEffect(() => { + fetchData(); + }, []); + + useLayoutEffect(() => { + let i; + const sortButtonList = document.getElementsByClassName('MuiTableSortLabel-root'); + const footerList = document.getElementsByClassName('MuiTable-root'); + + for (i = 0; i < sortButtonList.length; i++) { + sortButtonList[i].setAttribute('aria-label', `sort-icon-button-${i}`); + } + + if (footerList.length > 1) footerList[1].setAttribute('role', 'presentation'); + }); + + let columns = []; + if (columProps) { + columns = [ + ...columProps, + ]; + } + if (showActionColumn) { + columns.push( + { + name: '', + label: 'Actions', + options: { + filter: false, + sort: false, + customBodyRender: (value, tableMeta) => { + const dataRow = data[tableMeta.rowIndex]; + const itemName = (typeof tableMeta.rowData === 'object') ? tableMeta.rowData[0] : ''; + if (editComponentProps && editComponentProps.routeTo) { + if (typeof tableMeta.rowData === 'object') { + const artifactId = tableMeta.rowData[tableMeta.rowData.length - 2]; + return ( +
+ + + + + + {DeleteComponent && ( + + )} + {addedActions && addedActions.map((action) => { + const AddedComponent = action; + return ( + + ); + })} +
+ ); + } else { + return (
); + } + } + return ( +
+ {EditComponent && ( + + )} + {DeleteComponent && ()} + {addedActions && addedActions.map((action) => { + const AddedComponent = action; + return ( + + ); + })} +
+ + ); + }, + setCellProps: () => { + return { + style: { width: 200 }, + }; + }, + }, + }, + ); + } + const options = { + filterType: 'checkbox', + selectableRows: 'none', + filter: false, + search: false, + print: false, + download: false, + viewColumns: false, + customToolbar: null, + responsive: 'vertical', + searchText, + onColumnSortChange, + }; + + // If no apiCall is provided OR, + // retrieved data is empty, display an information card. + if (!apiCall || (data && data.length === 0)) { + return ( + + + + {emptyBoxTitle} + {emptyBoxContent} + + + {addButtonOverride || ( + EditComponent && () + )} + + + + ); + } + + // If apiCall is provided and data is not retrieved yet, display progress component + if (!error && apiCall && !data) { + return ( + + + + + ); + } + if (error) { + return ( + + {error} + + + ); + } + return ( + <> + + {(searchActive || addButtonProps) && ( + + + + + + {searchActive && ()} + + + {searchActive && ( + ({ + '& .search-input': { + fontSize: theme.typography.fontSize, + }, + })} + InputProps={{ + disableUnderline: true, + className: 'search-input', + }} + // eslint-disable-next-line react/jsx-no-duplicate-props + inputProps={{ + 'aria-label': 'search-by-policy', + }} + onChange={filterData} + value={searchText} + /> + )} + + + {addButtonOverride || ( + EditComponent && ( + + ) + )} + + )} + > + + + + + + + + + )} +
+ {data && data.length > 0 && ( + + )} +
+ {data && data.length === 0 && ( +
+ + {noDataMessage} + +
+ )} +
+ + ); +} + +ListBase.defaultProps = { + addButtonProps: {}, + addButtonOverride: null, + searchProps: { + searchPlaceholder: '', + active: true, + }, + actionColumnProps: { + editIconShow: true, + editIconOverride: null, + deleteIconShow: true, + }, + addedActions: null, + noDataMessage: ( + + ), + showActionColumn: true, + apiCall: null, + EditComponent: null, + DeleteComponent: null, + editComponentProps: {}, + columProps: null, +}; +ListBase.propTypes = { + EditComponent: PropTypes.element, + editComponentProps: PropTypes.shape({}), + DeleteComponent: PropTypes.element, + showActionColumn: PropTypes.bool, + columProps: PropTypes.element, + pageProps: PropTypes.shape({}).isRequired, + addButtonProps: PropTypes.shape({}), + searchProps: PropTypes.shape({ + searchPlaceholder: PropTypes.string.isRequired, + active: PropTypes.bool.isRequired, + }), + apiCall: PropTypes.func, + emptyBoxProps: PropTypes.shape({ + title: PropTypes.element.isRequired, + content: PropTypes.element.isRequired, + }).isRequired, + actionColumnProps: PropTypes.shape({ + editIconShow: PropTypes.bool, + editIconOverride: PropTypes.element, + deleteIconShow: PropTypes.bool, + }), + noDataMessage: PropTypes.element, + addButtonOverride: PropTypes.element, + addedActions: PropTypes.shape([]), +}; +export default ListBase; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx new file mode 100644 index 00000000000..0bb19e2fcb2 --- /dev/null +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx @@ -0,0 +1,56 @@ +/* eslint-disable react/jsx-props-no-spreading */ +/* + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 Inc. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ +import React from 'react'; +import Card from '@mui/material/Card'; +import CardContent from '@mui/material/CardContent'; +import ContentBase from 'AppComponents/Addons/Addons/ContentBase'; +import Typography from '@mui/material/Typography'; +import Box from '@mui/material/Box'; +import WarningIcon from '@mui/icons-material/Warning'; + +/** + * Adds two numbers together. + * @param {JSON} props The first number. + * @returns {JSX} Render the inline warning message + */ +export default function SimplePaper(props) { + const { content, title, pageProps } = props; + + return ( + + + + + ({ fontSize: 44, color: theme.palette.warning.dark })} /> + + {title} + + + + + {content} + + + + + ); +} From c62f83667decacb8e4cb19bb5bd2e04c4f40dea6 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Thu, 8 Aug 2024 11:20:03 +0530 Subject: [PATCH 5/7] Rename Icons --- .../Base/Header/navbar/GlobalNavLinks.jsx | 28 +++++++++---------- .../components/Subscription/Subscription.jsx | 2 +- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx index 1527a1d7e50..ae51361152d 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Base/Header/navbar/GlobalNavLinks.jsx @@ -169,6 +169,20 @@ function GlobalNavLinks(props) { )}
)} + {(!isRestricted(['apim:subscription_approval_view', 'apim:subscription_approval_manage'])) && ( +
+ + + +
)} {analyticsMenuEnabled && ( <> @@ -191,20 +205,6 @@ function GlobalNavLinks(props) { )} - {(!isRestricted(['apim:subscription_approval_view', 'apim:subscription_approval_manage'])) && ( -
- - - -
)} ); diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx index 8d077eaee20..ab1c5c67135 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. * * WSO2 Inc. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except From 71093552abc12de4c71b8d9e664af9b5996b4623 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Wed, 14 Aug 2024 17:33:01 +0530 Subject: [PATCH 6/7] Rename Icons --- .../components/Addons/Addons/ContentBase.jsx | 4 ++-- .../Addons/Addons/FormDialogBase.jsx | 4 ++-- .../app/components/Addons/Addons/HelpBase.jsx | 4 ++-- .../Addons/Addons/InlineProgress.jsx | 4 ++-- .../components/Addons/Addons/InputListBase.jsx | 18 ++++++++++++++++++ .../app/components/Addons/Addons/ListBase.jsx | 4 ++-- .../components/Addons/Addons/WarningBase.jsx | 4 ++-- .../Subscription/LeftMenu/LeftMenu.jsx | 4 ++-- .../components/Subscription/Subscription.jsx | 4 ++-- .../SubscriptionCreation/ListLabels.jsx | 4 ++-- .../SubscriptionUpdate/ListLabels.jsx | 4 ++-- 11 files changed, 38 insertions(+), 20 deletions(-) diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx index e7554216b28..a34c4d7e71a 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ContentBase.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx index 05bd8a2b427..de503dddfac 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/FormDialogBase.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx index 93e9e2923f0..3e1d3cbc62e 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/HelpBase.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2020, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2020, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx index 1db32c20f41..a472ff69fd2 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InlineProgress.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx index f69cb0566a5..48cc0667610 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/InputListBase.jsx @@ -1,3 +1,21 @@ +/* + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. + * + * WSO2 LLC. licenses this file to you under the Apache License, + * Version 2.0 (the "License"); you may not use this file except + * in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + import React, { useEffect, useState } from 'react'; import PropTypes from 'prop-types'; import { FormattedMessage } from 'react-intl'; diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx index 174cb07344a..cdab793e2c4 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/ListBase.jsx @@ -1,8 +1,8 @@ /* eslint-disable react/jsx-props-no-spreading */ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx index 0bb19e2fcb2..5e0736ee154 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Addons/Addons/WarningBase.jsx @@ -1,8 +1,8 @@ /* eslint-disable react/jsx-props-no-spreading */ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx index fd0f834072d..1e9054b582d 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/LeftMenu/LeftMenu.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx index ab1c5c67135..f45485ee095 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/Subscription.jsx @@ -1,7 +1,7 @@ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx index 5da39236bd7..7629e5f41ba 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionCreation/ListLabels.jsx @@ -1,8 +1,8 @@ /* eslint-disable react/jsx-props-no-spreading */ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at diff --git a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx index 6e6e9ea0a56..02970d93864 100644 --- a/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx +++ b/portals/publisher/src/main/webapp/source/src/app/components/Subscription/SubscriptionUpdate/ListLabels.jsx @@ -1,8 +1,8 @@ /* eslint-disable react/jsx-props-no-spreading */ /* - * Copyright (c) 2024, WSO2 Inc. (http://www.wso2.org) All Rights Reserved. + * Copyright (c) 2024, WSO2 LLC. (http://www.wso2.org) All Rights Reserved. * - * WSO2 Inc. licenses this file to you under the Apache License, + * WSO2 LLC. licenses this file to you under the Apache License, * Version 2.0 (the "License"); you may not use this file except * in compliance with the License. * You may obtain a copy of the License at From f5eb72892303c68bb181e6667eb53d7e8389ab35 Mon Sep 17 00:00:00 2001 From: silmyhasan Date: Thu, 15 Aug 2024 12:43:47 +0530 Subject: [PATCH 7/7] Fix en.json --- .../main/webapp/site/public/locales/en.json | 50 +- .../webapp/site/public/locales/raw.en.json | 4935 ----------------- .../main/webapp/site/public/locales/si.json | 15 - 3 files changed, 49 insertions(+), 4951 deletions(-) delete mode 100644 portals/publisher/src/main/webapp/site/public/locales/raw.en.json delete mode 100644 portals/publisher/src/main/webapp/site/public/locales/si.json diff --git a/portals/publisher/src/main/webapp/site/public/locales/en.json b/portals/publisher/src/main/webapp/site/public/locales/en.json index 81106516c5c..424fb6aa27f 100644 --- a/portals/publisher/src/main/webapp/site/public/locales/en.json +++ b/portals/publisher/src/main/webapp/site/public/locales/en.json @@ -307,6 +307,9 @@ "Apis.Details.Configuration.components.AdvertiseInfo.originalDevPortalUrl.error": "Invalid Original Developer Portal URL", "Apis.Details.Configuration.components.AdvertiseInfo.originalDevPortalUrl.help": "This is the original developer portal of the advertised API", "Apis.Details.Configuration.components.AdvertiseInfo.tooltip": "Indicates if an API is a third party API. You can use third party APIs to expose an externally published API through API Manager.", + "Apis.Details.Configuration.components.Audience.Validation.Title": "Audience Validation", + "Apis.Details.Configuration.components.Audience.Validation.helper": "Press `Enter` after typing the audience value, to add a new audience", + "Apis.Details.Configuration.components.Audience.Validation.values": "Allowed Audience", "Apis.Details.Configuration.components.CORSConfiguration.allow.\n headers": "Access Control Allow Headers", "Apis.Details.Configuration.components.CORSConfiguration.allow.\n methods": "Access Control Allow Methods", "Apis.Details.Configuration.components.CORSConfiguration.allow.\n origins": "Access Control Allow Origins", @@ -1273,6 +1276,7 @@ "Base.Header.headersearch.HeaderSearch.tooltip.option6": "Description [ Syntax - description:xxxx ]", "Base.Header.headersearch.HeaderSearch.tooltip.title": "Search Options for APIs and APIProducts", "Base.Header.navbar.GlobalNavBar.Service.Catalog": "Services", + "Base.Header.navbar.GlobalNavBar.Tasks": "Tasks", "Base.Header.navbar.GlobalNavBar.analytics": "Analytics", "Base.Header.navbar.GlobalNavBar.api.products": "API Products", "Base.Header.navbar.GlobalNavBar.apis": "APIs", @@ -1302,6 +1306,11 @@ "LoginDenied.logout": "Logout", "LoginDenied.message": "The server could not verify that you are authorized to access the requested resource.", "LoginDenied.title": "Error 403 : Forbidden", + "Publisher.Addons.InlineProgress.message": "Loading...", + "Publisher.Addons.InputListBase.textfield.remove.label": "Remove", + "Publisher.Addons.ListBase.noDataError": "Error while retrieving data.", + "Publisher.Addons.ListBase.nodata.message": "No items yet", + "Publisher.Addons.ListBase.reload": "Reload", "Scopes.Create.CreateScope.cancel": "Cancel", "Scopes.Create.CreateScope.create.new.scope": "Create New Scope", "Scopes.Create.CreateScope.heading.scope.heading": "Scopes", @@ -1350,6 +1359,7 @@ "Scopes.Usage.Usage.scope.usage": "Usage", "Scopes.Usage.Usage.usage": "Usages of", "Scopes.Usage.Usage.usage.cancel": "Cancel", + "Scopes.Usage.UsageView.resource.revision": "Revision", "Scopes.Usage.UsageView.resource.target": "Target", "Scopes.Usage.UsageView.resource.usage": "List of Resources", "Scopes.Usage.UsageView.resource.verb": "Verb", @@ -1428,9 +1438,47 @@ "ServiceCatalog.ServicesTableView.ServicesTableView.service.url": "Service URL", "ServiceCatalog.ServicesTableView.ServicesTableView.usage": "Number of Usages", "ServiceCatalog.ServicesTableView.ServicesTableView.version": "Version", + "SubscriptionApproval.Addons.ListBase.reload": "Reload", + "SubscriptionAproval.Addons.ListBase.nodata.message": "No items yet", + "Task.SubscriptionCreation.table.button.reject": "Reject", + "Task.SubscriptionUpdate.table.button.reject": "Reject", "UnexpectedError.logout": "Logout", "UnexpectedError.message": "Error occurred due to invalid request", "UnexpectedError.title": "Internal Server Error", + "Workflow.ApplicationCreation.updateStatus.has.errors": "Unable to complete subscription creation approve/reject process.", + "Workflow.SubscriptionCreation.List.empty.content.subscriptioncreations": "There are no pending workflow requests for subscription creation.", + "Workflow.SubscriptionCreation.List.empty.title.subscriptioncreations": "Subscription Creation", + "Workflow.SubscriptionCreation.ListBase.nodata.message": "No items yet", + "Workflow.SubscriptionCreation.Reject.Title": "Reject", + "Workflow.SubscriptionCreation.Reject.button.cancel": "Cancel", + "Workflow.SubscriptionCreation.Reject.button.delete": "Reject", + "Workflow.SubscriptionCreation.Reject.text.description": "Are you sure, you want to reject this subscription ?", + "Workflow.SubscriptionCreation.apicall.has.errors": "Unable to get workflow pending requests for Subscription Creation", + "Workflow.SubscriptionCreation.help.link.one": "Create a subscription creation request", + "Workflow.SubscriptionCreation.permission.denied.content": "You dont have enough permission to view Subscription Creation - Approval Tasks. Please contact the site administrator.", + "Workflow.SubscriptionCreation.permission.denied.title": "Permission Denied", + "Workflow.SubscriptionCreation.search.default": "Search by API, Application or Subscriber", + "Workflow.SubscriptionCreation.table.button.approve": "Approve", + "Workflow.SubscriptionCreation.table.header.API": "API", + "Workflow.SubscriptionCreation.table.header.Action": "Action", + "Workflow.SubscriptionCreation.table.header.Application": "Application", + "Workflow.SubscriptionCreation.table.header.Description": "Description", + "Workflow.SubscriptionCreation.table.header.Subscriber": "Subscriber", + "Workflow.SubscriptionCreation.table.header.Tier": "Tier", + "Workflow.SubscriptionCreation.title.subscriptioncreation": "Subscription Creation - Approval Tasks", + "Workflow.SubscriptionCreation.update.success": "Workflow status is updated successfully", + "Workflow.SubscriptionUpdate.List.empty.content.subscriptioncreations": "There are no pending workflow requests for subscription update", + "Workflow.SubscriptionUpdate.List.empty.title.subscriptionupdate": "Subscription update", + "Workflow.SubscriptionUpdate.Reject.Title": "Reject", + "Workflow.SubscriptionUpdate.Reject.button.cancel": "Cancel", + "Workflow.SubscriptionUpdate.Reject.button.delete": "Reject", + "Workflow.SubscriptionUpdate.Reject.text.description": "Are you sure, you want to reject this subscription update?", + "Workflow.SubscriptionUpdate.apicall.has.errors": "Unable to get workflow pending requests for Subscription Update", + "Workflow.SubscriptionUpdate.help.link.one": "Create a subscription update request", + "Workflow.SubscriptionUpdate.permission.denied.content": "You dont have enough permission to view Subscription Update - Approval Tasks. Please contact the site administrator.", + "Workflow.SubscriptionUpdate.permission.denied.title": "Permission Denied", + "Workflow.SubscriptionUpdate.title.subscriptionupdate": "Subscription Update - Approval Tasks", + "Workflow.SubscriptionUpdate.updateStatus.has.errors": "Unable to complete subscription update approve/reject process.", "api.console.security.heading": "Security", "app.components.Shared.Banner.back": "Back", "block.all": "Block All", @@ -1453,4 +1501,4 @@ "upload.image": "Click or drag the image to upload.", "upload.image.size.error": "Uploaded File is too large. Maximum file size limit to 1MB", "upload.image.size.info": "Maximum file size limit to 1MB" -} +} \ No newline at end of file diff --git a/portals/publisher/src/main/webapp/site/public/locales/raw.en.json b/portals/publisher/src/main/webapp/site/public/locales/raw.en.json deleted file mode 100644 index 980f86eef0f..00000000000 --- a/portals/publisher/src/main/webapp/site/public/locales/raw.en.json +++ /dev/null @@ -1,4935 +0,0 @@ -{ - "APIs.details.endpoints.certificate.usage": { - "defaultMessage": "Usages of certificate -" - }, - "APIs.details.endpoints.certificate.usage.cancel": { - "defaultMessage": "Cancel" - }, - "Actions": { - "defaultMessage": "Actions" - }, - "Active.Deployment.Available": { - "defaultMessage": "An active deployment is available" - }, - "Active.Deployments.Available": { - "defaultMessage": "Active deployments are available" - }, - "Adding.Policy.Mapping.Error": { - "defaultMessage": "Error occurred while adding the policy mapping" - }, - "AdminPages.Addons.InlineProgress.message": { - "defaultMessage": "Loading..." - }, - "AdminPages.Addons.InputListBase.textfield.remove.label": { - "defaultMessage": "Remove" - }, - "AdminPages.Addons.ListBase.noDataError": { - "defaultMessage": "Error while retrieving data." - }, - "AdminPages.Addons.ListBase.nodata.message": { - "defaultMessage": "No items yet" - }, - "AdminPages.Addons.ListBase.reload": { - "defaultMessage": "Reload" - }, - "Api.category.dropdown.tooltip": { - "defaultMessage": "Allow to group APIs that have similar attributes. There has to be pre-defined API categories in the environment in order to be attached to an API." - }, - "Api.login.page.readonly.user": { - "defaultMessage": "Read only" - }, - "Apis.APIProductCreateWrapper.error.errorMessage.create.revision": { - "defaultMessage": "Something went wrong while creating the API Product Revision" - }, - "Apis.APIProductCreateWrapper.error.errorMessage.deploy.revision": { - "defaultMessage": "Something went wrong while deploying the API Product Revision" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.back": { - "defaultMessage": "Back" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.create": { - "defaultMessage": "Create" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.defineProvide": { - "defaultMessage": "Define API Product" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.error.policies.not.available": { - "defaultMessage": "Throttling policies not available. Contact your administrator" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.heading": { - "defaultMessage": "Create an API Product" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.next": { - "defaultMessage": "Next" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.otherStatus": { - "defaultMessage": "API Product status updated successfully" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.publishStatus": { - "defaultMessage": "Lifecycle state change request has been sent" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.resources": { - "defaultMessage": "Add Resources" - }, - "Apis.Create.APIProduct.APIProductCreateWrapper.sub.heading": { - "defaultMessage": "Create an API Product by providing a Name, a Context, a Version, Resources, and Business Plans (optional)." - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.advertiseOnly.warning": { - "defaultMessage": "API Manager only supports the streaming APIs of types WebSocket, SSE and WebSub. Please create one of the supported types if you want to deploy it in the gateway." - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.advertiseOnly.warning.title": { - "defaultMessage": "\"Other\" type streaming APIs will be created as third party APIs." - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.externalEndpoint": { - "defaultMessage": "External Endpoint" - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.externalEndpoint.error": { - "defaultMessage": "Invalid Endpoint URL" - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.heading": { - "defaultMessage": "Create an API using an AsyncAPI definition." - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.sub.heading": { - "defaultMessage": "Create an API using an existing AsyncAPI definition file or URL." - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.wizard.one": { - "defaultMessage": "Provide AsyncAPI" - }, - "Apis.Create.AsyncAPI.ApiCreateAsyncAPI.wizard.two": { - "defaultMessage": "Create API" - }, - "Apis.Create.AsyncAPI.Steps.ProvideAsyncAPI.Input.file.dropzone": { - "defaultMessage": "Drag & Drop AsyncAPI File here {break} or {break} Browse files" - }, - "Apis.Create.AsyncAPI.Steps.ProvideAsyncAPI.Input.file.upload": { - "defaultMessage": "Browse File to Upload" - }, - "Apis.Create.AsyncAPI.Steps.ProvideAsyncAPI.Input.type": { - "defaultMessage": "Input Type" - }, - "Apis.Create.Components.DefaultAPIForm.api.channel": { - "defaultMessage": "Channel" - }, - "Apis.Create.Components.DefaultAPIForm.api.context": { - "defaultMessage": "Context" - }, - "Apis.Create.Components.DefaultAPIForm.api.product.context": { - "defaultMessage": "Context" - }, - "Apis.Create.Components.DefaultAPIForm.api.product.version": { - "defaultMessage": "Version" - }, - "Apis.Create.Components.DefaultAPIForm.name": { - "defaultMessage": "Name" - }, - "Apis.Create.Components.DefaultAPIForm.version": { - "defaultMessage": "Version" - }, - "Apis.Create.Components.NewTopic.topic.name": { - "defaultMessage": "Topic Name" - }, - "Apis.Create.Components.SelectPolicies.business.plans": { - "defaultMessage": "Business plan(s)" - }, - "Apis.Create.Default.APICreateDefault.api.heading": { - "defaultMessage": "Create an API" - }, - "Apis.Create.Default.APICreateDefault.api.sub.heading": { - "defaultMessage": "Create an API by providing a Name, a Version, a Context and Backend Endpoint (optional)" - }, - "Apis.Create.Default.APICreateDefault.apiProduct.heading": { - "defaultMessage": "Create an API Product" - }, - "Apis.Create.Default.APICreateDefault.apiProduct.sub.heading": { - "defaultMessage": "Create an API Product by providing a Name, a Context, and Business Plans (optional)." - }, - "Apis.Create.Default.APICreateDefault.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Create.Default.APICreateDefault.error.errorMessage.create.revision": { - "defaultMessage": "Something went wrong while creating the API Revision" - }, - "Apis.Create.Default.APICreateDefault.error.errorMessage.deploy.revision": { - "defaultMessage": "Something went wrong while deploying the API Revision" - }, - "Apis.Create.Default.APICreateDefault.error.errorMessage.publish": { - "defaultMessage": "Something went wrong while publishing the API" - }, - "Apis.Create.Default.APICreateDefault.error.otherStatus": { - "defaultMessage": "Error while publishing the API" - }, - "Apis.Create.Default.APICreateDefault.error.policies.not.available": { - "defaultMessage": "Throttling policies not available. Contact your administrator" - }, - "Apis.Create.Default.APICreateDefault.error.url.not.valid": { - "defaultMessage": "URL is not valid" - }, - "Apis.Create.Default.APICreateDefault.success.otherStatus": { - "defaultMessage": "API updated successfully" - }, - "Apis.Create.Default.APICreateDefault.success.publishStatus": { - "defaultMessage": "Lifecycle state change request has been sent" - }, - "Apis.Create.Default.APICreateDefault.webSocket.heading": { - "defaultMessage": "Create a WebSocket API" - }, - "Apis.Create.Default.APICreateDefault.webSocket.sub.heading": { - "defaultMessage": "Create a WebSocket API by providing a Name, and a Context." - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.back": { - "defaultMessage": "Back" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.create": { - "defaultMessage": "Create" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.error.policies.not.available": { - "defaultMessage": "Throttling policies not available. Contact your administrator" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.heading": { - "defaultMessage": "Create an API using a GraphQL SDL definition" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.next": { - "defaultMessage": "Next" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.sub.heading": { - "defaultMessage": "Create an API by importing an existing GraphQL SDL definition." - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.wizard.one": { - "defaultMessage": "Provide GraphQL" - }, - "Apis.Create.GraphQL.ApiCreateGraphQL.wizard.two": { - "defaultMessage": "Create API" - }, - "Apis.Create.GraphQL.Steps.ProvideGraphQL.Input.file.dropzone": { - "defaultMessage": "Drag & Drop files here {break} or {break} Browse files{break}({accept})" - }, - "Apis.Create.GraphQL.Steps.ProvideGraphQL.Input.file.upload": { - "defaultMessage": "Browse File to Upload" - }, - "Apis.Create.GraphQL.Steps.ProvideGraphQL.Input.type": { - "defaultMessage": "Provide GraphQL File" - }, - "Apis.Create.OpenAPI.ApiCreateOpenAPI.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Create.OpenAPI.ApiCreateOpenAPI.heading": { - "defaultMessage": "Create an API using an OpenAPI definition." - }, - "Apis.Create.OpenAPI.ApiCreateOpenAPI.sub.heading": { - "defaultMessage": "Create an API using an existing OpenAPI definition file or URL." - }, - "Apis.Create.OpenAPI.ApiCreateOpenAPI.wizard.one": { - "defaultMessage": "Provide OpenAPI" - }, - "Apis.Create.OpenAPI.ApiCreateOpenAPI.wizard.two": { - "defaultMessage": "Create API" - }, - "Apis.Create.OpenAPI.Steps.ProvideOpenAPI.Input.file.dropzone": { - "defaultMessage": "Drag & Drop Open API File/Archive here {break} or {break} Browse files" - }, - "Apis.Create.OpenAPI.Steps.ProvideOpenAPI.Input.file.upload": { - "defaultMessage": "Browse File to Upload" - }, - "Apis.Create.OpenAPI.Steps.ProvideOpenAPI.Input.type": { - "defaultMessage": "Input Type" - }, - "Apis.Create.OpenAPI.Steps.ValidationResults.linter.results": { - "defaultMessage": "Linter Results" - }, - "Apis.Create.OpenAPI.Steps.ValidationResults.linting": { - "defaultMessage": "Generating Linter Results" - }, - "Apis.Create.OpenAPI.Steps.ValidationResults.validating": { - "defaultMessage": "Validating API definition" - }, - "Apis.Create.OpenAPI.Steps.ValidationResults.validation.errros": { - "defaultMessage": "Validation Errors" - }, - "Apis.Create.StreamingAPI.APICreateStreamingAPI.api.heading": { - "defaultMessage": "Create a Streaming API" - }, - "Apis.Create.StreamingAPI.APICreateStreamingAPI.api.sub.heading": { - "defaultMessage": "Create an API by providing a Name, a Version, a Context and the Endpoint" - }, - "Apis.Create.StreamingAPI.APICreateStreamingAPI.websub.api.sub.heading": { - "defaultMessage": "Create an API by providing a Name, a Version and a Context" - }, - "Apis.Create.WSDL.ApiCreateWSDL.deprecated.msg": { - "defaultMessage": "APIM supports only a limited set of capabilities with this feature. If you want to process complex WSDL/XML schema, please refer to the following documentation." - }, - "Apis.Create.WSDL.ApiCreateWSDL.error.policies.not.available": { - "defaultMessage": "Throttling policies not available. Contact your administrator" - }, - "Apis.Create.WSDL.ApiCreateWSDL.heading": { - "defaultMessage": "Expose a SOAP Service as a REST API" - }, - "Apis.Create.WSDL.ApiCreateWSDL.sub.heading": { - "defaultMessage": "Expose an existing SOAP service as a REST API by importing the WSDL of the SOAP service." - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.Input.file.archive.dropzone": { - "defaultMessage": "Drag & Drop WSDL file/archive {break} -or-" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.Input.file.dropzone": { - "defaultMessage": "Drag & Drop WSDL file {break} -or-" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.Input.file.upload": { - "defaultMessage": "Browse File to Upload" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.Input.type": { - "defaultMessage": "Input Type" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.SOAPtoREST.label": { - "defaultMessage": "Generate REST APIs" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.file.label.wsdl.file.archive": { - "defaultMessage": "WSDL File/Archive" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.implementation.type": { - "defaultMessage": "Implementation Type" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.passthrough.label": { - "defaultMessage": "Pass Through" - }, - "Apis.Create.WSDL.Steps.ProvideWSDL.url.label": { - "defaultMessage": "WSDL URL" - }, - "Apis.Create.asyncAPI.Components.SelectPolicies.business.plans": { - "defaultMessage": "Protocol" - }, - "Apis.Create.streaming.Components.SelectPolicies.business.plans": { - "defaultMessage": "Protocol" - }, - "Apis.Details.\n Environments.Environments.\n pending.chip": { - "defaultMessage": "Pending" - }, - "Apis.Details.\n Environments.deploy.vhost": { - "defaultMessage": "VHost" - }, - "Apis.Details.APIDefinition.APIDefinition.api.definition": { - "defaultMessage": "API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.api.definition.oas.updated.successfully": { - "defaultMessage": "API Definition Updated Successfully" - }, - "Apis.Details.APIDefinition.APIDefinition.api.definition.save.confirmation": { - "defaultMessage": "Are you sure you want to save the API Definition? This might affect the existing resources." - }, - "Apis.Details.APIDefinition.APIDefinition.api.definition.updated.successfully": { - "defaultMessage": "API Definition updated successfully" - }, - "Apis.Details.APIDefinition.APIDefinition.async.api.definition.updated.successfully": { - "defaultMessage": "API Definition updated successfully" - }, - "Apis.Details.APIDefinition.APIDefinition.async.api.import.definition.updated.successfully": { - "defaultMessage": "API Definition Updated Successfully" - }, - "Apis.Details.APIDefinition.APIDefinition.asyncAPI.definition": { - "defaultMessage": "AsyncAPI Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.audit.api": { - "defaultMessage": "Audit API" - }, - "Apis.Details.APIDefinition.APIDefinition.btn.close": { - "defaultMessage": "Close" - }, - "Apis.Details.APIDefinition.APIDefinition.btn.no": { - "defaultMessage": "CANCEL" - }, - "Apis.Details.APIDefinition.APIDefinition.convert.to": { - "defaultMessage": "Convert to" - }, - "Apis.Details.APIDefinition.APIDefinition.documents.swagger.editor.import.content": { - "defaultMessage": "Import Content" - }, - "Apis.Details.APIDefinition.APIDefinition.documents.swagger.editor.update.content": { - "defaultMessage": "Update Content" - }, - "Apis.Details.APIDefinition.APIDefinition.download.definition": { - "defaultMessage": "Download Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.edit": { - "defaultMessage": "Edit" - }, - "Apis.Details.APIDefinition.APIDefinition.editor.drawer.toggle.linter": { - "defaultMessage": "Linter" - }, - "Apis.Details.APIDefinition.APIDefinition.editor.drawer.toggle.swagger": { - "defaultMessage": "Swagger" - }, - "Apis.Details.APIDefinition.APIDefinition.error.updating.graphQL.schema": { - "defaultMessage": "Error while updating GraphQL schema" - }, - "Apis.Details.APIDefinition.APIDefinition.error.while.updating.api.definition": { - "defaultMessage": "Error occurred while updating the API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.error.while.updating.async.api.definition": { - "defaultMessage": "Error occurred while updating the API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.error.while.updating.import.api.definition": { - "defaultMessage": "Error while updating the API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.error.while.updating.import.async.api.definition": { - "defaultMessage": "Error while updating the API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.graphQLDefinition.updated.successfully": { - "defaultMessage": "Schema Definition Updated Successfully" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition": { - "defaultMessage": "Import Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.asyncApi": { - "defaultMessage": "Import AsyncAPI Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.edit": { - "defaultMessage": "Edit and Import" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.graphql": { - "defaultMessage": "Import GraphQL Schema Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.import": { - "defaultMessage": "Import" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.oas": { - "defaultMessage": "Import OpenAPI Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.import.definition.wsdl": { - "defaultMessage": "Import WSDL" - }, - "Apis.Details.APIDefinition.APIDefinition.import.wsdl": { - "defaultMessage": "Import WSDL" - }, - "Apis.Details.APIDefinition.APIDefinition.save.api.definition": { - "defaultMessage": "Save API Definition" - }, - "Apis.Details.APIDefinition.APIDefinition.schema.definition": { - "defaultMessage": "Schema Definition" - }, - "Apis.Details.APIDefinition.Addservice.service.retrieve.error": { - "defaultMessage": "Something went wrong while retrieving the services" - }, - "Apis.Details.APIDefinition.AuditApi\n .OverallScoreProgress": { - "defaultMessage": "{overallScore}" - }, - "Apis.Details.APIDefinition.AuditApi.ApiSecurityAuditReport": { - "defaultMessage": "API Security Audit Report" - }, - "Apis.Details.APIDefinition.AuditApi.AuditScoreSummary": { - "defaultMessage": "Audit Score and Summary" - }, - "Apis.Details.APIDefinition.AuditApi.DataValidation": { - "defaultMessage": "Data Validation" - }, - "Apis.Details.APIDefinition.AuditApi.DataValidationNumOfIssues": { - "defaultMessage": "{dataNumOfIssuesText} {dataNumOfIssues}" - }, - "Apis.Details.APIDefinition.AuditApi.DataValidationScore": { - "defaultMessage": "{dataScoreText} {dataScore} / 70" - }, - "Apis.Details.APIDefinition.AuditApi.DataValidationSummary": { - "defaultMessage": "{dataValidationSummary}" - }, - "Apis.Details.APIDefinition.AuditApi.FailedToValidate.Content": { - "defaultMessage": "Fix the critical errors shown below and run the audit again." - }, - "Apis.Details.APIDefinition.AuditApi.FailedToValidate.Heading": { - "defaultMessage": "Failed to Validate OpenAPI File" - }, - "Apis.Details.APIDefinition.AuditApi.GetReportError": { - "defaultMessage": "Something went wrong while retrieving the API Security Report" - }, - "Apis.Details.APIDefinition.AuditApi.LinkToDetailedReport": { - "defaultMessage": "{linkToDetailedReportText} {link} {afterLinkText}" - }, - "Apis.Details.APIDefinition.AuditApi.OASNoIssuesFound": { - "defaultMessage": "No Issues Found" - }, - "Apis.Details.APIDefinition.AuditApi.OpenApiFormatRequirements": { - "defaultMessage": "OpenAPI Format Requirements" - }, - "Apis.Details.APIDefinition.AuditApi.OverallCriticality": { - "defaultMessage": "{overallCriticalityText} {overallCriticality}" - }, - "Apis.Details.APIDefinition.AuditApi.ReferenceSection": { - "defaultMessage": "Visit this {link} to view a detailed description, possible exploits and remediation for this issue.", - "description": "Link to visit for detail on how to remedy issue" - }, - "Apis.Details.APIDefinition.AuditApi.ScoreFooter": { - "defaultMessage": "out of 100" - }, - "Apis.Details.APIDefinition.AuditApi.Security": { - "defaultMessage": "Security" - }, - "Apis.Details.APIDefinition.AuditApi.SecurityNumOfIssues": { - "defaultMessage": "{securityNumOfIssuesText} {securityNumOfIssues}" - }, - "Apis.Details.APIDefinition.AuditApi.SecurityScore": { - "defaultMessage": "{securityScoreText} {securityScore} / 30" - }, - "Apis.Details.APIDefinition.AuditApi.SecuritySummary": { - "defaultMessage": "{securitySummary}" - }, - "Apis.Details.APIDefinition.AuditApi.TotalNumOfErrors": { - "defaultMessage": "{totalNumOfErrorsText} {totalNumOfErrors}" - }, - "Apis.Details.APIDefinition.AuditApi.WaitForReport": { - "defaultMessage": "Please wait..." - }, - "Apis.Details.APIDefinition.AuditApi.WaitForReport.Content": { - "defaultMessage": "Auditing an API for the first time will take some time" - }, - "Apis.Details.APIDefinition.AuditApi.dataCriticality": { - "defaultMessage": "{dataCriticalityText} {dataCriticality}" - }, - "Apis.Details.APIDefinition.AuditApi.overallScore": { - "defaultMessage": "{overallScoreText} {overallScore} / 100" - }, - "Apis.Details.APIDefinition.AuditApi.securityCriticality": { - "defaultMessage": "{securityCriticalityText} {securityCriticality}" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.critical": { - "defaultMessage": "5. CRITICAL" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.high": { - "defaultMessage": "4. HIGH" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.info": { - "defaultMessage": "1. INFO" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.low": { - "defaultMessage": "2. LOW" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.medium": { - "defaultMessage": "3. MEDIUM" - }, - "Apis.Details.APIDefinition.AuditApi.tooltip.severity": { - "defaultMessage": "Severity ranges from:" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.api.outdated.definition": { - "defaultMessage": "Current API definition is outdated. You can either re-import the new definition or create a new version of this API." - }, - "Apis.Details.APIDefinition.DefinitionOutdated.btn.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.btn.hide.diff": { - "defaultMessage": "Hide Diff" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.btn.reimport": { - "defaultMessage": "Re-import" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.btn.show.diff": { - "defaultMessage": "Show Diff" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.import.error": { - "defaultMessage": "Error while re-importing API definition" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.import.success": { - "defaultMessage": "Re-imported API definition successfully!" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.new.api.definition.error": { - "defaultMessage": "Something went wrong while retrieving new API definition." - }, - "Apis.Details.APIDefinition.DefinitionOutdated.outdated.definition": { - "defaultMessage": "Outdated Definition" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.outdated.definition.heading": { - "defaultMessage": "Outdated Definition" - }, - "Apis.Details.APIDefinition.DefinitionOutdated.service.retrieve.error": { - "defaultMessage": "Something went wrong while rendering diff for API Definition" - }, - "Apis.Details.APIDefinition.ImportDefinition.WSDL.updated.successfully": { - "defaultMessage": "WSDL Updated Successfully" - }, - "Apis.Details.APIDefinition.ImportDefinition.error.updating.WSDL": { - "defaultMessage": "Error while updating WSDL" - }, - "Apis.Details.APIDefinition.Linting.APILinting.loading": { - "defaultMessage": "Linting . . ." - }, - "Apis.Details.APIDefinition.Linting.APILintingSummary.loading": { - "defaultMessage": "Linting . . ." - }, - "Apis.Details.APIDefinition.Linting.Linting.custom.ruleset.validation.failed": { - "defaultMessage": "OpenAPI linter custom ruleset validation failed" - }, - "Apis.Details.APIDefinition.Linting.Linting.default.ruleset.validation.failed": { - "defaultMessage": "OpenAPI linter default ruleset validation failed" - }, - "Apis.Details.APIDefinition.Linting.Linting.error.retrieving.custom.rules": { - "defaultMessage": "Error retrieving custom linter rules" - }, - "Apis.Details.APIDefinition.SwaggerEditorDrawer.linter.goodupdate.content": { - "defaultMessage": "No linting issues found in the definition" - }, - "Apis.Details.APIDefinition.SwaggerEditorDrawer.linter.no.resultsupdate.content": { - "defaultMessage": "No Linter Results{type} found" - }, - "Apis.Details.APIDefinition.SwaggerEditorDrawer.title": { - "defaultMessage": "Failed to Validate OpenAPI File" - }, - "Apis.Details.APIDefinition.WSDL.download.definition": { - "defaultMessage": "Download WSDL" - }, - "Apis.Details.APIDefinition.WSDL.download.error": { - "defaultMessage": "Error downloading WSDL ZIP file" - }, - "Apis.Details.APIDefinition.WSDL.error.loading.wsdl": { - "defaultMessage": "Error loading WSDL" - }, - "Apis.Details.APIDefinition.WSDL.error.loading.wsdl.info": { - "defaultMessage": "Error loading WSDL" - }, - "Apis.Details.APIDefinition.WSDL.preview.not.available": { - "defaultMessage": "The API has a WSDL ZIP hence the preview is not available." - }, - "Apis.Details.APIDefinition.WSDL.update.not.allowed": { - "defaultMessage": "Unauthorized: Insufficient permissions to update WSDL Definition" - }, - "Apis.Details.APIDefinition.WSDL.wsdl.definition": { - "defaultMessage": "WSDL Definition" - }, - "Apis.Details.APIDefinition.import.asyncAPI": { - "defaultMessage": "Import AsyncAPI" - }, - "Apis.Details.APIDefinition.info.updating.auditapi": { - "defaultMessage": "To reflect the changes made, you need to click Audit API" - }, - "Apis.Details.APIDetailsTopMenu.download.api": { - "defaultMessage": "Download API" - }, - "Apis.Details.APILevelRateLimitingPolicies.components.Configuration.tooltip": { - "defaultMessage": "Selected Rate Limiting Policy will be applied to all the requests of this API." - }, - "Apis.Details.APIProduct.NewVersion.NewVersion.error": { - "defaultMessage": "Something went wrong while creating a new version!. Error:" - }, - "Apis.Details.APIProduct.NewVersion.NewVersion.success": { - "defaultMessage": "Successfully created new version" - }, - "Apis.Details.AccessControl.roles.help": { - "defaultMessage": "Enter valid role and press enter" - }, - "Apis.Details.ApiConsole.ApiConsole.title": { - "defaultMessage": "Try Out" - }, - "Apis.Details.ApiConsole.adv.auth.header": { - "defaultMessage": "Authorization Header" - }, - "Apis.Details.ApiConsole.adv.auth.header.value": { - "defaultMessage": "Authorization Header Value" - }, - "Apis.Details.ApiConsole.authentication.heading": { - "defaultMessage": "Authentication" - }, - "Apis.Details.ApiConsole.deployments.api.gateways": { - "defaultMessage": "API Gateways" - }, - "Apis.Details.ApiConsole.deployments.isAPIRetired": { - "defaultMessage": "Can not Try Out retired APIs!" - }, - "Apis.Details.ApiConsole.deployments.no": { - "defaultMessage": "{artifactType} is not deployed yet! Please deploy the {artifactType} before trying out" - }, - "Apis.Details.ApiConsole.endpoint": { - "defaultMessage": "Endpoint type" - }, - "Apis.Details.ApiConsole.endpoint.help": { - "defaultMessage": "Please select an endpoint type" - }, - "Apis.Details.ApiConsole.enpoint.heading": { - "defaultMessage": "API Endpoint" - }, - "Apis.Details.ApiConsole.environment": { - "defaultMessage": "Environment" - }, - "Apis.Details.ApiConsole.generate.test.key": { - "defaultMessage": "Generate Key" - }, - "Apis.Details.BusinessInformation.BusinessInformation.APIProduct.sub.heading": { - "defaultMessage": "Business Information of the API Product" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.info": { - "defaultMessage": "Business Information" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.owner.email": { - "defaultMessage": "Business Owner Email" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.owner.email.helper.text": { - "defaultMessage": "Provide the email of the business owner" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.owner.email.helper.text.error": { - "defaultMessage": "Please enter a valid email address" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.owner.name": { - "defaultMessage": "Business Owner" - }, - "Apis.Details.BusinessInformation.BusinessInformation.business.owner.name.helper.text": { - "defaultMessage": "Provide the name of the business owner" - }, - "Apis.Details.BusinessInformation.BusinessInformation.sub.heading": { - "defaultMessage": "Business Information of the API" - }, - "Apis.Details.BusinessInformation.BusinessInformation.technical.owner.email": { - "defaultMessage": "Technical Owner Email" - }, - "Apis.Details.BusinessInformation.BusinessInformation.technical.owner.email.helper.text": { - "defaultMessage": "Provide the email of the technical owner" - }, - "Apis.Details.BusinessInformation.BusinessInformation.technical.owner.email.helper.text.error": { - "defaultMessage": "Please enter a valid email address" - }, - "Apis.Details.BusinessInformation.BusinessInformation.technical.owner.name": { - "defaultMessage": "Technical Owner" - }, - "Apis.Details.BusinessInformation.BusinessInformation.technical.owner.name.helper.text": { - "defaultMessage": "Provide the name of the technical owner" - }, - "Apis.Details.Comments.Comment.load.more.replies": { - "defaultMessage": "Show More Replies" - }, - "Apis.Details.Comments.Comment.something.went.wrong": { - "defaultMessage": "Something went wrong while deleting comment" - }, - "Apis.Details.Comments.CommentAdd.btn.add.comment": { - "defaultMessage": "Comment" - }, - "Apis.Details.Comments.CommentAdd.btn.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Comments.CommentAdd.write.comment.help": { - "defaultMessage": "Write a comment" - }, - "Apis.Details.Comments.CommentAdd.write.comment.label": { - "defaultMessage": "Write a comment" - }, - "Apis.Details.Comments.CommentOptions.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Comments.CommentOptions.reply": { - "defaultMessage": "Reply" - }, - "Apis.Details.Comments.load.previous.comments": { - "defaultMessage": "Show More" - }, - "Apis.Details.Comments.no.comments": { - "defaultMessage": "No Comments Yet" - }, - "Apis.Details.Comments.no.comments.content": { - "defaultMessage": "No comments available for this API yet" - }, - "Apis.Details.Comments.title": { - "defaultMessage": "Comments" - }, - "Apis.Details.Configurartion.components.QueryAnalysis": { - "defaultMessage": "Query Analysis" - }, - "Apis.Details.Configurartion.components.QueryAnalysis.cancle.btn": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Configurartion.components.QueryAnalysis.edit": { - "defaultMessage": "Edit Complexity Values" - }, - "Apis.Details.Configuration.ApiKeyHeader.helper.text": { - "defaultMessage": "ApiKey header name cannot contain spaces or special characters" - }, - "Apis.Details.Configuration.AuthHeader.helper.text": { - "defaultMessage": "Authorization header name cannot contain spaces or special characters" - }, - "Apis.Details.Configuration.Components.APISecurity.Components.\n ApplicationLevel.Client.Websocket": { - "defaultMessage": "Client Websocket" - }, - "Apis.Details.Configuration.Components.APISecurity.Components.\n ApplicationLevel.Websocket": { - "defaultMessage": "Application Level Security" - }, - "Apis.Details.Configuration.Components.APISecurity.Components.\n ApplicationLevel.http": { - "defaultMessage": "Application Level Security" - }, - "Apis.Details.Configuration.Components.APISecurity.Components.\n TransportLevel.transport.level.security": { - "defaultMessage": "Transport Level Security" - }, - "Apis.Details.Configuration.Components.MaxBackendTps.maximum.backend.throughput": { - "defaultMessage": "Backend Throughput" - }, - "Apis.Details.Configuration.Configuration.ApiKeyHeader.tooltip": { - "defaultMessage": "The header name that is used to send the api key information. \"ApiKey\" is the default header." - }, - "Apis.Details.Configuration.Configuration.AuthHeader.tooltip": { - "defaultMessage": "The header name that is used to send the authorization information. \"Authorization\" is the default header." - }, - "Apis.Details.Configuration.Configuration.Design.APIProduct.sub.heading": { - "defaultMessage": "Configure basic API Product meta information" - }, - "Apis.Details.Configuration.Configuration.Design.sub.heading": { - "defaultMessage": "Configure basic API meta information" - }, - "Apis.Details.Configuration.Configuration.Design.topic.header": { - "defaultMessage": "Design Configurations" - }, - "Apis.Details.Configuration.Configuration.Endpoints.edit.api.endpoints": { - "defaultMessage": "Edit API Endpoints" - }, - "Apis.Details.Configuration.Configuration.apiKey.header.label": { - "defaultMessage": "ApiKey Header" - }, - "Apis.Details.Configuration.Configuration.auth.header.label": { - "defaultMessage": "Authorization Header" - }, - "Apis.Details.Configuration.Configuration.cache.timeout": { - "defaultMessage": "Cache Timeout (seconds)" - }, - "Apis.Details.Configuration.Configuration.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Configuration.Configuration.defaultversion.tooltip": { - "defaultMessage": "Indicates if this is the default version of the API. If an API is invoked without specifying a version, the API Gateway will route the request to the default version of the API." - }, - "Apis.Details.Configuration.Configuration.isdefault.label": { - "defaultMessage": "Make this the default version" - }, - "Apis.Details.Configuration.Configuration.isdefault.no": { - "defaultMessage": "No" - }, - "Apis.Details.Configuration.Configuration.isdefault.yes": { - "defaultMessage": "Yes" - }, - "Apis.Details.Configuration.Configuration.publisher": { - "defaultMessage": "Publish" - }, - "Apis.Details.Configuration.Configuration.requirements": { - "defaultMessage": "Requirements" - }, - "Apis.Details.Configuration.Configuration.requirements.state.transition": { - "defaultMessage": "Requirements for next state transition" - }, - "Apis.Details.Configuration.Configuration.response.caching": { - "defaultMessage": "Response Caching" - }, - "Apis.Details.Configuration.Configuration.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Configuration.Configuration.schema.validation": { - "defaultMessage": "Schema Validation" - }, - "Apis.Details.Configuration.Configuration.section.backend": { - "defaultMessage": "Backend" - }, - "Apis.Details.Configuration.Configuration.section.events": { - "defaultMessage": "Events" - }, - "Apis.Details.Configuration.Configuration.section.initial.request": { - "defaultMessage": "Initial Request" - }, - "Apis.Details.Configuration.Configuration.section.request": { - "defaultMessage": "Request" - }, - "Apis.Details.Configuration.Configuration.section.response": { - "defaultMessage": "Response" - }, - "Apis.Details.Configuration.Configuration.transports": { - "defaultMessage": "Transports" - }, - "Apis.Details.Configuration.Resources.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Configuration.RuntimeConfiguration.backend.api.product.endpoint": { - "defaultMessage": "Please refer respective APIs for endpoint information" - }, - "Apis.Details.Configuration.RuntimeConfiguration.no.km.error": { - "defaultMessage": "Select one or more Key Managers" - }, - "Apis.Details.Configuration.RuntimeConfiguration.topic.header": { - "defaultMessage": "Runtime Configurations" - }, - "Apis.Details.Configuration.RuntimeConfigurationWebSocket.section.backend.websocket": { - "defaultMessage": "Backend Websocket" - }, - "Apis.Details.Configuration.RuntimeConfigurationWebSocket.topic.header": { - "defaultMessage": "Runtime Configurations" - }, - "Apis.Details.Configuration.RuntimeConfigurationWebsocket.RuntimeConfiguration.emptySchemes": { - "defaultMessage": "Please select at least one API security method." - }, - "Apis.Details.Configuration.UpdateWithoutDetails.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Configuration.UpdateWithoutDetails.confirm.update.message": { - "defaultMessage": "This API is currently published and by changing to a regular API, it will not be available for consumption since it has no active deployments." - }, - "Apis.Details.Configuration.UpdateWithoutDetails.continue": { - "defaultMessage": "Continue" - }, - "Apis.Details.Configuration.UpdateWithoutDetails.dialog.title": { - "defaultMessage": "Restore to a Regular API" - }, - "Apis.Details.Configuration.UpdateWithoutDetails.endpoint": { - "defaultMessage": "Endpoint" - }, - "Apis.Details.Configuration.UpdateWithoutDetails.endpoint.error": { - "defaultMessage": "Invalid Endpoint URL" - }, - "Apis.Details.Configuration.UpdateWithoutDetails.tier.message": { - "defaultMessage": "Business Plans:" - }, - "Apis.Details.Configuration.components.APILevelRateLimitingPolicies.configuration": { - "defaultMessage": "Rate Limiting Configuration" - }, - "Apis.Details.Configuration.components.APISecurity.TranportLevel.certificate.add.success": { - "defaultMessage": "Certificate added successfully" - }, - "Apis.Details.Configuration.components.APISecurity.TranportLevel.certificate.alias.error": { - "defaultMessage": "Something went wrong while adding the API certificate" - }, - "Apis.Details.Configuration.components.APISecurity.TranportLevel.certificate.delete.error": { - "defaultMessage": "Error while deleting certificate" - }, - "Apis.Details.Configuration.components.APISecurity.TranportLevel.certificate.delete.success": { - "defaultMessage": "Certificate Deleted Successfully" - }, - "Apis.Details.Configuration.components.APISecurity.api.unsecured": { - "defaultMessage": "Application level security is not required since API has no secured resources" - }, - "Apis.Details.Configuration.components.APISecurity.application.mandatory": { - "defaultMessage": "Choose whether Application level security is mandatory or optional" - }, - "Apis.Details.Configuration.components.APISecurity.emptySchemas": { - "defaultMessage": "Please select at least one API security method!" - }, - "Apis.Details.Configuration.components.APISecurity.http.mandatory": { - "defaultMessage": "Choose whether Transport level security is mandatory or optional" - }, - "Apis.Details.Configuration.components.APISecurity.tooltip": { - "defaultMessage": "This option determines the type of security that will be used to secure this API. An API can be secured with either OAuth2/Basic/ApiKey or it can be secured with all of them. If OAuth2 option is selected, relevant API will require a valid OAuth2 token for successful invocation." - }, - "Apis.Details.Configuration.components.AccessControl.dropdown.none": { - "defaultMessage": "All" - }, - "Apis.Details.Configuration.components.AccessControl.dropdown.restricted": { - "defaultMessage": "Restrict by role(s)" - }, - "Apis.Details.Configuration.components.AccessControl.form.helper.text": { - "defaultMessage": "There are no access restrictions by default" - }, - "Apis.Details.Configuration.components.AccessControl.head.topic": { - "defaultMessage": "Publisher Access Control" - }, - "Apis.Details.Configuration.components.AccessControl.roles": { - "defaultMessage": "Roles" - }, - "Apis.Details.Configuration.components.AccessControl.tooltip.all": { - "defaultMessage": "All :" - }, - "Apis.Details.Configuration.components.AccessControl.tooltip.all.desc": { - "defaultMessage": "The API is viewable, modifiable by all the publishers and creators." - }, - "Apis.Details.Configuration.components.AccessControl.tooltip.restrict": { - "defaultMessage": "Restricted by roles :" - }, - "Apis.Details.Configuration.components.AccessControl.tooltip.restrict.\n desc": { - "defaultMessage": "The API can be viewed and modified only by specific publishers and creators with the roles that you specify" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.advertised.label": { - "defaultMessage": "Mark the API as third party" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.advertised.no": { - "defaultMessage": "No" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.advertised.yes": { - "defaultMessage": "Yes" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.apiExternalEndpoint.error": { - "defaultMessage": "Invalid Endpoint URL" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.apiExternalProductionEndpoint": { - "defaultMessage": "API External Production Endpoint" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.apiExternalProductionEndpoint.help": { - "defaultMessage": "This is the external production endpoint of the advertised API" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.apiExternalSandboxEndpoint": { - "defaultMessage": "API External Sandbox Endpoint" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.apiExternalSandboxEndpoint.help": { - "defaultMessage": "This is the external sandbox endpoint of the advertised API" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.async.api.warning": { - "defaultMessage": "If you want to deploy and API in the gateway, please create a WebSocket, SSE or WebSub type of a streaming API." - }, - "Apis.Details.Configuration.components.AdvertiseInfo.async.api.warning.title": { - "defaultMessage": "The \"Other\" type streaming APIs will serve as third party APIs." - }, - "Apis.Details.Configuration.components.AdvertiseInfo.deployed.api.warning": { - "defaultMessage": "Please undeploy the revision before changing the API to a third party API." - }, - "Apis.Details.Configuration.components.AdvertiseInfo.deployed.api.warning.title": { - "defaultMessage": "There are active deployments in the API." - }, - "Apis.Details.Configuration.components.AdvertiseInfo.originalDevPortalUrl": { - "defaultMessage": "Original Developer URL" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.originalDevPortalUrl.error": { - "defaultMessage": "Invalid Original Developer Portal URL" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.originalDevPortalUrl.help": { - "defaultMessage": "This is the original developer portal of the advertised API" - }, - "Apis.Details.Configuration.components.AdvertiseInfo.tooltip": { - "defaultMessage": "Indicates if an API is a third party API. You can use third party APIs to expose an externally published API through API Manager." - }, - "Apis.Details.Configuration.components.CORSConfiguration.allow.\n headers": { - "defaultMessage": "Access Control Allow Headers" - }, - "Apis.Details.Configuration.components.CORSConfiguration.allow.\n methods": { - "defaultMessage": "Access Control Allow Methods" - }, - "Apis.Details.Configuration.components.CORSConfiguration.allow.\n origins": { - "defaultMessage": "Access Control Allow Origins" - }, - "Apis.Details.Configuration.components.CORSConfiguration.allow.credentials": { - "defaultMessage": "Access Control Allow Credentials" - }, - "Apis.Details.Configuration.components.CORSConfiguration.cors.configuration": { - "defaultMessage": "CORS Configuration" - }, - "Apis.Details.Configuration.components.CORSConfiguration.tooltip": { - "defaultMessage": "If enabled, the CORS configuration for the API will be enabled." - }, - "Apis.Details.Configuration.components.CORSConfigurations.header.helper": { - "defaultMessage": "Press `Enter` after typing the header name, to add a new header" - }, - "Apis.Details.Configuration.components.CORSConfigurations.method.helper": { - "defaultMessage": "Press `Enter` after typing the method name, to add a new method" - }, - "Apis.Details.Configuration.components.CORSConfigurations.origin.helper": { - "defaultMessage": "Press `Enter` after typing the origin name,to add a new origin" - }, - "Apis.Details.Configuration.components.DescriptionEditor.edit.content.button": { - "defaultMessage": "Edit description" - }, - "Apis.Details.Configuration.components.DescriptionEditor.edit.description.of": { - "defaultMessage": "Description :" - }, - "Apis.Details.Configuration.components.DescriptionEditor.markdown.help": { - "defaultMessage": "The Markdown option allows you to replace the content of the Overview page in devportal with the content given below." - }, - "Apis.Details.Configuration.components.DescriptionEditor.update.cont.button": { - "defaultMessage": "Update Content" - }, - "Apis.Details.Configuration.components.Endpoints.dynamic": { - "defaultMessage": "Dynamic" - }, - "Apis.Details.Configuration.components.Endpoints.endpoints": { - "defaultMessage": "Endpoints" - }, - "Apis.Details.Configuration.components.Endpoints.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.Configuration.components.Endpoints.production": { - "defaultMessage": "Production" - }, - "Apis.Details.Configuration.components.Endpoints.prototype": { - "defaultMessage": "Prototype" - }, - "Apis.Details.Configuration.components.Endpoints.sandbox": { - "defaultMessage": "Sandbox" - }, - "Apis.Details.Configuration.components.Endpoints.sandbox.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.Configuration.components.KeyManager.allow.all": { - "defaultMessage": "Allow all" - }, - "Apis.Details.Configuration.components.KeyManager.allow.selected": { - "defaultMessage": "Allow selected" - }, - "Apis.Details.Configuration.components.KeyManager.configuration": { - "defaultMessage": "Key Manager Configuration" - }, - "Apis.Details.Configuration.components.KeyManager.more.than.one.error": { - "defaultMessage": "Select at least one Key Manager" - }, - "Apis.Details.Configuration.components.KeyManager.more.than.one.info": { - "defaultMessage": "Select one or more Key Managers" - }, - "Apis.Details.Configuration.components.MaxBackendTps.formattedMessage": { - "defaultMessage": "Maximum backend transactions per second in integers" - }, - "Apis.Details.Configuration.components.MaxBackendTps.tooltip": { - "defaultMessage": "Limits the total number of calls the API Manager is allowed to make to the backend" - }, - "Apis.Details.Configuration.components.ResponseCaching.tooltip": { - "defaultMessage": "If enabled, the API response will be cached at the gateway level to improve the response time and minimize the backend load" - }, - "Apis.Details.Configuration.components.SchemaValidation.description": { - "defaultMessage": "Enabling JSON schema validation will cause to build the payload in every request and response. This will impact the round trip time of an API request!" - }, - "Apis.Details.Configuration.components.SchemaValidation.description.question": { - "defaultMessage": "Do you want to enable schema validation?" - }, - "Apis.Details.Configuration.components.SchemaValidation.title": { - "defaultMessage": "Caution!" - }, - "Apis.Details.Configuration.components.Social.giturl": { - "defaultMessage": "GitHub URL" - }, - "Apis.Details.Configuration.components.Social.giturl.help": { - "defaultMessage": "This GitHub URL will be available in the API overview page in developer portal" - }, - "Apis.Details.Configuration.components.Social.slack": { - "defaultMessage": "Slack URL" - }, - "Apis.Details.Configuration.components.Social.slack_url.help": { - "defaultMessage": "This Slack Channel URL will be available in the API overview page in developer portal" - }, - "Apis.Details.Configuration.components.StoreVisibility.dropdown.public": { - "defaultMessage": "Public" - }, - "Apis.Details.Configuration.components.Subscription.secret": { - "defaultMessage": "Secret" - }, - "Apis.Details.Configuration.components.Subscription.signature.header": { - "defaultMessage": "Signature Header" - }, - "Apis.Details.Configuration.components.Subscription.signingAlgorithm": { - "defaultMessage": "Signing Algortithm" - }, - "Apis.Details.Configuration.components.Tags.error": { - "defaultMessage": "The tag contains one or more illegal characters ( ~ ! @ # ; % ^ & * + = | < > , ' \" \\\\ / ) ." - }, - "Apis.Details.Configuration.components.Tags.helper": { - "defaultMessage": "Press `Enter` after typing the tag name to add a new tag" - }, - "Apis.Details.Configuration.components.Tags.limit.error": { - "defaultMessage": "The tag exceeds the maximum length of 30 characters" - }, - "Apis.Details.Configuration.components.Tags.title": { - "defaultMessage": "Tags" - }, - "Apis.Details.Configuration.components.Transports.tooltip": { - "defaultMessage": "API will be exposed in selected transport(s) in the gateway(s) If Mutual SSL option is selected, a trusted client certificate should be presented to access the API" - }, - "Apis.Details.Configuration.components.WebSubConfiguration.configuration": { - "defaultMessage": "WebSub Configuration" - }, - "Apis.Details.Configuration.components.WebSubConfiguration.configuration.subVerification": { - "defaultMessage": "Enable subscriber verification" - }, - "Apis.Details.Configuration.components.WebSubConfiguration.configuration.subVerification.tooltip": { - "defaultMessage": "If enabled, APIM will perform verification of intent for the subscription API" - }, - "Apis.Details.Configuration.components.oauth.disabled": { - "defaultMessage": "Key Manager configuration only valid when OAuth2 security is enabled." - }, - "Apis.Details.Configuration.components.schema.validation.tooltip": { - "defaultMessage": "Enable the request and response validation against the OpenAPI definition" - }, - "Apis.Details.Configuration.components.storeVisibility.dropdown.private": { - "defaultMessage": "Visible to my domain" - }, - "Apis.Details.Configuration.components.storeVisibility.dropdown.restrict": { - "defaultMessage": "Restrict by role(s)" - }, - "Apis.Details.Configuration.components.storeVisibility.form.helper.text": { - "defaultMessage": "By default API is visible to all developer portal users" - }, - "Apis.Details.Configuration.components.storeVisibility.head.topic": { - "defaultMessage": "Developer Portal Visibility" - }, - "Apis.Details.Configuration.components.storeVisibility.roles": { - "defaultMessage": "Roles" - }, - "Apis.Details.Configuration.components.storeVisibility.tooltip.public": { - "defaultMessage": "Public :" - }, - "Apis.Details.Configuration.components.storeVisibility.tooltip.public.desc": { - "defaultMessage": "The API is accessible to everyone and can be advertised in multiple developer portals - a central developer portal and/or non-WSO2 developer portals." - }, - "Apis.Details.Configuration.components.storeVisibility.tooltip.restrict": { - "defaultMessage": "Restricted by roles(s) :" - }, - "Apis.Details.Configuration.components.storeVisibility.tooltip.restrict.desc": { - "defaultMessage": "The API is visible only to specific user roles in the tenant developer portal that you specify." - }, - "Apis.Details.Configuration.components.transport.empty": { - "defaultMessage": "Please select at least one transport!" - }, - "Apis.Details.Configuration.components.transport.sslHttps": { - "defaultMessage": "Please select Https as transport with mutual SSL!" - }, - "Apis.Details.Configurations.api.categories": { - "defaultMessage": "API Categories" - }, - "Apis.Details.Configurations.api.categories.empty": { - "defaultMessage": "No API Categories defined." - }, - "Apis.Details.Documents.Create.heading": { - "defaultMessage": "Documents" - }, - "Apis.Details.Documents.Create.markdown.editor.add.document.button": { - "defaultMessage": "Add Document" - }, - "Apis.Details.Documents.Create.markdown.editor.add.document.cancel.button": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.Create.markdown.editor.add.error": { - "defaultMessage": "Error adding the document" - }, - "Apis.Details.Documents.Create.markdown.editor.success": { - "defaultMessage": "added successfully." - }, - "Apis.Details.Documents.Create.markdown.editor.upload.error": { - "defaultMessage": "Error uploading the file" - }, - "Apis.Details.Documents.Create.successful.file.upload.message": { - "defaultMessage": "File uploaded successfully." - }, - "Apis.Details.Documents.Create.title": { - "defaultMessage": "Add New Document" - }, - "Apis.Details.Documents.CreateEditForm.document.content.info": { - "defaultMessage": "Please save the document. The content can be edited in the next step." - }, - "Apis.Details.Documents.CreateEditForm.document.create.type": { - "defaultMessage": "Type" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.how.to": { - "defaultMessage": "How To" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.other": { - "defaultMessage": "Other" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.other.document.category": { - "defaultMessage": "Other Document Type *" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.other.document.category.helper.text": { - "defaultMessage": "Provide the document type" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.other.error.document.category.helper.text": { - "defaultMessage": "Document type cannot be empty" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.public.forum": { - "defaultMessage": "Public Forum" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.sample": { - "defaultMessage": "Sample and SDK" - }, - "Apis.Details.Documents.CreateEditForm.document.create.type.support.forum": { - "defaultMessage": "Support Forum" - }, - "Apis.Details.Documents.CreateEditForm.document.docVisibility": { - "defaultMessage": "Document Visibility" - }, - "Apis.Details.Documents.CreateEditForm.document.docVisibility.dropdown.ownerOnly": { - "defaultMessage": "Owner Only" - }, - "Apis.Details.Documents.CreateEditForm.document.docVisibility.dropdown.private": { - "defaultMessage": "Private" - }, - "Apis.Details.Documents.CreateEditForm.document.docVisibility.dropdown.public": { - "defaultMessage": "Same as API Visibility" - }, - "Apis.Details.Documents.CreateEditForm.document.name": { - "defaultMessage": "Name *" - }, - "Apis.Details.Documents.CreateEditForm.document.name.helper.text": { - "defaultMessage": "Provide the name for the document" - }, - "Apis.Details.Documents.CreateEditForm.document.summary": { - "defaultMessage": "Summary *" - }, - "Apis.Details.Documents.CreateEditForm.document.summary.error.empty": { - "defaultMessage": "Document summary can not be empty" - }, - "Apis.Details.Documents.CreateEditForm.document.summary.helper.text": { - "defaultMessage": "Provide a brief description for the document" - }, - "Apis.Details.Documents.CreateEditForm.duplicate.document.name.helper.text": { - "defaultMessage": "Duplicate document name" - }, - "Apis.Details.Documents.CreateEditForm.empty.document.name.helper.text": { - "defaultMessage": "Document name cannot be empty" - }, - "Apis.Details.Documents.CreateEditForm.exceeds.document.name.length.helper.text": { - "defaultMessage": "Document name exceeds the maximum length of 60 characters" - }, - "Apis.Details.Documents.CreateEditForm.invalid.document.name.helper.text": { - "defaultMessage": "Document name cannot contain special characters" - }, - "Apis.Details.Documents.CreateEditForm.source": { - "defaultMessage": "Source" - }, - "Apis.Details.Documents.CreateEditForm.source.file": { - "defaultMessage": "File" - }, - "Apis.Details.Documents.CreateEditForm.source.inline": { - "defaultMessage": "Inline" - }, - "Apis.Details.Documents.CreateEditForm.source.markdown": { - "defaultMessage": "Markdown" - }, - "Apis.Details.Documents.CreateEditForm.source.url": { - "defaultMessage": "URL" - }, - "Apis.Details.Documents.CreateEditForm.source.url.helper.text": { - "defaultMessage": "Provide the URL to the source" - }, - "Apis.Details.Documents.CreateEditForm.source.url.helper.text.error.empty": { - "defaultMessage": "URL Field cannot be empty" - }, - "Apis.Details.Documents.CreateEditForm.source.url.helper.text.error.invalid": { - "defaultMessage": "Enter a valid URL to the source" - }, - "Apis.Details.Documents.CreateEditForm.source.url.url": { - "defaultMessage": "URL" - }, - "Apis.Details.Documents.Delete.document.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Documents.Delete.document.delete.error": { - "defaultMessage": "Error while deleting documents!" - }, - "Apis.Details.Documents.Delete.document.delete.successfully": { - "defaultMessage": "deleted successfully." - }, - "Apis.Details.Documents.Delete.document.listing.delete": { - "defaultMessage": "Yes. Delete" - }, - "Apis.Details.Documents.Delete.document.listing.delete.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.Delete.document.listing.delete.confirm": { - "defaultMessage": "Confirm Delete" - }, - "Apis.Details.Documents.Delete.document.listing.delete.confirm.body": { - "defaultMessage": "Selected document will be deleted from the API.You will not be able to undo this action." - }, - "Apis.Details.Documents.Delete.document.listing.delete.confirm.title": { - "defaultMessage": "Delete Document" - }, - "Apis.Details.Documents.Delete.document.listing.delete.yes": { - "defaultMessage": "Delete" - }, - "Apis.Details.Documents.Delete.document.listing.label.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.Delete.document.listing.label.ok.confirm": { - "defaultMessage": "Are you sure you want to delete scope {scope} ?" - }, - "Apis.Details.Documents.Delete.document.listing.label.ok.yes": { - "defaultMessage": "Yes" - }, - "Apis.Details.Documents.Delete.selected.document.listing.delete.confirm.body": { - "defaultMessage": "Selected documents will be deleted from the API. You will not be able to undo this action." - }, - "Apis.Details.Documents.Delete.selected.document.listing.delete.confirm.title": { - "defaultMessage": "Delete Selected Documents" - }, - "Apis.Details.Documents.Download.documents.listing.download": { - "defaultMessage": "Download" - }, - "Apis.Details.Documents.Download.documents.markdown.editor.download.error": { - "defaultMessage": "Error downloading the file" - }, - "Apis.Details.Documents.Edit.documents.text.editor.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.Edit.documents.text.editor.edit": { - "defaultMessage": "Edit Meta Data" - }, - "Apis.Details.Documents.Edit.documents.text.editor.edit.content": { - "defaultMessage": "Edit" - }, - "Apis.Details.Documents.Edit.documents.text.editor.update.content": { - "defaultMessage": "Save" - }, - "Apis.Details.Documents.Edit.markdown.editor.update.error.message": { - "defaultMessage": "Error adding the document" - }, - "Apis.Details.Documents.Edit.markdown.editor.update.success.message": { - "defaultMessage": "Updated successfully." - }, - "Apis.Details.Documents.Edit.markdown.editor.upload.error.message": { - "defaultMessage": "Error uploading the file." - }, - "Apis.Details.Documents.Edit.markdown.editor.upload.success.message": { - "defaultMessage": "File uploaded successfully." - }, - "Apis.Details.Documents.GoToEdit.add.content": { - "defaultMessage": "Add Content" - }, - "Apis.Details.Documents.GoToEdit.back.to.listing": { - "defaultMessage": "Back to Listing" - }, - "Apis.Details.Documents.GoToEdit.description.content": { - "defaultMessage": "You can add content to the document or go back to the document listing page." - }, - "Apis.Details.Documents.GoToEdit.description.file": { - "defaultMessage": "You can go back to the document listing page and upload the file by editing the document." - }, - "Apis.Details.Documents.GoToEdit.title": { - "defaultMessage": "Document Created Successfully" - }, - "Apis.Details.Documents.Listing.APIProduct.add.new.msg.content": { - "defaultMessage": "You can add different types of documents to an API. Proper documentation helps API publishers to market their APIs better and sustain competition." - }, - "Apis.Details.Documents.Listing.add.new.document.button": { - "defaultMessage": "Add New Document" - }, - "Apis.Details.Documents.Listing.add.new.msg.button": { - "defaultMessage": "Add New Document" - }, - "Apis.Details.Documents.Listing.add.new.msg.content": { - "defaultMessage": "You can add different types of documents to an API. Proper documentation helps API publishers to market their APIs better and sustain competition." - }, - "Apis.Details.Documents.Listing.add.new.msg.title": { - "defaultMessage": "Create Documents" - }, - "Apis.Details.Documents.Listing.column.header.action": { - "defaultMessage": "Action" - }, - "Apis.Details.Documents.Listing.column.header.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Documents.Listing.column.header.source.type": { - "defaultMessage": "Source Type" - }, - "Apis.Details.Documents.Listing.column.header.type": { - "defaultMessage": "Type" - }, - "Apis.Details.Documents.Listing.documents.generated.title": { - "defaultMessage": "Generated Document" - }, - "Apis.Details.Documents.Listing.documents.listing.fetching.error.message": { - "defaultMessage": "Error in fetching documents list of the API" - }, - "Apis.Details.Documents.Listing.documents.listing.fetching.error.message.api.product": { - "defaultMessage": "Error in fetching documents list of the API Product" - }, - "Apis.Details.Documents.Listing.documents.listing.title": { - "defaultMessage": "Documents" - }, - "Apis.Details.Documents.Listing.documents.open": { - "defaultMessage": "Open" - }, - "Apis.Details.Documents.Listing.documents.uploaded.title": { - "defaultMessage": "Uploaded Documents" - }, - "Apis.Details.Documents.Listing.loading": { - "defaultMessage": "Loading..." - }, - "Apis.Details.Documents.MarkdownEditor.cancel.button": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.MarkdownEditor.edit.content": { - "defaultMessage": "Edit Content" - }, - "Apis.Details.Documents.MarkdownEditor.edit.content.of": { - "defaultMessage": "Edit Content of" - }, - "Apis.Details.Documents.MarkdownEditor.update.content.button": { - "defaultMessage": "Update Content" - }, - "Apis.Details.Documents.MarkdownEditor.update.success.message": { - "defaultMessage": "updated successfully." - }, - "Apis.Details.Documents.TextEditor.cancel.button": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Documents.TextEditor.edit.content": { - "defaultMessage": "Edit Content" - }, - "Apis.Details.Documents.TextEditor.edit.content.of": { - "defaultMessage": "Edit Content of" - }, - "Apis.Details.Documents.TextEditor.update.content.button": { - "defaultMessage": "Update Content" - }, - "Apis.Details.Documents.TextEditor.update.error.message": { - "defaultMessage": "update failed." - }, - "Apis.Details.Documents.TextEditor.update.success.message": { - "defaultMessage": "updated successfully." - }, - "Apis.Details.Documents.View.btn.download": { - "defaultMessage": "Download" - }, - "Apis.Details.Documents.View.error.downloading": { - "defaultMessage": "Error downloading the file" - }, - "Apis.Details.Documents.View.heading": { - "defaultMessage": "Documents" - }, - "Apis.Details.Documents.View.meta.catogery": { - "defaultMessage": "Categorized as" - }, - "Apis.Details.Documents.View.meta.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Documents.View.meta.source": { - "defaultMessage": "Source Type" - }, - "Apis.Details.Documents.View.meta.summary": { - "defaultMessage": "Summary" - }, - "Apis.Details.Documents.ViewDocument.view.document": { - "defaultMessage": "View Document" - }, - "Apis.Details.EditScopes.Roles.Invalid": { - "defaultMessage": "Role is invalid" - }, - "Apis.Details.Endpoints.\n GenericEndpoint.config.endpoint": { - "defaultMessage": "Endpoint configurations" - }, - "Apis.Details.Endpoints.\n GenericEndpoint.security.endpoint": { - "defaultMessage": "Endpoint security" - }, - "Apis.Details.Endpoints..EndpointOverview.change.type.proceed": { - "defaultMessage": "Proceed" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.action": { - "defaultMessage": "Action" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.cancel.button": { - "defaultMessage": "Close" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.config.save.button": { - "defaultMessage": "Save" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.connect.cancel": { - "defaultMessage": "Connect Cancel" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.connect.timeout": { - "defaultMessage": "Connect Timeout" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.connection.closed": { - "defaultMessage": "Connection Closed" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.connection.failed": { - "defaultMessage": "Connection Failed" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.connection.timed.out": { - "defaultMessage": "Connection Timed Out" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.discard.message": { - "defaultMessage": "Discard Message" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.duration.ms": { - "defaultMessage": "Duration (ms)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.endpoint.timeout.state": { - "defaultMessage": "Endpoint Timeout State" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.error.code": { - "defaultMessage": "Error Code" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.execute.fault.sequence": { - "defaultMessage": "Execute Fault Sequence" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.factor": { - "defaultMessage": "Factor" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.format.select": { - "defaultMessage": "Format" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.initial.duration.ms": { - "defaultMessage": "Initial Duration (ms)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.leave.as.is": { - "defaultMessage": "Leave As-Is" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.max.duration.ms": { - "defaultMessage": "Max Duration (ms)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.message.content": { - "defaultMessage": "Message Content" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.optimize.select": { - "defaultMessage": "Optimize" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.plain.old.xml": { - "defaultMessage": "Plain Old XML (POX)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.receiver.io.error.receiving": { - "defaultMessage": "Receiver IO error Receiving" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.receiver.io.error.sending": { - "defaultMessage": "Retriever IO Error Sending" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.representational.state.transfer": { - "defaultMessage": "Representational State Transfer (REST)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.response.processing.failure": { - "defaultMessage": "Response Processing Failure" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.retries.before.suspension": { - "defaultMessage": "Retries Before Suspension" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.retry.delay.ms": { - "defaultMessage": "Retry Delay (ms)" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.send.abort": { - "defaultMessage": "Send Abort" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.sender.io.error.receiving": { - "defaultMessage": "Sender IO Error Receiving" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.sender.io.error.sending": { - "defaultMessage": "Sender IO Error Sending" - }, - "Apis.Details.Endpoints.AdvancedConfig.AdvanceEndpointConfig.tpp.protocol.violation": { - "defaultMessage": "TTP Protocol Violation" - }, - "Apis.Details.Endpoints.EndpointOverview.advance.endpoint.configuration": { - "defaultMessage": "Advanced Configurations" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.accessKey": { - "defaultMessage": "Access Key" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.accessMethod": { - "defaultMessage": "Access Method" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.accessMethod.roleSupplied": { - "defaultMessage": "Using IAM role-supplied temporary AWS credentials" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.accessMethod.stored": { - "defaultMessage": "Using stored AWS credentials" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.enableSTSAssumeRole": { - "defaultMessage": "Enable STS AssumeRole" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.linkToResources": { - "defaultMessage": "Go to Resources to map ARNs" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.region": { - "defaultMessage": "Region" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.roleArn": { - "defaultMessage": "Role ARN" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.roleRegion": { - "defaultMessage": "Region" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.roleSessionName": { - "defaultMessage": "Role Session Name" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.secretKey": { - "defaultMessage": "Secret Key" - }, - "Apis.Details.Endpoints.EndpointOverview.awslambda.endpoint.tooltip": { - "defaultMessage": "You can and should use an IAM role to manage temporary credentials for applications that run on an AWS instance" - }, - "Apis.Details.Endpoints.EndpointOverview.change.type.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Endpoints.EndpointOverview.endpoint.security.configuration": { - "defaultMessage": "Endpoint Security Configurations" - }, - "Apis.Details.Endpoints.EndpointOverview.endpoint.type.change.confirmation": { - "defaultMessage": "Change Endpoint Type" - }, - "Apis.Details.Endpoints.EndpointOverview.endpoint.type.change.confirmation.message": { - "defaultMessage": "Your current endpoint configuration will be lost." - }, - "Apis.Details.Endpoints.EndpointOverview.general.config.header": { - "defaultMessage": "General Endpoint Configurations" - }, - "Apis.Details.Endpoints.EndpointOverview.lb.failover.endpoints.header": { - "defaultMessage": "Load balance and Failover Configurations" - }, - "Apis.Details.Endpoints.EndpointOverview.loadbalance.config.cancel.button": { - "defaultMessage": "Close" - }, - "Apis.Details.Endpoints.EndpointOverview.loadbalance.config.save.button": { - "defaultMessage": "Save" - }, - "Apis.Details.Endpoints.EndpointOverview.production.endpoint.production.header": { - "defaultMessage": "Production Endpoint" - }, - "Apis.Details.Endpoints.EndpointOverview.production.endpoint.production.label": { - "defaultMessage": "Production Endpoint" - }, - "Apis.Details.Endpoints.EndpointOverview.prototype.endpoint.prototype.header": { - "defaultMessage": "Prototype Endpoint" - }, - "Apis.Details.Endpoints.EndpointOverview.prototype.endpoint.prototype.label": { - "defaultMessage": "Prototype Endpoint" - }, - "Apis.Details.Endpoints.EndpointOverview.sandbox.endpoint": { - "defaultMessage": "Sandbox Endpoint" - }, - "Apis.Details.Endpoints.EndpointOverview.upload.mediation.message": { - "defaultMessage": "Please upload a mediation sequence file to Message Mediation Policies, which sets the endpoints." - }, - "Apis.Details.Endpoints.Endpoints.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Endpoints.Endpoints.endpoints.header": { - "defaultMessage": "Endpoints" - }, - "Apis.Details.Endpoints.Endpoints.missing.accessKey.secretKey.error": { - "defaultMessage": "Access Key, Secret Key and Region should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.endpoint.error": { - "defaultMessage": "Either one of Production or Sandbox Endpoints should be added." - }, - "Apis.Details.Endpoints.Endpoints.missing.prod.endpoint.loadbalance": { - "defaultMessage": "Default Production Endpoint should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.prototype.url": { - "defaultMessage": "Prototype Endpoint URL should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.sandbox.endpoint.loadbalance": { - "defaultMessage": "Default Sandbox Endpoint should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.security.oauth.client.error": { - "defaultMessage": "Endpoint Security Token URL/API Key/API Secret should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.security.oauth.password.error": { - "defaultMessage": "Endpoint Security Token URL/API Key/API Secret/Username/Password should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.security.username.error": { - "defaultMessage": "Endpoint Security User Name/ Password should not be empty" - }, - "Apis.Details.Endpoints.Endpoints.missing.stsAssumeRole.config": { - "defaultMessage": "Role ARN, Role Session Name and Region should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.add.success": { - "defaultMessage": "Certificate added successfully" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.alias.exist": { - "defaultMessage": "Adding Certificate Failed. Certificate Alias Exists." - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.delete.error": { - "defaultMessage": "Error Deleting Certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.delete.success": { - "defaultMessage": "Certificate Deleted Successfully" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.details.of": { - "defaultMessage": "Details of" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificate.error": { - "defaultMessage": "Something went wrong while adding the certificate." - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.certificates": { - "defaultMessage": "Certificates" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.confirm.certificate.delete": { - "defaultMessage": "Are you sure you want to delete" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.delete.cancel.button": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.delete.ok.button": { - "defaultMessage": "OK" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.deleteCertificate": { - "defaultMessage": "Delete with caution!" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.details.close.button": { - "defaultMessage": "Close" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.production.certificates": { - "defaultMessage": "Production" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.sandbox.certificates": { - "defaultMessage": "Sandbox" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.status": { - "defaultMessage": "Status" - }, - "Apis.Details.Endpoints.GeneralConfiguration.Certificates.subject": { - "defaultMessage": "Subject" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EditableParameterRow.Parameter.Name": { - "defaultMessage": "Parameter Name" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EditableParameterRow.Parameter.Value": { - "defaultMessage": "Parameter Value" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.add.new.parameter": { - "defaultMessage": "Add New Parameter" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.add.new.parameter.info": { - "defaultMessage": "You can add any additional payload parameters required for the endpoint below" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.basic": { - "defaultMessage": "Basic Auth" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.clientId.input": { - "defaultMessage": "Client ID" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.clientId.message": { - "defaultMessage": "Enter Client ID" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.clientSecret.input": { - "defaultMessage": "Client Secret" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.clientSecret.message": { - "defaultMessage": "Enter Client Secret" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.digest.auth": { - "defaultMessage": "Digest Auth" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.grant.type.input": { - "defaultMessage": "Grant Type" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.input.parameter.name": { - "defaultMessage": "Parameter Name" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.input.parameter.value": { - "defaultMessage": "Parameter Value" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.label.parameter.name": { - "defaultMessage": "Parameter Name" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.label.parameter.value": { - "defaultMessage": "Parameter Value" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.no.clientId.error": { - "defaultMessage": "Client ID should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.no.clientSecret.error": { - "defaultMessage": "Client Secret should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.no.password.error": { - "defaultMessage": "Password should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.no.tokenUrl.error": { - "defaultMessage": "Token URL should not be empty or formatted incorrectly" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.no.username.error": { - "defaultMessage": "Username should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.none": { - "defaultMessage": "None" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.oauth": { - "defaultMessage": "OAuth 2.0" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.oauth.grant.type.client": { - "defaultMessage": "Client Credentials" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.oauth.grant.type.password": { - "defaultMessage": "Resource Owner Password" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.password.input": { - "defaultMessage": "Password" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.password.message": { - "defaultMessage": "Enter Password" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.token.url.input": { - "defaultMessage": "Token URL" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.tokenUrl.message": { - "defaultMessage": "Enter Token URL" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.user.name.input": { - "defaultMessage": "Username" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurity.username.message": { - "defaultMessage": "Enter Username" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurityConfig.cancel.button": { - "defaultMessage": "Close" - }, - "Apis.Details.Endpoints.GeneralConfiguration.EndpointSecurityConfig.config.save.button": { - "defaultMessage": "Submit" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.alias": { - "defaultMessage": "Alias" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.alias.default.message": { - "defaultMessage": "Alias for the Certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.alias.exist.error": { - "defaultMessage": "Alias already exists" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.cancel.button": { - "defaultMessage": "Close" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.click.or.drop.to.upload.file": { - "defaultMessage": "Click or drag the certificate file to upload." - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.config.save.button": { - "defaultMessage": "Save" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.endpoint": { - "defaultMessage": "Endpoint" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.endpoint.empty.error": { - "defaultMessage": "Save endpoints before adding the Certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.endpoint.error": { - "defaultMessage": "Endpoint should not be empty" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.endpoint.helpertext": { - "defaultMessage": "Endpoint for the Certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.invalid.file": { - "defaultMessage": "Invalid file type" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.keyType": { - "defaultMessage": "Choose the key type of the certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.UploadCertificate.uploadCertificate": { - "defaultMessage": "Upload Certificate" - }, - "Apis.Details.Endpoints.GeneralConfiguration.certificates.sub.heading": { - "defaultMessage": "Certificates" - }, - "Apis.Details.Endpoints.GeneralConfiguration.not.allowed": { - "defaultMessage": "*You are not authorized to view certificates due to insufficient permissions" - }, - "Apis.Details.Endpoints.GenericEndpoint.check.endpoint": { - "defaultMessage": "Check endpoint status" - }, - "Apis.Details.Endpoints.GenericEndpoint.config.endpoint": { - "defaultMessage": "Endpoint configurations" - }, - "Apis.Details.Endpoints.GenericEndpoint.no.ep.error": { - "defaultMessage": "Endpoint URL should not be empty" - }, - "Apis.Details.Endpoints.GenericEndpoint.security.endpoint": { - "defaultMessage": "Endpoint security" - }, - "Apis.Details.Endpoints.GenericEndpoint.service.url.input": { - "defaultMessage": "Service URL" - }, - "Apis.Details.Endpoints.LoadBalanceConfig.algorithm": { - "defaultMessage": "Algorithm" - }, - "Apis.Details.Endpoints.LoadBalanceConfig.class.name.for.algorithm": { - "defaultMessage": "Class Name for Algorithm" - }, - "Apis.Details.Endpoints.LoadBalanceConfig.failover": { - "defaultMessage": "Enable Failover" - }, - "Apis.Details.Endpoints.LoadBalanceConfig.session.management": { - "defaultMessage": "Session Management" - }, - "Apis.Details.Endpoints.LoadBalanceConfig.session.timeout": { - "defaultMessage": "Session Timeout (Millis)" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.endpoint.type": { - "defaultMessage": "Endpoint Type" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.failover.heading": { - "defaultMessage": "Failover Endpoints" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.load.balance.configuration.title": { - "defaultMessage": "Load Balance Configurations" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.loadbalance.heading": { - "defaultMessage": "Load Balanced Endpoints" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.no.endpoints.message": { - "defaultMessage": "Add Production/ Sandbox endpoints to configure." - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.none.heading": { - "defaultMessage": "Not Configured" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.production.failover.endpoint": { - "defaultMessage": "Production Failover Endpoints" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.production.loadbalance.endpoint": { - "defaultMessage": "Production Loadbalanced Endpoints" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.sandbox.failover.endpoint": { - "defaultMessage": "Sandbox Failover Endpoints" - }, - "Apis.Details.Endpoints.LoadbalanceFailoverConfig.sandbox.loadbalance.endpoint": { - "defaultMessage": "Sandbox Loadbalanced Endpoints" - }, - "Apis.Details.Endpoints.NewEndpointCreate.add.endpoints.header": { - "defaultMessage": "Select an Endpoint Type to Add" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.awslambda.endpoint": { - "defaultMessage": "AWS Lambda Endpoint" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.awslambda.endpoint.description": { - "defaultMessage": "If you need to invoke AWS Lambda functions through API gateway." - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.button": { - "defaultMessage": "Add" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.dynamic.endpoint": { - "defaultMessage": "Dynamic Endpoint" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.dynamic.endpoint.description": { - "defaultMessage": "If you need to send the request to the URI specified in the TO header." - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.http.endpoint": { - "defaultMessage": "HTTP/ REST Endpoint" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.http.endpoint.description": { - "defaultMessage": "A REST API endpoint based on a URI template." - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.prototype.endpoint": { - "defaultMessage": "Mock Implementation" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.prototype.endpoint.description": { - "defaultMessage": "Use the inbuilt JavaScript engine to prototype the API The inbuilt JavaScript engine does support prototype SOAP APIs" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.service.endpoint": { - "defaultMessage": "Service Endpoint" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.service.endpoint.description": { - "defaultMessage": "A REST API endpoint based on a Service in the service catalog." - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.soap.endpoint": { - "defaultMessage": "HTTP/ SOAP Endpoint" - }, - "Apis.Details.Endpoints.NewEndpointCreate.create.soap.endpoint.description": { - "defaultMessage": "The direct URI of the web service." - }, - "Apis.Details.Endpoints.Prototype.MockImplEndpoints.script": { - "defaultMessage": "Script" - }, - "Apis.Details.Endpoints.Prototype.MockImplEndpoints.script.reset": { - "defaultMessage": "Reset" - }, - "Apis.Details.Endpoints.Prototype.MockedOAS.Response.Example": { - "defaultMessage": "Example Value" - }, - "Apis.Details.Endpoints.Prototype.MockedOAS.Response.Example.NotProvided": { - "defaultMessage": "Response Examples are not provided in the API definition" - }, - "Apis.Details.Endpoints.Prototype.MockedOAS.Response.NotProvided": { - "defaultMessage": "Responses are not provided in the API definition" - }, - "Apis.Details.Endpoints.Prototype.MockedOAS.subTitle": { - "defaultMessage": "Mocked examples generated from OAS" - }, - "Apis.Details.Endpoints.Prototype.MockedOAS.title": { - "defaultMessage": "Responses" - }, - "Apis.Details.Environments\n .deploy.vhost": { - "defaultMessage": "VHost" - }, - "Apis.Details.Environments.\n Environments.select.table": { - "defaultMessage": "Select Revision" - }, - "Apis.Details.Environments.\n Environments.gateway.deployed.revision": { - "defaultMessage": "Deployed Revision" - }, - "Apis.Details.Environments.Environments\n .select.vhost": { - "defaultMessage": "Select Access URL" - }, - "Apis.Details.Environments.Environments\n .deploy.button": { - "defaultMessage": "Deploy" - }, - "Apis.Details.Environments.Environments.APIGateways": { - "defaultMessage": "API Gateways" - }, - "Apis.Details.Environments.Environments.Create.Revision.Deploy": { - "defaultMessage": "Create new revision and deploy" - }, - "Apis.Details.Environments.Environments.Deployments": { - "defaultMessage": "Revisions" - }, - "Apis.Details.Environments.Environments.RetiredApi.ToolTip": { - "defaultMessage": "Can not deploy new revisions for retired API" - }, - "Apis.Details.Environments.Environments.advertise.only.warning": { - "defaultMessage": "This API is marked as a third party API. The requests are not proxied through the gateway. Hence, deployments are not required." - }, - "Apis.Details.Environments.Environments.api.gateways.heading": { - "defaultMessage": "API Gateways" - }, - "Apis.Details.Environments.Environments.api.gateways.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Environments.Environments.cancel.btn": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Environments.Environments.create.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Environments.Environments.create.create": { - "defaultMessage": "Create" - }, - "Apis.Details.Environments.Environments.deploy.button": { - "defaultMessage": "Deploy" - }, - "Apis.Details.Environments.Environments.deploy.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Environments.Environments.deploy.deploy": { - "defaultMessage": "Deploy" - }, - "Apis.Details.Environments.Environments.deploy.new.revision": { - "defaultMessage": "Deploy New Revision" - }, - "Apis.Details.Environments.Environments.deploy.new.revision.heading": { - "defaultMessage": "Deploy New Revision" - }, - "Apis.Details.Environments.Environments.deployments.heading": { - "defaultMessage": "Deployments" - }, - "Apis.Details.Environments.Environments.deployments.sub.heading": { - "defaultMessage": "Create revisions and deploy in Gateway Environments" - }, - "Apis.Details.Environments.Environments.display.devportal": { - "defaultMessage": "Display Gateway Access URLs in developer portal." - }, - "Apis.Details.Environments.Environments.display.in.devportal": { - "defaultMessage": "Display in Developer Portal" - }, - "Apis.Details.Environments.Environments.gateway\n .deployment.current.revision": { - "defaultMessage": "Current Revision" - }, - "Apis.Details.Environments.Environments.gateway.accessUrl": { - "defaultMessage": "Gateway Access URL" - }, - "Apis.Details.Environments.Environments.gateway.action": { - "defaultMessage": "Action" - }, - "Apis.Details.Environments.Environments.gateway.deployment.next.revision": { - "defaultMessage": "Next Revision" - }, - "Apis.Details.Environments.Environments.pending.chip": { - "defaultMessage": "Pending" - }, - "Apis.Details.Environments.Environments.revision\n .description.deploy": { - "defaultMessage": "Add a description to the revision" - }, - "Apis.Details.Environments.Environments.revision.create.heading": { - "defaultMessage": "Create New Revision (From Current API)" - }, - "Apis.Details.Environments.Environments.revision.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Environments.Environments.revision.delete.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Environments.Environments.revision.delete.confirm.message": { - "defaultMessage": "Are you sure you want to delete {revision} ?" - }, - "Apis.Details.Environments.Environments.revision.delete.confirm.ok": { - "defaultMessage": "Yes" - }, - "Apis.Details.Environments.Environments.revision.delete.confirm.title": { - "defaultMessage": "Confirm Delete" - }, - "Apis.Details.Environments.Environments.revision.delete.error": { - "defaultMessage": "Something went wrong while deleting the revision" - }, - "Apis.Details.Environments.Environments.revision.delete.success": { - "defaultMessage": "Revision Deleted Successfully" - }, - "Apis.Details.Environments.Environments.revision.description.create": { - "defaultMessage": "Brief description of the new revision" - }, - "Apis.Details.Environments.Environments.revision.description.deploy": { - "defaultMessage": "Brief description of the new revision" - }, - "Apis.Details.Environments.Environments.revision.restore": { - "defaultMessage": "Restore" - }, - "Apis.Details.Environments.Environments.revision.restore.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Environments.Environments.revision.restore.confirm.message": { - "defaultMessage": "Are you sure you want to restore {revision} (To Current API)?" - }, - "Apis.Details.Environments.Environments.revision.restore.confirm.ok": { - "defaultMessage": "Yes" - }, - "Apis.Details.Environments.Environments.revision.restore.confirm.title": { - "defaultMessage": "Confirm Restore" - }, - "Apis.Details.Environments.Environments.select.rev.delete": { - "defaultMessage": "Revision to delete" - }, - "Apis.Details.Environments.Environments.select.rev.helper": { - "defaultMessage": "Please select a revision to delete as the number of revisions have reached a maximum of {count}" - }, - "Apis.Details.Environments.Environments.select.rev.helper1": { - "defaultMessage": "Please undeploy and delete a revision as the number of revisions have reached a maximum of {count}" - }, - "Apis.Details.Environments.Environments.select.rev.warning": { - "defaultMessage": "Please delete a revision as the number of revisions have reached a maximum of {count}" - }, - "Apis.Details.Environments.Environments.select.table": { - "defaultMessage": "Select Revision" - }, - "Apis.Details.Environments.Environments.solace.platform.environments.heading": { - "defaultMessage": "Solace Platform Environments" - }, - "Apis.Details.Environments.Environments.status.not.deployed": { - "defaultMessage": "No Revision Deployed" - }, - "Apis.Details.Environments.Environments.undeploy.btn": { - "defaultMessage": "Undeploy" - }, - "Apis.Details.Environments.Environments.visibility.in.devportal": { - "defaultMessage": "Gateway URL Visibility" - }, - "Apis.Details.ExternalStores.ExternalStores.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.ExternalStores.ExternalStores.endpoint": { - "defaultMessage": "Endpoint" - }, - "Apis.Details.ExternalStores.ExternalStores.error.getting.published.external.stores": { - "defaultMessage": "Error while getting published external developer portals!! {reason}" - }, - "Apis.Details.ExternalStores.ExternalStores.error.while.updating.external.stores": { - "defaultMessage": "Error while updating external developer portals!! {reason}" - }, - "Apis.Details.ExternalStores.ExternalStores.external-stores": { - "defaultMessage": "External Developer Portals" - }, - "Apis.Details.ExternalStores.ExternalStores.external.stores.not.found.body": { - "defaultMessage": "No External Developer Portals configured for the current tenant" - }, - "Apis.Details.ExternalStores.ExternalStores.external.stores.not.found.title": { - "defaultMessage": "External Developert Portals not found for the API : {apiUUID}" - }, - "Apis.Details.ExternalStores.ExternalStores.name": { - "defaultMessage": "Name" - }, - "Apis.Details.ExternalStores.ExternalStores.save": { - "defaultMessage": "Save" - }, - "Apis.Details.ExternalStores.ExternalStores.successfully.published.to.external.stores": { - "defaultMessage": "Successfully Published to external developer portals: {successfulStores}" - }, - "Apis.Details.ExternalStores.ExternalStores.type": { - "defaultMessage": "Type" - }, - "Apis.Details.ExternalStores.ExternalStores.update.not.allowed": { - "defaultMessage": "* You are not authorized to publish the API to external developer portals due to insufficient permissions" - }, - "Apis.Details.GoTo.Components.GoToSuggestions.no.result": { - "defaultMessage": "There are no results for this query" - }, - "Apis.Details.GoTo.GoTo.btn": { - "defaultMessage": "Go To" - }, - "Apis.Details.GoTo.button.placeholder": { - "defaultMessage": "Page Search" - }, - "Apis.Details.LifeCycle.CheckboxLabels.business.plans.selected": { - "defaultMessage": "Business Plan(s) selected" - }, - "Apis.Details.LifeCycle.CheckboxLabels.cert.provided": { - "defaultMessage": "Certificate provided" - }, - "Apis.Details.LifeCycle.CheckboxLabels.endpoints.provided": { - "defaultMessage": "Endpoint provided" - }, - "Apis.Details.LifeCycle.CheckboxLabels.mandatory.properties.provided": { - "defaultMessage": "Mandatory Properties provided" - }, - "Apis.Details.LifeCycle.LifeCycle.change.not.allowed": { - "defaultMessage": "* You are not authorized to change the life cycle state of the API due to insufficient permissions" - }, - "Apis.Details.LifeCycle.LifeCycle.history": { - "defaultMessage": "History" - }, - "Apis.Details.LifeCycle.LifeCycle.lifecycle": { - "defaultMessage": "Lifecycle" - }, - "Apis.Details.LifeCycle.LifeCycleHistory.action": { - "defaultMessage": "Action" - }, - "Apis.Details.LifeCycle.LifeCycleHistory.lifecycle.state.history": { - "defaultMessage": "LC has changed from {previous} to {post}" - }, - "Apis.Details.LifeCycle.LifeCycleHistory.time": { - "defaultMessage": "Time" - }, - "Apis.Details.LifeCycle.LifeCycleHistory.user": { - "defaultMessage": "User" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.current.state": { - "defaultMessage": "Current state is" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.delete.task": { - "defaultMessage": "Delete Task" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.dialog,delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.dialog.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.dialog.text.description": { - "defaultMessage": "The life cycle task will be removed" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.dialog.title": { - "defaultMessage": "Delete Task" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.error": { - "defaultMessage": "Error while deleting task" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.pending": { - "defaultMessage": "Pending lifecycle state change." - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.LifecyclePending.success": { - "defaultMessage": "Lifecycle task deleted successfully" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.approve.approveStatus": { - "defaultMessage": "Lifecycle state change action approved successfully" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.error.certs": { - "defaultMessage": "Error while retrieving certificates" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.reject.rejectStatus": { - "defaultMessage": "Lifecycle state change action rejected due to validation failure" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.success.createStatus": { - "defaultMessage": "Lifecycle state change request has been sent" - }, - "Apis.Details.LifeCycle.LifeCycleUpdate.success.otherStatus": { - "defaultMessage": "Lifecycle state updated successfully" - }, - "Apis.Details.LifeCycle.Policies.business.plans": { - "defaultMessage": "Business Plans" - }, - "Apis.Details.LifeCycle.Policies.select.plan.api": { - "defaultMessage": "Select a plan for the API and enable API level throttling." - }, - "Apis.Details.LifeCycle.Policies.select.plan.api.product": { - "defaultMessage": "Select a plan for the API product." - }, - "Apis.Details.LifeCycle.PublishWithoutDeploy.advertise": { - "defaultMessage": "Publish" - }, - "Apis.Details.LifeCycle.PublishWithoutDeploy.see.less": { - "defaultMessage": "See less" - }, - "Apis.Details.LifeCycle.PublishWithoutDeploy.see.more": { - "defaultMessage": "See more" - }, - "Apis.Details.LifeCycle.components.confirm.publish.apiProducts.message": { - "defaultMessage": "Deploy the API product before publishing the API" - }, - "Apis.Details.LifeCycle.components.confirm.publish.apiProducts.title": { - "defaultMessage": "Deploy API product before publishing" - }, - "Apis.Details.LifeCycle.components.confirm.publish.message": { - "defaultMessage": "The API will not be available for consumption unless it is deployed." - }, - "Apis.Details.LifeCycle.components.confirm.publish.message.advertise.only": { - "defaultMessage": "If you want to publish as a third party API, please provide the external endpoint and press \"Publish\"." - }, - "Apis.Details.LifeCycle.components.confirm.publish.title": { - "defaultMessage": "Publish API without deployments" - }, - "Apis.Details.LifeCycle.components.externalEndpoint": { - "defaultMessage": "External Endpoint" - }, - "Apis.Details.LifeCycle.externalEndpoint.error": { - "defaultMessage": "Invalid Endpoint URL" - }, - "Apis.Details.LifeCycle.publish.content.info.deployments": { - "defaultMessage": "Deployments" - }, - "Apis.Details.Monetization.BusinessPlans.commercial.policies": { - "defaultMessage": "Commercial Policies" - }, - "Apis.Details.Monetization.BusinessPlans.monetized": { - "defaultMessage": "Monetized" - }, - "Apis.Details.Monetization.BusinessPlans.not.monetized": { - "defaultMessage": "Not Monetized" - }, - "Apis.Details.Monetization.Index.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Monetization.Index.monetization": { - "defaultMessage": "Monetization" - }, - "Apis.Details.Monetization.Index.monetization.configured.successfully": { - "defaultMessage": "Monetization Enabled Successfully" - }, - "Apis.Details.Monetization.Index.monetization.disabled.successfully": { - "defaultMessage": "Monetization Disabled Successfully" - }, - "Apis.Details.Monetization.Index.monetization.properties": { - "defaultMessage": "Monetization Properties" - }, - "Apis.Details.Monetization.Index.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Monetization.Index.something.went.wrong.while.configuring.monetization": { - "defaultMessage": "Something went wrong while configuring monetization" - }, - "Apis.Details.Monetization.Index.there.are.no .monetization.properties.configured": { - "defaultMessage": "There are no monetization properties configured" - }, - "Apis.Details.Monetization.Index.update.not.allowed": { - "defaultMessage": "* You are not authorized to update API monetization due to insufficient permissions" - }, - "Apis.Details.NewOverview.BusinessInformation.business.owner": { - "defaultMessage": "Business Owner" - }, - "Apis.Details.NewOverview.BusinessInformation.business.owner.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.BusinessInformation.technical.owner": { - "defaultMessage": "Technical Owner" - }, - "Apis.Details.NewOverview.BusinessInformation.technical.owner.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Endpoints.endpoint.security": { - "defaultMessage": "Endpoint Security" - }, - "Apis.Details.NewOverview.Endpoints.endpoints": { - "defaultMessage": "Endpoints" - }, - "Apis.Details.NewOverview.Endpoints.external.production.endpoint": { - "defaultMessage": "External Production Endpoint" - }, - "Apis.Details.NewOverview.Endpoints.external.sandbox.endpoint": { - "defaultMessage": "External Sandbox Endpoint" - }, - "Apis.Details.NewOverview.Endpoints.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Endpoints.production.endpoint": { - "defaultMessage": "Production Endpoint" - }, - "Apis.Details.NewOverview.Endpoints.production.endpoint.security": { - "defaultMessage": "Production Endpoint Security" - }, - "Apis.Details.NewOverview.Endpoints.production.security.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Endpoints.prototype.endpoint": { - "defaultMessage": "Prototype Endpoint" - }, - "Apis.Details.NewOverview.Endpoints.sandbox.endpoint": { - "defaultMessage": "Sandbox Endpoint" - }, - "Apis.Details.NewOverview.Endpoints.sandbox.endpoint.security": { - "defaultMessage": "Sandbox Endpoint Security" - }, - "Apis.Details.NewOverview.Endpoints.sandbox.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Endpoints.sandbox.security.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Endpoints.security.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.access.control": { - "defaultMessage": "Access Control" - }, - "Apis.Details.NewOverview.MetaData.access.control.all.tooltip": { - "defaultMessage": "All : The API is viewable, modifiable by all the publishers and creators." - }, - "Apis.Details.NewOverview.MetaData.access.control.tooltip": { - "defaultMessage": "Restricted by roles : The API can be viewable and modifiable by only specific publishers and creators with the roles that you specify" - }, - "Apis.Details.NewOverview.MetaData.config": { - "defaultMessage": "Configuration" - }, - "Apis.Details.NewOverview.MetaData.context:": { - "defaultMessage": "Context:" - }, - "Apis.Details.NewOverview.MetaData.created.time": { - "defaultMessage": "Created Time" - }, - "Apis.Details.NewOverview.MetaData.createdTime.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.description": { - "defaultMessage": "Description" - }, - "Apis.Details.NewOverview.MetaData.description.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.gateway.type": { - "defaultMessage": "Gateway Type" - }, - "Apis.Details.NewOverview.MetaData.last.updated.time": { - "defaultMessage": "Last Updated Time" - }, - "Apis.Details.NewOverview.MetaData.lastUpdatedTime.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.metadata": { - "defaultMessage": "Metadata" - }, - "Apis.Details.NewOverview.MetaData.originalDevPortalUrl": { - "defaultMessage": "Original Developer Portal URL" - }, - "Apis.Details.NewOverview.MetaData.originalDevPortalUrl.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.provider": { - "defaultMessage": "Provider" - }, - "Apis.Details.NewOverview.MetaData.securityScheme": { - "defaultMessage": "API Security" - }, - "Apis.Details.NewOverview.MetaData.securityScheme.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.securityScheme.tooltip": { - "defaultMessage": "OAuth2 is used as the default security schema." - }, - "Apis.Details.NewOverview.MetaData.solace.transports": { - "defaultMessage": "Available Protocols" - }, - "Apis.Details.NewOverview.MetaData.tags": { - "defaultMessage": "Tags" - }, - "Apis.Details.NewOverview.MetaData.tags.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.transport.tooltip": { - "defaultMessage": "HTTP is less secure than HTTPS and makes your API vulnerable to security threats." - }, - "Apis.Details.NewOverview.MetaData.transports": { - "defaultMessage": "Transports" - }, - "Apis.Details.NewOverview.MetaData.transports.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.type.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.MetaData.type:": { - "defaultMessage": "Type:" - }, - "Apis.Details.NewOverview.MetaData.version": { - "defaultMessage": "Version" - }, - "Apis.Details.NewOverview.MetaData.visibility.store": { - "defaultMessage": "Visibility on Developer Portal" - }, - "Apis.Details.NewOverview.MetaData.visibility.store.all.tooltip": { - "defaultMessage": "Public: The API is accessible to everyone and can be advertised in multiple developer portals - a central developer portal and/or non-WSO2 developer portals." - }, - "Apis.Details.NewOverview.MetaData.visibility.store.res.tooltip": { - "defaultMessage": "Restricted by roles: The API is visible only to specific user roles in the tenant Developer Portal that you specify." - }, - "Apis.Details.NewOverview.MetaData.workflow.status": { - "defaultMessage": "Workflow Status" - }, - "Apis.Details.NewOverview.MetaData.workflowStatus.not.set": { - "defaultMessage": "-" - }, - "Apis.Details.NewOverview.Operations.ShowMore": { - "defaultMessage": "Show More" - }, - "Apis.Details.NewOverview.Operations.operation": { - "defaultMessage": "Operations" - }, - "Apis.Details.NewOverview.Operations.operations": { - "defaultMessage": "Operation" - }, - "Apis.Details.NewOverview.Policies.business.plans": { - "defaultMessage": "Business Plans:" - }, - "Apis.Details.NewOverview.Resources.loading": { - "defaultMessage": "loading..." - }, - "Apis.Details.NewOverview.Resources.resource.not.found": { - "defaultMessage": "resource not found..." - }, - "Apis.Details.NewOverview.Resources.resources": { - "defaultMessage": "Resources" - }, - "Apis.Details.NewOverview.async.api.topics": { - "defaultMessage": "Topics" - }, - "Apis.Details.NewVersion.NewVersion.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.NewVersion.NewVersion.create": { - "defaultMessage": "Create" - }, - "Apis.Details.NewVersion.NewVersion.create.new.version": { - "defaultMessage": "Create New Version" - }, - "Apis.Details.NewVersion.NewVersion.default": { - "defaultMessage": "Make this the default version" - }, - "Apis.Details.NewVersion.NewVersion.error": { - "defaultMessage": "Something went wrong while creating a new version!. Error:" - }, - "Apis.Details.NewVersion.NewVersion.new.version": { - "defaultMessage": "New Version" - }, - "Apis.Details.NewVersion.NewVersion.service.version": { - "defaultMessage": "Service Version" - }, - "Apis.Details.NewVersion.NewVersion.success": { - "defaultMessage": "Successfully created new version" - }, - "Apis.Details.NewVersion.NewVersion.tooltip": { - "defaultMessage": "Indicates if this is the default version of the API. If an API is invoked without specifying a version, the API Gateway will route the request to the default version of the API." - }, - "Apis.Details.Operations.Operation.OperationType": { - "defaultMessage": "Operation Type" - }, - "Apis.Details.Operations.Operation.authType": { - "defaultMessage": "Security Enabled" - }, - "Apis.Details.Operations.Operation.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Operations.Operation.operation.no.api.scope.available": { - "defaultMessage": "No API scopes available" - }, - "Apis.Details.Operations.Operation.operation.no.sharedpi.scope.available": { - "defaultMessage": "No shared scopes available" - }, - "Apis.Details.Operations.Operation.operation.scope.helperText": { - "defaultMessage": "Select a scope to control permissions to this operation" - }, - "Apis.Details.Operations.Operation.operation.scope.label.default": { - "defaultMessage": "Operation scope" - }, - "Apis.Details.Operations.Operation.operation.scope.label.notAvailable": { - "defaultMessage": "No scope available" - }, - "Apis.Details.Operations.Operation.operation.scope.select.local": { - "defaultMessage": "API Scopes" - }, - "Apis.Details.Operations.Operation.operation.scope.select.shared": { - "defaultMessage": "Shared Scopes" - }, - "Apis.Details.Operations.Operation.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Operations.Operation.scopes": { - "defaultMessage": "Scope" - }, - "Apis.Details.Operations.Operation.throttling.policy": { - "defaultMessage": "Rate Limiting" - }, - "Apis.Details.Operations.Operations.title": { - "defaultMessage": "Operations" - }, - "Apis.Details.Operations.operation.operationName": { - "defaultMessage": "Operation" - }, - "Apis.Details.Overview.\n CustomizedStepper.Endpoint": { - "defaultMessage": "Endpoint" - }, - "Apis.Details.Overview.CustomizedStepper.Deploy": { - "defaultMessage": "Deploy" - }, - "Apis.Details.Overview.CustomizedStepper.Develop": { - "defaultMessage": "Develop" - }, - "Apis.Details.Overview.CustomizedStepper.Test": { - "defaultMessage": "Test" - }, - "Apis.Details.Overview.CustomizedStepper.Tier": { - "defaultMessage": "Business Plan" - }, - "Apis.Details.Overview.CustomizedStepper.ToolTip.DeploymentAvailable": { - "defaultMessage": "Cannot deploy retired APIs" - }, - "Apis.Details.Overview.CustomizedStepper.ToolTip.DeploymentUnavailable": { - "defaultMessage": "Deploy a revision of this API to the Gateway" - }, - "Apis.Details.Overview.CustomizedStepper.blocked": { - "defaultMessage": "Blocked" - }, - "Apis.Details.Overview.CustomizedStepper.btn.prototyped": { - "defaultMessage": "Pre-Released" - }, - "Apis.Details.Overview.CustomizedStepper.btn.publish": { - "defaultMessage": "Publish" - }, - "Apis.Details.Overview.CustomizedStepper.deprecated": { - "defaultMessage": "Deprecated" - }, - "Apis.Details.Overview.CustomizedStepper.pending": { - "defaultMessage": "The request is pending" - }, - "Apis.Details.Overview.CustomizedStepper.prototyped": { - "defaultMessage": "Pre-Released" - }, - "Apis.Details.Overview.CustomizedStepper.publish": { - "defaultMessage": "Published" - }, - "Apis.Details.Overview.CustomizedStepper.publish.current.api": { - "defaultMessage": "(Current API)" - }, - "Apis.Details.Overview.CustomizedStepper.retired": { - "defaultMessage": "Retired" - }, - "Apis.Details.Overview.CustomizedStepper.view.devportal": { - "defaultMessage": "View in devportal" - }, - "Apis.Details.Overview.Overview.topic.header": { - "defaultMessage": "Overview" - }, - "Apis.Details.Overview.ProductResources.resources": { - "defaultMessage": "Resources" - }, - "Apis.Details.Policies.AttachedPolicyCard.apiSpecificPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Apis.Details.Policies.AttachedPolicyCard.commonPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.apply.to.all.resources": { - "defaultMessage": "Apply to all resources" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.description.title": { - "defaultMessage": "Description" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.description.value.not.provided": { - "defaultMessage": "Oops! Looks like this policy does not have a description" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.description.value.provided": { - "defaultMessage": "{description}" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.regex.error": { - "defaultMessage": "Please enter a valid input" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.required.error": { - "defaultMessage": "Required field is empty" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.reset": { - "defaultMessage": "Reset" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Policies.AttachedPolicyForm.General.saving": { - "defaultMessage": "Saving" - }, - "Apis.Details.Policies.CreatePolicy.create.new.policy": { - "defaultMessage": "Create New Policy" - }, - "Apis.Details.Policies.DeletePolicy.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Policies.DeletePolicy.confirm": { - "defaultMessage": "Delete" - }, - "Apis.Details.Policies.DeletePolicy.delete.confirm": { - "defaultMessage": "Confirm Delete" - }, - "Apis.Details.Policies.DeletePolicy.delete.confirm.content": { - "defaultMessage": "Are you sure you want to delete {policy} policy ?" - }, - "Apis.Details.Policies.DeletePolicy.delete.title": { - "defaultMessage": "Delete" - }, - "Apis.Details.Policies.DraggablePolicyCard.policy.view": { - "defaultMessage": "View" - }, - "Apis.Details.Policies.OperationPolicy.operation.used.in.products": { - "defaultMessage": "This operation is used in {isUsedInAPIProduct} API product(s)" - }, - "Apis.Details.Policies.Policies.title": { - "defaultMessage": "Policies" - }, - "Apis.Details.Policies.PoliciesExpansion.fault.flow.title": { - "defaultMessage": "Fault Flow" - }, - "Apis.Details.Policies.PoliciesExpansion.request.flow.title": { - "defaultMessage": "Request Flow" - }, - "Apis.Details.Policies.PoliciesExpansion.response.flow.title": { - "defaultMessage": "Response Flow" - }, - "Apis.Details.Policies.PoliciesSection.info": { - "defaultMessage": "API level policies will execute before operation level policies" - }, - "Apis.Details.Policies.PolicyConfigurationEditDrawer.title": { - "defaultMessage": "Configure {policy}" - }, - "Apis.Details.Policies.PolicyConfiguringDrawer.title": { - "defaultMessage": "Configure {policy}" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.description": { - "defaultMessage": "Provide the name, description and applicable flows of the policy." - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.applicable.flows.label": { - "defaultMessage": "Applicable Flows" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.description.helperText": { - "defaultMessage": "Short description about the policy" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.description.label": { - "defaultMessage": "Description" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.name.helperText": { - "defaultMessage": "Enter Policy Name ( E.g.: Add Header )" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.name.label": { - "defaultMessage": "Name" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.supported.api.label": { - "defaultMessage": "Supported API Types" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.version.helperText": { - "defaultMessage": "Enter Policy Version ( E.g.: v1 )" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.form.version.label": { - "defaultMessage": "Version" - }, - "Apis.Details.Policies.PolicyForm.GeneralDetails.title": { - "defaultMessage": "General Details" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.add.policy.attribute": { - "defaultMessage": "Add Policy Attribute" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.defaultValue.validation.error": { - "defaultMessage": "Please enter a valid input" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.description": { - "defaultMessage": "Define attributes of the policy." - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.displayName.required.error": { - "defaultMessage": "Display Name is Empty" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.allowed.values.helperText": { - "defaultMessage": "Comma separated list of allowed values for Enum attribute" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.allowed.values.label": { - "defaultMessage": "Allowed Values" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.default.value.helperText": { - "defaultMessage": "Default value for the attribute (if any)" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.default.value.label": { - "defaultMessage": "Default Value" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.delete.tooltip": { - "defaultMessage": "Delete" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.description.helperText": { - "defaultMessage": "Short description about the policy attribute" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.description.label": { - "defaultMessage": "Description" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.description.tooltip": { - "defaultMessage": "Description" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.displayName.helperText": { - "defaultMessage": "Attribute Display Name" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.displayName.label": { - "defaultMessage": "Display Name" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.name.helperText": { - "defaultMessage": "Attribute Name" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.name.label": { - "defaultMessage": "Name" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.required.tooltip": { - "defaultMessage": "Required" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.type.label": { - "defaultMessage": "Type" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.validation.regex.helperText": { - "defaultMessage": "Regex for attribute validation ( E.g.: ^([a-zA-Z]+)$ )" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.validation.regex.label": { - "defaultMessage": "Validation Regex" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.value.properties.popover.title": { - "defaultMessage": "Value Properties" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.form.value.properties.tooltip": { - "defaultMessage": "Value Properties" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.name.required.error": { - "defaultMessage": "Name is Empty" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.no.attributes.found": { - "defaultMessage": "Looks like this policy does not have any attributes" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.title": { - "defaultMessage": "Policy Attributes" - }, - "Apis.Details.Policies.PolicyForm.PolicyAttributes.validationRegex.invalid": { - "defaultMessage": "Provided regular expression is invalid" - }, - "Apis.Details.Policies.PolicyForm.PolicyCreateForm.policy.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Policies.PolicyForm.PolicyCreateForm.policy.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Policies.PolicyForm.PolicyViewForm.done": { - "defaultMessage": "Done" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.apiSpecificPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.commonPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.description": { - "defaultMessage": "Define the Gateway (s) that will be supporting this policy. Based off of this selection, you can upload the relevant business logic inclusive policy file." - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.form.policy.file.description": { - "defaultMessage": "Policy file contains the business logic of the policy" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.form.policy.file.download": { - "defaultMessage": "Download Policy" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.form.policy.file.title": { - "defaultMessage": "Policy File(s)" - }, - "Apis.Details.Policies.PolicyForm.SourceDetails.title": { - "defaultMessage": "Gateway Specific Details" - }, - "Apis.Details.Policies.PolicyForm.UploadPolicyDropzone.description": { - "defaultMessage": "Policy file contains the business logic of the policy" - }, - "Apis.Details.Policies.PolicyForm.UploadPolicyDropzone.dropzone.description": { - "defaultMessage": "Click or drag the policy file to upload" - }, - "Apis.Details.Policies.PolicyForm.UploadPolicyDropzone.title": { - "defaultMessage": "Upload Policy File" - }, - "Apis.Details.Policies.PolicyList.add.new.policy": { - "defaultMessage": "Add New Policy" - }, - "Apis.Details.Policies.PolicyList.title": { - "defaultMessage": "Policy List" - }, - "Apis.Details.Policies.SaveOperationPolicies.save": { - "defaultMessage": "Save" - }, - "Apis.Details.ProductResources.ProductResourcesEdit.api.resources": { - "defaultMessage": "Select API Resources" - }, - "Apis.Details.ProductResources.ProductResourcesEdit.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.ProductResources.ProductResourcesEdit.title": { - "defaultMessage": "Manage Resources" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.\n empty.title": { - "defaultMessage": "Use the left side panel to add resources" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.\n toolbar.add.selected": { - "defaultMessage": "Add Selected" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.ApisnotFound": { - "defaultMessage": "No REST APIs are created yet" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.find.and.select": { - "defaultMessage": "Find and select resources for the API Product" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.select.an.api": { - "defaultMessage": "Select an API" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.selected": { - "defaultMessage": "Selected resources of API Product" - }, - "Apis.Details.ProductResources.ProductResourcesWorkspace.toolbar.\n add.all": { - "defaultMessage": "Add All" - }, - "Apis.Details.Properties.\n Properties.editable.show.in.devporal": { - "defaultMessage": "Show in devportal" - }, - "Apis.Details.Properties.\n Properties.editable.show.in.devporal": { - "defaultMessage": "Show in devportal" - }, - "Apis.Details.Properties.Properties.\n show.add.property.custom.property.name": { - "defaultMessage": "{message}" - }, - "Apis.Details.Properties.Properties.\n show.add.property.invalid.error": { - "defaultMessage": "Invalid property name" - }, - "Apis.Details.Properties.Properties.\n show.add.property.property.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Properties.Properties.\n property.name.exists": { - "defaultMessage": "Property name already exists" - }, - "Apis.Details.Properties.Properties.\n show.add.property.invalid.error": { - "defaultMessage": "Invalid property name" - }, - "Apis.Details.Properties.Properties.\n property.name.exists": { - "defaultMessage": "Property name already exists" - }, - "Apis.Details.Properties.Properties.\n no.changes.to.save": { - "defaultMessage": "No changes to save" - }, - "Apis.Details.Properties.Properties.\n property.name.empty.error": { - "defaultMessage": "Property name/value can not be empty" - }, - "Apis.Details.Properties.Properties.\n property.name.has.whitespaces": { - "defaultMessage": "Property name can not have any whitespaces in it" - }, - "Apis.Details.Properties.Properties.\n property.name.keyword.error": { - "defaultMessage": "Property name can not be a system reserved keyword" - }, - "Apis.Details.Properties.Properties.APIProduct.\n add.new.property.message.content": { - "defaultMessage": "Add specific custom properties to your API here." - }, - "Apis.Details.Properties.Properties.add": { - "defaultMessage": "Add" - }, - "Apis.Details.Properties.Properties.add.new.property": { - "defaultMessage": "Add New Property" - }, - "Apis.Details.Properties.Properties.add.new.property.message.content": { - "defaultMessage": "Add specific custom properties to your API here." - }, - "Apis.Details.Properties.Properties.add.new.property.message.title": { - "defaultMessage": "Create Additional Properties" - }, - "Apis.Details.Properties.Properties.add.new.property.table": { - "defaultMessage": "Property Name" - }, - "Apis.Details.Properties.Properties.add.new.property.value": { - "defaultMessage": "Property Value" - }, - "Apis.Details.Properties.Properties.add.new.property.visibility": { - "defaultMessage": "Visibility" - }, - "Apis.Details.Properties.Properties.api.product.properties": { - "defaultMessage": "API Product Properties" - }, - "Apis.Details.Properties.Properties.api.properties": { - "defaultMessage": "API Properties" - }, - "Apis.Details.Properties.Properties.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Properties.Properties.editable.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Properties.Properties.editable.row.edit.mode.property.value": { - "defaultMessage": "Property Value" - }, - "Apis.Details.Properties.Properties.editable.row.property.name": { - "defaultMessage": "Property Name" - }, - "Apis.Details.Properties.Properties.editable.show.in.devporal": { - "defaultMessage": "Show in devportal" - }, - "Apis.Details.Properties.Properties.editable.update": { - "defaultMessage": "Update" - }, - "Apis.Details.Properties.Properties.editable.visible.in.store": { - "defaultMessage": "Visible in devportal" - }, - "Apis.Details.Properties.Properties.help": { - "defaultMessage": "Property name should be unique, should not contain spaces, cannot be more than 80 chars and cannot be any of the following reserved keywords : provider, version, context, status, description, subcontext, doc, lcState, name, tags." - }, - "Apis.Details.Properties.Properties.help.main": { - "defaultMessage": "Usually, APIs have a pre-defined set of properties such as the name, version, context, etc. API Properties allows you to add specific custom properties to the API." - }, - "Apis.Details.Properties.Properties.property.value": { - "defaultMessage": "Value" - }, - "Apis.Details.Properties.Properties.update.not.allowed": { - "defaultMessage": "*You are not authorized to update properties of the API due to insufficient permissions" - }, - "Apis.Details.QueryAnalysis.UpdateComplexity.fieldcomplexity": { - "defaultMessage": "Fields" - }, - "Apis.Details.QueryAnalysis.UpdateComplexity.fieldcomplexitysum": { - "defaultMessage": "Sum of the Complexity" - }, - "Apis.Details.QueryAnalysis.UpdateComplexity.typeName": { - "defaultMessage": "Type" - }, - "Apis.Details.QyeryAnalysis.UpdateComplexity.save": { - "defaultMessage": "Set" - }, - "Apis.Details.Resources.APIOperations.title": { - "defaultMessage": "Resources" - }, - "Apis.Details.Resources.Resources.api.scope.deleted.successfully": { - "defaultMessage": "API Scope deleted successfully!" - }, - "Apis.Details.Resources.Resources.edit.resources.button": { - "defaultMessage": "Edit Resources" - }, - "Apis.Details.Resources.Resources.something.went.wrong.while.updating.the.api": { - "defaultMessage": "Error occurred while updating API" - }, - "Apis.Details.Resources.components.APIRateLimiting.rate.limiting.level": { - "defaultMessage": "Rate limiting level" - }, - "Apis.Details.Resources.components.AddOperation.add.tooltip": { - "defaultMessage": "Add new operation" - }, - "Apis.Details.Resources.components.AddOperation.clear.inputs.tooltip": { - "defaultMessage": "Clear inputs" - }, - "Apis.Details.Resources.components.AddOperation.http.verb": { - "defaultMessage": "HTTP Verb" - }, - "Apis.Details.Resources.components.AddOperation.operation.target.cannot.contains.white.spaces": { - "defaultMessage": "Operation target cannot contains white spaces" - }, - "Apis.Details.Resources.components.AddOperation.operation.target.or.verb.cannot.be.empty.warning": { - "defaultMessage": "Operation target or operation verb(s) can't be empty" - }, - "Apis.Details.Resources.components.AddOperation.operation.topic.cannot.have.path.params.warning": { - "defaultMessage": "WebSub topic can't have path parameters" - }, - "Apis.Details.Resources.components.AddOperation.option": { - "defaultMessage": "OPTIONS" - }, - "Apis.Details.Resources.components.AddParameter.clear.inputs.tooltip": { - "defaultMessage": "Clear inputs" - }, - "Apis.Details.Resources.components.Operation.Delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Resources.components.Operation.cannot.delete.when.used.in.api.products": { - "defaultMessage": "Cannot delete operation when used in an API product" - }, - "Apis.Details.Resources.components.Operation.delete.operation": { - "defaultMessage": "Delete operation" - }, - "Apis.Details.Resources.components.Operation.disable.security.when.used.in.api.products": { - "defaultMessage": "Security enabled" - }, - "Apis.Details.Resources.components.Operation.security.operation": { - "defaultMessage": "Security" - }, - "Apis.Details.Resources.components.Operation.this.operation.used.in.products": { - "defaultMessage": "This operation is used in {isUsedInAPIProduct} API product(s)" - }, - "Apis.Details.Resources.components.Operation.undo.delete": { - "defaultMessage": "Undo Delete" - }, - "Apis.Details.Resources.components.enabled.security": { - "defaultMessage": "No security" - }, - "Apis.Details.Resources.components.operationComponents.AWSLambdaSettings.Title": { - "defaultMessage": "AWS Lambda Settings" - }, - "Apis.Details.Resources.components.operationComponents.AWSLambdaSettings.encode": { - "defaultMessage": "Check if request body should be base64 encoded" - }, - "Apis.Details.Resources.components.operationComponents.AddParameter.add": { - "defaultMessage": "Add" - }, - "Apis.Details.Resources.components.operationComponents.AddParameter.add.tooltip": { - "defaultMessage": "Add new parameter" - }, - "Apis.Details.Resources.components.operationComponents.AddParameter.enter.content.type": { - "defaultMessage": "Enter Content Type" - }, - "Apis.Details.Resources.components.operationComponents.AddParameter.enter.parameter.name": { - "defaultMessage": "Enter Parameter Name" - }, - "Apis.Details.Resources.components.operationComponents.AddParameter.parameter.name.already.exists": { - "defaultMessage": "Parameter name already exists" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.close": { - "defaultMessage": "Close" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.data.format": { - "defaultMessage": "Data Format" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.done": { - "defaultMessage": "Done" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.required": { - "defaultMessage": "Required" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.select.format.of.data.type": { - "defaultMessage": "Select the Format of Data Type" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.select.format.of.data.type.none.option": { - "defaultMessage": "No Data Type" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.select.schema.data.type": { - "defaultMessage": "Select the Schema Type" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.title": { - "defaultMessage": "Edit" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.type": { - "defaultMessage": "Parameter Type" - }, - "Apis.Details.Resources.components.operationComponents.EditParameter.use.done.button.to.persist.changes": { - "defaultMessage": "Use DONE button in the page to persist changes" - }, - "Apis.Details.Resources.components.operationComponents.EditPayloadProperty.close": { - "defaultMessage": "Close" - }, - "Apis.Details.Resources.components.operationComponents.EditPayloadProperty.done": { - "defaultMessage": "Done" - }, - "Apis.Details.Resources.components.operationComponents.EditPayloadProperty.title": { - "defaultMessage": "Edit" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.actions": { - "defaultMessage": "Actions" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.body": { - "defaultMessage": "Body" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.edit": { - "defaultMessage": "Edit" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.no": { - "defaultMessage": "No" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.parameter.name": { - "defaultMessage": "Name/Content Type" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.parameter.type": { - "defaultMessage": "Parameter Type" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.required": { - "defaultMessage": "Required" - }, - "Apis.Details.Resources.components.operationComponents.ListParameter.yes": { - "defaultMessage": "Yes" - }, - "Apis.Details.Resources.components.operationComponents.ListPayloadProperties.edit": { - "defaultMessage": "Edit" - }, - "Apis.Details.Resources.components.operationComponents.ListPayloadProps.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.Security.tooltip": { - "defaultMessage": "This will enable/disable Application Level securities defined in the Runtime Configurations page." - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.operation.scope.create.new.scope": { - "defaultMessage": "Create New Scope" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.operation.scope.helperText": { - "defaultMessage": "Select a scope to control permissions to this operation" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.operation.scope.label.default": { - "defaultMessage": "Operation scope" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.operation.scope.label.notAvailable": { - "defaultMessage": "No scope available" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.API.level": { - "defaultMessage": "API Level" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.button.text": { - "defaultMessage": "Change rate limiting level" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.governed.by": { - "defaultMessage": "Rate limiting is governed by" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.helperText.section1": { - "defaultMessage": "Use" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.helperText.section2": { - "defaultMessage": "Operation Level" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.helperText.section3": { - "defaultMessage": "rate limiting to" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.helperText.section4": { - "defaultMessage": "enable" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.helperText.section5": { - "defaultMessage": "rate limiting per operation" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.policy": { - "defaultMessage": "Rate limiting policy" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.rate.limiting.policy.select": { - "defaultMessage": "Select a rate limit policy for this operation" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.subTitle": { - "defaultMessage": "(Security, Rate Limiting & Scopes)" - }, - "Apis.Details.Resources.components.operationComponents.OperationGovernance.title": { - "defaultMessage": "Operation Governance" - }, - "Apis.Details.Resources.components.operationComponents.content.type": { - "defaultMessage": "Content Type" - }, - "Apis.Details.Resources.components.operationComponents.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Resources.components.operationComponents.parameter.name": { - "defaultMessage": "Parameter Name" - }, - "Apis.Details.Resources.components.operationComponents.parameter.name.exists": { - "defaultMessage": "Parameter type already exists" - }, - "Apis.Details.Resources.components.operationComponents.required": { - "defaultMessage": "Required" - }, - "Apis.Details.Resources.components.operationComponents.required.helper.text": { - "defaultMessage": "Check whether the parameter is required." - }, - "Apis.Details.Resources.components.operationComponents.select.parameter.type": { - "defaultMessage": "Select the parameter type" - }, - "Apis.Details.Scopes.CreateScope.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Scopes.CreateScope.create.new.scope": { - "defaultMessage": "Create New Scope" - }, - "Apis.Details.Scopes.CreateScope.description.about.the.scope": { - "defaultMessage": "Short description about the scope" - }, - "Apis.Details.Scopes.CreateScope.roles.help": { - "defaultMessage": "Enter a valid role and press `Enter`." - }, - "Apis.Details.Scopes.CreateScope.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Scopes.CreateScope.saving": { - "defaultMessage": "Saving" - }, - "Apis.Details.Scopes.CreateScope.scope.added.successfully": { - "defaultMessage": "Scope added successfully" - }, - "Apis.Details.Scopes.CreateScope.scope.updated.successfully": { - "defaultMessage": "Scope updated successfully" - }, - "Apis.Details.Scopes.CreateScope.short.description.name": { - "defaultMessage": "Enter Scope Name ( E.g.,: creator )" - }, - "Apis.Details.Scopes.EditScope.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Scopes.EditScope.short.description.about.the.scope": { - "defaultMessage": "Short description about the scope" - }, - "Apis.Details.Scopes.EditScope.update": { - "defaultMessage": "Update" - }, - "Apis.Details.Scopes.EditScope.update.scope": { - "defaultMessage": "Update Scope" - }, - "Apis.Details.Scopes.EditScopes.roles.help": { - "defaultMessage": "Enter a valid role and press `Enter`." - }, - "Apis.Details.Scopes.Roles.Invalid": { - "defaultMessage": "Role is invalid" - }, - "Apis.Details.Scopes.Roles.User.Invalid": { - "defaultMessage": "At least one role must be associated with the API creator" - }, - "Apis.Details.Scopes.Scopes.create.scopes.button": { - "defaultMessage": "Create Scopes" - }, - "Apis.Details.Scopes.Scopes.create.scopes.title": { - "defaultMessage": "Create API Local Scopes" - }, - "Apis.Details.Scopes.Scopes.heading.edit.scope.heading": { - "defaultMessage": "Scopes" - }, - "Apis.Details.Scopes.Scopes.heading.scope.add_new": { - "defaultMessage": "Add New Local Scope" - }, - "Apis.Details.Scopes.Scopes.heading.scope.heading": { - "defaultMessage": "Scopes" - }, - "Apis.Details.Scopes.Scopes.heading.scope.title.tooltip": { - "defaultMessage": "Manage scopes that are local to this API" - }, - "Apis.Details.Scopes.Scopes.heading.scope.title.tooltip2": { - "defaultMessage": "Manage scopes that are local to this API" - }, - "Apis.Details.Scopes.Scopes.scopes.enable.fine.gained.access.control": { - "defaultMessage": "Scopes enable fine-grained access control to API resources based on user roles." - }, - "Apis.Details.Scopes.Scopes.table.header.actions": { - "defaultMessage": "Actions" - }, - "Apis.Details.Scopes.Scopes.table.header.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Scopes.Scopes.table.header.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Scopes.Scopes.table.header.roles": { - "defaultMessage": "Roles" - }, - "Apis.Details.Scopes.Scopes.table.header.usages": { - "defaultMessage": "Used In" - }, - "Apis.Details.Scopes.Scopes.update.not.allowed": { - "defaultMessage": "*You are not authorized to update scopes of the API due to insufficient permissions" - }, - "Apis.Details.Scopes.visibility.CreateScope.roles.help": { - "defaultMessage": "Enter valid role and press enter" - }, - "Apis.Details.Security.AddPolicy.add.policy.to.api": { - "defaultMessage": "Add Policy to API" - }, - "Apis.Details.Security.AddPolicy.add.threat.protection.policy": { - "defaultMessage": "Add New Threat Protection Policy" - }, - "Apis.Details.Security.AddPolicy.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Security.AddPolicy.policy": { - "defaultMessage": "Policy" - }, - "Apis.Details.Security.AddPolicy.policy.label": { - "defaultMessage": "Policy:" - }, - "Apis.Details.Security.AddPolicy.policy.type.label": { - "defaultMessage": "Policy Type:" - }, - "Apis.Details.Security.AddPolicy.select.policy": { - "defaultMessage": "Please select a policy" - }, - "Apis.Details.Security.AddPolicy.threat.protection.policy.add.failure": { - "defaultMessage": "Failed to add threat protection policy." - }, - "Apis.Details.Security.AddPolicy.threat.protection.policy.add.success": { - "defaultMessage": "Threat protection policy added successfully." - }, - "Apis.Details.Security.SecurityOverview.add.threat.protection.policy": { - "defaultMessage": "Add New Threat Protection Policy" - }, - "Apis.Details.Security.SecurityOverview.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.Security.SecurityOverview.manage.threat.protection.policies": { - "defaultMessage": "Manage Threat Protection Policies" - }, - "Apis.Details.Security.SecurityOverview.policy": { - "defaultMessage": "Policy" - }, - "Apis.Details.Security.SecurityOverview.policy.name": { - "defaultMessage": "Policy Name" - }, - "Apis.Details.Security.SecurityOverview.policy.remove.failure": { - "defaultMessage": "Failed to remove policy." - }, - "Apis.Details.Security.SecurityOverview.policy.remove.success": { - "defaultMessage": "Policy removed successfully." - }, - "Apis.Details.Security.SecurityOverview.policy.type": { - "defaultMessage": "Policy Type" - }, - "Apis.Details.Security.SecurityOverview.threat.protection.policies": { - "defaultMessage": "Threat Protection Policies" - }, - "Apis.Details.Solace.Platform.Environments": { - "defaultMessage": "Solace Platform Environments" - }, - "Apis.Details.Subscriptions.Listing.column.header.application": { - "defaultMessage": "Application" - }, - "Apis.Details.Subscriptions.Listing.column.header.subscriber": { - "defaultMessage": "Subscriber" - }, - "Apis.Details.Subscriptions.Listing.column.header.subscription.actions": { - "defaultMessage": "Actions" - }, - "Apis.Details.Subscriptions.Listing.column.header.subscription.invoice": { - "defaultMessage": "Invoice" - }, - "Apis.Details.Subscriptions.Listing.column.header.subscription.status": { - "defaultMessage": "Status" - }, - "Apis.Details.Subscriptions.Listing.column.header.throttling.tier": { - "defaultMessage": "Tier" - }, - "Apis.Details.Subscriptions.Subscriber.no.claims": { - "defaultMessage": "No subscriber claims data available" - }, - "Apis.Details.Subscriptions.SubscriptionAvailability.all.tenants": { - "defaultMessage": "Available to all the tenants" - }, - "Apis.Details.Subscriptions.SubscriptionAvailability.current.tenant.only": { - "defaultMessage": "Available to current tenant only" - }, - "Apis.Details.Subscriptions.SubscriptionAvailability.specific.tenants": { - "defaultMessage": "Available to specific tenants" - }, - "Apis.Details.Subscriptions.SubscriptionAvailability.sub.heading": { - "defaultMessage": "Make subscriptions available to tenants" - }, - "Apis.Details.Subscriptions.SubscriptionAvailability.subscription.availability": { - "defaultMessage": "Subscription Availability" - }, - "Apis.Details.Subscriptions.SubscriptionPoliciesManage.APIProduct.sub.heading": { - "defaultMessage": "Attach business plans to API" - }, - "Apis.Details.Subscriptions.SubscriptionPoliciesManage.business.plans": { - "defaultMessage": "Business Plans" - }, - "Apis.Details.Subscriptions.SubscriptionPoliciesManage.sub.heading": { - "defaultMessage": "Attach business plans to API" - }, - "Apis.Details.Subscriptions.SubscriptionPoliciesManage.sub.migrated": { - "defaultMessage": "Following policies are migrated from an old version of APIM. You can uncheck and select a different policy. Note that this is an irreversible operation." - }, - "Apis.Details.Subscriptions.Subscriptions.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.Subscriptions.Subscriptions.save": { - "defaultMessage": "Save" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.active.subs.state": { - "defaultMessage": "Active" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.blocked.production.only.subs.state": { - "defaultMessage": "Blocked Production Only" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.blocked.subs.state": { - "defaultMessage": "Blocked" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.error.subscription.block": { - "defaultMessage": "Error: Unable to block subscription. (Reason: {message})" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.error.subscription.block.prod.only": { - "defaultMessage": "Error: Unable to block subscription. (Reason: {message})" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.error.subscription.unblock": { - "defaultMessage": "Error: Unable to unblock subscription. (Reason: {message})" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.manage.subscriptions": { - "defaultMessage": "Manage Subscriptions" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.no.subscriptions": { - "defaultMessage": "No subscriptions data available" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.sub.heading": { - "defaultMessage": "Manage subscriptions of the API" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.subscriber.info.error": { - "defaultMessage": "Error while retrieving the subscriber information" - }, - "Apis.Details.Subscriptions.SubscriptionsTable.subscription.blocked": { - "defaultMessage": "Subscription was blocked." - }, - "Apis.Details.Subscriptions.SubscriptionsTable.subscription.blocked.prod.only": { - "defaultMessage": "Subscription was blocked for production only." - }, - "Apis.Details.Subscriptions.SubscriptionsTable.subscription.unblocked": { - "defaultMessage": "Subscription was unblocked." - }, - "Apis.Details.Subscriptions.SubscriptionsTable.subscriptions.error": { - "defaultMessage": "Error while retrieving the subscriptions" - }, - "Apis.Details.Third.Party.Brokers.broker.displayName": { - "defaultMessage": "Name" - }, - "Apis.Details.Third.Party.Brokers.broker.endpoints": { - "defaultMessage": "Access Endpoints" - }, - "Apis.Details.Third.Party.Brokers.broker.environment": { - "defaultMessage": "Environment" - }, - "Apis.Details.Third.Party.Brokers.broker.name": { - "defaultMessage": "Provider" - }, - "Apis.Details.Third.Party.Brokers.broker.type": { - "defaultMessage": "Organization" - }, - "Apis.Details.Topics.components.AddOperation.op.type": { - "defaultMessage": "Type" - }, - "Apis.Details.Topics.components.AddOperation.operation.topic.or.type.cannot.be.empty.warning": { - "defaultMessage": "Topic name or topic type(s) can't be empty" - }, - "Apis.Details.Topics.components.operationComponents.EditParameter.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Topics.components.operationComponents.EditParameter.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Topics.components.operationComponents.EditParameter.select.data.type": { - "defaultMessage": "Select the Data Type" - }, - "Apis.Details.Topics.components.operationComponents.EditPayloadProperty.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Topics.components.operationComponents.EditPayloadProperty.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Topics.components.operationComponents.EditPayloadProperty.select.data.type": { - "defaultMessage": "Select the Data Type" - }, - "Apis.Details.Topics.components.operationComponents.ListParameter.actions": { - "defaultMessage": "Actions" - }, - "Apis.Details.Topics.components.operationComponents.ListParameter.param.datatype": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Topics.components.operationComponents.ListParameter.param.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Topics.components.operationComponents.ListParameter.param.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Topics.components.operationComponents.ListPayloadProps.actions": { - "defaultMessage": "Actions" - }, - "Apis.Details.Topics.components.operationComponents.ListPayloadProps.data.type": { - "defaultMessage": "Data Type" - }, - "Apis.Details.Topics.components.operationComponents.ListPayloadProps.description": { - "defaultMessage": "Description" - }, - "Apis.Details.Topics.components.operationComponents.ListPayloadProps.name": { - "defaultMessage": "Name" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.Security.tooltip": { - "defaultMessage": "This will enable/disable Application Level securities defined in the Runtime Configurations page." - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.operation.scope.create.new.scope": { - "defaultMessage": "Create New Scope" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.operation.scope.helperText": { - "defaultMessage": "Select a scope to control permissions to this operation" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.operation.scope.label.default": { - "defaultMessage": "Operation scope" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.operation.scope.label.notAvailable": { - "defaultMessage": "No scope available" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.subTitle": { - "defaultMessage": "(Security & Scopes)" - }, - "Apis.Details.Topics.components.operationComponents.OperationGovernance.title": { - "defaultMessage": "Operation Governance" - }, - "Apis.Details.TryOutConsole.token.label": { - "defaultMessage": "Internal API Key" - }, - "Apis.Details.components.APIDetailsTopMenu.advertise.only.label": { - "defaultMessage": "Third Party" - }, - "Apis.Details.components.APIDetailsTopMenu.created.by": { - "defaultMessage": "Created by:" - }, - "Apis.Details.components.APIDetailsTopMenu.current.api": { - "defaultMessage": "Current API" - }, - "Apis.Details.components.APIDetailsTopMenu.error": { - "defaultMessage": "Something went wrong while downloading the API." - }, - "Apis.Details.components.APIDetailsTopMenu.last.updated.time": { - "defaultMessage": "Last updated:" - }, - "Apis.Details.components.APIDetailsTopMenu.read.only.label": { - "defaultMessage": "Read only" - }, - "Apis.Details.components.APIDetailsTopMenu.state": { - "defaultMessage": "State" - }, - "Apis.Details.components.APIDetailsTopMenu.view.in.portal": { - "defaultMessage": "View in Dev Portal" - }, - "Apis.Details.components.CreateNewVersionButton.create.new.version": { - "defaultMessage": "Create New Version" - }, - "Apis.Details.components.DeleteApiButton.button.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Details.components.DeleteApiButton.button.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.components.DeleteApiButton.delete": { - "defaultMessage": "Delete" - }, - "Apis.Details.components.DeleteApiButton.text.description": { - "defaultMessage": "{type} {name} {version} will be deleted permanently." - }, - "Apis.Details.components.DeleteApiButton.title": { - "defaultMessage": "Delete {type}" - }, - "Apis.Details.environments.deploymentOnBoarding.formattedMessage.description": { - "defaultMessage": "It is not possible to deploy new revisions for retired APIs." - }, - "Apis.Details.environments.deploymentOnBoarding.formattedMessage.head": { - "defaultMessage": "Deployments" - }, - "Apis.Details.environments.deploymentOnBoarding.formattedMessage.warningTitle": { - "defaultMessage": "Can not deploy retired APIs" - }, - "Apis.Details.index.Tryout.menu.name": { - "defaultMessage": "Try Out" - }, - "Apis.Details.index.api.definition2": { - "defaultMessage": "API definition" - }, - "Apis.Details.index.api.not.found.body": { - "defaultMessage": "Cannot find the API with the given id" - }, - "Apis.Details.index.api.not.found.title": { - "defaultMessage": "API is not found in the {environmentLabel} Environment" - }, - "Apis.Details.index.asyncApi.definition": { - "defaultMessage": "AsyncAPI Definition" - }, - "Apis.Details.index.business.info": { - "defaultMessage": "business info" - }, - "Apis.Details.index.comments": { - "defaultMessage": "Comments" - }, - "Apis.Details.index.design.configs": { - "defaultMessage": "Basic info" - }, - "Apis.Details.index.documents": { - "defaultMessage": "documents" - }, - "Apis.Details.index.endpoints": { - "defaultMessage": "endpoints" - }, - "Apis.Details.index.environments": { - "defaultMessage": "Deployments" - }, - "Apis.Details.index.external-stores": { - "defaultMessage": "external dev portals" - }, - "Apis.Details.index.left.menu.scope": { - "defaultMessage": "Local Scopes" - }, - "Apis.Details.index.lifecycle": { - "defaultMessage": "lifecycle" - }, - "Apis.Details.index.monetization": { - "defaultMessage": "monetization" - }, - "Apis.Details.index.operations": { - "defaultMessage": "operations" - }, - "Apis.Details.index.overview": { - "defaultMessage": "overview" - }, - "Apis.Details.index.policies": { - "defaultMessage": "Policies" - }, - "Apis.Details.index.properties": { - "defaultMessage": "properties" - }, - "Apis.Details.index.resources": { - "defaultMessage": "resources" - }, - "Apis.Details.index.runtime.configs": { - "defaultMessage": "Runtime" - }, - "Apis.Details.index.schema.definition": { - "defaultMessage": "Schema Definition" - }, - "Apis.Details.index.subscriptions": { - "defaultMessage": "subscriptions" - }, - "Apis.Details.index.topics": { - "defaultMessage": "topics" - }, - "Apis.Details.index.wsdl.definition": { - "defaultMessage": "WSDL Definition" - }, - "Apis.Details.local.Scopes.heading.edit.heading": { - "defaultMessage": "Local Scopes" - }, - "Apis.Details.local.Scopes.heading.scope.heading": { - "defaultMessage": "Local Scopes" - }, - "Apis.Details.scopes.Edit.text.editor.edit": { - "defaultMessage": "Edit" - }, - "Apis.Listing.ApiTableView.context": { - "defaultMessage": "Context" - }, - "Apis.Listing.ApiTableView.items.per.page": { - "defaultMessage": "Items per page" - }, - "Apis.Listing.ApiTableView.name": { - "defaultMessage": "Name" - }, - "Apis.Listing.ApiTableView.provider": { - "defaultMessage": "Provider" - }, - "Apis.Listing.ApiTableView.version": { - "defaultMessage": "Version" - }, - "Apis.Listing.ApiThumb.by": { - "defaultMessage": "By" - }, - "Apis.Listing.ApiThumb.by.colon": { - "defaultMessage": ":" - }, - "Apis.Listing.ApiThumb.channel": { - "defaultMessage": "Channel" - }, - "Apis.Listing.ApiThumb.context": { - "defaultMessage": "Context" - }, - "Apis.Listing.ApiThumb.owners": { - "defaultMessage": "Owners" - }, - "Apis.Listing.ApiThumb.owners.business": { - "defaultMessage": "Business" - }, - "Apis.Listing.ApiThumb.owners.technical": { - "defaultMessage": "Technical" - }, - "Apis.Listing.ApiThumb.version": { - "defaultMessage": "Version" - }, - "Apis.Listing.SampleAPI.SampleAPI.create.new": { - "defaultMessage": "Let’s get started !" - }, - "Apis.Listing.SampleAPI.SampleAPI.create.new.description": { - "defaultMessage": "Choose your option to create an API" - }, - "Apis.Listing.SampleAPI.SampleAPI.graphql.api": { - "defaultMessage": "GraphQL" - }, - "Apis.Listing.SampleAPI.SampleAPI.graphql.import.sdl.content": { - "defaultMessage": "Use an existing definition" - }, - "Apis.Listing.SampleAPI.SampleAPI.graphql.import.sdl.title": { - "defaultMessage": "Import GraphQL SDL" - }, - "Apis.Listing.SampleAPI.SampleAPI.no.apis.deployed": { - "defaultMessage": "No APIs have been deployed yet" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.api": { - "defaultMessage": "REST API" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.api.import.open.content": { - "defaultMessage": "Import OAS 3 or Swagger 2.0 definition" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.api.import.open.title": { - "defaultMessage": "Import Open API" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.api.scratch.content": { - "defaultMessage": "Design and prototype a new REST API" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.api.scratch.title": { - "defaultMessage": "Start From Scratch" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.d.sample.content": { - "defaultMessage": "Sample Pizza Shack API" - }, - "Apis.Listing.SampleAPI.SampleAPI.rest.d.sample.title": { - "defaultMessage": "Deploy Sample API" - }, - "Apis.Listing.SampleAPI.SampleAPI.service.catalog.api": { - "defaultMessage": "Service Catalog" - }, - "Apis.Listing.SampleAPI.SampleAPI.soap.api": { - "defaultMessage": "SOAP API" - }, - "Apis.Listing.SampleAPI.SampleAPI.soap.import.wsdl.content": { - "defaultMessage": "Generate REST or create a pass-through API" - }, - "Apis.Listing.SampleAPI.SampleAPI.soap.import.wsdl.title": { - "defaultMessage": "Import WSDL" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.api": { - "defaultMessage": "Streaming API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.design.new.title": { - "defaultMessage": "Web Socket API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.design.new.ws.content": { - "defaultMessage": "Create a Web Socket API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.import.content": { - "defaultMessage": "Upload a file or provide an Async API URL" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.import.title": { - "defaultMessage": "Import an AsyncAPI" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.sse.content": { - "defaultMessage": "Create a Server-Sent Events API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.sse.title": { - "defaultMessage": "SSE API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.websub.content": { - "defaultMessage": "Create a Webhook/WebSub API" - }, - "Apis.Listing.SampleAPI.SampleAPI.streaming.websub.title": { - "defaultMessage": "Webhook API" - }, - "Apis.Listing.SampleAPI.SampleAPIProduct.title": { - "defaultMessage": "Let’s get started !" - }, - "Apis.Listing.SampleAPI.continue.on.close": { - "defaultMessage": "Close" - }, - "Apis.Listing.SampleAPI.continue.on.error": { - "defaultMessage": "Continue" - }, - "Apis.Listing.SampleAPI.popup.create.complete": { - "defaultMessage": "API created successfully!" - }, - "Apis.Listing.SampleAPI.popup.create.inprogress": { - "defaultMessage": "Creating sample API ..." - }, - "Apis.Listing.SampleAPI.popup.deploy.complete": { - "defaultMessage": "API deployed successfully!" - }, - "Apis.Listing.SampleAPI.popup.deploy.inprogress": { - "defaultMessage": "Deploying sample API ..." - }, - "Apis.Listing.SampleAPI.popup.deploy.pending": { - "defaultMessage": "API revision deployment request sent" - }, - "Apis.Listing.SampleAPI.popup.publish.complete": { - "defaultMessage": "API published successfully!" - }, - "Apis.Listing.SampleAPI.popup.publish.inprogress": { - "defaultMessage": "Publishing sample API to developer portal ..." - }, - "Apis.Listing.SampleAPI.popup.revision.complete": { - "defaultMessage": "API revision created successfully!" - }, - "Apis.Listing.SampleAPI.popup.revision.inprogress": { - "defaultMessage": "Creating a revision of sample API ..." - }, - "Apis.Listing.SampleAPI.popup.update.complete": { - "defaultMessage": "API updated successfully!" - }, - "Apis.Listing.SampleAPI.popup.update.inprogress": { - "defaultMessage": "Updating sample API ..." - }, - "Apis.Listing.SampleAPIProduct.creator.error": { - "defaultMessage": "API is not deployed yet! Please deploy the API before trying out" - }, - "Apis.Listing.SampleAPIProduct.description": { - "defaultMessage": "Combine multiple API resources in to a single API" - }, - "Apis.Listing.TableView.TableView.doc.flag": { - "defaultMessage": "[Doc]" - }, - "Apis.Listing.TableView.TableView.error.loading": { - "defaultMessage": "Error While Loading APIs" - }, - "Apis.Listing.TaskState.generic.error.prefix": { - "defaultMessage": "Error while" - }, - "Apis.Listing.components.ImageGenerator.DocThumb.apiName": { - "defaultMessage": "API Name" - }, - "Apis.Listing.components.ImageGenerator.DocThumb.apiVersion": { - "defaultMessage": "API Version" - }, - "Apis.Listing.components.ImageGenerator.DocThumb.sourceType": { - "defaultMessage": "Source Type:" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.cancel.btn": { - "defaultMessage": "CANCEL" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.remove": { - "defaultMessage": "Remove" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.remove.btn": { - "defaultMessage": "Remove" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.save.btn": { - "defaultMessage": "Save" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.saving.btn": { - "defaultMessage": "Saving" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.thumbnail.remove.success": { - "defaultMessage": "Thumbnail removed successfully" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.thumbnail.upload.error": { - "defaultMessage": "Error occurred while uploading new thumbnail. Please try again." - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.thumbnail.upload.success": { - "defaultMessage": "Thumbnail uploaded successfully" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.thumbnail.validation.error": { - "defaultMessage": "Invalid file or API information is not set correctly." - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.upload": { - "defaultMessage": "Upload" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.upload.btn": { - "defaultMessage": "Upload" - }, - "Apis.Listing.components.ImageGenerator.ThumbnailView.uploading.btn": { - "defaultMessage": "Uploading" - }, - "Apis.Listing.components.TopMenu.api.singular": { - "defaultMessage": "API" - }, - "Apis.Listing.components.TopMenu.apiproduct.singular": { - "defaultMessage": "API product" - }, - "Apis.Listing.components.TopMenu.apiproducts": { - "defaultMessage": "API Products" - }, - "Apis.Listing.components.TopMenu.apiproducts.results": { - "defaultMessage": "API products" - }, - "Apis.Listing.components.TopMenu.apis": { - "defaultMessage": "APIs" - }, - "Apis.Listing.components.TopMenu.create.an.api.product": { - "defaultMessage": "Create an API Product" - }, - "Apis.Listing.components.TopMenu.create.api": { - "defaultMessage": "Create API" - }, - "Apis.Listing.components.TopMenu.displaying": { - "defaultMessage": "Total:" - }, - "Apis.Listing.components.TopMenu.search.results": { - "defaultMessage": "Search results" - }, - "Apis.Listing.components.TopMenu.search.results.singular": { - "defaultMessage": "Search result" - }, - "Apis.Listing.components.TopMenu.unified.search": { - "defaultMessage": "Unified search" - }, - "Apis.Listing.import.from.service.catalog.title": { - "defaultMessage": "Import From Service Catalog" - }, - "Apis.Shared.AppErrorBoundary.something.went.wrong": { - "defaultMessage": "Oops! This is embarrassing" - }, - "Apis.Shared.ConfirmDialog.are.you.sure": { - "defaultMessage": "Are you sure?" - }, - "Apis.Shared.ConfirmDialog.cancel": { - "defaultMessage": "Cancel" - }, - "Apis.Shared.ConfirmDialog.ok": { - "defaultMessage": "OK" - }, - "Apis.Shared.ConfirmDialog.please.confirm": { - "defaultMessage": "Please Confirm" - }, - "Apis.Shared.PublisherRootErrorBoundary.refresh": { - "defaultMessage": "Refresh" - }, - "Apis.Shared.PublisherRootErrorBoundary.refresh.or.try.again.message": { - "defaultMessage": "You may refresh the page now or try again later" - }, - "Apis.Shared.PublisherRootErrorBoundary.something.went.wrong.while.rendering.button": { - "defaultMessage": "Something went wrong while rendering the" - }, - "Apis.Shared.PublisherRootErrorBoundary.something.went.wrong.while.rendering.heading": { - "defaultMessage": "Something went wrong while rendering the" - }, - "Apis.Shared.RedirectToLogin.you.will.be.redirected.to": { - "defaultMessage": "You will be redirected to {page}" - }, - "Applications.Details.Invoice.view.btn": { - "defaultMessage": "View Invoice" - }, - "Base.Errors.AuthorizedError.default_body": { - "defaultMessage": "User is not authorized to access the API" - }, - "Base.Errors.AuthorizedError.default_tittle": { - "defaultMessage": "Authorized Error" - }, - "Base.Errors.ResourceNotFound.api.list": { - "defaultMessage": "API List" - }, - "Base.Errors.ResourceNotFound.api.product.list": { - "defaultMessage": "API Product List" - }, - "Base.Errors.ResourceNotFound.more.links": { - "defaultMessage": "You may check the links below" - }, - "Base.Errors.ResourceNotfound.default_body": { - "defaultMessage": "The page you are looking for is not available" - }, - "Base.Errors.ResourceNotfound.default_tittle": { - "defaultMessage": "Page Not Found" - }, - "Base.Footer.Footer.product_details": { - "defaultMessage": "WSO2 API-M v4.3.0 | © 2024 WSO2 LLC" - }, - "Base.Header.avatar.Avatar.logout": { - "defaultMessage": "Logout" - }, - "Base.Header.headersearch.HeaderSearch.search_api.tooltip": { - "defaultMessage": "Search" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option0": { - "defaultMessage": "Content [ Default ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option1": { - "defaultMessage": "Name [ Syntax - name:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option10": { - "defaultMessage": "Properties [Syntax - property_name:property_value]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option11": { - "defaultMessage": "Tags [ Syntax - tags:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option12": { - "defaultMessage": "Api Category [ Syntax - api-category:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option2": { - "defaultMessage": "Provider [ Syntax - provider:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option3": { - "defaultMessage": "Version [ Syntax - version:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option4": { - "defaultMessage": "Context [ Syntax - context:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option5": { - "defaultMessage": "Status [ Syntax - status:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.option6": { - "defaultMessage": "Description [ Syntax - description:xxxx ]" - }, - "Base.Header.headersearch.HeaderSearch.tooltip.title": { - "defaultMessage": "Search Options for APIs and APIProducts" - }, - "Base.Header.navbar.GlobalNavBar.Service.Catalog": { - "defaultMessage": "Services" - }, - "Base.Header.navbar.GlobalNavBar.SubscriptionCreation": { - "defaultMessage": "Subscripton Creation" - }, - "Base.Header.navbar.GlobalNavBar.SubscriptionUpdate": { - "defaultMessage": "Subscripton Update" - }, - "Base.Header.navbar.GlobalNavBar.analytics": { - "defaultMessage": "Analytics" - }, - "Base.Header.navbar.GlobalNavBar.api.products": { - "defaultMessage": "API Products" - }, - "Base.Header.navbar.GlobalNavBar.apis": { - "defaultMessage": "APIs" - }, - "Base.Header.navbar.GlobalNavBar.common.policies": { - "defaultMessage": "Policies" - }, - "Base.Header.navbar.GlobalNavBar.global.policies": { - "defaultMessage": "Global Policies" - }, - "Base.Header.navbar.GlobalNavBar.scopes": { - "defaultMessage": "Scopes" - }, - "Cancel": { - "defaultMessage": "Cancel" - }, - "Cannot.Find.PolicyObj.For.PolicyId": { - "defaultMessage": "Cannot find policy for Id:" - }, - "CommonPolicies.CreatePolicy.breadcrumb.create.new.policy": { - "defaultMessage": "Create New Policy" - }, - "CommonPolicies.CreatePolicy.breadcrumb.policies": { - "defaultMessage": "Policies" - }, - "CommonPolicies.DeletePolicy.confirm.dialog.cancel.delete": { - "defaultMessage": "Cancel" - }, - "CommonPolicies.DeletePolicy.confirm.dialog.confirm.content": { - "defaultMessage": "Are you sure you want to delete {policy} policy ?" - }, - "CommonPolicies.DeletePolicy.confirm.dialog.confirm.delete": { - "defaultMessage": "Yes" - }, - "CommonPolicies.DeletePolicy.confirm.dialog.confirm.title": { - "defaultMessage": "Confirm Delete" - }, - "CommonPolicies.DeletePolicy.policy.delete": { - "defaultMessage": "Delete" - }, - "CommonPolicies.Listing.onboarding.create.new": { - "defaultMessage": "Let’s get started !" - }, - "CommonPolicies.Listing.onboarding.policies.tooltip": { - "defaultMessage": "Policies provide the capability to alter the behavior of API resources" - }, - "CommonPolicies.Listing.policies.title.add.new.policy": { - "defaultMessage": "Add New Policy" - }, - "CommonPolicies.Listing.policies.title.name": { - "defaultMessage": "Policies" - }, - "CommonPolicies.Listing.policies.title.tooltip": { - "defaultMessage": "You can utilize these policies at the operation level by navigating to the Policies tab under any desired API" - }, - "CommonPolicies.Listing.policies.title.update.not.allowed": { - "defaultMessage": "*You are not authorized to manage policies due to insufficient permissions" - }, - "CommonPolicies.Listing.table.header.actions.title": { - "defaultMessage": "Actions" - }, - "CommonPolicies.Listing.table.header.actions.view": { - "defaultMessage": "View" - }, - "CommonPolicies.Listing.table.header.applicable.flows": { - "defaultMessage": "Applicable Flows" - }, - "CommonPolicies.Listing.table.header.description": { - "defaultMessage": "Description" - }, - "CommonPolicies.Listing.table.header.policy.name": { - "defaultMessage": "Policy Name" - }, - "CommonPolicies.Listing.table.header.policy.version": { - "defaultMessage": "Policy Version" - }, - "CommonPolicies.ViewPolicy.policies.title": { - "defaultMessage": "Policies" - }, - "Confirm.Delete": { - "defaultMessage": "Confirm Deletion" - }, - "Confirm.Delete.Verify": { - "defaultMessage": "Are you sure you want to delete the policy?" - }, - "Confirm.Deploy": { - "defaultMessage": "Confirm Deployment" - }, - "Confirm.Deploy.Verify": { - "defaultMessage": "Are you sure you want to depoly the policy in the selected gateways?" - }, - "Confirm.UnDeploy": { - "defaultMessage": "Confirm Undeployment" - }, - "Confirm.Undeploy.Verify": { - "defaultMessage": "Are you sure you want to undepoly the policy?" - }, - "Connection.Timeout": { - "defaultMessage": "Connection Timeout" - }, - "Delete": { - "defaultMessage": "Delete" - }, - "Deploy": { - "defaultMessage": "Deploy" - }, - "Deploy.Helper": { - "defaultMessage": "If another global policy is already deployed to a gateway, that gateway will not be available for deployment of this policy. Please undeploy the previously deployed global policy first." - }, - "Deployed.Gateway.Listing.Table.Header.Description": { - "defaultMessage": "Description" - }, - "Deployed.Gateway.Listing.Table.Header.Name": { - "defaultMessage": "Deployed Gateways" - }, - "Deployed.Gateway.Listing.Table.Not.Available": { - "defaultMessage": "No deployed gateways" - }, - "Endpoint.Suspension.State": { - "defaultMessage": "Endpoint Suspension State" - }, - "Error.Deploy.Policy": { - "defaultMessage": "Error occurred while deploying the policy" - }, - "Error.Retrieve.Policy": { - "defaultMessage": "Error occurred while retrieving the policy" - }, - "Error.Retrieve.Policy.List": { - "defaultMessage": "Error occurred while retrieving the policy list" - }, - "Error.Undeploy.Policy": { - "defaultMessage": "Error occurred while undeploying the policy" - }, - "Error.Validating.Regex": { - "defaultMessage": "Error while validating the regex" - }, - "Error.while.validating.the.imported.graphQLSchema": { - "defaultMessage": "Error while validating the imported schema" - }, - "Fault.Details.Policies.PolicyList.Title": { - "defaultMessage": "Fault" - }, - "Fetching.Policies.Error": { - "defaultMessage": "Error while fetching policies" - }, - "Fetching.Policies.Settings": { - "defaultMessage": "Error while fetching settings" - }, - "Global.Details.Policies.AttachedPolicyCard.apiSpecificPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Global.Details.Policies.AttachedPolicyCard.commonPolicy.download.error": { - "defaultMessage": "Something went wrong while downloading the policy" - }, - "Global.Details.Policies.AttachedPolicyForm.General.cancel": { - "defaultMessage": "Cancel" - }, - "Global.Details.Policies.AttachedPolicyForm.General.description.title": { - "defaultMessage": "Description" - }, - "Global.Details.Policies.AttachedPolicyForm.General.description.value.not.provided": { - "defaultMessage": "Oops! Looks like this policy does not have a description" - }, - "Global.Details.Policies.AttachedPolicyForm.General.description.value.provided": { - "defaultMessage": "{description}" - }, - "Global.Details.Policies.AttachedPolicyForm.General.reset": { - "defaultMessage": "Reset" - }, - "Global.Details.Policies.AttachedPolicyForm.General.save": { - "defaultMessage": "Save" - }, - "Global.Details.Policies.AttachedPolicyForm.General.saving": { - "defaultMessage": "Saving" - }, - "Global.Details.Policies.DraggablePolicyCard.policy.view": { - "defaultMessage": "View" - }, - "Global.Details.Policies.PolicyConfigurationEditDrawer.title": { - "defaultMessage": "Configure {policy}" - }, - "Global.Details.Policies.PolicyConfiguringDrawer.title": { - "defaultMessage": "Configure {policy}" - }, - "Global.Details.Policies.PolicyList.title": { - "defaultMessage": "Policy List" - }, - "Global.Details.Policies.SaveOperationPolicies.save": { - "defaultMessage": "Save" - }, - "Global.Details.Policies.SaveOperationPolicies.update": { - "defaultMessage": "Update" - }, - "Global.Policies": { - "defaultMessage": "Global Policies" - }, - "Global.Policy.Listing.Table.Header.Name": { - "defaultMessage": "Global Policy" - }, - "GlobalPolicies.Listing.Table.Header.Actions.Edit": { - "defaultMessage": "Edit" - }, - "GlobalPolicies.Listing.Table.Header.Actions.View": { - "defaultMessage": "View" - }, - "GlobalPolicies.Listing.onboarding.create.new": { - "defaultMessage": "Let’s get started!" - }, - "GlobalPolicies.Listing.onboarding.policies.tooltip": { - "defaultMessage": "Global policies provide you the ability to deploy policy mappings to all the APIs deployed in a specific gateway and not just one single API. Click below to create your first global policy." - }, - "GlobalPolicies.Listing.onboarding.policies.tooltip.not.allowed": { - "defaultMessage": "Global policies provide you the ability to deploy policy mappings to all the APIs deployed in a specific gateway and not just one single API. Please contact a privileged user to create a global policy." - }, - "GlobalPolicies.Listing.policies.title.add.new.policy": { - "defaultMessage": "Add new global policy" - }, - "GlobalPolicies.Listing.policies.title.name": { - "defaultMessage": "Global Policies" - }, - "GlobalPolicies.Listing.policies.title.tooltip": { - "defaultMessage": "This will add policies globally to the gateways. Please navigate to the Policies tab under any desired API if you want to add API / operation level policies" - }, - "GlobalPolicies.Listing.table.header.actions.delete": { - "defaultMessage": "Delete" - }, - "LoginDenied.logout": { - "defaultMessage": "Logout" - }, - "LoginDenied.message": { - "defaultMessage": "The server could not verify that you are authorized to access the requested resource." - }, - "LoginDenied.title": { - "defaultMessage": "Error 403 : Forbidden" - }, - "Polcies.TextField.Description": { - "defaultMessage": "Description" - }, - "Polcies.TextField.Name": { - "defaultMessage": "Name" - }, - "Policy.Delete.Error": { - "defaultMessage": "Error while deleting the policy" - }, - "Policy.Delete.Successful": { - "defaultMessage": "Policy deleted successfully" - }, - "Policy.Deploy.Successful": { - "defaultMessage": "Policy deployed successfully" - }, - "Policy.Description.Cannot.Be.Empty": { - "defaultMessage": "Policy description cannot be empty" - }, - "Policy.Mapping.Added.Successfully": { - "defaultMessage": "Policy mapping added successfully" - }, - "Policy.Mapping.Cannot.Be.Empty": { - "defaultMessage": "Policy mapping cannot be empty" - }, - "Policy.Mapping.Update.Error": { - "defaultMessage": "Error occurred while updating the policy mapping" - }, - "Policy.Mapping.Update.Success": { - "defaultMessage": "Policy mapping updated successfully" - }, - "Policy.Name.Cannot.Be.Empty": { - "defaultMessage": "Policy name cannot be empty" - }, - "Policy.Undeploy.Successful": { - "defaultMessage": "Policy undeployed successfully" - }, - "Request.Details.Policies.PolicyList.Title": { - "defaultMessage": "Request" - }, - "Response.Details.Policies.PolicyList.Title": { - "defaultMessage": "Response" - }, - "Scopes.Create.CreateScope.cancel": { - "defaultMessage": "Cancel" - }, - "Scopes.Create.CreateScope.create.new.scope": { - "defaultMessage": "Create New Scope" - }, - "Scopes.Create.CreateScope.heading.scope.heading": { - "defaultMessage": "Scopes" - }, - "Scopes.Create.CreateScope.roles.help": { - "defaultMessage": "Enter a valid role and press `Enter`." - }, - "Scopes.Create.CreateScope.save": { - "defaultMessage": "Save" - }, - "Scopes.Create.CreateScope.saving": { - "defaultMessage": "Saving" - }, - "Scopes.Create.CreateScope.scope.added.successfully": { - "defaultMessage": "Scope added successfully" - }, - "Scopes.Create.CreateScope.short.description.display.name": { - "defaultMessage": "Enter Scope Display Name ( E.g.,: creator )" - }, - "Scopes.Create.CreateScope.short.description.name": { - "defaultMessage": "Enter Scope Name ( E.g.,: creator )" - }, - "Scopes.Create.Scope.description.length.exceeded": { - "defaultMessage": "Exceeds maximum length limit of 512 characters" - }, - "Scopes.Create.Scope.display.name.length.exceeded": { - "defaultMessage": "Exceeds maximum length limit of 512 characters" - }, - "Scopes.Create.Scope.displayName.length.exceeded": { - "defaultMessage": "Exceeds maximum length limit of 255 characters" - }, - "Scopes.Create.Scope.name.length.exceeded": { - "defaultMessage": "Exceeds maximum length limit of 60 characters" - }, - "Scopes.Create.ScopeCreate.Roles.Invalid": { - "defaultMessage": "Role is invalid" - }, - "Scopes.Delete.Delete.document.scope.label.ok.confirm": { - "defaultMessage": "Are you sure you want to delete scope {scope} ?" - }, - "Scopes.Delete.Delete.scope.delete": { - "defaultMessage": "Delete" - }, - "Scopes.Delete.Delete.scope.deleted.successfully": { - "defaultMessage": "API Scope deleted successfully!" - }, - "Scopes.Delete.Delete.scope.listing.delete.confirm": { - "defaultMessage": "Confirm Delete" - }, - "Scopes.Delete.Delete.scope.listing.label.cancel": { - "defaultMessage": "Cancel" - }, - "Scopes.Delete.Delete.scope.listing.label.ok.yes": { - "defaultMessage": "Yes" - }, - "Scopes.Delete.Delete.something.went.wrong.while.updating.the.api": { - "defaultMessage": "Error occurred while deleting scope" - }, - "Scopes.EditScope.Roles.Invalid": { - "defaultMessage": "Role is invalid" - }, - "Scopes.EditScope.cancel": { - "defaultMessage": "Cancel" - }, - "Scopes.EditScope.heading.scope.heading": { - "defaultMessage": "Scopes" - }, - "Scopes.EditScope.roles.help": { - "defaultMessage": "Enter a valid role and press `Enter`." - }, - "Scopes.EditScope.scope.updated.successfully": { - "defaultMessage": "Scope updated successfully" - }, - "Scopes.EditScope.short.description.about.the.scope": { - "defaultMessage": "Short description about the scope" - }, - "Scopes.EditScope.short.description.display.name": { - "defaultMessage": "Enter Scope Display Name ( E.g.,: creator )" - }, - "Scopes.EditScope.update": { - "defaultMessage": "Update" - }, - "Scopes.EditScope.update.scope": { - "defaultMessage": "Update Scope" - }, - "Scopes.Listing.Listing.heading.scope.add_new": { - "defaultMessage": "Add New Scope" - }, - "Scopes.Listing.Listing.heading.scope.heading": { - "defaultMessage": "Scopes" - }, - "Scopes.Listing.Listing.scopes.enable.fine.gained.access.control": { - "defaultMessage": "Scopes enable fine-grained access control to API resources based on user roles." - }, - "Scopes.Listing.Listing.scopes.text.editor.edit": { - "defaultMessage": "Edit" - }, - "Scopes.Listing.Listing.table.header.actions": { - "defaultMessage": "Actions" - }, - "Scopes.Listing.Listing.table.header.description": { - "defaultMessage": "Description" - }, - "Scopes.Listing.Listing.table.header.display.name": { - "defaultMessage": "Display Name" - }, - "Scopes.Listing.Listing.table.header.name": { - "defaultMessage": "Name" - }, - "Scopes.Listing.Listing.table.header.number.of.usages": { - "defaultMessage": "Number of usages" - }, - "Scopes.Listing.Listing.table.header.roles": { - "defaultMessage": "Roles" - }, - "Scopes.Listing.Listing.update.not.allowed": { - "defaultMessage": "*You are not authorized to update scopes of the API due to insufficient permissions" - }, - "Scopes.Usage.Usage.api.context": { - "defaultMessage": "Context:" - }, - "Scopes.Usage.Usage.api.name": { - "defaultMessage": "API Name:" - }, - "Scopes.Usage.Usage.api.provider": { - "defaultMessage": "Provider:" - }, - "Scopes.Usage.Usage.api.version": { - "defaultMessage": "Version:" - }, - "Scopes.Usage.Usage.scope.usage": { - "defaultMessage": "Usage" - }, - "Scopes.Usage.Usage.usage": { - "defaultMessage": "Usages of" - }, - "Scopes.Usage.Usage.usage.cancel": { - "defaultMessage": "Cancel" - }, - "Scopes.Usage.UsageView.resource.target": { - "defaultMessage": "Target" - }, - "Scopes.Usage.UsageView.resource.usage": { - "defaultMessage": "List of Resources" - }, - "Scopes.Usage.UsageView.resource.verb": { - "defaultMessage": "Verb" - }, - "Scopes.Usage.UsageViewAPI.api.usage": { - "defaultMessage": "List of APIs" - }, - "Select.Gateways.Label": { - "defaultMessage": "Select gateways to deploy" - }, - "Select.Gateways.Placeholder": { - "defaultMessage": "Select gateways to deploy" - }, - "ServiceCatalog.CreateApi.api.context.label": { - "defaultMessage": "Context" - }, - "ServiceCatalog.CreateApi.api.created.successfully": { - "defaultMessage": "API created from service successfully!" - }, - "ServiceCatalog.CreateApi.api.name.label": { - "defaultMessage": "Name" - }, - "ServiceCatalog.CreateApi.api.version.label": { - "defaultMessage": "Version" - }, - "ServiceCatalog.CreateApi.cancel.btn": { - "defaultMessage": "Cancel" - }, - "ServiceCatalog.CreateApi.create.api": { - "defaultMessage": "Create API" - }, - "ServiceCatalog.CreateApi.create.api.dialog.helper": { - "defaultMessage": "Create API from service {serviceName}" - }, - "ServiceCatalog.CreateApi.create.api.dialog.title": { - "defaultMessage": "Create API" - }, - "ServiceCatalog.CreateApi.error.create.api": { - "defaultMessage": "Error while creating API from service" - }, - "ServiceCatalog.CreateApi.mandatory.field.label": { - "defaultMessage": "Mandatory fields" - }, - "ServiceCatalog.CreateApi.select.protocol": { - "defaultMessage": "Select Protocol" - }, - "ServiceCatalog.CreateApi.update.btn": { - "defaultMessage": "Create API" - }, - "ServiceCatalog.CreateApi.update.btn.in.progress": { - "defaultMessage": "Creating API ..." - }, - "ServiceCatalog.CreateSoapPassthroughApi.create.api.dialog.helper": { - "defaultMessage": "Create SOAP Passthrough API from service {serviceName}" - }, - "ServiceCatalog.Listing.Delete.cancel": { - "defaultMessage": "Cancel" - }, - "ServiceCatalog.Listing.Delete.confirm": { - "defaultMessage": "Confirm Delete" - }, - "ServiceCatalog.Listing.Delete.ok.confirm": { - "defaultMessage": "Are you sure you want to delete the service {service} ?" - }, - "ServiceCatalog.Listing.Delete.ok.yes": { - "defaultMessage": "Yes" - }, - "ServiceCatalog.Listing.Listing.error.delete": { - "defaultMessage": "Error while deleting service" - }, - "ServiceCatalog.Listing.Listing.error.loading": { - "defaultMessage": "Error while loading services" - }, - "ServiceCatalog.Listing.Listing.heading": { - "defaultMessage": "Services" - }, - "ServiceCatalog.Listing.Listing.heading.displaying.service": { - "defaultMessage": "Service" - }, - "ServiceCatalog.Listing.Listing.heading.displaying.services": { - "defaultMessage": "Services" - }, - "ServiceCatalog.Listing.Listing.heading.displaying.total": { - "defaultMessage": "Total:" - }, - "ServiceCatalog.Listing.Listing.service.deleted.successfully": { - "defaultMessage": "Service deleted successfully!" - }, - "ServiceCatalog.Listing.Onboarding.add.sample.success": { - "defaultMessage": "Sample Service added successfully!" - }, - "ServiceCatalog.Listing.Onboarding.error.creating.sample.service": { - "defaultMessage": "Error while creating Sample Service" - }, - "ServiceCatalog.Listing.Onboarding.learn.heading": { - "defaultMessage": "Learn to write your first" - }, - "ServiceCatalog.Listing.Onboarding.learn.heading.sub": { - "defaultMessage": "Integration Service" - }, - "ServiceCatalog.Listing.Onboarding.learn.heading.text": { - "defaultMessage": "Create and Deploy your first Integration Service" - }, - "ServiceCatalog.Listing.Onboarding.learn.link": { - "defaultMessage": "Get Started" - }, - "ServiceCatalog.Listing.Onboarding.sample.add": { - "defaultMessage": "Add Sample Service" - }, - "ServiceCatalog.Listing.Onboarding.sample.heading": { - "defaultMessage": "Add a sample" - }, - "ServiceCatalog.Listing.Onboarding.sample.heading.sub": { - "defaultMessage": "Integration Service" - }, - "ServiceCatalog.Listing.Onboarding.sample.heading.text": { - "defaultMessage": "Deploy the Sample Integration Service already available with WSO2 API Manager and get started in one click" - }, - "ServiceCatalog.Listing.Overview.back.btn": { - "defaultMessage": "Go Back" - }, - "ServiceCatalog.Listing.Overview.close.btn": { - "defaultMessage": "Close" - }, - "ServiceCatalog.Listing.Overview.created.time": { - "defaultMessage": "Created Time" - }, - "ServiceCatalog.Listing.Overview.definition.download": { - "defaultMessage": "Service Definition" - }, - "ServiceCatalog.Listing.Overview.definition.type": { - "defaultMessage": "Schema Type" - }, - "ServiceCatalog.Listing.Overview.display.name": { - "defaultMessage": "{serviceDisplayName}" - }, - "ServiceCatalog.Listing.Overview.download.service": { - "defaultMessage": "Download" - }, - "ServiceCatalog.Listing.Overview.download.service.error": { - "defaultMessage": "Something went wrong while downloading the Service Definition." - }, - "ServiceCatalog.Listing.Overview.error.loading.service": { - "defaultMessage": "Error while loading service" - }, - "ServiceCatalog.Listing.Overview.mutual.ssl": { - "defaultMessage": "Mutual SSL" - }, - "ServiceCatalog.Listing.Overview.mutual.ssl.disabled": { - "defaultMessage": "Disabled" - }, - "ServiceCatalog.Listing.Overview.mutual.ssl.enabled": { - "defaultMessage": "Enabled" - }, - "ServiceCatalog.Listing.Overview.parent.breadcrumb": { - "defaultMessage": "Service Catalog" - }, - "ServiceCatalog.Listing.Overview.readonly.breadcrumb": { - "defaultMessage": "Overview" - }, - "ServiceCatalog.Listing.Overview.retrieve.service.def.error": { - "defaultMessage": "Something went wrong while retrieving the Service Definition." - }, - "ServiceCatalog.Listing.Overview.security.type": { - "defaultMessage": "Security Type" - }, - "ServiceCatalog.Listing.Overview.service.description": { - "defaultMessage": "{description}" - }, - "ServiceCatalog.Listing.Overview.service.type.async.tooltip": { - "defaultMessage": "Async API Service" - }, - "ServiceCatalog.Listing.Overview.service.type.graphql.tooltip": { - "defaultMessage": "GraphQL Service" - }, - "ServiceCatalog.Listing.Overview.service.type.rest.tooltip": { - "defaultMessage": "REST Service" - }, - "ServiceCatalog.Listing.Overview.service.type.soap.tooltip": { - "defaultMessage": "SOAP Service" - }, - "ServiceCatalog.Listing.Overview.service.url": { - "defaultMessage": "Service URL" - }, - "ServiceCatalog.Listing.Overview.service.version": { - "defaultMessage": "{serviceVersion}" - }, - "ServiceCatalog.Listing.Overview.view.definition": { - "defaultMessage": "View Definition" - }, - "ServiceCatalog.Listing.Usages.api.context": { - "defaultMessage": "Context" - }, - "ServiceCatalog.Listing.Usages.api.name": { - "defaultMessage": "API Name" - }, - "ServiceCatalog.Listing.Usages.api.version": { - "defaultMessage": "Version" - }, - "ServiceCatalog.Listing.Usages.cancel": { - "defaultMessage": "Cancel" - }, - "ServiceCatalog.Listing.Usages.service.usage": { - "defaultMessage": "Used by {usage} API(s)" - }, - "ServiceCatalog.Listing.Usages.usage": { - "defaultMessage": "Usages of {serviceName}" - }, - "ServiceCatalog.Listing.components.ServiceCard.create.api": { - "defaultMessage": "Create API" - }, - "ServiceCatalog.Listing.components.ServiceCard.type": { - "defaultMessage": "Type" - }, - "ServiceCatalog.Listing.components.ServiceCard.version": { - "defaultMessage": "Version" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.created.time": { - "defaultMessage": "Created Time" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.name": { - "defaultMessage": "Service" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.schema.type": { - "defaultMessage": "Schema Type" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.service.url": { - "defaultMessage": "Service URL" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.usage": { - "defaultMessage": "Number of Usages" - }, - "ServiceCatalog.ServicesTableView.ServicesTableView.version": { - "defaultMessage": "Version" - }, - "SubscriptionApproval.Addons.ListBase.reload": { - "defaultMessage": "Reload" - }, - "SubscriptionAproval.Addons.ListBase.nodata.message": { - "defaultMessage": "No items yet" - }, - "Undeploy": { - "defaultMessage": "Undeploy" - }, - "UnexpectedError.logout": { - "defaultMessage": "Logout" - }, - "UnexpectedError.message": { - "defaultMessage": "Error occurred due to invalid request" - }, - "UnexpectedError.title": { - "defaultMessage": "Internal Server Error" - }, - "Workflow.ApplicationCreation.updateStatus.has.errors": { - "defaultMessage": "Unable to complete subscription creation approve/reject process." - }, - "Workflow.SubscriptionCreation.List.empty.content.subscriptioncreations": { - "defaultMessage": "There are no pending workflow requests for subscription creation." - }, - "Workflow.SubscriptionCreation.List.empty.title.subscriptioncreations": { - "defaultMessage": "Subscription Creation" - }, - "Workflow.SubscriptionCreation.apicall.has.errors": { - "defaultMessage": "Unable to get workflow pending requests for Subscription Creation" - }, - "Workflow.SubscriptionCreation.help.link.one": { - "defaultMessage": "Create a subscription creation request" - }, - "Workflow.SubscriptionCreation.permission.denied.content": { - "defaultMessage": "You dont have enough permission to view Subscription Creation - Approval Tasks. Please contact the site administrator." - }, - "Workflow.SubscriptionCreation.permission.denied.title": { - "defaultMessage": "Permission Denied" - }, - "Workflow.SubscriptionCreation.search.default": { - "defaultMessage": "Search by API, Application or Subscriber" - }, - "Workflow.SubscriptionCreation.table.header.API": { - "defaultMessage": "API" - }, - "Workflow.SubscriptionCreation.table.header.Action": { - "defaultMessage": "Action" - }, - "Workflow.SubscriptionCreation.table.header.Application": { - "defaultMessage": "Application" - }, - "Workflow.SubscriptionCreation.table.header.Description": { - "defaultMessage": "Description" - }, - "Workflow.SubscriptionCreation.table.header.Subscriber": { - "defaultMessage": "Subscriber" - }, - "Workflow.SubscriptionCreation.table.header.Tier": { - "defaultMessage": "Tier" - }, - "Workflow.SubscriptionCreation.title.subscriptioncreation": { - "defaultMessage": "Subscription Creation - Approval Tasks" - }, - "Workflow.SubscriptionCreation.update.success": { - "defaultMessage": "Workflow status is updated successfully" - }, - "api.console.security.heading": { - "defaultMessage": "Security" - }, - "app.components.Shared.Banner.back": { - "defaultMessage": "Back" - }, - "block.all": { - "defaultMessage": "Block All" - }, - "block.production.only": { - "defaultMessage": "Block Production Only" - }, - "by": { - "defaultMessage": "By" - }, - "cancel": { - "defaultMessage": "Cancel" - }, - "colon": { - "defaultMessage": ":" - }, - "documents.markdown.editor.default": { - "defaultMessage": "#Enter your markdown content" - }, - "error.list.401": { - "defaultMessage": "401 : Authorization Required." - }, - "error.list.401.description": { - "defaultMessage": "The server could not verify that you are authorized to access the requested resource" - }, - "error.list.403": { - "defaultMessage": "403 : Forbidden." - }, - "error.list.403.description": { - "defaultMessage": "You do not have permission to access anything with that kind of request." - }, - "error.list.404": { - "defaultMessage": "404 : The page cannot be found." - }, - "error.list.404.description": { - "defaultMessage": "The page you are looking for might have been removed, had its name changed or is temporarily unavailable." - }, - "error.list.500": { - "defaultMessage": "500 : The page cannot be displayed." - }, - "error.list.500.description": { - "defaultMessage": "The server encountered an internal error or misconfiguration and was unable to complete your request." - }, - "globalPolicies.create.create.heading": { - "defaultMessage": "Create a new global policy" - }, - "globalPolicies.create.edit.heading": { - "defaultMessage": "Edit global policy" - }, - "globalPolicies.heading": { - "defaultMessage": "Global Policies" - }, - "save": { - "defaultMessage": "Save" - }, - "the.icon.is.not.modified": { - "defaultMessage": "The icon is not modified" - }, - "unblock": { - "defaultMessage": "Unblock" - }, - "upload.image": { - "defaultMessage": "Click or drag the image to upload." - }, - "upload.image.size.error": { - "defaultMessage": "Uploaded File is too large. Maximum file size limit to 1MB" - }, - "upload.image.size.info": { - "defaultMessage": "Maximum file size limit to 1MB" - } -} \ No newline at end of file diff --git a/portals/publisher/src/main/webapp/site/public/locales/si.json b/portals/publisher/src/main/webapp/site/public/locales/si.json deleted file mode 100644 index f1b50afa723..00000000000 --- a/portals/publisher/src/main/webapp/site/public/locales/si.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "name": "නම", - "next": "ඊළඟ", - "password": "රහස් පදය", - "save": "සුරකින්න", - "security": "ආරක්ෂාව", - "status": "තත්ත්වය", - "summary": "සාරාංශය", - "timeout": "කාලය හමාරයි", - "type": "වර්ගය", - "url": "URL", - "username": "පරිශීලක නාමය", - "version": "පිටපත", - "welcome.to.wso2.api.manager": "WSO2 API කළමනාකරු වෙත සාදරයෙන් පිළිගනිමු" -} \ No newline at end of file