Fixed merge conflicts
This commit is contained in:
@@ -1,9 +1,6 @@
|
||||
<script setup lang="ts">
|
||||
import { RouterView } from 'vue-router';
|
||||
import SidebarComponent from '@components/sidebar/SidebarComponent.vue';
|
||||
<<<<<<< HEAD
|
||||
|
||||
=======
|
||||
import {onMounted, provide, ref } from 'vue';
|
||||
|
||||
const theme = ref( getTheme() );
|
||||
@@ -44,20 +41,13 @@ function getTheme(){
|
||||
return localStorage.theme;
|
||||
}
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex h-screen bg-gradient-to-r from-white to-sky-200 dark:from-slate-800 dark:to-indigo-950">
|
||||
<SidebarComponent />
|
||||
<div class="relative p-4 w-full m-4 bg-blue-50 dark:bg-gray-700 rounded-2xl overflow-hidden shadow-lg">
|
||||
=======
|
||||
<div id="layout" class="font-sans flex h-screen bg-gradient-to-br from-sky-200 to-indigo-200 dark:from-sky-950 dark:to-indigo-950">
|
||||
<SidebarComponent @theme:changed="setTheme" />
|
||||
<div class="relative p-4 w-full m-4 ml-0 bg-blue-50 dark:bg-gray-700 rounded-2xl overflow-hidden shadow-lg">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<RouterView></RouterView>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -45,9 +45,5 @@ function setDefault() {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<button class="tool-button" @click="setDefault()">Default {{ stylizedName }}</button>
|
||||
=======
|
||||
<button class="tool-button" @click="setDefault()">Example {{ stylizedName }}</button>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</template>
|
||||
@@ -1,15 +1,6 @@
|
||||
<script setup lang="ts">
|
||||
const props = defineProps(
|
||||
{
|
||||
<<<<<<< HEAD
|
||||
formatType: {type:String,required:true},
|
||||
code: {type:String,required:true},
|
||||
}
|
||||
)
|
||||
|
||||
function chooseType(formatType: String){
|
||||
if (formatType == "XML Converter"){
|
||||
=======
|
||||
formatType: {
|
||||
type:String,
|
||||
required:true
|
||||
@@ -32,7 +23,6 @@ const emit = defineEmits([
|
||||
|
||||
function chooseType(formatType: String){
|
||||
if (formatType == "HTML -> XML"){
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
return "convert";
|
||||
}
|
||||
return formatType.toLowerCase();
|
||||
@@ -49,11 +39,7 @@ function getTypeInfo(){
|
||||
function createBody(){
|
||||
return JSON.stringify({
|
||||
"data": props.code,
|
||||
<<<<<<< HEAD
|
||||
"process": getTypeInfo(),
|
||||
=======
|
||||
"processorData": getTypeInfo(),
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
"processor": "libxml",
|
||||
"version": "1.0"
|
||||
});
|
||||
@@ -61,31 +47,16 @@ function createBody(){
|
||||
|
||||
const fetchLink = document.location.protocol + "//" + document.location.hostname + "/libxml/html/" + chooseType(props.formatType);
|
||||
|
||||
<<<<<<< HEAD
|
||||
const emit = defineEmits([
|
||||
'update:result'
|
||||
])
|
||||
|
||||
function processResponse(formattedCode : any){
|
||||
var result = formattedCode.result;
|
||||
return result
|
||||
}
|
||||
=======
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
function process(){
|
||||
fetch(fetchLink, {body:createBody(), method: "POST"})
|
||||
.then( response => response.json() )
|
||||
<<<<<<< HEAD
|
||||
.then( formattedCode => emit('update:result', processResponse(formattedCode) ) )
|
||||
=======
|
||||
.then( formattedCode => processResponse(formattedCode) )
|
||||
}
|
||||
|
||||
function processResponse(formattedCode : any){
|
||||
emit('update:result', formattedCode )
|
||||
emit("update:error", formattedCode.status == "ERR")
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
@@ -5,20 +5,12 @@ const props = defineProps({
|
||||
isMinimizer: {type: Boolean}
|
||||
})
|
||||
|
||||
<<<<<<< HEAD
|
||||
const emit = defineEmits(["update:result"])
|
||||
=======
|
||||
const emit = defineEmits(["update:result", "update:error"])
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
function process() {
|
||||
var request:Request = prepareRequest();
|
||||
fetchRequest(request).then((data) => {
|
||||
<<<<<<< HEAD
|
||||
sendProcessedData(data);
|
||||
=======
|
||||
sendProcessedData(data);
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
})
|
||||
}
|
||||
|
||||
@@ -44,17 +36,11 @@ function prepareRequestBody():string {
|
||||
|
||||
async function fetchRequest(request: Request):Promise<JSON> {
|
||||
var responseBody = await fetch(request)
|
||||
<<<<<<< HEAD
|
||||
.then(response => response.json())
|
||||
.then((body) => body);
|
||||
console.log(responseBody);
|
||||
=======
|
||||
.then(response => {
|
||||
emit('update:error', response.status != 200)
|
||||
return response.json()
|
||||
})
|
||||
.then((body) => body);
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
return responseBody;
|
||||
}
|
||||
|
||||
|
||||
@@ -5,14 +5,6 @@ const props = defineProps({
|
||||
isMinimizer: {type: Boolean}
|
||||
})
|
||||
|
||||
<<<<<<< HEAD
|
||||
const emit = defineEmits(["update:result"])
|
||||
|
||||
function process() {
|
||||
var request:Request = prepareRequest();
|
||||
fetchRequest(request).then((data) => {
|
||||
sendProcessedData(data);
|
||||
=======
|
||||
const emit = defineEmits([
|
||||
'update:result',
|
||||
'update:error'
|
||||
@@ -22,7 +14,6 @@ function process() {
|
||||
var request:Request = prepareRequest()
|
||||
fetchRequest(request).then((data) => {
|
||||
sendProcessedData(data)
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
})
|
||||
}
|
||||
|
||||
@@ -30,57 +21,30 @@ function prepareRequest():Request {
|
||||
var request = new Request(prepareURL(), {
|
||||
body: prepareRequestBody(),
|
||||
method: "POST"
|
||||
<<<<<<< HEAD
|
||||
});
|
||||
=======
|
||||
})
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
return request
|
||||
}
|
||||
|
||||
function prepareURL(): string {
|
||||
<<<<<<< HEAD
|
||||
var mode = "prettify";
|
||||
if (props.isMinimizer)
|
||||
mode = "minimize";
|
||||
return document.location.protocol + "//" + document.location.hostname + "/libxml/" + mode;
|
||||
=======
|
||||
var mode = "prettify"
|
||||
if (props.isMinimizer)
|
||||
mode = "minimize"
|
||||
return document.location.protocol + "//" + document.location.hostname + "/libxml/" + mode
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
function prepareRequestBody():string {
|
||||
var requestBody = JSON.stringify({
|
||||
"data": props.xml,
|
||||
<<<<<<< HEAD
|
||||
"process": "N/A",
|
||||
"processor": "libxml",
|
||||
"version": "1.0"
|
||||
});
|
||||
return requestBody;
|
||||
=======
|
||||
"processorData": "N/A",
|
||||
"processor": "libxml",
|
||||
"version": "1.0"
|
||||
})
|
||||
return requestBody
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
async function fetchRequest(request: Request):Promise<JSON> {
|
||||
var responseBody = await fetch(request)
|
||||
.then(response => response.json())
|
||||
<<<<<<< HEAD
|
||||
.then((body) => body);
|
||||
return responseBody;
|
||||
}
|
||||
|
||||
function sendProcessedData(data: JSON) {
|
||||
emit("update:result", data);
|
||||
=======
|
||||
.then((body) => {
|
||||
emit("update:error", body.status == "ERR")
|
||||
return body
|
||||
@@ -90,7 +54,6 @@ function sendProcessedData(data: JSON) {
|
||||
|
||||
function sendProcessedData(data: JSON) {
|
||||
emit("update:result", data)
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
@@ -5,14 +5,6 @@
|
||||
<template>
|
||||
<div class="dark:text-slate-100">
|
||||
<h1 class="text-3xl mb-4">Welcome to Release11 Tools</h1>
|
||||
<<<<<<< HEAD
|
||||
<h2 class="text-xl">Our toolset is split to three main categories:</h2>
|
||||
<ol class="list-decimal ml-5">
|
||||
<li><strong>XML</strong> - containing various tools that allow to validate and transform any XML</li>
|
||||
<li><strong>Formatter</strong> - containing tools for formatting text files in various formats</li>
|
||||
<li><strong>REST</strong> - consist of Mock that allows to create mocked REST endpoint</li>
|
||||
</ol>
|
||||
=======
|
||||
<h2 class="text-xl">Our tool set is split to three main categories:</h2>
|
||||
<ul class="list-decimal ml-5">
|
||||
<li><strong>XML</strong> - containing various tools that allow to validate and transform any XML</li>
|
||||
@@ -42,13 +34,8 @@
|
||||
<li><strong>URL</strong> - This tool allow to encode string in the way that is used by browser when you put it in address bar.</li>
|
||||
</ul>
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
|
||||
</template>
|
||||
|
||||
<style scoped></style>
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
@@ -1,9 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
import CodeEditorComponent from '../CodeEditorComponent.vue';
|
||||
=======
|
||||
import CodeEditorComponent from '@/components/common/CodeEditorComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
|
||||
const props = defineProps(
|
||||
|
||||
@@ -55,10 +55,7 @@ function addNewHeader(name : string, value : string){
|
||||
<template>
|
||||
|
||||
<div class="flex flex-col gap-4">
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
<label>Response Headers</label>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<div class="flex flex-row gap-4">
|
||||
<div class="w-full">Header name</div>
|
||||
<div class="w-full">Header value</div>
|
||||
|
||||
@@ -10,23 +10,14 @@ const props = defineProps(
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="w-full text-center text-white mt-2 flex flex-col gap-4 ">
|
||||
=======
|
||||
<div class="w-full h-2/3 text-center dark:text-white mt-2 flex flex-col gap-4 overflow-auto">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<div class="flex flex-row gap-4">
|
||||
<div class="w-full font-bold">Name</div>
|
||||
<div class="w-full font-bold">Value</div>
|
||||
</div >
|
||||
<div class="flex flex-row gap-4" v-for="(value,name) in JSON.parse(data)" :key="name">
|
||||
<<<<<<< HEAD
|
||||
<div class="w-full overflow-hidden">{{ name }}</div>
|
||||
<div class="w-full overflow-hidden">{{ value }}</div>
|
||||
=======
|
||||
<div class="w-1/2 break-words">{{ name }}</div>
|
||||
<div class="w-1/2 break-words">{{ value }}</div>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@@ -34,14 +34,9 @@ function showHeaders(headers: object, index: number){
|
||||
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="w-full xl:w-2/5 flex flex-none flex-col gap-y-4">
|
||||
<HistoryRecords class="xl:h-1/3 overflow-y-scroll" @click:show-headers="showHeaders" @click:show-body="showBody"></HistoryRecords>
|
||||
=======
|
||||
<div class="flex flex-1 flex-col xl:w-3/12 justify-items-stretch gap-y-4">
|
||||
<label class="dark:text-white text-center"><span class="font-bold">Attention! </span>History doesn't refresh automatically! Use refresh button (⟳) on the right!</label>
|
||||
<HistoryRecords class="xl:h-1/3 overflow-y-auto" @click:show-headers="showHeaders" @click:show-body="showBody"></HistoryRecords>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<BodyDetailComponent :content-type="currentContentType" :data="currentShownData" v-if="shownDetail == 'body' "></BodyDetailComponent>
|
||||
<HeadersDetailComponent :data="currentShownData" v-if="shownDetail == 'headers' "></HeadersDetailComponent>
|
||||
</div>
|
||||
|
||||
@@ -45,21 +45,12 @@ function refreshHistory(){
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div>
|
||||
<table class="text-white h-28 w-full text-center">
|
||||
<tr>
|
||||
<th>Time</th>
|
||||
<th>HTTP Method</th>
|
||||
<th>HTTP Headers</th>
|
||||
=======
|
||||
<div class="h-28 text-center text-grey-900 dark:text-white">
|
||||
<table class="w-full">
|
||||
<tr>
|
||||
<th>Time</th>
|
||||
<th>Request <br>HTTP Method</th>
|
||||
<th>Request Headers</th>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<th>Request Body</th>
|
||||
<th class="text-2xl"><button @click="refreshHistory()">⟳</button></th>
|
||||
</tr>
|
||||
@@ -69,11 +60,7 @@ function refreshHistory(){
|
||||
<td> <button @click="showHeaders(item.headers, index)" class="underline">Show Headers</button> </td>
|
||||
<td>
|
||||
<button v-if="item.requestBody.length != 0" @click="showBody(item.requestBody, index, item.headers['content-type'])" class="underline">Show Body</button>
|
||||
<<<<<<< HEAD
|
||||
<span v-else>Empty Body</span>
|
||||
=======
|
||||
<span v-else>Empty</span>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
@@ -2,11 +2,7 @@
|
||||
import {ref, type Ref} from 'vue';
|
||||
import HeadersComponent from './HeadersComponent.vue';
|
||||
import SaveComponent from './SaveComponent.vue';
|
||||
<<<<<<< HEAD
|
||||
import CodeEditorComponent from '../CodeEditorComponent.vue';
|
||||
=======
|
||||
import CodeEditorComponent from '@/components/common/CodeEditorComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
const clientUUID = ref('');
|
||||
const host = window.location.protocol + "//" + window.location.hostname + "/mock";
|
||||
@@ -48,54 +44,30 @@ function showUpdatedCode(newCode : string){
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex flex-col flex-none w-full xl:w-3/5 text-center dark:text-white gap-6 p-1">
|
||||
<div class="flex flex-col md:flex-row gap-4 items-center md:justify-stretch md:items-end">
|
||||
<div class="flex flex-col w-full">
|
||||
<label for="link">Link</label><br/>
|
||||
=======
|
||||
<div class="flex flex-col flex-none w-full xl:w-3/5 text-center dark:text-white gap-3 p-1">
|
||||
<div class="flex flex-col md:flex-row gap-4 items-center md:justify-stretch md:items-end">
|
||||
<div class="flex flex-col w-full">
|
||||
<label for="link">REST Service URL</label>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<div class="p-2 w-full border-slate-400 border-2 rounded-lg">
|
||||
<a class="underline" :href="mockMessageLink">{{ mockMessageLink }}</a>
|
||||
</div>
|
||||
</div>
|
||||
<<<<<<< HEAD
|
||||
|
||||
=======
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<SaveComponent v-bind:message-data="messageData"></SaveComponent>
|
||||
</div>
|
||||
<div class="flex flex-col md:flex-row w-full gap-4">
|
||||
<div class="w-full">
|
||||
<<<<<<< HEAD
|
||||
<label for="contentType">Content Type</label><br/>
|
||||
=======
|
||||
<label for="contentType">Response Content Type</label><br/>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<input class="text-field" id="contentType" type="text" v-model="messageData.contentType"/>
|
||||
</div>
|
||||
|
||||
<div class="w-full">
|
||||
<<<<<<< HEAD
|
||||
<label for="httpStatus">HttpStatus</label><br/>
|
||||
=======
|
||||
<label for="httpStatus">Response HTTP Status</label><br/>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<input class="text-field" id="httpStatus" type="text" v-model="messageData.httpStatus"/>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex text-left flex-col overflow-scroll h-3/4">
|
||||
<label for="messageBody text-center">Body</label>
|
||||
=======
|
||||
<div class="flex text-left flex-col overflow-auto gap-2 h-3/4">
|
||||
<label class="text-center" for="messageBody text-center">Response Body</label>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<CodeEditorComponent
|
||||
@update:updated-code="showUpdatedCode"
|
||||
v-model="messageData.messageBody"
|
||||
|
||||
@@ -15,11 +15,7 @@ const visible = ref('hidden');
|
||||
const fetchLink = window.location.protocol + "//" + window.location.hostname + "/mock/api/mock";
|
||||
|
||||
function prepareAndSendData(){
|
||||
<<<<<<< HEAD
|
||||
if (props.messageData != null || props.messageData != undefined ){
|
||||
=======
|
||||
if (props.messageData != null || props.messageData != undefined ){
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
fetch(fetchLink, { method: "put", body:JSON.stringify(props.messageData), headers: { "Content-Type" : "application/json" }})
|
||||
.then( response => response.text() )
|
||||
.then( data => {message.value = data} )
|
||||
|
||||
@@ -1,23 +1,16 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
import ThemeSwitcherComponent from '../common/ThemeSwitcherComponent.vue';
|
||||
|
||||
const emit = defineEmits([
|
||||
"theme",
|
||||
]);
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex flex-col gap-4 text-center font-thin text-slate-600 dark:text-slate-400 ">
|
||||
=======
|
||||
<div class="flex flex-col gap-4 items-center text-center font-thin text-slate-600 dark:text-slate-400 ">
|
||||
<ThemeSwitcherComponent @theme="(theme)=>emit('theme',theme)"></ThemeSwitcherComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<div class="flex flex-col">
|
||||
<a href="mailto:bugs@release11.com">Found a bug?</a>
|
||||
<a href="#" class="hidden">Privacy Policy</a>
|
||||
|
||||
@@ -8,24 +8,16 @@ import logoWhite from '@assets/logo_czarne.svg';
|
||||
|
||||
const logoR11 = ref( logoDark );
|
||||
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
const emit = defineEmits([
|
||||
'theme:changed'
|
||||
])
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
function changeLogoForTheme(){
|
||||
logoR11.value = isDarkModeSet() ? logoDark : logoWhite;
|
||||
}
|
||||
|
||||
function isDarkModeSet(){
|
||||
<<<<<<< HEAD
|
||||
return window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches;
|
||||
}
|
||||
|
||||
=======
|
||||
if (localStorage.theme)
|
||||
return localStorage.theme == "dark";
|
||||
else
|
||||
@@ -37,7 +29,6 @@ function changeTheme(theme:string){
|
||||
emit('theme:changed',theme);
|
||||
}
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
onMounted( () => {
|
||||
changeLogoForTheme();
|
||||
})
|
||||
@@ -50,13 +41,8 @@ onMounted( () => {
|
||||
<a href="https://release11.com/">
|
||||
<img :src="logoR11" class="w-72 h-16 p-2 pt-0"/>
|
||||
</a>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex basis-full flex-col font-medium items-center">
|
||||
<sidebar-menu-element-component category-name="XML">
|
||||
=======
|
||||
<div class="flex basis-full flex-col font-normal items-center">
|
||||
<sidebar-menu-element-component category-name="Parser">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<SidebarToolLinkComponent path-to="/xml/xpath" element-content="XPath" />
|
||||
<SidebarToolLinkComponent path-to="/xml/xquery" element-content="XQuery" />
|
||||
<SidebarToolLinkComponent path-to="/xml/xsd" element-content="XSD" />
|
||||
@@ -74,10 +60,6 @@ onMounted( () => {
|
||||
<SidebarToolLinkComponent path-to="/rest/mock" element-content="Mock" />
|
||||
</sidebar-menu-element-component>
|
||||
|
||||
<<<<<<< HEAD
|
||||
</div>
|
||||
<FooterComponent></FooterComponent>
|
||||
=======
|
||||
<sidebar-menu-element-component category-name="Encoder">
|
||||
<SidebarToolLinkComponent path-to="/encoder/base64" element-content="Base64" />
|
||||
<SidebarToolLinkComponent path-to="/encoder/url" element-content="URL" />
|
||||
@@ -86,7 +68,6 @@ onMounted( () => {
|
||||
|
||||
</div>
|
||||
<FooterComponent @theme="changeTheme"></FooterComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
</aside>
|
||||
</template>
|
||||
@@ -18,17 +18,10 @@ const props = defineProps(
|
||||
|
||||
<template>
|
||||
<div class="w-full mb-4 p-2 rounded-xl shadow-lg bg-gradient-to-r from-blue-400 to-blue-300 dark:from-sky-700 dark:to-sky-900">
|
||||
<<<<<<< HEAD
|
||||
<button @click="switchHiddenElement()" type="button" :class="[isActive ? 'rounded-lg' : 'rounded-lg']" class="w-full p-2 text-lg font-bold text-gray-900 transition duration-75 hover:bg-blue-100 dark:text-gray-100 dark:hover:bg-slate-600">
|
||||
<span class="flex-1 whitespace-nowrap">{{props.categoryName}}</span>
|
||||
</button>
|
||||
<div class="flex flex-col w-full py-2 bg-indigo-50 dark:bg-slate-800 rounded-xl font-thin overflow-hidden" :class="[isActive ? 'active' : 'hidden']">
|
||||
=======
|
||||
<button @click="switchHiddenElement()" type="button" :class="[isActive ? 'rounded-lg' : 'rounded-lg']" class="w-full p-1 text-lg font-normal text-gray-900 transition duration-75 hover:bg-blue-100 dark:text-gray-100 dark:hover:bg-slate-600">
|
||||
<span class="flex-1 whitespace-nowrap">{{props.categoryName}}</span>
|
||||
</button>
|
||||
<div class="flex flex-col w-full mt-2 py-2 bg-indigo-50 dark:bg-slate-800 rounded-xl font-light overflow-hidden" :class="[isActive ? 'active' : 'hidden']">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<slot></slot>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -17,10 +17,6 @@ const props = defineProps(
|
||||
|
||||
<style>
|
||||
.router-link-active {
|
||||
<<<<<<< HEAD
|
||||
font-weight: 500;
|
||||
=======
|
||||
font-weight: 600;
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
</style>
|
||||
@@ -1,17 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
import InsertTemplateComponent from '@components/common/InsertTemplateComponent.vue';
|
||||
import XMLButtonFormatterComponent from '@components/formatter/XMLButtonFormatterComponent.vue'
|
||||
import { ref } from 'vue';
|
||||
import CodeEditor from '../CodeEditorComponent.vue';
|
||||
|
||||
const data = ref('')
|
||||
=======
|
||||
import InsertTemplateComponent from '@components/common/InsertTemplateComponent.vue'
|
||||
import XMLButtonFormatterComponent from '@components/formatter/XMLButtonFormatterComponent.vue'
|
||||
import { ref } from 'vue'
|
||||
import CodeEditor from '@/components/common/CodeEditorComponent.vue'
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
const props = defineProps(
|
||||
{
|
||||
@@ -19,27 +10,6 @@ const props = defineProps(
|
||||
data: {type: String},
|
||||
}
|
||||
)
|
||||
<<<<<<< HEAD
|
||||
const emit = defineEmits(['update'])
|
||||
|
||||
function sendValue() {
|
||||
console.log("input works")
|
||||
emit('update', data.value)
|
||||
}
|
||||
|
||||
function sendNewValue(newValue : string) {
|
||||
data.value = newValue
|
||||
emit('update', data.value)
|
||||
}
|
||||
|
||||
function updateData(newData: string) {
|
||||
data.value = newData;
|
||||
sendValue();
|
||||
}
|
||||
|
||||
function clear() {
|
||||
updateData('');
|
||||
=======
|
||||
const emit = defineEmits(['update:modelValue'])
|
||||
|
||||
const data = ref('')
|
||||
@@ -58,15 +28,11 @@ function updateData(newData: string, clearFileSelector: boolean = true) {
|
||||
|
||||
function clear() {
|
||||
updateData('')
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
function canBeFormatted() {
|
||||
return props.stylizedName.toLowerCase() == 'xml' ||
|
||||
props.stylizedName.toLowerCase() == 'xsd' ||
|
||||
<<<<<<< HEAD
|
||||
props.stylizedName.toLowerCase() == 'xslt';
|
||||
=======
|
||||
props.stylizedName.toLowerCase() == 'xslt'
|
||||
}
|
||||
|
||||
@@ -80,19 +46,11 @@ function readFile(file : any) {
|
||||
|
||||
}
|
||||
reader.readAsText(file.target.files[0])
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex flex-col w-full h-1/2 lg:h-1/2 flex-none pr-4 pb-2">
|
||||
<div class="flex place-content-between w-full items-center">
|
||||
<span class="dark:text-white">{{ stylizedName }}</span>
|
||||
<div class="flex space-x-2 pb-2">
|
||||
<InsertTemplateComponent :stylized-name="props.stylizedName" @update:default-data="(data: string) => updateData(data)"></InsertTemplateComponent>
|
||||
=======
|
||||
<div class="flex flex-col w-full h-1/2 lg:h-1/2 flex-none xl:pr-2 2xl:pr-4 pb-2">
|
||||
<div class="flex place-content-between w-full items-center">
|
||||
<span class="dark:text-white mr-2">{{ stylizedName }}</span>
|
||||
@@ -102,15 +60,10 @@ function readFile(file : any) {
|
||||
</div>
|
||||
|
||||
<InsertTemplateComponent :stylized-name="props.stylizedName" @update:default-data="updateData"></InsertTemplateComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<XMLButtonFormatterComponent v-if="canBeFormatted()" :xml="data" @update:result="(data:any) => updateData(data.result)"></XMLButtonFormatterComponent>
|
||||
<button class="tool-button" @click="clear">Clear</button>
|
||||
</div>
|
||||
</div>
|
||||
<<<<<<< HEAD
|
||||
<CodeEditor @update:updated-code="sendNewValue" v-model="data" :code="data" :config="{disabled:false, language:stylizedName}"></CodeEditor>
|
||||
=======
|
||||
<CodeEditor @update:updated-code="updateData" v-model="data" :code="data" :config="{disabled:false, language:stylizedName}"></CodeEditor>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
</template>
|
||||
@@ -1,23 +1,13 @@
|
||||
<script setup lang="ts">
|
||||
import { onMounted, ref } from 'vue';
|
||||
<<<<<<< HEAD
|
||||
import CodeEditor from '../CodeEditorComponent.vue';
|
||||
|
||||
=======
|
||||
import { type TabData } from '../common/TabData'
|
||||
import CodeEditor from '@/components/common/CodeEditorComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
const props = defineProps(
|
||||
{
|
||||
tool: {type: String, required: true},
|
||||
<<<<<<< HEAD
|
||||
xml: {type: String},
|
||||
query: {type: String}
|
||||
=======
|
||||
xml: {type: [String, Array<TabData>], required: true},
|
||||
query: {type: String, required: true}
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
)
|
||||
|
||||
@@ -25,23 +15,14 @@ const emit = defineEmits(["update"]);
|
||||
|
||||
const result = ref('');
|
||||
|
||||
<<<<<<< HEAD
|
||||
var enginesForCurrentTool = ref(["saxon", "xalan", "libxml"]);
|
||||
|
||||
const allVersions = ["1.0", "2.0", "3.0", "3.1"];
|
||||
var versionsForCurrentEngine = ref([""]);
|
||||
=======
|
||||
let enginesForCurrentTool = ref(["saxon", "xalan", "libxml"]);
|
||||
|
||||
const allVersions = ["1.0", "2.0", "3.0", "3.1"];
|
||||
let versionsForCurrentEngine = ref([""]);
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
const engine = ref('');
|
||||
const version = ref('');
|
||||
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
const errorOccurred = ref(false);
|
||||
const successOccurred = ref(false);
|
||||
|
||||
@@ -49,7 +30,6 @@ interface XmlFile {
|
||||
fileName: string;
|
||||
fileData: string;
|
||||
}
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
onMounted(() => {
|
||||
changeAvailableEngines();
|
||||
@@ -74,10 +54,6 @@ function changeAvailableVersions() {
|
||||
changeAvailableVersionsOfXSLT();
|
||||
else if (props.tool == "xsd")
|
||||
versionsForCurrentEngine.value = ["N/A"];
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
else if (props.tool == "xpath")
|
||||
changeAvailableVersionsOfXPath();
|
||||
|
||||
@@ -103,45 +79,18 @@ function selectDefaultEngine() {
|
||||
}
|
||||
|
||||
function selectDefaultVersion() {
|
||||
<<<<<<< HEAD
|
||||
const lastVersion = versionsForCurrentEngine.value.length - 1
|
||||
=======
|
||||
const lastVersion = versionsForCurrentEngine.value.length - 1;
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
version.value = versionsForCurrentEngine.value[lastVersion];
|
||||
emitVersionChange();
|
||||
}
|
||||
|
||||
function process() {
|
||||
<<<<<<< HEAD
|
||||
var request:Request = prepareRequest();
|
||||
=======
|
||||
let request:Request = prepareRequest();
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
fetchRequest(request).then((data) => {
|
||||
updateOutputField(data);
|
||||
})
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
function prepareRequest():Request {
|
||||
var request = new Request(prepareURL(), {
|
||||
body: prepareRequestBody(),
|
||||
method: "POST"
|
||||
});
|
||||
return request
|
||||
}
|
||||
|
||||
function prepareURL(): string {
|
||||
const engineEndpoint = engine.value == "libxml" ? "libxml" : "java";
|
||||
return document.location.protocol + "//" + document.location.hostname + "/" + engineEndpoint + "/" + props.tool;
|
||||
}
|
||||
|
||||
function prepareRequestBody():string {
|
||||
var requestBody = JSON.stringify({
|
||||
"data": props.xml,
|
||||
"process": props.query,
|
||||
=======
|
||||
function updateOutputField(data: any) {
|
||||
result.value = data.result
|
||||
errorOccurred.value = data.status != "OK"
|
||||
@@ -180,28 +129,12 @@ function prepareRequestBodySingleXml(data: string):string {
|
||||
let requestBody = JSON.stringify({
|
||||
"data": data,
|
||||
"processorData": props.query,
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
"processor": engine.value,
|
||||
"version": version.value
|
||||
});
|
||||
return requestBody;
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
async function fetchRequest(request: Request):Promise<JSON> {
|
||||
var responseBody = await fetch(request)
|
||||
.then(response => response.json())
|
||||
.then((body) => body);
|
||||
return responseBody;
|
||||
}
|
||||
|
||||
function updateOutputField(data: any) {
|
||||
result.value = data.result;
|
||||
}
|
||||
|
||||
function clear() {
|
||||
result.value = "";
|
||||
=======
|
||||
function prepareRequestBodyMultiXml():string {
|
||||
if (!Array.isArray(props.xml))
|
||||
return "";
|
||||
@@ -248,26 +181,12 @@ function clear() {
|
||||
result.value = ""
|
||||
errorOccurred.value = false
|
||||
successOccurred.value = false
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
|
||||
function emitVersionChange() {
|
||||
emit("update", version.value);
|
||||
}
|
||||
|
||||
<<<<<<< HEAD
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div class="flex flex-col flex-none w-full lg:w-1/2 h-1/3 lg:h-full items-center pb-2 pr-2">
|
||||
<div class="flex place-content-between w-full items-center pb-2">
|
||||
<span class="dark:text-white">Result:</span>
|
||||
<div class="flex space-x-2">
|
||||
<select v-model="engine" name="engine" @change="changeAvailableVersions()" class="px-3 rounded-full border border-slate-400 bg-white dark:text-slate-100 dark:bg-gray-600">
|
||||
<option v-for="engine in enginesForCurrentTool" :value="engine">{{ engine }}</option>
|
||||
</select>
|
||||
<select v-model="version" name="version" @change="emitVersionChange()" class="px-3 rounded-full border border-slate-400 bg-white dark:text-slate-100 dark:bg-gray-600">
|
||||
=======
|
||||
function isVersionSelectionAvailable() {
|
||||
return !(versionsForCurrentEngine.value.length == 1 && versionsForCurrentEngine.value.at(0) == "N/A");
|
||||
}
|
||||
@@ -293,20 +212,14 @@ function highlightField() {
|
||||
<option v-for="engine in enginesForCurrentTool" :value="engine">{{ engine }}</option>
|
||||
</select>
|
||||
<select v-model="version" v-if="isVersionSelectionAvailable()" name="version" @change="emitVersionChange()" class="px-3 rounded-full border border-slate-400 bg-white dark:text-slate-100 dark:bg-gray-600">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<option v-for="version in versionsForCurrentEngine" :value="version">{{ version }}</option>
|
||||
</select>
|
||||
<button class="tool-button" @click="clear">Clear</button>
|
||||
<button class="tool-button" @click="process">Process</button>
|
||||
</div>
|
||||
</div>
|
||||
<<<<<<< HEAD
|
||||
<div class="overflow-scroll h-full w-full">
|
||||
<CodeEditor :code="result" :config="{disabled:true,language:tool}"></CodeEditor>
|
||||
=======
|
||||
<div class="overflow-auto h-full w-full rounded-2xl" :class="highlightField()">
|
||||
<CodeEditor :code="result" :config="{disabled:false,language:tool}"></CodeEditor>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -13,11 +13,7 @@ function toggleTooltips() {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div class="flex p-2 flex-col rounded-xl shadow-lg bg-gradient-to-r from-zinc-400 to-slate-400 dark:from-slate-600 dark:to-slate-700">
|
||||
=======
|
||||
<div class="flex p-2 flex-col rounded-xl shadow-lg bg-gradient-to-r from-gray-300 to-slate-300 dark:from-slate-500 dark:to-slate-600">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<button :class="{ 'mb-2' : !isCategoryHidden }" class="dark:text-slate-100 hover:font-bold" @click="toggleTooltips()">{{ props.name }}</button>
|
||||
<div id="content" :class="{'hidden' : isCategoryHidden}" class="flex flex-col gap-4 w-full h-fit p-2 rounded-xl dark:text-white bg-indigo-50 dark:bg-slate-800" >
|
||||
<slot></slot>
|
||||
|
||||
@@ -58,19 +58,11 @@ function toggleTooltips() {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div :class="areTooltipsHidden ? 'w-fit' : 'w-4/12'" class="hidden 2xl:flex shrink-0 items-stretch p-2 flex-row rounded-xl shadow-lg bg-gradient-to-r from-blue-400 to-blue-300 dark:from-sky-600 dark:to-sky-800 ">
|
||||
<button :class="{'mr-2' : !areTooltipsHidden }" class="text-xl w-6 dark:text-slate-100" @click="toggleTooltips()">
|
||||
T<br/>o<br/>o<br/>l<br/>t<br/>i<br/>p<br/>s
|
||||
</button>
|
||||
<div id="content" :class="{'hidden' : areTooltipsHidden}" class="w-full flex flex-col gap-4 p-2 overflow-scroll rounded-xl dark:text-white bg-indigo-50 dark:bg-slate-800" >
|
||||
=======
|
||||
<div :class="areTooltipsHidden ? 'w-fit' : 'w-[26rem]'" class="hidden xl:flex shrink-0 items-stretch p-2 flex-row rounded-xl shadow-lg bg-gradient-to-r from-blue-400 to-blue-300 dark:from-sky-600 dark:to-sky-800 ">
|
||||
<button :class="{'mr-2' : !areTooltipsHidden }" class="text-xl w-6 dark:text-slate-100" @click="toggleTooltips()">
|
||||
T<br/>o<br/>o<br/>l<br/>t<br/>i<br/>p<br/>s
|
||||
</button>
|
||||
<div id="content" :class="{'hidden' : areTooltipsHidden}" class="w-full flex flex-col gap-4 p-2 overflow-auto rounded-xl dark:text-white bg-indigo-50 dark:bg-gray-700" >
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<TooltipDiffsComponent :tool-name="toolType" :tool-version="props.version"></TooltipDiffsComponent>
|
||||
<div class="w-full h-2"> </div>
|
||||
<tooltipCategoryComponent v-for="category in selectTooltip()" :key="category.name" :name="category.name">
|
||||
|
||||
@@ -12,7 +12,6 @@ const props = defineProps({
|
||||
function getDiffEntry(toolVersion : String) : string[] {
|
||||
if ( props.toolName == "xpath" ){
|
||||
switch(toolVersion){
|
||||
<<<<<<< HEAD
|
||||
case "2.0" : {
|
||||
return xpathDiffs.VersionDiffs[0].diffs
|
||||
}
|
||||
@@ -26,21 +25,6 @@ function getDiffEntry(toolVersion : String) : string[] {
|
||||
return xpathDiffs.VersionDiffs[2].diffs
|
||||
}
|
||||
}
|
||||
=======
|
||||
case "2.0" : {
|
||||
return xpathDiffs.VersionDiffs[0].diffs
|
||||
}
|
||||
case "3.0" : {
|
||||
return xpathDiffs.VersionDiffs[1].diffs
|
||||
}
|
||||
case "3.1" : {
|
||||
return xpathDiffs.VersionDiffs[2].diffs
|
||||
}
|
||||
default: {
|
||||
return xpathDiffs.VersionDiffs[2].diffs
|
||||
}
|
||||
}
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
} else if (props.toolName == "xslt") {
|
||||
return ["XSLT 2.0"].concat(xsltDiffs.VersionDiffs[0].diffs).concat(["XSLT 3.0"]).concat(xsltDiffs.VersionDiffs[1].diffs) ;
|
||||
} else{
|
||||
@@ -72,11 +56,7 @@ function getInfo(num : number ){
|
||||
</span>
|
||||
</TooltipCategoryComponent>
|
||||
|
||||
<<<<<<< HEAD
|
||||
<TooltipCategoryComponent v-if="toolVersion !== '1.0'" :name="getInfo(1).category">
|
||||
=======
|
||||
<TooltipCategoryComponent v-if="toolVersion !== '1.0'" :name="getInfo(1).category + ' ' + toolVersion + '?'">
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
<span v-for=" diff in getDiffEntry(toolVersion)" v-bind:key="diff" class=" text-justify" >
|
||||
<div class="w-full h-4 text-center" v-if="diff.includes('XSLT')">
|
||||
------------ {{ diff }} ------------
|
||||
|
||||
@@ -12,14 +12,11 @@ const xsdTool = import("@views/XSDView.vue")
|
||||
const xpathTool = import("@views/XPathView.vue")
|
||||
const xqueryTool = import("@views/XQueryView.vue")
|
||||
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
const base64Encoder = import("@views/Base64EncoderView.vue")
|
||||
const urlEncoder = import("@views/UrlEncoderView.vue")
|
||||
|
||||
const restMockMan = import("@views/man/RestMockManView.vue")
|
||||
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
const routes = [
|
||||
{
|
||||
path: '/',
|
||||
@@ -65,8 +62,6 @@ const routes = [
|
||||
path: '/rest/mock',
|
||||
name: 'restmock',
|
||||
component: () => restMock
|
||||
<<<<<<< HEAD
|
||||
=======
|
||||
},
|
||||
{
|
||||
path: '/encoder/base64',
|
||||
@@ -82,7 +77,6 @@ const routes = [
|
||||
path: '/man/rest-mock',
|
||||
name: 'RestMockManView',
|
||||
component: () => restMockMan
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
}
|
||||
]
|
||||
|
||||
|
||||
@@ -1,42 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
import InsertTemplateComponent from '@components/common/InsertTemplateComponent.vue';
|
||||
import CodeEditorComponent from '@/components/CodeEditorComponent.vue';
|
||||
import { ref } from 'vue';
|
||||
import HtmlButtonFormatterComponent from '@/components/formatter/HtmlButtonFormatterComponent.vue';
|
||||
|
||||
|
||||
const html = ref('');
|
||||
|
||||
function clear() {
|
||||
html.value = '';
|
||||
}
|
||||
|
||||
function setTextFieldValue(data: string) {
|
||||
html.value = data.toString()
|
||||
}
|
||||
=======
|
||||
import FormatterComponent from '@/components/formatter/FormatterComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col w-full h-full gap-4">
|
||||
<div id="toolbar" class="flex flex-col gap-4 items-center lg:flex-row place-content-between">
|
||||
<span class="dark:text-slate-100">HTML Formatter</span>
|
||||
<div class="flex flex-wrap gap-2 justify-center">
|
||||
<InsertTemplateComponent stylized-name="HTML" @update:defaultData="setTextFieldValue"></InsertTemplateComponent>
|
||||
<button class="tool-button" @click="clear()">Clear</button>
|
||||
<HtmlButtonFormatterComponent @update:result="setTextFieldValue" :code="html" format-type="Minimize" />
|
||||
<HtmlButtonFormatterComponent @update:result="setTextFieldValue" :code="html" format-type="Prettify" />
|
||||
<HtmlButtonFormatterComponent @update:result="setTextFieldValue" :code="html" format-type="XML Converter" />
|
||||
</div>
|
||||
</div>
|
||||
<CodeEditorComponent @update:updated-code="setTextFieldValue" :code="html" :config="{disabled:false,language:'html'}" />
|
||||
</div>
|
||||
=======
|
||||
<FormatterComponent formatter-language="HTML"></FormatterComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</template>
|
||||
@@ -1,45 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
import CodeEditorComponent from '@/components/CodeEditorComponent.vue';
|
||||
import JsonButtonFormatterComponent from '@/components/formatter/JsonButtonFormatterComponent.vue';
|
||||
import InsertTemplateComponent from '@components/common/InsertTemplateComponent.vue';
|
||||
import { ref } from 'vue';
|
||||
|
||||
|
||||
const json = ref('');
|
||||
|
||||
function setTextFieldValue(data: string) {
|
||||
json.value = data
|
||||
}
|
||||
|
||||
function format(formattedXml: any) {
|
||||
json.value = formattedXml.data;
|
||||
}
|
||||
|
||||
function clear() {
|
||||
json.value = '';
|
||||
}
|
||||
=======
|
||||
import FormatterComponent from '@/components/formatter/FormatterComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col w-full h-full gap-4">
|
||||
<div id="toolbar" class= "flex flex-col gap-4 items-center lg:flex-row place-content-between">
|
||||
<span class="dark:text-slate-100">JSON Formatter</span>
|
||||
<div class="flex flex-wrap gap-2 justify-center">
|
||||
<InsertTemplateComponent stylized-name="JSON" @update:defaultData="(data: string) => setTextFieldValue(data)"></InsertTemplateComponent>
|
||||
<button class="tool-button" @click="clear()">Clear</button>
|
||||
<JsonButtonFormatterComponent isMinimizer :json="json" @update:result="(data: any) => format(data)"></JsonButtonFormatterComponent>
|
||||
<JsonButtonFormatterComponent :json="json" @update:result="(data: any) => format(data)"></JsonButtonFormatterComponent>
|
||||
</div>
|
||||
</div>
|
||||
<CodeEditorComponent @update:updated-code="setTextFieldValue" :code="json" :config="{disabled:false,language:'json'}" />
|
||||
</div>
|
||||
=======
|
||||
<FormatterComponent formatter-language="JSON"></FormatterComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</template>
|
||||
@@ -1,16 +1,6 @@
|
||||
<script setup lang="ts">
|
||||
import RestMockMessageComponent from '@components/mock/RestMockMessageComponent.vue'
|
||||
import HistoryComponent from '@components/mock/HistoryComponent.vue'
|
||||
<<<<<<< HEAD
|
||||
|
||||
</script>
|
||||
|
||||
|
||||
<template>
|
||||
<div class="flex flex-col xl:flex-row gap-6 w-full overflow-y-scroll overflow-x-hidden h-full">
|
||||
<RestMockMessageComponent></RestMockMessageComponent>
|
||||
<HistoryComponent></HistoryComponent>
|
||||
=======
|
||||
import ManTooltipComponent from '@/components/man/ManTooltipComponent.vue';
|
||||
import RestMockManComponent from '@/components/man/RestMockManComponent.vue';
|
||||
import { ref } from 'vue';
|
||||
@@ -34,7 +24,6 @@ function setHistoryVisibility(visibility : boolean) {
|
||||
</div>
|
||||
<RestMockManComponent></RestMockManComponent>
|
||||
</ManTooltipComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
@@ -16,19 +16,11 @@ function updateVersion(newVersion: string) {
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col lg:flex-row w-full h-full">
|
||||
<div class="flex flex-col lg:flex-row w-full lg:w-7/12 grow overflow-hide px-2">
|
||||
<div class="flex flex-col w-full lg:w-1/2 h-2/3 lg:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" :data="xml" @update="(data) => {xml = data}"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XPath" :data="query" @update="(data) => {query = data}"></xmlInputFieldComponent>
|
||||
=======
|
||||
<div id="layout" class="flex flex-row w-full h-full">
|
||||
<div class="flex flex-col 2xl:flex-row w-full xl:w-7/12 grow overflow-hide xl:pr-2">
|
||||
<div class="flex flex-col w-full 2xl:w-1/2 h-2/3 2xl:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" v-model="xml"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XPath" v-model="query"></xmlInputFieldComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
<xmlOutputFieldComponent tool="xpath" :xml="xml" :query="query" @update="(version) => updateVersion(version)"></xmlOutputFieldComponent>
|
||||
</div>
|
||||
|
||||
@@ -10,17 +10,10 @@ const query = ref('');
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col lg:flex-row w-full h-full">
|
||||
<div class="flex flex-col w-full lg:w-1/2 h-2/3 lg:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" @update="(data) => {xml = data}"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XQuery" @update="(data) => {query = data}"></xmlInputFieldComponent>
|
||||
=======
|
||||
<div id="layout" class="flex flex-col 2xl:flex-row w-full h-full">
|
||||
<div class="flex flex-col w-full 2xl:w-1/2 h-2/3 2xl:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" v-model="xml"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XQuery" v-model="query"></xmlInputFieldComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
<xmlOutputFieldComponent tool="xquery" :xml="xml" :query="query"></xmlOutputFieldComponent>
|
||||
</div>
|
||||
|
||||
@@ -10,17 +10,10 @@ const query = ref('');
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col lg:flex-row w-full h-full">
|
||||
<div class="flex flex-col w-full lg:w-1/2 h-2/3 lg:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" @update="(data) => {xml = data}"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XSD" @update="(data) => {query = data}"></xmlInputFieldComponent>
|
||||
=======
|
||||
<div id="layout" class="flex flex-col 2xl:flex-row w-full h-full">
|
||||
<div class="flex flex-col w-full 2xl:w-1/2 h-2/3 2xl:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" v-model="xml"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XSD" v-model="query"></xmlInputFieldComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
<xmlOutputFieldComponent tool="xsd" :xml="xml" :query="query"></xmlOutputFieldComponent>
|
||||
</div>
|
||||
|
||||
@@ -1,13 +1,5 @@
|
||||
<script setup lang="ts">
|
||||
import xmlInputFieldComponent from '@/components/xml/XmlInputFieldComponent.vue';
|
||||
<<<<<<< HEAD
|
||||
import xmlOutputFieldComponent from '@/components/xml/XmlOutputFieldComponent.vue';
|
||||
import TooltipComponent from '@/components/xml/tooltips/TooltipComponent.vue';
|
||||
import { ref } from 'vue';
|
||||
|
||||
|
||||
const xml = ref('');
|
||||
=======
|
||||
import xmlTabbedInputComponent from '@/components/xml/XmlTabbedInputComponent.vue';
|
||||
import xmlOutputFieldComponent from '@/components/xml/XmlOutputFieldComponent.vue';
|
||||
import TooltipComponent from '@/components/xml/tooltips/TooltipComponent.vue';
|
||||
@@ -17,25 +9,12 @@ import { ref } from 'vue';
|
||||
|
||||
|
||||
const xml = ref(new Array<TabData>);
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
const query = ref('');
|
||||
const version = ref('');
|
||||
|
||||
function updateVersion(newVersion: string) {
|
||||
version.value = newVersion;
|
||||
}
|
||||
<<<<<<< HEAD
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<div id="layout" class="flex flex-col lg:flex-row w-full h-full">
|
||||
<div class="flex flex-col lg:flex-row w-full lg:w-7/12 grow overflow-hide px-2">
|
||||
<div class="flex flex-col w-full lg:w-1/2 h-2/3 lg:h-full flex-none items-center">
|
||||
<xmlInputFieldComponent stylized-name="XML" @update="(data) => {xml = data}"></xmlInputFieldComponent>
|
||||
<xmlInputFieldComponent stylized-name="XSLT" @update="(data) => {query = data}"></xmlInputFieldComponent>
|
||||
</div>
|
||||
<xmlOutputFieldComponent tool="xslt" :xml="xml" :query="query" @update="(version) => updateVersion(version)"></xmlOutputFieldComponent>
|
||||
=======
|
||||
|
||||
</script>
|
||||
|
||||
@@ -47,7 +26,6 @@ function updateVersion(newVersion: string) {
|
||||
<xmlInputFieldComponent stylized-name="XSLT" :data="query" v-model="query"></xmlInputFieldComponent>
|
||||
</div>
|
||||
<xmlOutputFieldComponent tool="xslt" :xml="xml" :query="query" @update="updateVersion"></xmlOutputFieldComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</div>
|
||||
<TooltipComponent tool-type="xslt" :version="version"></TooltipComponent>
|
||||
</div>
|
||||
|
||||
@@ -1,45 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
<<<<<<< HEAD
|
||||
import XMLButtonFormatterComponent from '@/components/formatter/XMLButtonFormatterComponent.vue';
|
||||
import InsertTemplateComponent from '@components/common/InsertTemplateComponent.vue';
|
||||
import CodeEditorComponent from '@/components/CodeEditorComponent.vue';
|
||||
import { ref } from 'vue';
|
||||
|
||||
|
||||
const xml = ref('');
|
||||
|
||||
function setTextFieldValue(data: string) {
|
||||
xml.value = data
|
||||
}
|
||||
|
||||
function format(formattedXml: any) {
|
||||
xml.value = formattedXml.result;
|
||||
}
|
||||
|
||||
function clear() {
|
||||
xml.value = '';
|
||||
}
|
||||
=======
|
||||
import FormatterComponent from '@/components/formatter/FormatterComponent.vue';
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<<<<<<< HEAD
|
||||
<div id="layout" class="flex flex-col w-full h-full gap-4">
|
||||
<div id="toolbar" class= "flex flex-col gap-4 items-center lg:flex-row place-content-between">
|
||||
<span class="dark:text-slate-100">XML Formatter</span>
|
||||
<div class="flex flex-wrap gap-2 justify-center">
|
||||
<InsertTemplateComponent stylized-name="XML" @update:defaultData="(data: string) => setTextFieldValue(data)"></InsertTemplateComponent>
|
||||
<button class="tool-button" @click="clear()">Clear</button>
|
||||
<XMLButtonFormatterComponent is-minimizer :xml="xml" @update:result="(data: any) => format(data)"></XMLButtonFormatterComponent>
|
||||
<XMLButtonFormatterComponent :xml="xml" @update:result="(data: any) => format(data)"></XMLButtonFormatterComponent>
|
||||
</div>
|
||||
</div>
|
||||
<CodeEditorComponent @update:updated-code="setTextFieldValue" :code="xml" :config="{disabled:false,language:'xml'}" />
|
||||
</div>
|
||||
=======
|
||||
<FormatterComponent formatter-language="XML"></FormatterComponent>
|
||||
>>>>>>> 307e732608fca31b60027b417412691ff0e1c2f0
|
||||
</template>
|
||||
Reference in New Issue
Block a user