cleaned out older packages, hope we don\'t need them
This commit is contained in:
parent
68b26094a3
commit
698b1f010e
|
@ -12,14 +12,8 @@
|
|||
"@fortawesome/free-regular-svg-icons": "^5.15.3",
|
||||
"@fortawesome/free-solid-svg-icons": "^5.15.3",
|
||||
"@fortawesome/vue-fontawesome": "^2.0.2",
|
||||
"anser": "IonicaBizau/anser",
|
||||
"autoprefixer": "^9.8.6",
|
||||
"core-js": "^3.6.5",
|
||||
"postcss": "^7.0.35",
|
||||
"tailwindcss": "npm:@tailwindcss/postcss7-compat@^2.0.2",
|
||||
"vue": "^2.6.11",
|
||||
"vue-draggable-resizable": "^2.3.0",
|
||||
"vue-router": "^3.2.0",
|
||||
"vue-tailwind": "^2.0.0",
|
||||
"vuex": "^3.4.0",
|
||||
"vuex-persist": "^3.1.3"
|
||||
|
@ -27,7 +21,6 @@
|
|||
"devDependencies": {
|
||||
"@vue/cli-plugin-babel": "~4.5.0",
|
||||
"@vue/cli-plugin-eslint": "~4.5.0",
|
||||
"@vue/cli-plugin-router": "~4.5.0",
|
||||
"@vue/cli-plugin-vuex": "~4.5.0",
|
||||
"@vue/cli-service": "~4.5.0",
|
||||
"@vue/eslint-config-airbnb": "^5.0.2",
|
||||
|
@ -68,4 +61,4 @@
|
|||
"git add"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
|
@ -79,7 +79,7 @@
|
|||
import Toolbar from "./components/Toolbar.vue";
|
||||
import DebugPanel from "./components/DebugPanel.vue";
|
||||
import Editor from "./views/Editor.vue";
|
||||
import * as Anser from "anser";
|
||||
// import * as Anser from "anser";
|
||||
|
||||
export default {
|
||||
async created() {
|
||||
|
@ -134,9 +134,9 @@ export default {
|
|||
|
||||
fileReader.addEventListener("load", () => {
|
||||
switch (this.importFormat) {
|
||||
case "ansi":
|
||||
this.asniImport(fileReader.result, filename);
|
||||
break;
|
||||
// case "ansi":
|
||||
// this.asniImport(fileReader.result, filename);
|
||||
// break;
|
||||
|
||||
case "mirc":
|
||||
this.mircAsciiImport(fileReader.result, filename);
|
||||
|
@ -152,88 +152,89 @@ export default {
|
|||
this.importFormat = type;
|
||||
this.$refs.asciiInput.click();
|
||||
},
|
||||
asniImport(contents, filename) {
|
||||
let ansiArray = contents.split("\n");
|
||||
// We can maybe try something different to import ANSI
|
||||
// asniImport(contents, filename) {
|
||||
// let ansiArray = contents.split("\n");
|
||||
|
||||
let ansiWidth = 0;
|
||||
// let ansiWidth = 0;
|
||||
|
||||
this.finalAscii = {
|
||||
width: false, // defined in: switch (curChar) case "\n":
|
||||
height: contents.split("\r\n").length,
|
||||
title: filename,
|
||||
key: this.$store.getters.nextTabValue,
|
||||
blockWidth: 8 * this.$store.getters.blockSizeMultiplier,
|
||||
blockHeight: 13 * this.$store.getters.blockSizeMultiplier,
|
||||
blocks: this.create2DArray(contents.split("\r\n").length),
|
||||
};
|
||||
// this.finalAscii = {
|
||||
// width: false, // defined in: switch (curChar) case "\n":
|
||||
// height: contents.split("\r\n").length,
|
||||
// title: filename,
|
||||
// key: this.$store.getters.nextTabValue,
|
||||
// blockWidth: 8 * this.$store.getters.blockSizeMultiplier,
|
||||
// blockHeight: 13 * this.$store.getters.blockSizeMultiplier,
|
||||
// blocks: this.create2DArray(contents.split("\r\n").length),
|
||||
// };
|
||||
|
||||
for (let i = 0; i <= ansiArray.length - 1; i++) {
|
||||
if (ansiWidth > 0 && this.finalAscii.width === false) {
|
||||
this.finalAscii.width = ansiWidth;
|
||||
}
|
||||
// for (let i = 0; i <= ansiArray.length - 1; i++) {
|
||||
// if (ansiWidth > 0 && this.finalAscii.width === false) {
|
||||
// this.finalAscii.width = ansiWidth;
|
||||
// }
|
||||
|
||||
ansiWidth = 0;
|
||||
// ansiWidth = 0;
|
||||
|
||||
for (let j = 0; j <= ansiArray[i].length - 1; j++) {
|
||||
let ansiParse = Anser.ansiToJson(ansiArray[i]);
|
||||
// for (let j = 0; j <= ansiArray[i].length - 1; j++) {
|
||||
// let ansiParse = Anser.ansiToJson(ansiArray[i]);
|
||||
|
||||
for (let l = 0; l <= ansiParse.length - 1; l++) {
|
||||
var contentArray = ansiParse[l].content.split("");
|
||||
// for (let l = 0; l <= ansiParse.length - 1; l++) {
|
||||
// var contentArray = ansiParse[l].content.split("");
|
||||
|
||||
var curBlock = {
|
||||
fg: this.mircColors.indexOf(`rgb(${ansiParse[l].fg})`),
|
||||
bg: this.mircColors.indexOf(`rgb(${ansiParse[l].bg})`),
|
||||
char: null,
|
||||
};
|
||||
// var curBlock = {
|
||||
// fg: this.mircColors.indexOf(`rgb(${ansiParse[l].fg})`),
|
||||
// bg: this.mircColors.indexOf(`rgb(${ansiParse[l].bg})`),
|
||||
// char: null,
|
||||
// };
|
||||
|
||||
// If we had no matches in our mIRC RGB lookup, then we have to try match
|
||||
// the ASNI colours to the best mIRC colour
|
||||
// // If we had no matches in our mIRC RGB lookup, then we have to try match
|
||||
// // the ASNI colours to the best mIRC colour
|
||||
|
||||
if (curBlock.fg === -1) {
|
||||
switch (ansiParse[l].fg) {
|
||||
case "187, 187, 0": // orangeish yellow
|
||||
curBlock.fg = 8;
|
||||
break;
|
||||
// if (curBlock.fg === -1) {
|
||||
// switch (ansiParse[l].fg) {
|
||||
// case "187, 187, 0": // orangeish yellow
|
||||
// curBlock.fg = 8;
|
||||
// break;
|
||||
|
||||
case "187, 0, 0": // red
|
||||
curBlock.fg = 4;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// case "187, 0, 0": // red
|
||||
// curBlock.fg = 4;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
|
||||
if (curBlock.bg === -1) {
|
||||
switch (ansiParse[l].bg) {
|
||||
case "187, 187, 0": // orangeish yellow
|
||||
curBlock.bg = 8;
|
||||
break;
|
||||
// if (curBlock.bg === -1) {
|
||||
// switch (ansiParse[l].bg) {
|
||||
// case "187, 187, 0": // orangeish yellow
|
||||
// curBlock.bg = 8;
|
||||
// break;
|
||||
|
||||
case "187, 0, 0": // red
|
||||
curBlock.bg = 4;
|
||||
break;
|
||||
}
|
||||
}
|
||||
// case "187, 0, 0": // red
|
||||
// curBlock.bg = 4;
|
||||
// break;
|
||||
// }
|
||||
// }
|
||||
|
||||
for (let k = 0; k <= contentArray.length - 1; k++) {
|
||||
if (contentArray[k] === "\r") {
|
||||
continue;
|
||||
}
|
||||
// for (let k = 0; k <= contentArray.length - 1; k++) {
|
||||
// if (contentArray[k] === "\r") {
|
||||
// continue;
|
||||
// }
|
||||
|
||||
this.mircColors.indexOf(`rgb(${ansiParse[l].fg})`);
|
||||
// this.mircColors.indexOf(`rgb(${ansiParse[l].fg})`);
|
||||
|
||||
curBlock.char = contentArray[k];
|
||||
// curBlock.char = contentArray[k];
|
||||
|
||||
this.finalAscii.blocks[i][ansiWidth] = JSON.parse(
|
||||
JSON.stringify(curBlock)
|
||||
);
|
||||
// this.finalAscii.blocks[i][ansiWidth] = JSON.parse(
|
||||
// JSON.stringify(curBlock)
|
||||
// );
|
||||
|
||||
ansiWidth++;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// ansiWidth++;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
|
||||
this.$store.commit("newAsciibirdMeta", this.finalAscii);
|
||||
},
|
||||
// this.$store.commit("newAsciibirdMeta", this.finalAscii);
|
||||
// },
|
||||
mircAsciiImport(contents, filename) {
|
||||
const MIRC_MAX_COLORS = this.mircColors.length;
|
||||
|
||||
|
|
|
@ -1,31 +1,28 @@
|
|||
<template>
|
||||
<div>
|
||||
<vue-draggable-resizable
|
||||
@dragging="onDrag"
|
||||
style="z-index:5;min-height:300px;"
|
||||
:min-width=200
|
||||
:max-width=500
|
||||
:min-height=100
|
||||
:max-height=200
|
||||
:x=0
|
||||
:y=350
|
||||
<vue-draggable-resizable
|
||||
@dragging="onDrag"
|
||||
style="z-index: 5; min-height: 300px"
|
||||
:min-width="200"
|
||||
:max-width="500"
|
||||
:min-height="100"
|
||||
:max-height="200"
|
||||
:x="0"
|
||||
:y="350"
|
||||
>
|
||||
<div style="height:100%;min-height:300px;max-height:400px;">
|
||||
<t-card header="Debug Info" style="height:100%;">
|
||||
<p v-html="debugStringTool"></p>
|
||||
<p v-html="debugStringFg"></p>
|
||||
<p v-html="debugStringBg"></p>
|
||||
</t-card>
|
||||
</div>
|
||||
<div style="height: 100%; min-height: 300px; max-height: 400px">
|
||||
<t-card header="Debug Info" style="height: 100%">
|
||||
<p v-html="$store.getters.getCurrentTool"></p>
|
||||
<p v-html="$store.getters.getFgColor"></p>
|
||||
<p v-html="$store.getters.getBgColor"></p>
|
||||
</t-card>
|
||||
</div>
|
||||
</vue-draggable-resizable>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
export default {
|
||||
created() {
|
||||
|
||||
},
|
||||
created() {},
|
||||
name: "DebugPanel",
|
||||
data: () => ({
|
||||
floating: {
|
||||
|
@ -34,33 +31,9 @@ export default {
|
|||
x: 100,
|
||||
y: 100,
|
||||
},
|
||||
debugString: '',
|
||||
debugStringTool: '',
|
||||
debugStringFg: '',
|
||||
debugStringBg: '',
|
||||
}),
|
||||
computed: {
|
||||
watchToolChange() {
|
||||
return this.$store.getters.getCurrentTool
|
||||
},
|
||||
watchBgColor() {
|
||||
return this.$store.getters.getBgColor
|
||||
},
|
||||
watchFgColor() {
|
||||
return this.$store.getters.getFgColor
|
||||
},
|
||||
},
|
||||
watch: {
|
||||
watchToolChange(val) {
|
||||
this.debugStringTool = val
|
||||
},
|
||||
watchBgColor(val) {
|
||||
this.debugStringBg = val
|
||||
},
|
||||
watchFgColor(val) {
|
||||
this.debugStringFg = val
|
||||
},
|
||||
},
|
||||
computed: {},
|
||||
watch: {},
|
||||
methods: {
|
||||
onResize(x, y, width, height) {
|
||||
this.floating.x = x;
|
||||
|
@ -72,7 +45,6 @@ export default {
|
|||
this.floating.x = x;
|
||||
this.floating.y = y;
|
||||
},
|
||||
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
|
|
@ -20,7 +20,10 @@
|
|||
<t-checkbox
|
||||
name="targetingFg"
|
||||
v-model="$store.getters.getToolbarState.targetingFg"
|
||||
:disabled="!$store.getters.getTargetingBg && !$store.getters.getTargetingText"
|
||||
:disabled="
|
||||
!$store.getters.getTargetingBg &&
|
||||
!$store.getters.getTargetingText
|
||||
"
|
||||
/>
|
||||
<span class="text-sm">FG</span>
|
||||
</label>
|
||||
|
@ -28,7 +31,10 @@
|
|||
<t-checkbox
|
||||
name="targetingBg"
|
||||
v-model="$store.getters.getToolbarState.targetingBg"
|
||||
:disabled="!$store.getters.getTargetingFg && !$store.getters.getTargetingText"
|
||||
:disabled="
|
||||
!$store.getters.getTargetingFg &&
|
||||
!$store.getters.getTargetingText
|
||||
"
|
||||
checked
|
||||
/>
|
||||
<span class="text-sm">BG</span>
|
||||
|
@ -37,7 +43,9 @@
|
|||
<t-checkbox
|
||||
name="targetingText"
|
||||
v-model="$store.getters.getToolbarState.targetingText"
|
||||
:disabled="!$store.getters.getTargetingFg && !$store.getters.getTargetingBg"
|
||||
:disabled="
|
||||
!$store.getters.getTargetingFg && !$store.getters.getTargetingBg
|
||||
"
|
||||
/>
|
||||
<span class="text-sm">Text</span>
|
||||
</label>
|
||||
|
@ -159,9 +167,9 @@ export default {
|
|||
},
|
||||
startColorChange(type) {
|
||||
if (type === 0) {
|
||||
this.$store.commit("changeIsUpdatingFg", true)
|
||||
this.$store.commit("changeIsUpdatingFg", true);
|
||||
} else {
|
||||
this.$store.commit("changeIsUpdatingBg", true)
|
||||
this.$store.commit("changeIsUpdatingBg", true);
|
||||
}
|
||||
},
|
||||
onColorChange(color) {
|
||||
|
|
27
src/main.js
27
src/main.js
|
@ -25,16 +25,30 @@ import {
|
|||
TDialog,
|
||||
} from 'vue-tailwind/dist/components';
|
||||
import Dashboard from './Dashboard.vue';
|
||||
import router from './router';
|
||||
import store from './store';
|
||||
// optionally import default styles
|
||||
import 'vue-draggable-resizable/dist/VueDraggableResizable.css';
|
||||
import { library } from '@fortawesome/fontawesome-svg-core'
|
||||
import { faMousePointer, faFont, faFillDrip, faPaintBrush, faEyeDropper, faEraser, faSync } from '@fortawesome/free-solid-svg-icons'
|
||||
import { faSquare } from '@fortawesome/free-regular-svg-icons'
|
||||
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
|
||||
import {
|
||||
library
|
||||
} from '@fortawesome/fontawesome-svg-core'
|
||||
import {
|
||||
faMousePointer,
|
||||
faFont,
|
||||
faFillDrip,
|
||||
faPaintBrush,
|
||||
faEyeDropper,
|
||||
faEraser,
|
||||
faSync
|
||||
} from '@fortawesome/free-solid-svg-icons'
|
||||
import {
|
||||
faSquare
|
||||
} from '@fortawesome/free-regular-svg-icons'
|
||||
import {
|
||||
FontAwesomeIcon
|
||||
} from '@fortawesome/vue-fontawesome'
|
||||
|
||||
library.add(faMousePointer, faSquare, faFont, faFillDrip, faPaintBrush, faEyeDropper, faEraser, faSync)
|
||||
library.add(faMousePointer, faSquare, faFont, faFillDrip, faPaintBrush, faEyeDropper, faEraser,
|
||||
faSync)
|
||||
|
||||
Vue.config.productionTip = false;
|
||||
|
||||
|
@ -157,7 +171,6 @@ Vue.component('font-awesome-icon', FontAwesomeIcon)
|
|||
Vue.component('vue-draggable-resizable', VueDraggableResizable);
|
||||
|
||||
new Vue({
|
||||
router,
|
||||
store,
|
||||
render: (h) => h(Dashboard),
|
||||
}).$mount('#app');
|
||||
|
|
|
@ -1,27 +0,0 @@
|
|||
import Vue from 'vue';
|
||||
import VueRouter from 'vue-router';
|
||||
import Editor from '../views/Editor.vue';
|
||||
|
||||
Vue.use(VueRouter);
|
||||
|
||||
const routes = [
|
||||
{
|
||||
path: '/:ascii',
|
||||
name: 'editor',
|
||||
component: Editor,
|
||||
},
|
||||
{
|
||||
path: '/about',
|
||||
name: 'About',
|
||||
// route level code-splitting
|
||||
// this generates a separate chunk (about.[hash].js) for this route
|
||||
// which is lazy-loaded when the route is visited.
|
||||
component: () => import(/* webpackChunkName: "about" */ '../views/About.vue'),
|
||||
},
|
||||
];
|
||||
|
||||
const router = new VueRouter({
|
||||
routes,
|
||||
});
|
||||
|
||||
export default router;
|
15
yarn.lock
15
yarn.lock
|
@ -1311,7 +1311,7 @@
|
|||
webpack "^4.0.0"
|
||||
yorkie "^2.0.0"
|
||||
|
||||
"@vue/cli-plugin-router@^4.5.9", "@vue/cli-plugin-router@~4.5.0":
|
||||
"@vue/cli-plugin-router@^4.5.9":
|
||||
version "4.5.9"
|
||||
resolved "https://registry.yarnpkg.com/@vue/cli-plugin-router/-/cli-plugin-router-4.5.9.tgz#b3d23a8083d26a81bd09bf9c8d010a3e4e4b13d0"
|
||||
integrity sha512-eBBfbZpQ1sJrdlx8i7iReFxSnuzwmrv+s2OCT3kjBd6uWRqGnD4VihpS4srC7vZLzDQrDplumSn0a93L9Qf3wQ==
|
||||
|
@ -1670,10 +1670,6 @@ alphanum-sort@^1.0.0:
|
|||
resolved "https://registry.yarnpkg.com/alphanum-sort/-/alphanum-sort-1.0.2.tgz#97a1119649b211ad33691d9f9f486a8ec9fbe0a3"
|
||||
integrity sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=
|
||||
|
||||
anser@IonicaBizau/anser:
|
||||
version "2.0.1"
|
||||
resolved "https://codeload.github.com/IonicaBizau/anser/tar.gz/fb58237c4c6f9c24e1fc5e985b7d50903cacd820"
|
||||
|
||||
ansi-colors@^3.0.0:
|
||||
version "3.2.4"
|
||||
resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-3.2.4.tgz#e3a3da4bfbae6c86a9c285625de124a234026fbf"
|
||||
|
@ -7267,7 +7263,7 @@ postcss@^6.0.9:
|
|||
source-map "^0.6.1"
|
||||
supports-color "^5.4.0"
|
||||
|
||||
postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.35, postcss@^7.0.5, postcss@^7.0.6:
|
||||
postcss@^7, postcss@^7.0.0, postcss@^7.0.1, postcss@^7.0.14, postcss@^7.0.18, postcss@^7.0.27, postcss@^7.0.32, postcss@^7.0.5, postcss@^7.0.6:
|
||||
version "7.0.35"
|
||||
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.35.tgz#d2be00b998f7f211d8a276974079f2e92b970e24"
|
||||
integrity sha512-3QT8bBJeX/S5zKTTjTCIjRF3If4avAT6kqxcASlTWEtAFCb9NH0OUxNDfgZSWdP5fJnBYCMEWkIFfWeugjzYMg==
|
||||
|
@ -8542,7 +8538,7 @@ table@^5.2.3:
|
|||
slice-ansi "^2.1.0"
|
||||
string-width "^3.0.0"
|
||||
|
||||
"tailwindcss@npm:@tailwindcss/postcss7-compat", "tailwindcss@npm:@tailwindcss/postcss7-compat@^2.0.2":
|
||||
"tailwindcss@npm:@tailwindcss/postcss7-compat":
|
||||
version "2.0.2"
|
||||
resolved "https://registry.yarnpkg.com/@tailwindcss/postcss7-compat/-/postcss7-compat-2.0.2.tgz#49cb21703dfb4447620fceab5cef3285cff8c69d"
|
||||
integrity sha512-KM8kjG5dd8qoXBX2a6r3r1TOqhFh8NtFBheG9qpVPwSjrD8wRdoM7s+Xz56HEA1XmeN64gEKqjmY6vm55DiS3Q==
|
||||
|
@ -9102,11 +9098,6 @@ vue-loader@^15.9.2:
|
|||
vue-hot-reload-api "^2.3.0"
|
||||
vue-style-loader "^4.1.0"
|
||||
|
||||
vue-router@^3.2.0:
|
||||
version "3.4.9"
|
||||
resolved "https://registry.yarnpkg.com/vue-router/-/vue-router-3.4.9.tgz#c016f42030ae2932f14e4748b39a1d9a0e250e66"
|
||||
integrity sha512-CGAKWN44RqXW06oC+u4mPgHLQQi2t6vLD/JbGRDAXm0YpMv0bgpKuU5bBd7AvMgfTz9kXVRIWKHqRwGEb8xFkA==
|
||||
|
||||
vue-style-loader@^4.1.0, vue-style-loader@^4.1.2:
|
||||
version "4.1.2"
|
||||
resolved "https://registry.yarnpkg.com/vue-style-loader/-/vue-style-loader-4.1.2.tgz#dedf349806f25ceb4e64f3ad7c0a44fba735fcf8"
|
||||
|
|
Loading…
Reference in New Issue