Added Dockerfile and CI/CD for Imapsync
Added Core Functionality for Imapsync
This commit is contained in:
@@ -5,7 +5,8 @@ export default defineNuxtConfig({
|
||||
'@pinia/nuxt',
|
||||
'@nuxt/ui',
|
||||
'@nuxtjs/strapi',
|
||||
'@nuxtjs/supabase'
|
||||
'@nuxtjs/supabase',
|
||||
"nuxt-editorjs"
|
||||
],
|
||||
routeRules: {
|
||||
'/printing': {ssr:false}
|
||||
@@ -14,7 +15,12 @@ export default defineNuxtConfig({
|
||||
supabase: {
|
||||
key: "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJzdXBhYmFzZSIsInJlZiI6InV3cHB2Y3hmbHJjc2lidXpzYmlsIiwicm9sZSI6ImFub24iLCJpYXQiOjE3MDA5MzgxOTQsImV4cCI6MjAxNjUxNDE5NH0.CkxYSQH0uLfwx9GVUlO6AYMU2FMLAxGMrwEKvyPv7Oo",
|
||||
url: "https://uwppvcxflrcsibuzsbil.supabase.co"
|
||||
}
|
||||
},
|
||||
vite: {
|
||||
optimizeDeps: {
|
||||
include: ["@editorjs/editorjs"],
|
||||
},
|
||||
},
|
||||
|
||||
})
|
||||
|
||||
|
||||
87
spaces/package-lock.json
generated
87
spaces/package-lock.json
generated
@@ -18,6 +18,7 @@
|
||||
"csv-parser": "^3.0.0",
|
||||
"jsprintmanager": "^6.0.3",
|
||||
"neat-csv": "^7.0.0",
|
||||
"nuxt-editorjs": "^1.0.4",
|
||||
"papaparse": "^5.4.1",
|
||||
"pinia": "^2.1.7",
|
||||
"uuidv4": "^6.2.13",
|
||||
@@ -794,6 +795,11 @@
|
||||
"mime": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"node_modules/@codexteam/icons": {
|
||||
"version": "0.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz",
|
||||
"integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA=="
|
||||
},
|
||||
"node_modules/@css-render/plugin-bem": {
|
||||
"version": "0.15.12",
|
||||
"resolved": "https://registry.npmjs.org/@css-render/plugin-bem/-/plugin-bem-0.15.12.tgz",
|
||||
@@ -892,6 +898,32 @@
|
||||
"postcss-selector-parser": "^6.0.13"
|
||||
}
|
||||
},
|
||||
"node_modules/@editorjs/editorjs": {
|
||||
"version": "2.28.2",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/editorjs/-/editorjs-2.28.2.tgz",
|
||||
"integrity": "sha512-g6V0Nd3W9IIWMpvxDNTssQ6e4kxBp1Y0W4GIf8cXRlmcBp3TUjrgCYJQmNy3l2a6ZzhyBAoVSe8krJEq4g7PQw=="
|
||||
},
|
||||
"node_modules/@editorjs/header": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/header/-/header-2.8.1.tgz",
|
||||
"integrity": "sha512-y0HVXRP7m2W617CWo3fsb5HhXmSLaRpb9GzFx0Vkp/HEm9Dz5YO1s8tC7R8JD3MskwoYh7V0hRFQt39io/r6hA==",
|
||||
"dependencies": {
|
||||
"@codexteam/icons": "^0.0.5"
|
||||
}
|
||||
},
|
||||
"node_modules/@editorjs/list": {
|
||||
"version": "1.9.0",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/list/-/list-1.9.0.tgz",
|
||||
"integrity": "sha512-BQEvZW4vi0O0dBvGNljiKxiE89vMSHoM2Tu2OzKUndoj7pY9AxqpgCh1qvwIVsJAlG4Lbt/vBFQilnoStMmI6A==",
|
||||
"dependencies": {
|
||||
"@codexteam/icons": "^0.0.4"
|
||||
}
|
||||
},
|
||||
"node_modules/@editorjs/list/node_modules/@codexteam/icons": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz",
|
||||
"integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q=="
|
||||
},
|
||||
"node_modules/@egoist/tailwindcss-icons": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@egoist/tailwindcss-icons/-/tailwindcss-icons-1.4.0.tgz",
|
||||
@@ -8936,6 +8968,17 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"node_modules/nuxt-editorjs": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/nuxt-editorjs/-/nuxt-editorjs-1.0.4.tgz",
|
||||
"integrity": "sha512-ibINkIDIuwq0MaP0WjICAWEOsM/5AqZ4na7w/ui6atPo9t5FWwUaWQqrz3hcMie96YzI2gmYqaYdDREAu0A27Q==",
|
||||
"dependencies": {
|
||||
"@editorjs/editorjs": "^2.25.0",
|
||||
"@editorjs/header": "^2.6.2",
|
||||
"@editorjs/list": "^1.7.0",
|
||||
"@nuxt/kit": "^3.0.0-rc.4"
|
||||
}
|
||||
},
|
||||
"node_modules/nuxt/node_modules/acorn": {
|
||||
"version": "8.10.0",
|
||||
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.10.0.tgz",
|
||||
@@ -14235,6 +14278,11 @@
|
||||
"mime": "^3.0.0"
|
||||
}
|
||||
},
|
||||
"@codexteam/icons": {
|
||||
"version": "0.0.5",
|
||||
"resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.5.tgz",
|
||||
"integrity": "sha512-s6H2KXhLz2rgbMZSkRm8dsMJvyUNZsEjxobBEg9ztdrb1B2H3pEzY6iTwI4XUPJWJ3c3qRKwV4TrO3J5jUdoQA=="
|
||||
},
|
||||
"@css-render/plugin-bem": {
|
||||
"version": "0.15.12",
|
||||
"resolved": "https://registry.npmjs.org/@css-render/plugin-bem/-/plugin-bem-0.15.12.tgz",
|
||||
@@ -14270,6 +14318,34 @@
|
||||
"integrity": "sha512-hBI9tfBtuPIi885ZsZ32IMEU/5nlZH/KOVYJCOh7gyMxaVLGmLedYqFN6Ui1LXkI8JlC8IsuC0rF0btcRZKd5g==",
|
||||
"requires": {}
|
||||
},
|
||||
"@editorjs/editorjs": {
|
||||
"version": "2.28.2",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/editorjs/-/editorjs-2.28.2.tgz",
|
||||
"integrity": "sha512-g6V0Nd3W9IIWMpvxDNTssQ6e4kxBp1Y0W4GIf8cXRlmcBp3TUjrgCYJQmNy3l2a6ZzhyBAoVSe8krJEq4g7PQw=="
|
||||
},
|
||||
"@editorjs/header": {
|
||||
"version": "2.8.1",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/header/-/header-2.8.1.tgz",
|
||||
"integrity": "sha512-y0HVXRP7m2W617CWo3fsb5HhXmSLaRpb9GzFx0Vkp/HEm9Dz5YO1s8tC7R8JD3MskwoYh7V0hRFQt39io/r6hA==",
|
||||
"requires": {
|
||||
"@codexteam/icons": "^0.0.5"
|
||||
}
|
||||
},
|
||||
"@editorjs/list": {
|
||||
"version": "1.9.0",
|
||||
"resolved": "https://registry.npmjs.org/@editorjs/list/-/list-1.9.0.tgz",
|
||||
"integrity": "sha512-BQEvZW4vi0O0dBvGNljiKxiE89vMSHoM2Tu2OzKUndoj7pY9AxqpgCh1qvwIVsJAlG4Lbt/vBFQilnoStMmI6A==",
|
||||
"requires": {
|
||||
"@codexteam/icons": "^0.0.4"
|
||||
},
|
||||
"dependencies": {
|
||||
"@codexteam/icons": {
|
||||
"version": "0.0.4",
|
||||
"resolved": "https://registry.npmjs.org/@codexteam/icons/-/icons-0.0.4.tgz",
|
||||
"integrity": "sha512-V8N/TY2TGyas4wLrPIFq7bcow68b3gu8DfDt1+rrHPtXxcexadKauRJL6eQgfG7Z0LCrN4boLRawR4S9gjIh/Q=="
|
||||
}
|
||||
}
|
||||
},
|
||||
"@egoist/tailwindcss-icons": {
|
||||
"version": "1.4.0",
|
||||
"resolved": "https://registry.npmjs.org/@egoist/tailwindcss-icons/-/tailwindcss-icons-1.4.0.tgz",
|
||||
@@ -20066,6 +20142,17 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
"nuxt-editorjs": {
|
||||
"version": "1.0.4",
|
||||
"resolved": "https://registry.npmjs.org/nuxt-editorjs/-/nuxt-editorjs-1.0.4.tgz",
|
||||
"integrity": "sha512-ibINkIDIuwq0MaP0WjICAWEOsM/5AqZ4na7w/ui6atPo9t5FWwUaWQqrz3hcMie96YzI2gmYqaYdDREAu0A27Q==",
|
||||
"requires": {
|
||||
"@editorjs/editorjs": "^2.25.0",
|
||||
"@editorjs/header": "^2.6.2",
|
||||
"@editorjs/list": "^1.7.0",
|
||||
"@nuxt/kit": "^3.0.0-rc.4"
|
||||
}
|
||||
},
|
||||
"nypm": {
|
||||
"version": "0.3.3",
|
||||
"resolved": "https://registry.npmjs.org/nypm/-/nypm-0.3.3.tgz",
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
"csv-parser": "^3.0.0",
|
||||
"jsprintmanager": "^6.0.3",
|
||||
"neat-csv": "^7.0.0",
|
||||
"nuxt-editorjs": "^1.0.4",
|
||||
"papaparse": "^5.4.1",
|
||||
"pinia": "^2.1.7",
|
||||
"uuidv4": "^6.2.13",
|
||||
|
||||
@@ -2,7 +2,11 @@
|
||||
import * as JSPM from 'jsprintmanager'
|
||||
|
||||
let printers = []
|
||||
let scanners = []
|
||||
|
||||
const doScanning = () => {
|
||||
|
||||
}
|
||||
|
||||
const doPrintZPL = () => {
|
||||
/*if(this.selected_printer === '' && !this.print2default) {
|
||||
@@ -44,6 +48,18 @@ const getPrinters = () => {
|
||||
} else { console.warn("JSPM WS not open"); ok(printers); }
|
||||
});
|
||||
}
|
||||
const getScanners = () => {
|
||||
return new Promise((ok, err) => {
|
||||
let scanners = [];
|
||||
if(JSPM.JSPrintManager.websocket_status === JSPM.WSStatus.Open) {
|
||||
JSPM.JSPrintManager.getScanners().then(function (myScanners) {
|
||||
printers = myScanners;
|
||||
console.log(scanners);
|
||||
ok(scanners);
|
||||
}).catch((e)=>err(e));
|
||||
} else { console.warn("JSPM WS not open"); ok(printers); }
|
||||
});
|
||||
}
|
||||
const initJSPM = () => {
|
||||
JSPM.JSPrintManager.auto_reconnect = true
|
||||
JSPM.JSPrintManager.start();
|
||||
@@ -51,6 +67,8 @@ const initJSPM = () => {
|
||||
JSPM.JSPrintManager.WS.onStatusChanged = () => {
|
||||
console.log("Status Changed")
|
||||
getPrinters().then(p => printers = p)
|
||||
getScanners().then(s => scanners = s)
|
||||
|
||||
}
|
||||
}
|
||||
initJSPM()
|
||||
@@ -58,6 +76,7 @@ initJSPM()
|
||||
|
||||
<template>
|
||||
{{printers}}
|
||||
{{scanners}}
|
||||
|
||||
|
||||
<UButton @click="doPrintZPL">Print</UButton>
|
||||
|
||||
@@ -3,9 +3,9 @@ definePageMeta({
|
||||
middleware: "auth"
|
||||
})
|
||||
|
||||
const {find, findOne,create, update} = useStrapi4()
|
||||
//const {find, findOne,create, update} = useStrapi4()
|
||||
const route = useRoute()
|
||||
let project = (await findOne('projects',route.params.id)).data
|
||||
//let project = (await findOne('projects',route.params.id)).data
|
||||
const tabItems = [
|
||||
{
|
||||
key: "phases",
|
||||
@@ -13,6 +13,9 @@ const tabItems = [
|
||||
},{
|
||||
key: "forms",
|
||||
label: "Formulare"
|
||||
},{
|
||||
key: "description",
|
||||
label: "Dokumentation"
|
||||
},{
|
||||
key: "timetracking",
|
||||
label: "Zeiterfassung"
|
||||
@@ -22,8 +25,110 @@ const selectedPhase = ref({})
|
||||
const changesSaved = ref(true)
|
||||
|
||||
|
||||
const default_data = {
|
||||
time: 1660335428612,
|
||||
blocks: [
|
||||
{
|
||||
id: "MnGi61oxdF",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Welcome to nuxt-editorjs!",
|
||||
level: 1,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "b_Ju7U6wPl",
|
||||
type: "paragraph",
|
||||
data: {
|
||||
text: "This is a nuxt3 plugin for editorjs.",
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "R3o5BpI-r9",
|
||||
type: "paragraph",
|
||||
data: {
|
||||
text: "<b>A paragraph of text:</b> Lorem ipsum dolor sit amet consectetur adipisicing elit. Labore perspiciatis molestias neque autem cumque provident? Laudantium ad, quisquam quos nulla amet, perferendis recusandae voluptates eligendi cupiditate consectetur veniam! Ipsum, ullam?",
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "b9mkw6ZO92",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 1",
|
||||
level: 1,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "P2PZsHo2lq",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 2",
|
||||
level: 2,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "hHJZjkW-TO",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 3",
|
||||
level: 3,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "k8EDwa0oVG",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 4",
|
||||
level: 4,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "62ciFnEFjZ",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 5",
|
||||
level: 5,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "YCBcKhNqib",
|
||||
type: "header",
|
||||
data: {
|
||||
text: "Heading 6",
|
||||
level: 6,
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "s_J3d5U8DA",
|
||||
type: "list",
|
||||
data: {
|
||||
style: "ordered",
|
||||
items: [
|
||||
"An ordered list item",
|
||||
"Another ordered list item",
|
||||
"One more",
|
||||
],
|
||||
},
|
||||
},
|
||||
{
|
||||
id: "kMyQbO156y",
|
||||
type: "list",
|
||||
data: {
|
||||
style: "unordered",
|
||||
items: ["An unordered list item!", "In italics?", "Or bold?"],
|
||||
},
|
||||
},
|
||||
],
|
||||
version: "2.25.0",
|
||||
};
|
||||
const dat = ref(default_data);
|
||||
const save = () => {
|
||||
console.log(foo);
|
||||
};
|
||||
|
||||
|
||||
const updatePhases = async () => {
|
||||
await update('projects', route.params.id, {phases: project.attributes.phases})
|
||||
//await update('projects', route.params.id, {phases: project.attributes.phases})
|
||||
changesSaved.value = true
|
||||
console.log("Updated")
|
||||
}
|
||||
@@ -33,7 +138,7 @@ const phaseInfo = ref({
|
||||
notes: ""
|
||||
})
|
||||
|
||||
const addPhase = async (phaseBefore) => {
|
||||
/*const addPhase = async (phaseBefore) => {
|
||||
|
||||
|
||||
let posBefore = phaseBefore.position
|
||||
@@ -48,7 +153,7 @@ const addPhase = async (phaseBefore) => {
|
||||
|
||||
await updatePhases()
|
||||
|
||||
}
|
||||
}*/
|
||||
|
||||
|
||||
</script>
|
||||
@@ -60,7 +165,7 @@ const addPhase = async (phaseBefore) => {
|
||||
<div v-if="item.key === 'phases'" class="space-y-3">
|
||||
<div id="phaseList">
|
||||
<a
|
||||
v-for="phase in project.attributes.phases"
|
||||
v-for="phase in []"
|
||||
@click="selectedPhase = phase"
|
||||
>
|
||||
<div
|
||||
@@ -80,6 +185,9 @@ const addPhase = async (phaseBefore) => {
|
||||
<div v-else-if="item.key === 'password'" class="space-y-3">
|
||||
|
||||
</div>
|
||||
<div v-else-if="item.key === 'description'" class="space-y-3">
|
||||
<client-only><editor-js v-model="dat" /></client-only>
|
||||
</div>
|
||||
</template>
|
||||
</UTabs>
|
||||
<!-- <div id="left">
|
||||
|
||||
Reference in New Issue
Block a user