Make Beta Ready
This commit is contained in:
parent
595f2be1fb
commit
c3c36504ab
1132
package-lock.json
generated
1132
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
22
package.json
22
package.json
@ -14,7 +14,7 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@hibas123/secure-file-wrapper": "^2.5.0",
|
"@hibas123/secure-file-wrapper": "^2.5.0",
|
||||||
"@hibas123/utils": "^2.0.5",
|
"@hibas123/utils": "^2.1.0",
|
||||||
"aes-js": "^3.1.2",
|
"aes-js": "^3.1.2",
|
||||||
"feather-icons": "^4.21.0",
|
"feather-icons": "^4.21.0",
|
||||||
"idb": "3.0.2",
|
"idb": "3.0.2",
|
||||||
@ -22,31 +22,31 @@
|
|||||||
"js-sha512": "^0.8.0",
|
"js-sha512": "^0.8.0",
|
||||||
"lodash.clonedeep": "^4.5.0",
|
"lodash.clonedeep": "^4.5.0",
|
||||||
"secure-file-wrapper": "git+https://git.stamm.me/OpenServer/OSSecureFileWrapper.git",
|
"secure-file-wrapper": "git+https://git.stamm.me/OpenServer/OSSecureFileWrapper.git",
|
||||||
"uikit": "^3.0.3",
|
"uikit": "^3.1.5",
|
||||||
"uuid": "^3.3.2"
|
"uuid": "^3.3.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/lodash.clonedeep": "^4.5.6",
|
"@types/lodash.clonedeep": "^4.5.6",
|
||||||
"@types/uikit": "^2.27.7",
|
"@types/uikit": "^2.27.7",
|
||||||
"@types/uuid": "^3.4.4",
|
"@types/uuid": "^3.4.4",
|
||||||
"copy-webpack-plugin": "^5.0.2",
|
"copy-webpack-plugin": "^5.0.3",
|
||||||
"css-loader": "^2.1.1",
|
"css-loader": "^2.1.1",
|
||||||
"file-loader": "^3.0.1",
|
"file-loader": "^3.0.1",
|
||||||
"html-webpack-plugin": "^3.2.0",
|
"html-webpack-plugin": "^3.2.0",
|
||||||
"mini-css-extract-plugin": "^0.6.0",
|
"mini-css-extract-plugin": "^0.7.0",
|
||||||
"node-sass": "^4.10.0",
|
"node-sass": "^4.12.0",
|
||||||
"preact": "^8.3.1",
|
"preact": "^8.3.1",
|
||||||
"preact-svg-loader": "^0.2.1",
|
"preact-svg-loader": "^0.2.1",
|
||||||
"sass-loader": "^7.1.0",
|
"sass-loader": "^7.1.0",
|
||||||
"style-loader": "^0.23.1",
|
"style-loader": "^0.23.1",
|
||||||
"ts-loader": "^5.3.0",
|
"ts-loader": "^6.0.2",
|
||||||
"typescript": "^3.4.3",
|
"typescript": "^3.5.1",
|
||||||
"webpack": "^4.30.0",
|
"webpack": "^4.32.2",
|
||||||
"webpack-bundle-analyzer": "^3.3.2",
|
"webpack-bundle-analyzer": "^3.3.2",
|
||||||
"webpack-cli": "^3.3.0",
|
"webpack-cli": "^3.3.2",
|
||||||
"webpack-dev-server": "^3.3.1",
|
"webpack-dev-server": "^3.5.0",
|
||||||
"webpack-visualizer-plugin": "^0.1.11",
|
"webpack-visualizer-plugin": "^0.1.11",
|
||||||
"workbox-webpack-plugin": "^4.3.0",
|
"workbox-webpack-plugin": "^4.3.1",
|
||||||
"worker-loader": "^2.0.0"
|
"worker-loader": "^2.0.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -13,8 +13,7 @@
|
|||||||
"url": "url"
|
"url": "url"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"icons": [
|
"icons": [{
|
||||||
{
|
|
||||||
"src": "notepad16.png",
|
"src": "notepad16.png",
|
||||||
"sizes": "16x16",
|
"sizes": "16x16",
|
||||||
"type": "image/png"
|
"type": "image/png"
|
||||||
@ -52,6 +51,6 @@
|
|||||||
],
|
],
|
||||||
"start_url": "/",
|
"start_url": "/",
|
||||||
"display": "standalone",
|
"display": "standalone",
|
||||||
"theme_color": "#2196F3",
|
"theme_color": "#e188e5",
|
||||||
"background_color": "#ffffff"
|
"background_color": "#ffffff"
|
||||||
}
|
}
|
@ -1,18 +1,16 @@
|
|||||||
@import "../vars.scss";
|
|
||||||
|
|
||||||
.context-menu {
|
.context-menu {
|
||||||
position: fixed;
|
position: fixed;
|
||||||
z-index: 10;
|
z-index: 10;
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
border: 1px $border_color solid;
|
border: 1px var(--border-color) solid;
|
||||||
|
|
||||||
> button {
|
>button {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
display: block;
|
display: block;
|
||||||
}
|
}
|
||||||
|
|
||||||
> *:not(:last-child) {
|
>*:not(:last-child) {
|
||||||
border-bottom: 1px $border_color solid;
|
border-bottom: 1px var(--border-color) solid;
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -32,10 +32,10 @@ export class YesNoModal extends Modal<boolean> {
|
|||||||
<div style="text-align: right;">
|
<div style="text-align: right;">
|
||||||
<button class="uk-button uk-button-primary uk-margin-right" style="display: inline-block;" onClick={() => {
|
<button class="uk-button uk-button-primary uk-margin-right" style="display: inline-block;" onClick={() => {
|
||||||
this.props.modal.result(false);
|
this.props.modal.result(false);
|
||||||
}}>No</button>
|
}}><span style="text-decoration: underline;">N</span>o</button>
|
||||||
<button class="uk-button uk-button-primary" style="display: inline-block;" onClick={() => {
|
<button class="uk-button uk-button-primary" style="display: inline-block;" onClick={() => {
|
||||||
this.props.modal.result(true);
|
this.props.modal.result(true);
|
||||||
}}>Yes</button>
|
}}><span style="text-decoration: underline;">Y</span>es</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</Modal.BaseModal>
|
</Modal.BaseModal>
|
||||||
|
@ -230,23 +230,10 @@ export default class EntryList extends Component<{ vault: Promise<IVault> }, { n
|
|||||||
Navigation.setPage("/vault", { id: this.vault.id }, { id, entry: "true" })
|
Navigation.setPage("/vault", { id: this.vault.id }, { id, entry: "true" })
|
||||||
}
|
}
|
||||||
|
|
||||||
let elms = this.state.notes.map(note => {
|
|
||||||
let [first, second] = note.preview.split("\n", 2);
|
|
||||||
return <li class="vault-vault" onContextMenu={evt => this.onContext(evt, note)} onClick={() => {
|
|
||||||
open_entry(note._id)
|
|
||||||
}}>
|
|
||||||
<div>{first}</div>
|
|
||||||
<div>{second}</div>
|
|
||||||
</li>
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
return <div>
|
return <div>
|
||||||
{this.state.context}
|
{this.state.context}
|
||||||
<header class="uk-background-primary">
|
<header class="uk-background-primary">
|
||||||
{/* <div> */}
|
|
||||||
<a class="header-icon-button" onClick={() => history.back()}><ArrowLeft height={undefined} width={undefined} /></a>
|
<a class="header-icon-button" onClick={() => history.back()}><ArrowLeft height={undefined} width={undefined} /></a>
|
||||||
{/* </div> */}
|
|
||||||
<h3 style="display:inline" class="header-title" onClick={() => Navigation.setPage("/")}>{this.vault ? this.vault.name : ""}</h3>
|
<h3 style="display:inline" class="header-title" onClick={() => Navigation.setPage("/")}>{this.vault ? this.vault.name : ""}</h3>
|
||||||
<span></span>
|
<span></span>
|
||||||
{/* <a class="button header_icon_button"><MoreVertival height={undefined} width={undefined} /></a> */}
|
{/* <a class="button header_icon_button"><MoreVertival height={undefined} width={undefined} /></a> */}
|
||||||
@ -259,9 +246,20 @@ export default class EntryList extends Component<{ vault: Promise<IVault> }, { n
|
|||||||
<Search />
|
<Search />
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<ul class="uk-list uk-list-divider">
|
|
||||||
{elms}
|
<div class="uk-child-width-1-3@m uk-grid-small uk-grid-match" style="margin-top: 1rem;" uk-grid>
|
||||||
</ul>
|
{this.state.notes.map(note => {
|
||||||
|
let [first, second] = note.preview.split("\n", 2);
|
||||||
|
return <div class="" onContextMenu={evt => this.onContext(evt, note)} onClick={() => {
|
||||||
|
open_entry(note._id)
|
||||||
|
}}>
|
||||||
|
<div class="uk-card uk-card-default uk-card-body vault-vault" style="box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3)">
|
||||||
|
<div>{first}</div>
|
||||||
|
<div>{second}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
})}
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>;
|
</div>;
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,8 @@ header {
|
|||||||
margin-bottom: $header-margin;
|
margin-bottom: $header-margin;
|
||||||
align-content: center;
|
align-content: center;
|
||||||
padding: 0.75em;
|
padding: 0.75em;
|
||||||
border-bottom: solid $border-color 1px;
|
border-bottom: solid var(--border-color) 1px;
|
||||||
|
background-color: var(--primary);
|
||||||
|
|
||||||
>* {
|
>* {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
@ -61,4 +62,17 @@ header {
|
|||||||
|
|
||||||
.def-shadow {
|
.def-shadow {
|
||||||
box-shadow: 0px 5px 8px 2px rgba(66, 66, 66, 0.53);
|
box-shadow: 0px 5px 8px 2px rgba(66, 66, 66, 0.53);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.ccontainer {
|
||||||
|
margin: 0 1rem;
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 45rem) {
|
||||||
|
.ccontainer {
|
||||||
|
max-width: 50rem;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
}
|
}
|
@ -4,6 +4,31 @@ declare global {
|
|||||||
cancelIdleCallback: (id: number | NodeJS.Timeout) => void;
|
cancelIdleCallback: (id: number | NodeJS.Timeout) => void;
|
||||||
debug: any;
|
debug: any;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
namespace JSX {
|
||||||
|
interface IntrinsicElements {
|
||||||
|
"wired-button": HTMLAttributes;
|
||||||
|
"wired-card": HTMLAttributes;
|
||||||
|
"wired-checkbox": HTMLAttributes;
|
||||||
|
"wired-combo": HTMLAttributes;
|
||||||
|
"wired-fab": HTMLAttributes;
|
||||||
|
"wired-icon-button": HTMLAttributes;
|
||||||
|
"wired-input": HTMLAttributes;
|
||||||
|
"wired-item": HTMLAttributes;
|
||||||
|
"wired-lib": HTMLAttributes;
|
||||||
|
"wired-listbox": HTMLAttributes;
|
||||||
|
"wired-progress": HTMLAttributes;
|
||||||
|
"wired-radio-group": HTMLAttributes;
|
||||||
|
"wired-radio": HTMLAttributes;
|
||||||
|
"wired-slider": HTMLAttributes;
|
||||||
|
"wired-spinner": HTMLAttributes;
|
||||||
|
"wired-tabs": HTMLAttributes;
|
||||||
|
"wired-textarea": HTMLAttributes;
|
||||||
|
"wired-toggle": HTMLAttributes;
|
||||||
|
"wired-tooltip": HTMLAttributes;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
// declare const window: Window;
|
// declare const window: Window;
|
||||||
|
|
||||||
@ -38,11 +63,11 @@ window.debug = {};
|
|||||||
import { h, render } from 'preact';
|
import { h, render } from 'preact';
|
||||||
import App from './components/App';
|
import App from './components/App';
|
||||||
|
|
||||||
// import "mini.css/src/flavors/mini-dark.scss"
|
|
||||||
// import "mini.css/src/flavors/mini-default.scss"
|
import "uikit";
|
||||||
// import "uikit";
|
|
||||||
import "uikit/dist/css/uikit.css"
|
import "uikit/dist/css/uikit.css"
|
||||||
import "./index.scss"
|
|
||||||
|
import "./index.scss";
|
||||||
import Navigation from './navigation';
|
import Navigation from './navigation';
|
||||||
import VaultsPage from './components/routes/vaults/Vaults';
|
import VaultsPage from './components/routes/vaults/Vaults';
|
||||||
import { Page } from './page';
|
import { Page } from './page';
|
||||||
@ -52,8 +77,7 @@ import DemoPage from './components/demo';
|
|||||||
import VaultPage from './components/routes/vault/Vault';
|
import VaultPage from './components/routes/vault/Vault';
|
||||||
import SharePage from './components/routes/share/Share';
|
import SharePage from './components/routes/share/Share';
|
||||||
import Notifications from './notifications';
|
import Notifications from './notifications';
|
||||||
|
window.debug.notes = Notes;
|
||||||
console.log(Notes);
|
|
||||||
|
|
||||||
(async () => {
|
(async () => {
|
||||||
// Initialize notes provider
|
// Initialize notes provider
|
||||||
|
@ -1,2 +1,21 @@
|
|||||||
$border-color: #AAAAAA;
|
:root {
|
||||||
|
--primary: #1E88E5;
|
||||||
|
// --mdc-theme-primary: var(--primary);
|
||||||
|
// --mdc-theme-primary-bg: var(--mdc-theme--primary);
|
||||||
|
// --mdc-theme-on-primary: white;
|
||||||
|
--error: #ff2f00;
|
||||||
|
--border-color: #ababab;
|
||||||
|
--default-font-size: 1.05rem;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uk-button-primary {
|
||||||
|
background: var(--primary) !important;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
.uk-background-primary {
|
||||||
|
background: var(--primary) !important;
|
||||||
|
color: white;
|
||||||
|
}
|
||||||
|
|
||||||
$hover-background: #DDDDDD;
|
$hover-background: #DDDDDD;
|
Loading…
Reference in New Issue
Block a user