Merge branch 'master' into i18n
This commit is contained in:
@@ -360,13 +360,13 @@ This project is licensed under the [MIT License](https://opensource.org/licenses
|
|||||||
|
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
[](https://postwoman.io)
|
[](https://postwoman.io)
|
||||||
<details>
|
<details>
|
||||||
<summary>Default</summary>
|
<summary>Default</summary>
|
||||||
<p>
|
<p>
|
||||||
|
|
||||||
```
|
```
|
||||||
[](https://postwoman.io)
|
[](https://postwoman.io)
|
||||||
```
|
```
|
||||||
</p>
|
</p>
|
||||||
</details>
|
</details>
|
||||||
|
|||||||
@@ -144,6 +144,8 @@ footer {
|
|||||||
|
|
||||||
.nav-first {
|
.nav-first {
|
||||||
z-index: 1;
|
z-index: 1;
|
||||||
|
height: 100vh;
|
||||||
|
padding: 0 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main {
|
.main {
|
||||||
@@ -183,7 +185,7 @@ nav.primary-nav {
|
|||||||
background-color: var(--bg-light-color);
|
background-color: var(--bg-light-color);
|
||||||
color: var(--fg-light-color);
|
color: var(--fg-light-color);
|
||||||
fill: var(--fg-light-color);
|
fill: var(--fg-light-color);
|
||||||
margin: 8px;
|
margin: 8px 0;
|
||||||
transition: all 0.2s ease-in-out;
|
transition: all 0.2s ease-in-out;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
@@ -228,7 +230,7 @@ nav.secondary-nav {
|
|||||||
border-radius: 50%;
|
border-radius: 50%;
|
||||||
background-color: var(--bg-dark-color);
|
background-color: var(--bg-dark-color);
|
||||||
color: var(--fg-light-color);
|
color: var(--fg-light-color);
|
||||||
margin: 8px;
|
margin: 8px 0;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: var(--fg-color);
|
color: var(--fg-color);
|
||||||
@@ -255,7 +257,7 @@ h3 {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.tooltip {
|
.tooltip {
|
||||||
$bgcolor: var(--brd-color);
|
$bgcolor: var(--bg-color);
|
||||||
$fgcolor: var(--fg-color);
|
$fgcolor: var(--fg-color);
|
||||||
display: block !important;
|
display: block !important;
|
||||||
z-index: 10000;
|
z-index: 10000;
|
||||||
@@ -548,11 +550,31 @@ code {
|
|||||||
border-radius: 8px;
|
border-radius: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.select-wrapper {
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
&:after {
|
||||||
|
display: inline-block;
|
||||||
|
position: absolute;
|
||||||
|
pointer-events: none;
|
||||||
|
content: "\e313";
|
||||||
|
font-family: "Material Icons";
|
||||||
|
top: 14px;
|
||||||
|
right: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
select {
|
select {
|
||||||
height: 37px;
|
height: 37px;
|
||||||
line-height: 37px;
|
|
||||||
background-color: var(--bg-dark-color);
|
background-color: var(--bg-dark-color);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
-webkit-appearance: none;
|
||||||
|
-moz-appearance: none;
|
||||||
|
appearance: none;
|
||||||
|
|
||||||
|
&::-ms-expand {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
option {
|
option {
|
||||||
@@ -781,18 +803,23 @@ input[type="radio"]:checked + label + .tab {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.toasted-container .toasted {
|
.toasted-container .toasted {
|
||||||
justify-content: start !important;
|
justify-content: flex-start !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.toasted.info {
|
.toasted.info {
|
||||||
background-color: var(--ac-color) !important;
|
background-color: var(--ac-color) !important;
|
||||||
color: var(--act-color) !important;
|
color: var(--act-color) !important;
|
||||||
|
font-weight: 700 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.toasted.bubble .action {
|
.toasted.bubble .action {
|
||||||
color: inherit !important;
|
color: inherit !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.toasted .action {
|
||||||
|
margin-left: auto !important;
|
||||||
|
}
|
||||||
|
|
||||||
.page-columns {
|
.page-columns {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex: 1;
|
flex: 1;
|
||||||
@@ -824,6 +851,8 @@ input[type="radio"]:checked + label + .tab {
|
|||||||
position: fixed;
|
position: fixed;
|
||||||
top: auto;
|
top: auto;
|
||||||
bottom: 0;
|
bottom: 0;
|
||||||
|
height: auto;
|
||||||
|
padding: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
background-color: var(--bg-color);
|
background-color: var(--bg-color);
|
||||||
transition: all 0.2s ease-in-out;
|
transition: all 0.2s ease-in-out;
|
||||||
@@ -836,6 +865,7 @@ input[type="radio"]:checked + label + .tab {
|
|||||||
|
|
||||||
a {
|
a {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
|
margin: 8px;
|
||||||
|
|
||||||
&.nuxt-link-exact-active {
|
&.nuxt-link-exact-active {
|
||||||
background-color: transparent;
|
background-color: transparent;
|
||||||
@@ -889,7 +919,7 @@ input[type="radio"]:checked + label + .tab {
|
|||||||
margin-left: 0;
|
margin-left: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.toasted:last-child {
|
.toasted-container {
|
||||||
margin-bottom: 68px;
|
margin-bottom: 68px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,75 +9,71 @@
|
|||||||
// Dark is the default theme variant.
|
// Dark is the default theme variant.
|
||||||
@mixin darkTheme {
|
@mixin darkTheme {
|
||||||
// Background color
|
// Background color
|
||||||
--bg-color: rgb(37, 38, 40);
|
--bg-color: rgba(18, 18, 18, 1);
|
||||||
// Light Background color
|
// Light Background color
|
||||||
--bg-light-color: rgba(255, 255, 255, 0.05);
|
--bg-light-color: rgba(255, 255, 255, 0.02);
|
||||||
//Dark Background color
|
// Dark Background color
|
||||||
--bg-dark-color: rgba(0, 0, 0, 0.1);
|
--bg-dark-color: rgba(0, 0, 0, 0.1);
|
||||||
// Auto-complete color
|
|
||||||
--atc-color: rgb(49, 49, 55);
|
|
||||||
// Text color
|
// Text color
|
||||||
--fg-color: rgb(247, 248, 248);
|
--fg-color: rgba(255, 255, 255, 1);
|
||||||
// Light Text color
|
// Light Text color
|
||||||
--fg-light-color: rgb(150, 155, 160);
|
--fg-light-color: rgba(255, 255, 255, 0.5);
|
||||||
// Border color
|
// Border color
|
||||||
--brd-color: rgb(48, 47, 55);
|
--brd-color: rgba(255, 255, 255, 0.05);
|
||||||
// Error color
|
// Error color
|
||||||
--err-color: rgba(255, 255, 255, 0.05);
|
--err-color: rgba(255, 255, 255, 0.05);
|
||||||
// Acent color
|
// Acent color
|
||||||
--ac-color: #50fa7b;
|
--ac-color: rgba(80, 250, 123, 1);
|
||||||
// Active text color
|
// Active text color
|
||||||
--act-color: rgb(37, 38, 40);
|
--act-color: rgba(18, 18, 18, 1);
|
||||||
|
// Auto-complete color
|
||||||
|
--atc-color: rgba(18, 18, 18, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin lightTheme {
|
@mixin lightTheme {
|
||||||
// Dark Background color
|
// Background color
|
||||||
--bg-dark-color: #eeeeee;
|
--bg-color: rgba(255, 255, 255, 1);
|
||||||
// Light Background color
|
// Light Background color
|
||||||
--bg-light-color: rgba(0, 0, 0, 0.02);
|
--bg-light-color: rgba(0, 0, 0, 0.02);
|
||||||
//Dark Background color
|
// Dark Background color
|
||||||
--bg-dark-color: rgba(0, 0, 0, 0.05);
|
--bg-dark-color: rgba(0, 0, 0, 0.02);
|
||||||
// Background color
|
|
||||||
--bg-color: #ffffff;
|
|
||||||
// Auto-complete color
|
|
||||||
--atc-color: #ebebeb;
|
|
||||||
// Text color
|
// Text color
|
||||||
--fg-color: #525252;
|
--fg-color: rgba(0, 0, 0, 1);
|
||||||
// Light Text color
|
// Light Text color
|
||||||
--fg-light-color: rgb(150, 155, 160);
|
--fg-light-color: rgba(0, 0, 0, 0.6);
|
||||||
// Border color
|
// Border color
|
||||||
--brd-color: #eeeeed;
|
--brd-color: rgba(0, 0, 0, 0.1);
|
||||||
// Error color
|
// Error color
|
||||||
--err-color: rgba(0, 0, 0, 0.02);
|
--err-color: rgba(0, 0, 0, 0.1);
|
||||||
// Acent color
|
// Acent color
|
||||||
--ac-color: #57b5f9;
|
--ac-color: rgba(80, 250, 123, 1);
|
||||||
// Active text color
|
// Active text color
|
||||||
--act-color: #ffffff;
|
--act-color: rgba(255, 255, 255, 1);
|
||||||
|
// Auto-complete color
|
||||||
|
--atc-color: rgba(255, 255, 255, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
@mixin blackTheme {
|
@mixin blackTheme {
|
||||||
// Dark Background color
|
|
||||||
--bg-dark-color: rgb(8, 8, 8);
|
|
||||||
// Light Background color
|
|
||||||
--bg-light-color: rgba(255, 255, 255, 0.02);
|
|
||||||
//Dark Background color
|
|
||||||
--bg-dark-color: rgba(255, 255, 255, 0.02);
|
|
||||||
// Background color
|
// Background color
|
||||||
--bg-color: #000000;
|
--bg-color: rgba(0, 0, 0, 1);
|
||||||
// Auto-complete color
|
// Light Background color
|
||||||
--atc-color: rgb(18, 18, 18);
|
--bg-light-color: rgba(255, 255, 255, 0);
|
||||||
|
// Dark Background color
|
||||||
|
--bg-dark-color: rgba(255, 255, 255, 0.02);
|
||||||
// Text color
|
// Text color
|
||||||
--fg-color: rgb(250, 250, 250);
|
--fg-color: rgba(255, 255, 255, 1);
|
||||||
// Light Text color
|
// Light Text color
|
||||||
--fg-light-color: rgb(100, 100, 100);
|
--fg-light-color: rgba(255, 255, 255, 0.5);
|
||||||
// Border color
|
// Border color
|
||||||
--brd-color: rgb(16, 16, 16);
|
--brd-color: rgba(255, 255, 255, 0.05);
|
||||||
// Error color
|
// Error color
|
||||||
--err-color: rgba(255, 255, 255, 0.02);
|
--err-color: rgba(255, 255, 255, 0.05);
|
||||||
// Acent color
|
// Acent color
|
||||||
--ac-color: #50fa7b;
|
--ac-color: rgba(80, 250, 123, 1);
|
||||||
// Active text color
|
// Active text color
|
||||||
--act-color: #000000;
|
--act-color: rgba(0, 0, 0, 1);
|
||||||
|
// Auto-complete color
|
||||||
|
--atc-color: rgba(0, 0, 0, 1);
|
||||||
}
|
}
|
||||||
|
|
||||||
:root {
|
:root {
|
||||||
|
|||||||
@@ -3,7 +3,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
const DEFAULT_THEME = "dracula";
|
const DEFAULT_THEME = "twilight";
|
||||||
|
|
||||||
import ace from "ace-builds";
|
import ace from "ace-builds";
|
||||||
import "ace-builds/webpack-resolver";
|
import "ace-builds/webpack-resolver";
|
||||||
|
|||||||
@@ -50,6 +50,7 @@
|
|||||||
border-radius: 0 0 8px 8px;
|
border-radius: 0 0 8px 8px;
|
||||||
z-index: 9999;
|
z-index: 9999;
|
||||||
transition: transform 0.2s ease-out;
|
transition: transform 0.2s ease-out;
|
||||||
|
box-shadow: 0 5px 30px rgba(black, 0.1);
|
||||||
|
|
||||||
li {
|
li {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|||||||
@@ -44,11 +44,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li v-for="(folder, index) in collection.folders" :key="folder.name">
|
<li v-for="(folder, index) in collection.folders" :key="folder.name">
|
||||||
<folder
|
<folder
|
||||||
v-bind:folder="folder"
|
:folder="folder"
|
||||||
v-bind:folderIndex="index"
|
:folderIndex="index"
|
||||||
v-bind:collection-index="collectionIndex"
|
:collection-index="collectionIndex"
|
||||||
v-on:edit-folder="editFolder(collectionIndex, folder, index)"
|
@edit-folder="editFolder(collectionIndex, folder, index)"
|
||||||
v-on:edit-request="$emit('edit-request', $event)"
|
@edit-request="$emit('edit-request', $event)"
|
||||||
/>
|
/>
|
||||||
</li>
|
</li>
|
||||||
<li
|
<li
|
||||||
@@ -62,11 +62,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li v-for="(request, index) in collection.requests" :key="index">
|
<li v-for="(request, index) in collection.requests" :key="index">
|
||||||
<request
|
<request
|
||||||
v-bind:request="request"
|
:request="request"
|
||||||
v-bind:collection-index="collectionIndex"
|
:collection-index="collectionIndex"
|
||||||
v-bind:folder-index="-1"
|
:folder-index="-1"
|
||||||
v-bind:request-index="index"
|
:request-index="index"
|
||||||
v-on:edit-request="
|
@edit-request="
|
||||||
$emit('edit-request', {
|
$emit('edit-request', {
|
||||||
request,
|
request,
|
||||||
collectionIndex,
|
collectionIndex,
|
||||||
@@ -74,7 +74,7 @@
|
|||||||
requestIndex: index
|
requestIndex: index
|
||||||
})
|
})
|
||||||
"
|
"
|
||||||
></request>
|
/>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
v-model="name"
|
v-model="name"
|
||||||
v-bind:placeholder="editingCollection.name"
|
:placeholder="editingCollection.name"
|
||||||
@keyup.enter="saveCollection"
|
@keyup.enter="saveCollection"
|
||||||
/>
|
/>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
@@ -20,7 +20,7 @@
|
|||||||
<input
|
<input
|
||||||
type="text"
|
type="text"
|
||||||
v-model="name"
|
v-model="name"
|
||||||
v-bind:placeholder="folder.name"
|
:placeholder="folder.name"
|
||||||
@keyup.enter="editFolder"
|
@keyup.enter="editFolder"
|
||||||
/>
|
/>
|
||||||
</li>
|
</li>
|
||||||
|
|||||||
@@ -26,35 +26,47 @@
|
|||||||
:placeholder="request.name"
|
:placeholder="request.name"
|
||||||
/>
|
/>
|
||||||
<label for="selectCollection">Collection</label>
|
<label for="selectCollection">Collection</label>
|
||||||
<select
|
<span class="select-wrapper">
|
||||||
type="text"
|
<select
|
||||||
id="selectCollection"
|
type="text"
|
||||||
v-model="requestUpdateData.collectionIndex"
|
id="selectCollection"
|
||||||
>
|
v-model="requestUpdateData.collectionIndex"
|
||||||
<option :key="undefined" :value="undefined" hidden disabled selected
|
|
||||||
>Current Collection</option
|
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
v-for="(collection, index) in $store.state.postwoman.collections"
|
:key="undefined"
|
||||||
:key="index"
|
:value="undefined"
|
||||||
:value="index"
|
hidden
|
||||||
>{{ collection.name }}</option
|
disabled
|
||||||
>
|
selected
|
||||||
</select>
|
>Current Collection</option
|
||||||
|
>
|
||||||
|
<option
|
||||||
|
v-for="(collection, index) in $store.state.postwoman
|
||||||
|
.collections"
|
||||||
|
:key="index"
|
||||||
|
:value="index"
|
||||||
|
>
|
||||||
|
{{ collection.name }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
<label for="selectFolder">Folder</label>
|
<label for="selectFolder">Folder</label>
|
||||||
<select
|
<span class="select-wrapper">
|
||||||
type="text"
|
<select
|
||||||
id="selectFolder"
|
type="text"
|
||||||
v-model="requestUpdateData.folderIndex"
|
id="selectFolder"
|
||||||
>
|
v-model="requestUpdateData.folderIndex"
|
||||||
<option :key="undefined" :value="undefined">/</option>
|
|
||||||
<option
|
|
||||||
v-for="(folder, index) in folders"
|
|
||||||
:key="index"
|
|
||||||
:value="index"
|
|
||||||
>{{ folder.name }}</option
|
|
||||||
>
|
>
|
||||||
</select>
|
<option :key="undefined" :value="undefined">/</option>
|
||||||
|
<option
|
||||||
|
v-for="(folder, index) in folders"
|
||||||
|
:key="index"
|
||||||
|
:value="index"
|
||||||
|
>
|
||||||
|
{{ folder.name }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -34,11 +34,11 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li v-for="(request, index) in folder.requests" :key="index">
|
<li v-for="(request, index) in folder.requests" :key="index">
|
||||||
<request
|
<request
|
||||||
v-bind:request="request"
|
:request="request"
|
||||||
v-bind:collection-index="collectionIndex"
|
:collection-index="collectionIndex"
|
||||||
v-bind:folder-index="folderIndex"
|
:folder-index="folderIndex"
|
||||||
v-bind:request-index="index"
|
:request-index="index"
|
||||||
v-on:edit-request="
|
@edit-request="
|
||||||
$emit('edit-request', {
|
$emit('edit-request', {
|
||||||
request,
|
request,
|
||||||
collectionIndex,
|
collectionIndex,
|
||||||
|
|||||||
@@ -6,40 +6,40 @@ TODO:
|
|||||||
<template>
|
<template>
|
||||||
<div class="collections-wrapper">
|
<div class="collections-wrapper">
|
||||||
<addCollection
|
<addCollection
|
||||||
v-bind:show="showModalAdd"
|
:show="showModalAdd"
|
||||||
v-on:hide-modal="displayModalAdd(false)"
|
@hide-modal="displayModalAdd(false)"
|
||||||
/>
|
/>
|
||||||
<editCollection
|
<editCollection
|
||||||
v-bind:show="showModalEdit"
|
:show="showModalEdit"
|
||||||
v-bind:editingCollection="editingCollection"
|
:editingCollection="editingCollection"
|
||||||
v-bind:editingCollectionIndex="editingCollectionIndex"
|
:editingCollectionIndex="editingCollectionIndex"
|
||||||
v-on:hide-modal="displayModalEdit(false)"
|
@hide-modal="displayModalEdit(false)"
|
||||||
/>
|
/>
|
||||||
<addFolder
|
<addFolder
|
||||||
v-bind:show="showModalAddFolder"
|
:show="showModalAddFolder"
|
||||||
v-bind:collection="editingCollection"
|
:collection="editingCollection"
|
||||||
v-bind:collectionIndex="editingCollectionIndex"
|
:collectionIndex="editingCollectionIndex"
|
||||||
v-on:hide-modal="displayModalAddFolder(false)"
|
@hide-modal="displayModalAddFolder(false)"
|
||||||
/>
|
/>
|
||||||
<editFolder
|
<editFolder
|
||||||
v-bind:show="showModalEditFolder"
|
:show="showModalEditFolder"
|
||||||
v-bind:collection="editingCollection"
|
:collection="editingCollection"
|
||||||
v-bind:collectionIndex="editingCollectionIndex"
|
:collectionIndex="editingCollectionIndex"
|
||||||
v-bind:folder="editingFolder"
|
:folder="editingFolder"
|
||||||
v-bind:folderIndex="editingFolderIndex"
|
:folderIndex="editingFolderIndex"
|
||||||
v-on:hide-modal="displayModalEditFolder(false)"
|
@hide-modal="displayModalEditFolder(false)"
|
||||||
/>
|
/>
|
||||||
<editRequest
|
<editRequest
|
||||||
v-bind:show="showModalEditRequest"
|
:show="showModalEditRequest"
|
||||||
v-bind:collectionIndex="editingCollectionIndex"
|
:collectionIndex="editingCollectionIndex"
|
||||||
v-bind:folderIndex="editingFolderIndex"
|
:folderIndex="editingFolderIndex"
|
||||||
v-bind:request="editingRequest"
|
:request="editingRequest"
|
||||||
v-bind:requestIndex="editingRequestIndex"
|
:requestIndex="editingRequestIndex"
|
||||||
v-on:hide-modal="displayModalEditRequest(false)"
|
@hide-modal="displayModalEditRequest(false)"
|
||||||
/>
|
/>
|
||||||
<importExportCollections
|
<importExportCollections
|
||||||
v-bind:show="showModalImportExport"
|
:show="showModalImportExport"
|
||||||
v-on:hide-modal="displayModalImportExport(false)"
|
@hide-modal="displayModalImportExport(false)"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
<div class="flex-wrap">
|
<div class="flex-wrap">
|
||||||
@@ -78,13 +78,13 @@ TODO:
|
|||||||
<ul>
|
<ul>
|
||||||
<li v-for="(collection, index) in collections" :key="collection.name">
|
<li v-for="(collection, index) in collections" :key="collection.name">
|
||||||
<collection
|
<collection
|
||||||
v-bind:collection-index="index"
|
:collection-index="index"
|
||||||
v-bind:collection="collection"
|
:collection="collection"
|
||||||
v-on:edit-collection="editCollection(collection, index)"
|
@edit-collection="editCollection(collection, index)"
|
||||||
v-on:add-folder="addFolder(collection, index)"
|
@add-folder="addFolder(collection, index)"
|
||||||
v-on:edit-folder="editFolder($event)"
|
@edit-folder="editFolder($event)"
|
||||||
v-on:edit-request="editRequest($event)"
|
@edit-request="editRequest($event)"
|
||||||
></collection>
|
/>
|
||||||
</li>
|
</li>
|
||||||
<li v-if="collections.length === 0">
|
<li v-if="collections.length === 0">
|
||||||
<label>Collections are empty</label>
|
<label>Collections are empty</label>
|
||||||
|
|||||||
@@ -22,53 +22,68 @@
|
|||||||
type="text"
|
type="text"
|
||||||
id="selectLabel"
|
id="selectLabel"
|
||||||
v-model="requestData.name"
|
v-model="requestData.name"
|
||||||
v-bind:placeholder="defaultRequestName"
|
:placeholder="defaultRequestName"
|
||||||
@keyup.enter="saveRequestAs"
|
@keyup.enter="saveRequestAs"
|
||||||
/>
|
/>
|
||||||
<label for="selectCollection">Collection</label>
|
<label for="selectCollection">Collection</label>
|
||||||
<select
|
<span class="select-wrapper">
|
||||||
type="text"
|
<select
|
||||||
id="selectCollection"
|
type="text"
|
||||||
v-model="requestData.collectionIndex"
|
id="selectCollection"
|
||||||
>
|
v-model="requestData.collectionIndex"
|
||||||
<option :key="undefined" :value="undefined" hidden disabled selected
|
|
||||||
>Select a Collection</option
|
|
||||||
>
|
>
|
||||||
<option
|
<option
|
||||||
v-for="(collection, index) in $store.state.postwoman.collections"
|
:key="undefined"
|
||||||
:key="index"
|
:value="undefined"
|
||||||
:value="index"
|
hidden
|
||||||
>{{ collection.name }}</option
|
disabled
|
||||||
>
|
selected
|
||||||
</select>
|
>Select a Collection</option
|
||||||
|
>
|
||||||
|
<option
|
||||||
|
v-for="(collection, index) in $store.state.postwoman
|
||||||
|
.collections"
|
||||||
|
:key="index"
|
||||||
|
:value="index"
|
||||||
|
>
|
||||||
|
{{ collection.name }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
<label for="selectFolder">Folder</label>
|
<label for="selectFolder">Folder</label>
|
||||||
<select
|
<span class="select-wrapper">
|
||||||
type="text"
|
<select
|
||||||
id="selectFolder"
|
type="text"
|
||||||
v-model="requestData.folderIndex"
|
id="selectFolder"
|
||||||
>
|
v-model="requestData.folderIndex"
|
||||||
<option :key="undefined" :value="undefined">/</option>
|
|
||||||
<option
|
|
||||||
v-for="(folder, index) in folders"
|
|
||||||
:key="index"
|
|
||||||
:value="index"
|
|
||||||
>{{ folder.name }}</option
|
|
||||||
>
|
>
|
||||||
</select>
|
<option :key="undefined" :value="undefined">/</option>
|
||||||
|
<option
|
||||||
|
v-for="(folder, index) in folders"
|
||||||
|
:key="index"
|
||||||
|
:value="index"
|
||||||
|
>
|
||||||
|
{{ folder.name }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
<label for="selectRequest">Request</label>
|
<label for="selectRequest">Request</label>
|
||||||
<select
|
<span class="select-wrapper">
|
||||||
type="text"
|
<select
|
||||||
id="selectRequest"
|
type="text"
|
||||||
v-model="requestData.requestIndex"
|
id="selectRequest"
|
||||||
>
|
v-model="requestData.requestIndex"
|
||||||
<option :key="undefined" :value="undefined">/</option>
|
|
||||||
<option
|
|
||||||
v-for="(folder, index) in requests"
|
|
||||||
:key="index"
|
|
||||||
:value="index"
|
|
||||||
>{{ folder.name }}</option
|
|
||||||
>
|
>
|
||||||
</select>
|
<option :key="undefined" :value="undefined">/</option>
|
||||||
|
<option
|
||||||
|
v-for="(folder, index) in requests"
|
||||||
|
:key="index"
|
||||||
|
:value="index"
|
||||||
|
>
|
||||||
|
{{ folder.name }}
|
||||||
|
</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
@@ -121,11 +136,13 @@ export default {
|
|||||||
const userSelectedAnyCollection =
|
const userSelectedAnyCollection =
|
||||||
this.$data.requestData.collectionIndex !== undefined;
|
this.$data.requestData.collectionIndex !== undefined;
|
||||||
if (!userSelectedAnyCollection) return [];
|
if (!userSelectedAnyCollection) return [];
|
||||||
|
|
||||||
const noCollectionAvailable =
|
const noCollectionAvailable =
|
||||||
this.$store.state.postwoman.collections[this.$data.requestData.collectionIndex] !== undefined;
|
this.$store.state.postwoman.collections[
|
||||||
|
this.$data.requestData.collectionIndex
|
||||||
|
] !== undefined;
|
||||||
if (!noCollectionAvailable) return [];
|
if (!noCollectionAvailable) return [];
|
||||||
|
|
||||||
return this.$store.state.postwoman.collections[
|
return this.$store.state.postwoman.collections[
|
||||||
this.$data.requestData.collectionIndex
|
this.$data.requestData.collectionIndex
|
||||||
].folders;
|
].folders;
|
||||||
@@ -148,8 +165,10 @@ export default {
|
|||||||
const collection = this.$store.state.postwoman.collections[
|
const collection = this.$store.state.postwoman.collections[
|
||||||
this.$data.requestData.collectionIndex
|
this.$data.requestData.collectionIndex
|
||||||
];
|
];
|
||||||
const noCollectionAvailable =
|
const noCollectionAvailable =
|
||||||
this.$store.state.postwoman.collections[this.$data.requestData.collectionIndex] !== undefined;
|
this.$store.state.postwoman.collections[
|
||||||
|
this.$data.requestData.collectionIndex
|
||||||
|
] !== undefined;
|
||||||
if (!noCollectionAvailable) return [];
|
if (!noCollectionAvailable) return [];
|
||||||
|
|
||||||
const requests = collection.requests;
|
const requests = collection.requests;
|
||||||
|
|||||||
@@ -307,7 +307,7 @@ ol li {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.entry {
|
.entry {
|
||||||
border-bottom: 1px solid var(--brd-color);
|
border-bottom: 1px dashed var(--brd-color);
|
||||||
padding: 16px 0;
|
padding: 16px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -327,7 +327,7 @@
|
|||||||
</button>
|
</button>
|
||||||
</a>
|
</a>
|
||||||
<a
|
<a
|
||||||
v-bind:href="
|
:href="
|
||||||
'https://github.com/liyasthomas/postwoman/releases/tag/' +
|
'https://github.com/liyasthomas/postwoman/releases/tag/' +
|
||||||
version.name
|
version.name
|
||||||
"
|
"
|
||||||
@@ -340,7 +340,7 @@
|
|||||||
<!-- <span v-if="version.hash">
|
<!-- <span v-if="version.hash">
|
||||||
-
|
-
|
||||||
<a
|
<a
|
||||||
v-bind:href="'https://github.com/liyasthomas/postwoman/commit/' + version.hash"
|
:href="'https://github.com/liyasthomas/postwoman/commit/' + version.hash"
|
||||||
target="_blank"
|
target="_blank"
|
||||||
rel="noopener"
|
rel="noopener"
|
||||||
>{{version.hash}}</a>
|
>{{version.hash}}</a>
|
||||||
@@ -525,7 +525,7 @@ export default {
|
|||||||
document.documentElement.style.setProperty("--ac-color", color);
|
document.documentElement.style.setProperty("--ac-color", color);
|
||||||
document.documentElement.style.setProperty(
|
document.documentElement.style.setProperty(
|
||||||
"--act-color",
|
"--act-color",
|
||||||
vibrant ? "rgb(37, 38, 40)" : "#ffffff"
|
vibrant ? "rgba(18, 18, 18, 1)" : "rgba(255, 255, 255, 1)"
|
||||||
);
|
);
|
||||||
})();
|
})();
|
||||||
},
|
},
|
||||||
@@ -539,7 +539,7 @@ export default {
|
|||||||
.querySelector("meta[name=theme-color]")
|
.querySelector("meta[name=theme-color]")
|
||||||
.setAttribute(
|
.setAttribute(
|
||||||
"content",
|
"content",
|
||||||
this.$store.state.postwoman.settings.THEME_TAB_COLOR || "#252628"
|
this.$store.state.postwoman.settings.THEME_TAB_COLOR || "#121212"
|
||||||
);
|
);
|
||||||
|
|
||||||
// Initializes the PWA code - checks if the app is installed,
|
// Initializes the PWA code - checks if the app is installed,
|
||||||
|
|||||||
@@ -100,7 +100,7 @@ export default {
|
|||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "msapplication-TileColor",
|
name: "msapplication-TileColor",
|
||||||
content: "#252628"
|
content: "#121212"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "msapplication-tap-highlight",
|
name: "msapplication-tap-highlight",
|
||||||
@@ -257,14 +257,14 @@ export default {
|
|||||||
|
|
||||||
display: "standalone",
|
display: "standalone",
|
||||||
|
|
||||||
theme_color: "#252628",
|
theme_color: "#121212",
|
||||||
background_color: "#252628",
|
background_color: "#121212",
|
||||||
start_url: `${routerBase.router.base}`
|
start_url: `${routerBase.router.base}`
|
||||||
},
|
},
|
||||||
|
|
||||||
meta: {
|
meta: {
|
||||||
description: meta.shortDescription,
|
description: meta.shortDescription,
|
||||||
theme_color: "#252628"
|
theme_color: "#121212"
|
||||||
},
|
},
|
||||||
|
|
||||||
icons: (sizes => {
|
icons: (sizes => {
|
||||||
|
|||||||
2778
package-lock.json
generated
2778
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -36,9 +36,9 @@
|
|||||||
"yargs-parser": "^16.1.0"
|
"yargs-parser": "^16.1.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"cypress": "^3.7.0",
|
"cypress": "^3.8.0",
|
||||||
"node-sass": "^4.13.0",
|
"node-sass": "^4.13.0",
|
||||||
"sass-loader": "^7.3.1",
|
"sass-loader": "^8.0.0",
|
||||||
"start-server-and-test": "^1.10.6"
|
"start-server-and-test": "^1.10.6"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -44,17 +44,19 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<label for="method">{{ $t("method") }}</label>
|
<label for="method">{{ $t("method") }}</label>
|
||||||
<select id="method" v-model="method" @change="methodChange">
|
<span class="select-wrapper">
|
||||||
<option value="GET">GET</option>
|
<select id="method" v-model="method" @change="methodChange">
|
||||||
<option value="HEAD">HEAD</option>
|
<option value="GET">GET</option>
|
||||||
<option value="POST">POST</option>
|
<option value="HEAD">HEAD</option>
|
||||||
<option value="PUT">PUT</option>
|
<option value="POST">POST</option>
|
||||||
<option value="DELETE">DELETE</option>
|
<option value="PUT">PUT</option>
|
||||||
<option value="CONNECT">CONNECT</option>
|
<option value="DELETE">DELETE</option>
|
||||||
<option value="OPTIONS">OPTIONS</option>
|
<option value="CONNECT">CONNECT</option>
|
||||||
<option value="TRACE">TRACE</option>
|
<option value="OPTIONS">OPTIONS</option>
|
||||||
<option value="PATCH">PATCH</option>
|
<option value="TRACE">TRACE</option>
|
||||||
</select>
|
<option value="PATCH">PATCH</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<label for="url">{{ $t("url") }}</label>
|
<label for="url">{{ $t("url") }}</label>
|
||||||
@@ -330,11 +332,13 @@
|
|||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<select id="auth" v-model="auth">
|
<span class="select-wrapper">
|
||||||
<option>None</option>
|
<select id="auth" v-model="auth">
|
||||||
<option>Basic</option>
|
<option>None</option>
|
||||||
<option>Bearer Token</option>
|
<option>Basic</option>
|
||||||
</select>
|
<option>Bearer Token</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul v-if="auth === 'Basic'">
|
<ul v-if="auth === 'Basic'">
|
||||||
@@ -678,10 +682,7 @@
|
|||||||
<input id="history-tab" type="radio" name="side" checked="checked" />
|
<input id="history-tab" type="radio" name="side" checked="checked" />
|
||||||
<label for="history-tab">{{ $t("history") }}</label>
|
<label for="history-tab">{{ $t("history") }}</label>
|
||||||
<div class="tab">
|
<div class="tab">
|
||||||
<history
|
<history @useHistory="handleUseHistory" ref="historyComponent" />
|
||||||
@useHistory="handleUseHistory"
|
|
||||||
ref="historyComponent"
|
|
||||||
></history>
|
|
||||||
</div>
|
</div>
|
||||||
<input id="collection-tab" type="radio" name="side" />
|
<input id="collection-tab" type="radio" name="side" />
|
||||||
<label for="collection-tab">{{ $t("collections") }}</label>
|
<label for="collection-tab">{{ $t("collections") }}</label>
|
||||||
@@ -694,10 +695,10 @@
|
|||||||
</aside>
|
</aside>
|
||||||
|
|
||||||
<save-request-as
|
<save-request-as
|
||||||
v-bind:show="showRequestModal"
|
:show="showRequestModal"
|
||||||
v-on:hide-model="hideRequestModal"
|
@hide-model="hideRequestModal"
|
||||||
v-bind:editing-request="editRequest"
|
:editing-request="editRequest"
|
||||||
></save-request-as>
|
/>
|
||||||
|
|
||||||
<pw-modal v-if="showModal" @close="showModal = false">
|
<pw-modal v-if="showModal" @close="showModal = false">
|
||||||
<div slot="header">
|
<div slot="header">
|
||||||
@@ -757,11 +758,13 @@
|
|||||||
<ul>
|
<ul>
|
||||||
<li>
|
<li>
|
||||||
<label for="requestType">{{ $t("request_type") }}</label>
|
<label for="requestType">{{ $t("request_type") }}</label>
|
||||||
<select id="requestType" v-model="requestType">
|
<span class="select-wrapper">
|
||||||
<option>JavaScript XHR</option>
|
<select id="requestType" v-model="requestType">
|
||||||
<option>Fetch</option>
|
<option>JavaScript XHR</option>
|
||||||
<option>cURL</option>
|
<option>Fetch</option>
|
||||||
</select>
|
<option>cURL</option>
|
||||||
|
</select>
|
||||||
|
</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<ul>
|
<ul>
|
||||||
@@ -1488,8 +1491,9 @@ export default {
|
|||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
checkCollections() {
|
checkCollections() {
|
||||||
const checkCollectionAvailability =
|
const checkCollectionAvailability =
|
||||||
this.$store.state.postwoman.collections && this.$store.state.postwoman.collections.length > 0 ;
|
this.$store.state.postwoman.collections &&
|
||||||
|
this.$store.state.postwoman.collections.length > 0;
|
||||||
return checkCollectionAvailability;
|
return checkCollectionAvailability;
|
||||||
},
|
},
|
||||||
scrollInto(view) {
|
scrollInto(view) {
|
||||||
@@ -2100,7 +2104,7 @@ export default {
|
|||||||
});
|
});
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.editRequest = {
|
this.editRequest = {
|
||||||
url: this.url,
|
url: this.url,
|
||||||
path: this.path,
|
path: this.path,
|
||||||
|
|||||||
@@ -156,17 +156,17 @@ export default {
|
|||||||
// set the relevant values.
|
// set the relevant values.
|
||||||
themes: [
|
themes: [
|
||||||
{
|
{
|
||||||
color: "#252628",
|
color: "#121212",
|
||||||
name: "Kinda Dark",
|
name: "Kinda Dark",
|
||||||
class: "",
|
class: "",
|
||||||
aceEditor: "dracula"
|
aceEditor: "twilight"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
color: "#ffffff",
|
color: "#ffffff",
|
||||||
name: "Clearly White",
|
name: "Clearly White",
|
||||||
vibrant: true,
|
vibrant: true,
|
||||||
class: "light",
|
class: "light",
|
||||||
aceEditor: "xcode"
|
aceEditor: "iplastic"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
color: "#000000",
|
color: "#000000",
|
||||||
@@ -180,8 +180,8 @@ export default {
|
|||||||
vibrant: window.matchMedia("(prefers-color-scheme: light)").matches,
|
vibrant: window.matchMedia("(prefers-color-scheme: light)").matches,
|
||||||
class: "auto",
|
class: "auto",
|
||||||
aceEditor: window.matchMedia("(prefers-color-scheme: light)").matches
|
aceEditor: window.matchMedia("(prefers-color-scheme: light)").matches
|
||||||
? "xcode"
|
? "iplastic"
|
||||||
: "dracula"
|
: "twilight"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
// You can define a new color here! It will simply store the color value.
|
// You can define a new color here! It will simply store the color value.
|
||||||
@@ -273,7 +273,7 @@ export default {
|
|||||||
document.documentElement.style.setProperty("--ac-color", color);
|
document.documentElement.style.setProperty("--ac-color", color);
|
||||||
document.documentElement.style.setProperty(
|
document.documentElement.style.setProperty(
|
||||||
"--act-color",
|
"--act-color",
|
||||||
vibrant ? "rgb(37, 38, 40)" : "#f8f8f2"
|
vibrant ? "rgba(18, 18, 18, 1)" : "rgba(255, 255, 255, 1)"
|
||||||
);
|
);
|
||||||
this.applySetting("THEME_COLOR", color.toUpperCase());
|
this.applySetting("THEME_COLOR", color.toUpperCase());
|
||||||
this.applySetting("THEME_COLOR_VIBRANT", vibrant);
|
this.applySetting("THEME_COLOR_VIBRANT", vibrant);
|
||||||
|
|||||||
Reference in New Issue
Block a user