mirror of
https://github.com/aljazceru/nostrdvm.git
synced 2025-12-22 16:34:23 +01:00
optimizations
This commit is contained in:
@@ -93,8 +93,9 @@ async function generate_image(message) {
|
|||||||
|
|
||||||
store.commit('set_current_request_id_image', requestid)
|
store.commit('set_current_request_id_image', requestid)
|
||||||
if (!store.state.imagehasEventListener){
|
if (!store.state.imagehasEventListener){
|
||||||
listen()
|
|
||||||
store.commit('set_imagehasEventListener', true)
|
store.commit('set_imagehasEventListener', true)
|
||||||
|
listen()
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
console.log("Already has event listener")
|
console.log("Already has event listener")
|
||||||
@@ -115,14 +116,14 @@ async function listen() {
|
|||||||
const handle = {
|
const handle = {
|
||||||
// Handle event
|
// Handle event
|
||||||
handleEvent: async (relayUrl, event) => {
|
handleEvent: async (relayUrl, event) => {
|
||||||
if (store.state.imagehasEventListener === false){
|
/* if (store.state.imagehasEventListener === false){
|
||||||
return true
|
return true
|
||||||
}
|
}*/
|
||||||
//const dvmname = getNamefromId(event.author.toHex())
|
//const dvmname = getNamefromId(event.author.toHex())
|
||||||
console.log("Received new event from", relayUrl);
|
console.log("Received new event from", relayUrl);
|
||||||
console.log(event.asJson())
|
console.log(event.asJson())
|
||||||
let resonsetorequest = false
|
let resonsetorequest = false
|
||||||
sleep(1000).then(async () => {
|
sleep(0).then(async () => {
|
||||||
for (let tag in event.tags) {
|
for (let tag in event.tags) {
|
||||||
if (event.tags[tag].asVec()[0] === "e") {
|
if (event.tags[tag].asVec()[0] === "e") {
|
||||||
//console.log("IMAGE ETAG: " + event.tags[tag].asVec()[1])
|
//console.log("IMAGE ETAG: " + event.tags[tag].asVec()[1])
|
||||||
@@ -360,10 +361,13 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
|
|
||||||
<template #footer>
|
<template #footer>
|
||||||
<div class="content-center">
|
|
||||||
<VueDatePicker :min-date="new Date()" :dark="true" className="bg-base-200 content-center" teleport-center v-model="datetopost"></VueDatePicker>
|
|
||||||
<br>
|
|
||||||
|
|
||||||
|
<div class="inline-flex flex-none">
|
||||||
|
<VueDatePicker :min-date="new Date()" :dark="true" style="max-width: 200px;" className="bg-base-200" teleport-center v-model="datetopost"></VueDatePicker>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="content-center">
|
||||||
<button className="v-Button" @click="schedule(modalcontent, datetopost)" @click.stop="closeModal"><img width="25px" style="margin-right: 5px" src="../../public/shipyard.ico"/>Schedule Note with Shipyard DVM</button>
|
<button className="v-Button" @click="schedule(modalcontent, datetopost)" @click.stop="closeModal"><img width="25px" style="margin-right: 5px" src="../../public/shipyard.ico"/>Schedule Note with Shipyard DVM</button>
|
||||||
<br>
|
<br>
|
||||||
or
|
or
|
||||||
|
|||||||
@@ -59,7 +59,6 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<Nip89></Nip89>
|
|
||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -18,7 +18,6 @@ onClickOutside(target, ()=>emit('modal-close'))
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
|
|
||||||
<div v-if="isOpen" class="modal-mask" >
|
<div v-if="isOpen" class="modal-mask" >
|
||||||
<div class="modal-wrapper" >
|
<div class="modal-wrapper" >
|
||||||
<div class="modal-container" ref="target">
|
<div class="modal-container" ref="target">
|
||||||
@@ -45,17 +44,19 @@ onClickOutside(target, ()=>emit('modal-close'))
|
|||||||
.modal-mask {
|
.modal-mask {
|
||||||
|
|
||||||
|
|
||||||
|
max-height: 100%;
|
||||||
|
overflow-y: scroll;
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 9998;
|
z-index: 9998;
|
||||||
top: 0;
|
top: 0;
|
||||||
left: 0;
|
left: 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
|
||||||
background-color: rgba(0, 0, 0, 0.5);
|
background-color: rgba(0, 0, 0, 0.5);
|
||||||
}
|
}
|
||||||
.modal-container {
|
.modal-container {
|
||||||
@apply bg-base-200;
|
@apply bg-base-200;
|
||||||
width: 600px;
|
|
||||||
margin: 15% auto;
|
margin: 15% auto;
|
||||||
padding: 20px 30px;
|
padding: 20px 30px;
|
||||||
border-radius: 2px;
|
border-radius: 2px;
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ import {data} from "autoprefixer";
|
|||||||
import {requestProvider} from "webln";
|
import {requestProvider} from "webln";
|
||||||
import Newnote from "@/components/Newnote.vue";
|
import Newnote from "@/components/Newnote.vue";
|
||||||
import SummarizationGeneration from "@/components/SummarizationGeneration.vue"
|
import SummarizationGeneration from "@/components/SummarizationGeneration.vue"
|
||||||
import {post_note, schedule, copyurl, copyinvoice, sleep, getEvents, get_user_infos, nextInput, getEventsOriginalOrder} from "../components/helper/Helper.vue"
|
import {post_note, schedule, copyurl, copyinvoice, sleep, getEvents, get_user_infos, nextInput, createBolt11Lud16, getEventsOriginalOrder} from "../components/helper/Helper.vue"
|
||||||
import amberSignerService from "./android-signer/AndroidSigner";
|
import amberSignerService from "./android-signer/AndroidSigner";
|
||||||
import StringUtil from "@/components/helper/string.ts";
|
import StringUtil from "@/components/helper/string.ts";
|
||||||
|
|
||||||
@@ -63,7 +63,7 @@ async function generate_feed() {
|
|||||||
res = await amberSignerService.signEvent(draft)
|
res = await amberSignerService.signEvent(draft)
|
||||||
await client.sendEvent(Event.fromJson(JSON.stringify(res)))
|
await client.sendEvent(Event.fromJson(JSON.stringify(res)))
|
||||||
requestid = res.id;
|
requestid = res.id;
|
||||||
res = res.id;
|
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
|
||||||
@@ -82,8 +82,9 @@ async function generate_feed() {
|
|||||||
|
|
||||||
store.commit('set_current_request_id_recommendation', requestid)
|
store.commit('set_current_request_id_recommendation', requestid)
|
||||||
if (!store.state.recommendationehasEventListener){
|
if (!store.state.recommendationehasEventListener){
|
||||||
listen()
|
|
||||||
store.commit('set_recommendationEventListener', true)
|
store.commit('set_recommendationEventListener', true)
|
||||||
|
listen()
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
console.log("Already has event listener")
|
console.log("Already has event listener")
|
||||||
@@ -105,18 +106,22 @@ async function listen() {
|
|||||||
const handle = {
|
const handle = {
|
||||||
// Handle event
|
// Handle event
|
||||||
handleEvent: async (relayUrl, event) => {
|
handleEvent: async (relayUrl, event) => {
|
||||||
if (store.state.recommendationehasEventListener === false){
|
/* if (store.state.recommendationehasEventListener === false){
|
||||||
return true
|
return true
|
||||||
}
|
}*/
|
||||||
//const dvmname = getNamefromId(event.author.toHex())
|
//const dvmname = getNamefromId(event.author.toHex())
|
||||||
console.log("Received new event from", relayUrl);
|
console.log("Received new event from", relayUrl);
|
||||||
console.log(event.asJson())
|
//console.log(event.asJson())
|
||||||
let resonsetorequest = false
|
let resonsetorequest = false
|
||||||
sleep(1000).then(async () => {
|
sleep(0).then(async () => {
|
||||||
for (let tag in event.tags) {
|
for (let tag in event.tags) {
|
||||||
if (event.tags[tag].asVec()[0] === "e") {
|
if (event.tags[tag].asVec()[0] === "e") {
|
||||||
if (event.tags[tag].asVec()[1] === store.state.requestidRecommendation) {
|
console.log(event.tags[tag].asVec()[1])
|
||||||
|
let test = store.state.requestidRecommendation
|
||||||
|
console.log(test)
|
||||||
|
if (event.tags[tag].asVec()[1] === test) {
|
||||||
resonsetorequest = true
|
resonsetorequest = true
|
||||||
|
console.log("YES")
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -156,8 +161,6 @@ async function listen() {
|
|||||||
else{
|
else{
|
||||||
let profiles = await get_user_infos([event.author])
|
let profiles = await get_user_infos([event.author])
|
||||||
let created = 0
|
let created = 0
|
||||||
let current
|
|
||||||
console.log("NUM KIND0 FOUND " + profiles.length)
|
|
||||||
if (profiles.length > 0){
|
if (profiles.length > 0){
|
||||||
// for (const profile of profiles){
|
// for (const profile of profiles){
|
||||||
console.log(profiles[0].profile)
|
console.log(profiles[0].profile)
|
||||||
@@ -389,7 +392,7 @@ const submitHandler = async () => {
|
|||||||
</h3>
|
</h3>
|
||||||
</div>
|
</div>
|
||||||
<br>
|
<br>
|
||||||
<div>
|
|
||||||
<ModalComponent :isOpen="isModalOpened" @modal-close="closeModal" @submit="submitHandler" name="first-modal">
|
<ModalComponent :isOpen="isModalOpened" @modal-close="closeModal" @submit="submitHandler" name="first-modal">
|
||||||
<template #header>Summarize Results <br></template>
|
<template #header>Summarize Results <br></template>
|
||||||
<template #content>
|
<template #content>
|
||||||
@@ -413,12 +416,11 @@ const submitHandler = async () => {
|
|||||||
</div> -->
|
</div> -->
|
||||||
</template>
|
</template>
|
||||||
</ModalComponent>
|
</ModalComponent>
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class=" relative space-y-3">
|
<div class=" relative space-y-3">
|
||||||
<div class="grid grid-cols-1 gap-6">
|
<div class="grid grid-cols-1 gap-6">
|
||||||
|
|
||||||
<div className="card w-70 bg-base-100 shadow-xl flex flex-col" v-for="dvm in store.state.recommendationhdvms"
|
<div className="card w-70 bg-base-100 shadow-xl flex flex-col" v-for="dvm in store.state.recommendationdvms"
|
||||||
:key="dvm.id">
|
:key="dvm.id">
|
||||||
|
|
||||||
|
|
||||||
@@ -441,7 +443,7 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
<div className="card-actions justify-end mt-auto" >
|
<div className="card-actions justify-end mt-auto" >
|
||||||
|
|
||||||
<div className="tooltip mt-auto" :data-tip="dvm.status">
|
<div className="tooltip mt-auto">
|
||||||
|
|
||||||
|
|
||||||
<button v-if="dvm.status !== 'finished' && dvm.status !== 'paid' && dvm.status !== 'payment-required' && dvm.status !== 'error'" className="btn">{{dvm.status}}</button>
|
<button v-if="dvm.status !== 'finished' && dvm.status !== 'paid' && dvm.status !== 'payment-required' && dvm.status !== 'error'" className="btn">{{dvm.status}}</button>
|
||||||
@@ -466,7 +468,7 @@ const submitHandler = async () => {
|
|||||||
</div> -->
|
</div> -->
|
||||||
|
|
||||||
|
|
||||||
<details v-if="dvm.status === 'finished'" class="collapse bg-base">
|
<details open v-if="dvm.status === 'finished'" class="collapse bg-base">
|
||||||
<summary class="collapse-title "><div class="btn">Show/Hide Results</div></summary>
|
<summary class="collapse-title "><div class="btn">Show/Hide Results</div></summary>
|
||||||
<div class="collapse-content font-size-0" className="z-10" id="collapse">
|
<div class="collapse-content font-size-0" className="z-10" id="collapse">
|
||||||
|
|
||||||
|
|||||||
@@ -155,8 +155,9 @@ async function send_search_request(msg) {
|
|||||||
store.commit('set_current_request_profile_id_search', requestid_profile)
|
store.commit('set_current_request_profile_id_search', requestid_profile)
|
||||||
|
|
||||||
if (!store.state.hasEventListener){
|
if (!store.state.hasEventListener){
|
||||||
listen()
|
|
||||||
store.commit('set_hasEventListener', true)
|
store.commit('set_hasEventListener', true)
|
||||||
|
listen()
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
console.log("Already has event listener")
|
console.log("Already has event listener")
|
||||||
@@ -178,13 +179,13 @@ async function listen() {
|
|||||||
const handle = {
|
const handle = {
|
||||||
// Handle event
|
// Handle event
|
||||||
handleEvent: async (relayUrl, event) => {
|
handleEvent: async (relayUrl, event) => {
|
||||||
if (store.state.hasEventListener === false){
|
/* if (store.state.hasEventListener === false){
|
||||||
return true
|
return true
|
||||||
}
|
}*/
|
||||||
console.log("Received new event from", relayUrl);
|
console.log("Received new event from", relayUrl);
|
||||||
let resonsetorequest = false
|
let resonsetorequest = false
|
||||||
|
|
||||||
sleep(1200).then(async () => {
|
sleep(500).then(async () => {
|
||||||
|
|
||||||
for (let tag in event.tags) {
|
for (let tag in event.tags) {
|
||||||
if (event.tags[tag].asVec()[0] === "e") {
|
if (event.tags[tag].asVec()[0] === "e") {
|
||||||
|
|||||||
@@ -39,8 +39,8 @@ async function summarizefeed(eventids) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
dvms = []
|
dvms = []
|
||||||
|
|
||||||
store.commit('set_summarization_dvms', dvms)
|
store.commit('set_summarization_dvms', dvms)
|
||||||
|
|
||||||
let client = store.state.client
|
let client = store.state.client
|
||||||
let content = "NIP 90 Summarization request"
|
let content = "NIP 90 Summarization request"
|
||||||
let kind = 5001
|
let kind = 5001
|
||||||
@@ -86,8 +86,9 @@ async function summarizefeed(eventids) {
|
|||||||
|
|
||||||
store.commit('set_current_request_id_summarization', requestid)
|
store.commit('set_current_request_id_summarization', requestid)
|
||||||
if (!store.state.summarizationhasEventListener){
|
if (!store.state.summarizationhasEventListener){
|
||||||
listen()
|
|
||||||
store.commit('set_summariarizationEventListener', true)
|
store.commit('set_summariarizationEventListener', true)
|
||||||
|
listen()
|
||||||
|
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
console.log("Already has event listener")
|
console.log("Already has event listener")
|
||||||
@@ -109,14 +110,14 @@ async function listen() {
|
|||||||
const handle = {
|
const handle = {
|
||||||
// Handle event
|
// Handle event
|
||||||
handleEvent: async (relayUrl, event) => {
|
handleEvent: async (relayUrl, event) => {
|
||||||
if (store.state.summarizationhasEventListener === false){
|
/* if (store.state.summarizationhasEventListener === false){
|
||||||
return true
|
return true
|
||||||
}
|
}*/
|
||||||
//const dvmname = getNamefromId(event.author.toHex())
|
//const dvmname = getNamefromId(event.author.toHex())
|
||||||
console.log("Received new event from", relayUrl);
|
console.log("Received new event from", relayUrl);
|
||||||
console.log(event.asJson())
|
console.log(event.asJson())
|
||||||
let resonsetorequest = false
|
let resonsetorequest = false
|
||||||
sleep(1000).then(async () => {
|
sleep(0).then(async () => {
|
||||||
for (let tag in event.tags) {
|
for (let tag in event.tags) {
|
||||||
if (event.tags[tag].asVec()[0] === "e") {
|
if (event.tags[tag].asVec()[0] === "e") {
|
||||||
|
|
||||||
@@ -327,11 +328,11 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
<br>
|
<br>
|
||||||
<div class="overflow-y-auto scrollbar w-full" style="max-height: 60pc">
|
|
||||||
|
|
||||||
|
|
||||||
<div class=" relative space-y-3">
|
|
||||||
<div class="grid grid-cols-1 gap-4 " >
|
<div class=" relative space-y-2">
|
||||||
|
<div class="grid grid-cols-1 gap-2 " >
|
||||||
|
|
||||||
<div className="card w-70 bg-base-100 shadow-xl" v-for="dvm in store.state.summarizationdvms"
|
<div className="card w-70 bg-base-100 shadow-xl" v-for="dvm in store.state.summarizationdvms"
|
||||||
:key="dvm.id">
|
:key="dvm.id">
|
||||||
@@ -356,7 +357,7 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
<div className="card-actions justify-end mt-auto" >
|
<div className="card-actions justify-end mt-auto" >
|
||||||
|
|
||||||
<div className="tooltip mt-auto" :data-tip="dvm.status">
|
<div className="tooltip mt-auto">
|
||||||
|
|
||||||
|
|
||||||
<button v-if="dvm.status !== 'finished' && dvm.status !== 'paid' && dvm.status !== 'payment-required' && dvm.status !== 'error'" className="btn">{{dvm.status}}</button>
|
<button v-if="dvm.status !== 'finished' && dvm.status !== 'paid' && dvm.status !== 'payment-required' && dvm.status !== 'error'" className="btn">{{dvm.status}}</button>
|
||||||
@@ -379,17 +380,18 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div> -->
|
</div> -->
|
||||||
|
<p v-if="dvm.status === 'finished'">{{dvm.result}}</p>
|
||||||
|
|
||||||
|
<!-- <details v-if="dvm.status === 'finished'" class="collapse bg-base">
|
||||||
<details v-if="dvm.status === 'finished'" class="collapse bg-base">
|
|
||||||
<summary class="collapse-title "><div class="btn">Show/Hide Results</div></summary>
|
<summary class="collapse-title "><div class="btn">Show/Hide Results</div></summary>
|
||||||
|
|
||||||
<div class="collapse-content font-size-0" className="z-10" id="collapse">
|
<div class="collapse-content font-size-0" className="z-10" id="collapse">
|
||||||
|
|
||||||
<p>{{dvm.result}}</p>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</details>
|
</details>-->
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -399,7 +401,7 @@ const submitHandler = async () => {
|
|||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ import {isVisible} from "bootstrap/js/src/util/index.js";
|
|||||||
</div>
|
</div>
|
||||||
<div className="flex-1">
|
<div className="flex-1">
|
||||||
<router-link class="menu" to="/">Noogle</router-link>
|
<router-link class="menu" to="/">Noogle</router-link>
|
||||||
<router-link class="menu" to="/recommendation">Discover</router-link>
|
<router-link class="menu" to="/discover">Discover</router-link>
|
||||||
<router-link class="menu" to="/image">ImageGen</router-link>
|
<router-link class="menu" to="/image">ImageGen</router-link>
|
||||||
<!--<router-link class="menu" to="/about">About</router-link> -->
|
<!--<router-link class="menu" to="/about">About</router-link> -->
|
||||||
<router-link class="menu" to="/nip89">DVMs</router-link>
|
<router-link class="menu" to="/nip89">DVMs</router-link>
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ const routes = [
|
|||||||
{ path: "/donate", component: () => import("@/components/Donate.vue") },
|
{ path: "/donate", component: () => import("@/components/Donate.vue") },
|
||||||
{ path: "/nip89", component: () => import("@/components/Nip89view.vue") },
|
{ path: "/nip89", component: () => import("@/components/Nip89view.vue") },
|
||||||
{ path: "/image", component: () => import("@/components/Image.vue") },
|
{ path: "/image", component: () => import("@/components/Image.vue") },
|
||||||
{ path: "/recommendation", component: () => import("@/components/Recommendation.vue") },
|
{ path: "/discover", component: () => import("@/components/Recommendation.vue") },
|
||||||
{ path: "/article/:id", component: () => import("@/components/Home.vue") },
|
{ path: "/article/:id", component: () => import("@/components/Home.vue") },
|
||||||
{ path: '/:pathMatch(.*)*', component: () => import("@/components/Home.vue") },
|
{ path: '/:pathMatch(.*)*', component: () => import("@/components/Home.vue") },
|
||||||
];
|
];
|
||||||
|
|||||||
@@ -22,7 +22,7 @@ const store = createStore({
|
|||||||
imagedvmreplies: [],
|
imagedvmreplies: [],
|
||||||
nip89dvms: [],
|
nip89dvms: [],
|
||||||
activesearchdvms: [],
|
activesearchdvms: [],
|
||||||
recommendationhdvms: [],
|
recommendationdvms: [],
|
||||||
summarizationdvms: [],
|
summarizationdvms: [],
|
||||||
results: [],
|
results: [],
|
||||||
profile_results: [],
|
profile_results: [],
|
||||||
@@ -92,8 +92,8 @@ const store = createStore({
|
|||||||
state.activesearchdvms.push.apply(state.activesearchdvms, dvms)
|
state.activesearchdvms.push.apply(state.activesearchdvms, dvms)
|
||||||
},
|
},
|
||||||
set_recommendation_dvms(state, dvms) {
|
set_recommendation_dvms(state, dvms) {
|
||||||
state.recommendationhdvms.length = 0
|
state.recommendationdvms.length = 0
|
||||||
state.recommendationhdvms.push.apply(state.recommendationhdvms, dvms)
|
state.recommendationdvms.push.apply(state.recommendationdvms, dvms)
|
||||||
},
|
},
|
||||||
|
|
||||||
set_summarization_dvms(state, dvms) {
|
set_summarization_dvms(state, dvms) {
|
||||||
|
|||||||
Reference in New Issue
Block a user