mirror of
https://github.com/usebruno/bruno.git
synced 2026-07-08 22:45:25 +00:00
Feature: Support Import postman environment - Fixes issue #193
This commit is contained in:
committed by
Prem Kumar Easwaran
parent
e898ebdfa9
commit
3cc2e3d4fa
@@ -4,6 +4,7 @@ import usePrevious from 'hooks/usePrevious';
|
||||
import EnvironmentDetails from './EnvironmentDetails';
|
||||
import CreateEnvironment from '../CreateEnvironment/index';
|
||||
import StyledWrapper from './StyledWrapper';
|
||||
import ImportEnvironment from "components/Environments/EnvironmentSettings/ImportEnvironment";
|
||||
|
||||
const EnvironmentList = ({ collection }) => {
|
||||
const { environments } = collection;
|
||||
@@ -65,6 +66,7 @@ const EnvironmentList = ({ collection }) => {
|
||||
<div className="btn-create-environment" onClick={() => setOpenCreateModal(true)}>
|
||||
+ <span>Create</span>
|
||||
</div>
|
||||
<ImportEnvironment title={"Import"} collectionUid={collection.uid}/>
|
||||
</div>
|
||||
</div>
|
||||
<EnvironmentDetails environment={selectedEnvironment} collection={collection} />
|
||||
|
||||
@@ -0,0 +1,33 @@
|
||||
import toast from "react-hot-toast";
|
||||
import {toastError} from "utils/common/error";
|
||||
import {useDispatch} from "react-redux";
|
||||
import {importEnvironment} from "providers/ReduxStore/slices/collections/actions";
|
||||
import importPostmanEnvironment from "utils/importers/postman-environment";
|
||||
import React from "react";
|
||||
|
||||
const ImportEnvironment = ({title, collectionUid}) => {
|
||||
const dispatch = useDispatch();
|
||||
|
||||
const handleImportPostmanEnvironment = () => {
|
||||
importPostmanEnvironment()
|
||||
.then((environment) => {
|
||||
dispatch(importEnvironment(environment.name, environment.variables, collectionUid))
|
||||
.then(() => {
|
||||
toast.success('Environment imported successfully');
|
||||
})
|
||||
.catch(() => toast.error('An error occurred while importing the environment'));
|
||||
})
|
||||
.catch((err) => toastError(err, 'Postman Import environment failed'));
|
||||
};
|
||||
|
||||
return(
|
||||
<button
|
||||
className="btn-create-environment text-link pr-2 py-2 mt-2 select-none"
|
||||
onClick={handleImportPostmanEnvironment}
|
||||
>
|
||||
+ <span>{title}</span>
|
||||
</button>
|
||||
);
|
||||
};
|
||||
|
||||
export default ImportEnvironment;
|
||||
@@ -3,6 +3,7 @@ import React, { useState } from 'react';
|
||||
import CreateEnvironment from './CreateEnvironment';
|
||||
import EnvironmentList from './EnvironmentList';
|
||||
import StyledWrapper from './StyledWrapper';
|
||||
import ImportEnvironment from "components/Environments/EnvironmentSettings/ImportEnvironment";
|
||||
|
||||
const EnvironmentSettings = ({ collection, onClose }) => {
|
||||
const { environments } = collection;
|
||||
@@ -28,6 +29,7 @@ const EnvironmentSettings = ({ collection, onClose }) => {
|
||||
>
|
||||
+ <span>Create Environment</span>
|
||||
</button>
|
||||
<ImportEnvironment title={"Import Postman Environment"} collectionUid={collection.uid}/>
|
||||
</div>
|
||||
</Modal>
|
||||
</StyledWrapper>
|
||||
|
||||
Reference in New Issue
Block a user