From bd051c9ced734a428302e79f161bcd9caef19d5a Mon Sep 17 00:00:00 2001 From: Marston Connell <34043723+TheMarstonConnell@users.noreply.github.com> Date: Thu, 15 Feb 2024 17:48:08 -0500 Subject: [PATCH] cleaning up (#8) * lint * payonce goodness --- .eslintrc.cjs | 1 - README.md | 21 +++-- index.html | 30 +++---- package-lock.json | 8 +- package.json | 2 +- public/icon.svg | 38 ++++---- public/vite.svg | 19 +++- src/App.vue | 24 ++--- src/assets/css/ck.css | 103 +++++++++++++++++++--- src/assets/css/style.css | 116 +++++++++++++------------ src/assets/vue.svg | 7 +- src/components/DraftDocuments.vue | 140 +++++++++++++++++++++--------- src/components/HelloWorld.vue | 14 +-- src/components/NavBar.vue | 2 +- src/config/mainnet.ts | 36 ++++---- src/config/nav.ts | 2 +- src/main.ts | 2 +- src/store/main.ts | 115 +++++++++++++++--------- src/utils/conversion.ts | 2 +- src/views/DraftEditor.vue | 37 +++++--- src/views/HomePage.vue | 41 +++++---- src/views/UserPage.vue | 81 +++++++++-------- src/views/UserSettings.vue | 4 +- tsconfig.json | 30 +++++-- tsconfig.node.json | 4 +- vite.config.ts | 4 +- 26 files changed, 565 insertions(+), 318 deletions(-) diff --git a/.eslintrc.cjs b/.eslintrc.cjs index 8541c49..ecf8361 100644 --- a/.eslintrc.cjs +++ b/.eslintrc.cjs @@ -1,6 +1,5 @@ /* eslint-env node */ require('@rushstack/eslint-patch/modern-module-resolution') - module.exports = { root: true, 'extends': [ diff --git a/README.md b/README.md index ef72fd5..b3567de 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,27 @@ # Vue 3 + TypeScript + Vite -This template should help get you started developing with Vue 3 and TypeScript in Vite. The template uses Vue 3 ` - + + +
+ + diff --git a/package-lock.json b/package-lock.json index e811294..7a652b4 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,7 @@ "dependencies": { "@ckeditor/ckeditor5-vue": "^5.1.0", "@jackallabs/ck5-custom": "file:jackallabs-ck5-custom-0.0.0.tgz", - "@jackallabs/jackal.js": "^2.2.0", + "@jackallabs/jackal.js": "^2.3.0", "vite-plugin-node-stdlib-browser": "^0.2.1", "vue": "^3.3.4", "vue-router": "^4.1.6" @@ -1112,9 +1112,9 @@ } }, "node_modules/@jackallabs/jackal.js": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@jackallabs/jackal.js/-/jackal.js-2.2.0.tgz", - "integrity": "sha512-d8nSun6rtFkqveunkELm5MP0E+Oesvjbyq6TcHQE4xC61Ury4las/EhWitFtgcCZ/UMardBcVLljflfi37LRNQ==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/@jackallabs/jackal.js/-/jackal.js-2.3.0.tgz", + "integrity": "sha512-68g/5hrFvpmueJVgI0o0p9HS55BNlYDwGaTNvok5I5N49BVFRp5pbIgUg6KyYauKfiD+b3eys/Ztu9fpmApnkg==", "dependencies": { "@cosmjs/launchpad": "^0.27.1", "@cosmjs/proto-signing": "0.31.0", diff --git a/package.json b/package.json index 086eb5f..5f09924 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "dependencies": { "@ckeditor/ckeditor5-vue": "^5.1.0", "@jackallabs/ck5-custom": "file:jackallabs-ck5-custom-0.0.0.tgz", - "@jackallabs/jackal.js": "^2.2.0", + "@jackallabs/jackal.js": "^2.3.0", "vite-plugin-node-stdlib-browser": "^0.2.1", "vue": "^3.3.4", "vue-router": "^4.1.6" diff --git a/public/icon.svg b/public/icon.svg index a56b704..f7e209c 100644 --- a/public/icon.svg +++ b/public/icon.svg @@ -2,23 +2,23 @@ - - - - + width="100mm" + height="100mm" + viewBox="0 0 100 100" + version="1.1" + id="svg1" + xmlns="http://www.w3.org/2000/svg" + xmlns:svg="http://www.w3.org/2000/svg"> + + + + diff --git a/public/vite.svg b/public/vite.svg index e7b8dfb..6447244 100644 --- a/public/vite.svg +++ b/public/vite.svg @@ -1 +1,18 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/App.vue b/src/App.vue index 260a7b3..4e3be06 100644 --- a/src/App.vue +++ b/src/App.vue @@ -1,6 +1,6 @@ @@ -17,20 +17,20 @@ diff --git a/src/assets/css/ck.css b/src/assets/css/ck.css index 58f6b5e..2620e50 100644 --- a/src/assets/css/ck.css +++ b/src/assets/css/ck.css @@ -26,16 +26,19 @@ .ck-content .table .ck-table-resized { table-layout: fixed; } + /* @ckeditor/ckeditor5-table/theme/tablecolumnresize.css */ .ck-content .table table { overflow: hidden; } + /* @ckeditor/ckeditor5-table/theme/tablecolumnresize.css */ .ck-content .table td, .ck-content .table th { overflow-wrap: break-word; position: relative; } + /* @ckeditor/ckeditor5-table/theme/tablecaption.css */ .ck-content .table > figcaption { display: table-caption; @@ -48,11 +51,13 @@ font-size: .75em; outline-offset: -1px; } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content .table { margin: 0.9em auto; display: table; } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content .table table { border-collapse: collapse; @@ -61,6 +66,7 @@ height: 100%; border: 1px double hsl(0, 0%, 70%); } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content .table table td, .ck-content .table table th { @@ -68,19 +74,23 @@ padding: .4em; border: 1px solid hsl(0, 0%, 75%); } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content .table table th { font-weight: bold; background: hsla(0, 0%, 0%, 5%); } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content[dir="rtl"] .table th { text-align: right; } + /* @ckeditor/ckeditor5-table/theme/table.css */ .ck-content[dir="ltr"] .table th { text-align: left; } + /* @ckeditor/ckeditor5-page-break/theme/pagebreak.css */ .ck-content .page-break { position: relative; @@ -90,6 +100,7 @@ align-items: center; justify-content: center; } + /* @ckeditor/ckeditor5-page-break/theme/pagebreak.css */ .ck-content .page-break::after { content: ''; @@ -97,6 +108,7 @@ border-bottom: 2px dashed hsl(0, 0%, 77%); width: 100%; } + /* @ckeditor/ckeditor5-page-break/theme/pagebreak.css */ .ck-content .page-break__label { position: relative; @@ -117,6 +129,7 @@ -ms-user-select: none; user-select: none; } + /* @ckeditor/ckeditor5-media-embed/theme/mediaembed.css */ .ck-content .media { clear: both; @@ -124,19 +137,23 @@ display: block; min-width: 15em; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list { list-style: none; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list li { position: relative; margin-bottom: 5px; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list li .todo-list { margin-top: 5px; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label > input { -webkit-appearance: none; @@ -151,6 +168,7 @@ right: 0; margin-left: 0; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content[dir=rtl] .todo-list .todo-list__label > input { left: 0; @@ -158,6 +176,7 @@ right: -25px; margin-left: -15px; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label > input::before { display: block; @@ -170,6 +189,7 @@ border-radius: 2px; transition: 250ms ease-in-out box-shadow; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label > input::after { display: block; @@ -177,41 +197,48 @@ box-sizing: content-box; pointer-events: none; content: ''; - left: calc( var(--ck-todo-list-checkmark-size) / 3 ); - top: calc( var(--ck-todo-list-checkmark-size) / 5.3 ); - width: calc( var(--ck-todo-list-checkmark-size) / 5.3 ); - height: calc( var(--ck-todo-list-checkmark-size) / 2.6 ); + left: calc(var(--ck-todo-list-checkmark-size) / 3); + top: calc(var(--ck-todo-list-checkmark-size) / 5.3); + width: calc(var(--ck-todo-list-checkmark-size) / 5.3); + height: calc(var(--ck-todo-list-checkmark-size) / 2.6); border-style: solid; border-color: transparent; - border-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8 ) calc( var(--ck-todo-list-checkmark-size) / 8 ) 0; + border-width: 0 calc(var(--ck-todo-list-checkmark-size) / 8) calc(var(--ck-todo-list-checkmark-size) / 8) 0; transform: rotate(45deg); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label > input[checked]::before { background: hsl(126, 64%, 41%); border-color: hsl(126, 64%, 41%); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label > input[checked]::after { border-color: hsl(0, 0%, 100%); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label .todo-list__label__description { vertical-align: middle; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox] { position: absolute; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > input, .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input { cursor: pointer; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > input:hover::before, .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input:hover::before { box-shadow: 0 0 0 5px hsla(0, 0%, 0%, 0.1); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input { -webkit-appearance: none; @@ -226,6 +253,7 @@ right: 0; margin-left: 0; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content[dir=rtl] .todo-list .todo-list__label > span[contenteditable=false] > input { left: 0; @@ -233,6 +261,7 @@ right: -25px; margin-left: -15px; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input::before { display: block; @@ -245,6 +274,7 @@ border-radius: 2px; transition: 250ms ease-in-out box-shadow; } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input::after { display: block; @@ -252,46 +282,54 @@ box-sizing: content-box; pointer-events: none; content: ''; - left: calc( var(--ck-todo-list-checkmark-size) / 3 ); - top: calc( var(--ck-todo-list-checkmark-size) / 5.3 ); - width: calc( var(--ck-todo-list-checkmark-size) / 5.3 ); - height: calc( var(--ck-todo-list-checkmark-size) / 2.6 ); + left: calc(var(--ck-todo-list-checkmark-size) / 3); + top: calc(var(--ck-todo-list-checkmark-size) / 5.3); + width: calc(var(--ck-todo-list-checkmark-size) / 5.3); + height: calc(var(--ck-todo-list-checkmark-size) / 2.6); border-style: solid; border-color: transparent; - border-width: 0 calc( var(--ck-todo-list-checkmark-size) / 8 ) calc( var(--ck-todo-list-checkmark-size) / 8 ) 0; + border-width: 0 calc(var(--ck-todo-list-checkmark-size) / 8) calc(var(--ck-todo-list-checkmark-size) / 8) 0; transform: rotate(45deg); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input[checked]::before { background: hsl(126, 64%, 41%); border-color: hsl(126, 64%, 41%); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label > span[contenteditable=false] > input[checked]::after { border-color: hsl(0, 0%, 100%); } + /* @ckeditor/ckeditor5-list/theme/todolist.css */ .ck-editor__editable.ck-content .todo-list .todo-list__label.todo-list__label_without-description input[type=checkbox] { position: absolute; } + /* @ckeditor/ckeditor5-image/theme/imageresize.css */ .ck-content img.image_resized { height: auto; } + /* @ckeditor/ckeditor5-image/theme/imageresize.css */ .ck-content .image.image_resized { max-width: 100%; display: block; box-sizing: border-box; } + /* @ckeditor/ckeditor5-image/theme/imageresize.css */ .ck-content .image.image_resized img { width: 100%; } + /* @ckeditor/ckeditor5-image/theme/imageresize.css */ .ck-content .image.image_resized > figcaption { display: block; } + /* @ckeditor/ckeditor5-image/theme/image.css */ .ck-content .image { display: table; @@ -300,6 +338,7 @@ margin: 0.9em auto; min-width: 50px; } + /* @ckeditor/ckeditor5-image/theme/image.css */ .ck-content .image img { display: block; @@ -308,6 +347,7 @@ min-width: 100%; height: auto; } + /* @ckeditor/ckeditor5-image/theme/image.css */ .ck-content .image-inline { /* @@ -319,10 +359,12 @@ max-width: 100%; align-items: flex-start; } + /* @ckeditor/ckeditor5-image/theme/image.css */ .ck-content .image-inline picture { display: flex; } + /* @ckeditor/ckeditor5-image/theme/image.css */ .ck-content .image-inline picture, .ck-content .image-inline img { @@ -330,6 +372,7 @@ flex-shrink: 1; max-width: 100%; } + /* @ckeditor/ckeditor5-image/theme/imagecaption.css */ .ck-content .image > figcaption { display: table-caption; @@ -341,129 +384,157 @@ font-size: .75em; outline-offset: -1px; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ol { list-style-type: decimal; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ol ol { list-style-type: lower-latin; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ol ol ol { list-style-type: lower-roman; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ol ol ol ol { list-style-type: upper-latin; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ol ol ol ol ol { list-style-type: upper-roman; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ul { list-style-type: disc; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ul ul { list-style-type: circle; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ul ul ul { list-style-type: square; } + /* @ckeditor/ckeditor5-list/theme/list.css */ .ck-content ul ul ul ul { list-style-type: square; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-block-align-left, .ck-content .image-style-block-align-right { max-width: calc(100% - var(--ck-image-style-spacing)); } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-align-left, .ck-content .image-style-align-right { clear: none; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-side { float: right; margin-left: var(--ck-image-style-spacing); max-width: 50%; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-align-left { float: left; margin-right: var(--ck-image-style-spacing); } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-align-center { margin-left: auto; margin-right: auto; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-align-right { float: right; margin-left: var(--ck-image-style-spacing); } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-block-align-right { margin-right: 0; margin-left: auto; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-style-block-align-left { margin-left: 0; margin-right: auto; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content p + .image-style-align-left, .ck-content p + .image-style-align-right, .ck-content p + .image-style-side { margin-top: 0; } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-inline.image-style-align-left, .ck-content .image-inline.image-style-align-right { margin-top: var(--ck-inline-image-style-spacing); margin-bottom: var(--ck-inline-image-style-spacing); } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-inline.image-style-align-left { margin-right: var(--ck-inline-image-style-spacing); } + /* @ckeditor/ckeditor5-image/theme/imagestyle.css */ .ck-content .image-inline.image-style-align-right { margin-left: var(--ck-inline-image-style-spacing); } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .marker-yellow { background-color: var(--ck-highlight-marker-yellow); } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .marker-green { background-color: var(--ck-highlight-marker-green); } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .marker-pink { background-color: var(--ck-highlight-marker-pink); } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .marker-blue { background-color: var(--ck-highlight-marker-blue); } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .pen-red { color: var(--ck-highlight-pen-red); background-color: transparent; } + /* @ckeditor/ckeditor5-highlight/theme/highlight.css */ .ck-content .pen-green { color: var(--ck-highlight-pen-green); background-color: transparent; } + /* @ckeditor/ckeditor5-block-quote/theme/blockquote.css */ .ck-content blockquote { overflow: hidden; @@ -474,38 +545,46 @@ font-style: italic; border-left: solid 5px hsl(0, 0%, 80%); } + /* @ckeditor/ckeditor5-block-quote/theme/blockquote.css */ .ck-content[dir="rtl"] blockquote { border-left: 0; border-right: solid 5px hsl(0, 0%, 80%); } + /* @ckeditor/ckeditor5-basic-styles/theme/code.css */ .ck-content code { background-color: hsla(0, 0%, 78%, 0.3); padding: .15em; border-radius: 2px; } + /* @ckeditor/ckeditor5-font/theme/fontsize.css */ .ck-content .text-tiny { font-size: .7em; } + /* @ckeditor/ckeditor5-font/theme/fontsize.css */ .ck-content .text-small { font-size: .85em; } + /* @ckeditor/ckeditor5-font/theme/fontsize.css */ .ck-content .text-big { font-size: 1.4em; } + /* @ckeditor/ckeditor5-font/theme/fontsize.css */ .ck-content .text-huge { font-size: 1.8em; } + /* @ckeditor/ckeditor5-mention/theme/mention.css */ .ck-content .mention { background: var(--ck-color-mention-background); color: var(--ck-color-mention-text); } + /* @ckeditor/ckeditor5-horizontal-line/theme/horizontalline.css */ .ck-content hr { margin: 15px 0; @@ -513,6 +592,7 @@ background: hsl(0, 0%, 87%); border: 0; } + /* @ckeditor/ckeditor5-code-block/theme/codeblock.css */ .ck-content pre { padding: 1em; @@ -527,17 +607,20 @@ font-style: normal; min-width: 200px; } + /* @ckeditor/ckeditor5-code-block/theme/codeblock.css */ .ck-content pre code { background: unset; padding: 0; border-radius: 0; } + @media print { /* @ckeditor/ckeditor5-page-break/theme/pagebreak.css */ .ck-content .page-break { padding: 0; } + /* @ckeditor/ckeditor5-page-break/theme/pagebreak.css */ .ck-content .page-break::after { display: none; diff --git a/src/assets/css/style.css b/src/assets/css/style.css index 829753e..bb59754 100644 --- a/src/assets/css/style.css +++ b/src/assets/css/style.css @@ -1,95 +1,99 @@ :root { - font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; - line-height: 1.5; - font-weight: 400; - - color-scheme: light dark; - color: rgba(255, 255, 255, 0.87); - background-color: #242424; - - font-synthesis: none; - text-rendering: optimizeLegibility; - -webkit-font-smoothing: antialiased; - -moz-osx-font-smoothing: grayscale; - -webkit-text-size-adjust: 100%; + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + -webkit-text-size-adjust: 100%; + + --beacon-color: lightcoral; } a { - font-weight: 500; - color: #646cff; - text-decoration: inherit; + font-weight: 500; + color: #646cff; + text-decoration: inherit; } + a:hover { - color: #535bf2; + color: #535bf2; } body { - margin: 0; - display: flex; - place-items: center; - min-width: 320px; - min-height: 100vh; + margin: 0; + display: flex; + place-items: center; + min-width: 320px; + min-height: 100vh; } h1 { - font-size: 3.2em; - line-height: 1.1; + font-size: 3.2em; + line-height: 1.1; } button { - /*border-radius: 8px;*/ - border: 1px solid transparent; - padding: 0.6em 1.2em; - font-size: 1em; - font-weight: 500; - font-family: inherit; - background-color: #1a1a1a; - cursor: pointer; - transition: border-color 0.25s; + /*border-radius: 8px;*/ + border: 1px solid transparent; + padding: 0.6em 1.2em; + font-size: 1em; + font-weight: 500; + font-family: inherit; + background-color: #1a1a1a; + cursor: pointer; + transition: border-color 0.25s; } + button:hover { - border-color: #646cff; + border-color: #646cff; } + button:focus, button:focus-visible { - outline: 4px auto -webkit-focus-ring-color; + outline: 4px auto -webkit-focus-ring-color; } .card { - padding: 2em; + padding: 2em; } - #app { - margin: 0; - padding: 0; - width: 100vw; - height: 100vh; - text-align: center; - display: flex; - flex-direction: column; + margin: 0; + padding: 0; + width: 100vw; + height: 100vh; + text-align: center; + display: flex; + flex-direction: column; } .template-container { - flex-grow: 1; - background-color: #fafafa; - overflow-y: scroll; + flex-grow: 1; + background-color: #fafafa; + overflow-y: scroll; } h1 { - margin-top: 0px; + margin-top: 0px; } -/*@media (prefers-color-scheme: light) {*/ - :root { +:root { color: #213547; background-color: #ffffff; - } - a:hover { +} + +a:hover { color: #747bff; - } - button { +} + +button { background-color: #f9f9f9; - } -/*}*/ +} diff --git a/src/assets/vue.svg b/src/assets/vue.svg index 770e9d3..65f6e38 100644 --- a/src/assets/vue.svg +++ b/src/assets/vue.svg @@ -1 +1,6 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/src/components/DraftDocuments.vue b/src/components/DraftDocuments.vue index 94c50c6..a3b998d 100644 --- a/src/components/DraftDocuments.vue +++ b/src/components/DraftDocuments.vue @@ -1,22 +1,32 @@ diff --git a/src/components/HelloWorld.vue b/src/components/HelloWorld.vue index 889c9fc..2562d6e 100644 --- a/src/components/HelloWorld.vue +++ b/src/components/HelloWorld.vue @@ -12,7 +12,7 @@

Check out create-vuecreate-vue, the official Vue + Vite starter

@@ -24,15 +24,15 @@ diff --git a/src/components/NavBar.vue b/src/components/NavBar.vue index ca6af57..fd9862c 100644 --- a/src/components/NavBar.vue +++ b/src/components/NavBar.vue @@ -12,7 +12,7 @@ diff --git a/src/views/HomePage.vue b/src/views/HomePage.vue index 7e4f8a7..f1a0551 100644 --- a/src/views/HomePage.vue +++ b/src/views/HomePage.vue @@ -5,25 +5,25 @@

Beacon

Beacon is a fully decentralized publishing platform for writers, creators and anyone with something to say. - - - + + +
-
+
-
+
- - - - + + + + @@ -40,16 +40,16 @@ const profile = ref('') const test = ref('') - function requestData(owner: string, fileName: string): Promise { + function requestData (owner: string, fileName: string): Promise { const url = `https://jackal.link/p/${owner}/beacon/published/${fileName}.html` return fetch(url) .then(resp => resp.text()) .catch(err => { - throw err - }) + throw err + }) } - function visitProfile() { + function visitProfile () { router.push(`/${profile.value}`) } @@ -64,10 +64,10 @@ const userSpan = document.createElement('span') userSpan.innerText = 'Written by: ' userWrapper.appendChild(userSpan) - userWrapper.id = "user-wrapper" + userWrapper.id = 'user-wrapper' const userBtn = document.createElement('button') - userBtn.classList.add("undo-button") + userBtn.classList.add('undo-button') userBtn.title = profile.value userBtn.innerHTML = profile.value userBtn.onclick = visitProfile @@ -87,6 +87,7 @@ padding: 0rem 4rem; height: 100%; } + .main-container { height: 100%; flex-grow: 1; @@ -121,7 +122,7 @@ #hero-art { width: 100%; height: 100%; - background: lightcoral; + background: var(--beacon-color); } button { @@ -129,9 +130,6 @@ } - - - #article-section { width: 90%; margin: 0px auto; @@ -193,6 +191,7 @@ #cta-button { margin-top: 20px; } + h1 { margin-top: 0px; } @@ -201,9 +200,9 @@ } .undo-button { - background: none!important; + background: none !important; border: none; - padding: 0!important; + padding: 0 !important; } #user-wrapper { diff --git a/src/views/UserPage.vue b/src/views/UserPage.vue index 3939833..73cbba1 100644 --- a/src/views/UserPage.vue +++ b/src/views/UserPage.vue @@ -2,23 +2,26 @@
- -
- -
-

{{ address.length > 20 ? address.toString().substring(0, 10) + "..." + address.toString().substring(10, 20) : convertToTitleCase(address.toString()) }}'s Beams

-
    -
  • - -
    - {{ item.date }} -

    {{ item.name }}

    -
    -
    -
  • -
-
+ +
+ +
+

+ {{ address.length > 20 ? address.toString().substring(0, 10) + '...' + address.toString().substring(10, 20) : convertToTitleCase(address.toString()) + }}'s Beams

+ User has no beams +
    +
  • + +
    + {{ item.date }} +

    {{ item.name }}

    +
    +
    +
  • +
+
@@ -32,18 +35,20 @@ // const peoples = ref(null) const route = useRoute() - const worx:Ref = ref([]) + const worx: Ref = ref([]) + + const empty = ref(false) const address = route.params.user - function convertToTitleCase(str:string) { + function convertToTitleCase (str: string) { if (!str) { - return "" + return '' } - return str.toLowerCase().replace(/\b\w/g, s => s.toUpperCase()); + return str.toLowerCase().replace(/\b\w/g, s => s.toUpperCase()) } - async function requestData(owner: string): Promise { + async function requestData (owner: string): Promise { const url = `https://jackal.link/p/${owner}/beacon/worx` return fetch(url) .then(resp => resp.json()) @@ -52,21 +57,22 @@ }) } - async function updateWorx(owner: string) { - console.log(owner) - const data = await requestData(owner).catch(alert) - console.log(data) - for ( const k in data) { - const d = data[k] - - const date = new Date(d) - const options:any = { weekday: 'long', year: 'numeric', month: 'short', day: 'numeric' }; + async function updateWorx (owner: string) { + const options: any = { weekday: 'long', year: 'numeric', month: 'short', day: 'numeric' } + requestData(owner).then((data) => { + for (const k in data) { + const d = data[k] + const date = new Date(d) + const s = date.toLocaleDateString('en-us', options) - const s = date.toLocaleDateString('en-us', options) + worx.value.unshift({ name: k, date: s }) + } + console.log(worx.value) + }).catch(() => { + console.log("user has no works") + empty.value = true + }) - worx.value.unshift({name: k, date: s}) - } - console.log(worx.value) } @@ -86,6 +92,7 @@ display: flex; flex-direction: column; } + .loader { width: 48px; height: 48px; @@ -133,7 +140,7 @@ margin-top: 20px; - border-left: lightcoral solid 8px; + border-left: var(--beacon-color) solid 8px; border-bottom: black solid 4px; border-top: black solid 1px; border-right: black solid 1px; @@ -157,6 +164,8 @@ border-bottom: black solid 8px; } - + .no-beams { + font-size: 1.7rem; + } diff --git a/src/views/UserSettings.vue b/src/views/UserSettings.vue index a03bc9a..a97a934 100644 --- a/src/views/UserSettings.vue +++ b/src/views/UserSettings.vue @@ -18,9 +18,9 @@ diff --git a/tsconfig.json b/tsconfig.json index b6c7b38..eae931f 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,9 +3,12 @@ "target": "ES2020", "useDefineForClassFields": true, "module": "ESNext", - "lib": ["ES2020", "DOM", "DOM.Iterable"], + "lib": [ + "ES2020", + "DOM", + "DOM.Iterable" + ], "skipLibCheck": true, - /* Bundler mode */ "moduleResolution": "bundler", "allowImportingTsExtensions": true, @@ -15,20 +18,31 @@ "jsx": "preserve", "noImplicitAny": false, "allowJs": true, - /* Linting */ "strict": true, "noUnusedLocals": true, "noUnusedParameters": true, "noFallthroughCasesInSwitch": true, - /* Path Parsing */ "baseUrl": ".", "paths": { - "@/*": ["src/*"], - "$$/*": ["public/*"] + "@/*": [ + "src/*" + ], + "$$/*": [ + "public/*" + ] } }, - "include": ["src/**/*.ts", "src/**/*.d.ts", "src/**/*.tsx", "src/**/*.vue"], - "references": [{ "path": "./tsconfig.node.json" }] + "include": [ + "src/**/*.ts", + "src/**/*.d.ts", + "src/**/*.tsx", + "src/**/*.vue" + ], + "references": [ + { + "path": "./tsconfig.node.json" + } + ] } diff --git a/tsconfig.node.json b/tsconfig.node.json index 42872c5..b5a3431 100644 --- a/tsconfig.node.json +++ b/tsconfig.node.json @@ -6,5 +6,7 @@ "moduleResolution": "bundler", "allowSyntheticDefaultImports": true }, - "include": ["vite.config.ts"] + "include": [ + "vite.config.ts" + ] } diff --git a/vite.config.ts b/vite.config.ts index d6dfce1..fea15c5 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -8,11 +8,11 @@ import nodePolyfills from 'vite-plugin-node-stdlib-browser' export default defineConfig({ plugins: [ vue(), - nodePolyfills(), + nodePolyfills() ], resolve: { alias: { - '@': fileURLToPath(new URL('./src', import.meta.url)), + '@': fileURLToPath(new URL('./src', import.meta.url)) } } })