memorio 0.2.19 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +31 -0
- package/.gitattributes +1 -0
- package/.private/npm +1 -0
- package/.vscode/extension.json +15 -0
- package/.vscode/settings.json +90 -0
- package/config/dispatch.ts +49 -0
- package/config/global.ts +36 -0
- package/coverage/clover.xml +260 -0
- package/coverage/coverage-final.json +10 -0
- package/coverage/lcov-report/a51.memorio/config/dispatch.ts.html +232 -0
- package/coverage/lcov-report/a51.memorio/config/global.ts.html +193 -0
- package/coverage/lcov-report/a51.memorio/config/index.html +131 -0
- package/coverage/lcov-report/a51.memorio/dist/config/dispatch.js.html +157 -0
- package/coverage/lcov-report/a51.memorio/dist/config/global.js.html +142 -0
- package/coverage/lcov-report/a51.memorio/dist/config/index.html +131 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/cache/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/cache/index.js.html +103 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/observer/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/observer/index.js.html +280 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/state/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/state/index.js.html +460 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/store/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/dist/functions/store/index.js.html +367 -0
- package/coverage/lcov-report/a51.memorio/dist/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/dist/init.js.html +106 -0
- package/coverage/lcov-report/a51.memorio/functions/cache/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/functions/cache/index.ts.html +142 -0
- package/coverage/lcov-report/a51.memorio/functions/observer/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/functions/observer/index.ts.html +448 -0
- package/coverage/lcov-report/a51.memorio/functions/session/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/functions/session/index.ts.html +409 -0
- package/coverage/lcov-report/a51.memorio/functions/state/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/functions/state/index.ts.html +682 -0
- package/coverage/lcov-report/a51.memorio/functions/store/index.html +116 -0
- package/coverage/lcov-report/a51.memorio/functions/store/index.ts.html +409 -0
- package/coverage/lcov-report/a51.memorio/index.html +131 -0
- package/coverage/lcov-report/a51.memorio/index.ts.html +88 -0
- package/coverage/lcov-report/a51.memorio/init.ts.html +115 -0
- package/coverage/lcov-report/base.css +224 -0
- package/coverage/lcov-report/block-navigation.js +87 -0
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +206 -0
- package/coverage/lcov-report/prettify.css +1 -0
- package/coverage/lcov-report/prettify.js +2 -0
- package/coverage/lcov-report/session/index.html +116 -0
- package/coverage/lcov-report/session/index.ts.html +571 -0
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +210 -0
- package/coverage/lcov-report/state/index.html +116 -0
- package/coverage/lcov-report/state/index.ts.html +1090 -0
- package/coverage/lcov-report/store/index.html +116 -0
- package/coverage/lcov-report/store/index.ts.html +556 -0
- package/coverage/lcov.info +518 -0
- package/dist/README.md +319 -0
- package/dist/index.d.ts +7 -0
- package/dist/index.js +1 -0
- package/dist/package.json +98 -0
- package/dist/types/cache.d.ts +27 -0
- package/dist/types/memorio.d.ts +18 -0
- package/dist/types/observer.d.ts +47 -0
- package/dist/types/session.d.ts +91 -0
- package/dist/types/state.d.ts +71 -0
- package/dist/types/store.d.ts +91 -0
- package/esbuild.config.mjs +54 -0
- package/eslint.config.mjs +174 -0
- package/examples/bg.jpg +0 -0
- package/examples/bootstrap.less +92 -0
- package/examples/favicon.ico +0 -0
- package/examples/index.htm +65 -0
- package/examples/javascript.js +2 -0
- package/examples/responsive.less +47 -0
- package/examples/styles.less +169 -0
- package/functions/cache/index.ts +19 -0
- package/functions/observer/index.ts +121 -0
- package/functions/session/index.ts +108 -0
- package/functions/state/index.ts +199 -0
- package/functions/store/index.ts +108 -0
- package/index.ts +1 -0
- package/init.ts +12 -0
- package/jest.config.mjs +33 -0
- package/jest.setup.js +2 -0
- package/package.json +4 -10
- package/tests/basic.test.ts +50 -0
- package/tests/cache.test.ts +52 -0
- package/tests/observer.test.ts +62 -0
- package/tests/setup.ts +48 -0
- package/tests/state.test.ts +45 -0
- package/tests/store.test.ts +62 -0
- package/tsconfig.json +67 -0
- package/index.js +0 -1
- /package/{CHANGELOG.md → .github/CHANGELOG.md} +0 -0
- /package/{CITATION.cff → .github/CITATION.cff} +0 -0
- /package/{CODEOWNERS → .github/CODEOWNERS} +0 -0
- /package/{CODE_OF_CONDUCT.md → .github/CODE_OF_CONDUCT.md} +0 -0
- /package/{CONTRIBUTING.md → .github/CONTRIBUTING.md} +0 -0
- /package/{COPYRIGHT.md → .github/COPYRIGHT.md} +0 -0
- /package/{FUNDING.yml → .github/FUNDING.yml} +0 -0
- /package/{HISTORY.md → .github/HISTORY.md} +0 -0
- /package/{LICENSE.md → .github/LICENSE.md} +0 -0
- /package/{README.md → .github/README.md} +0 -0
- /package/{SECURITY.md → .github/SECURITY.md} +0 -0
- /package/{SUMMARY.md → .github/SUMMARY.md} +0 -0
- /package/{dependabot.yml → .github/dependabot.yml} +0 -0
- /package/{documents → .github/documents}/OBSERVER.md +0 -0
- /package/{documents → .github/documents}/STATE.md +0 -0
- /package/{documents → .github/documents}/STORE.md +0 -0
- /package/{pull_request_template.md → .github/pull_request_template.md} +0 -0
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
memorio
|
|
3
|
+
Copyright (c) 2025 Dario Passariello <dariopassariello@gmail.com>
|
|
4
|
+
Licensed under MIT License, see
|
|
5
|
+
https://dario.passariello.ca
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Create states using: store.set("example",{test:"test"})
|
|
10
|
+
*/
|
|
11
|
+
interface _store {
|
|
12
|
+
|
|
13
|
+
/**
|
|
14
|
+
* Create a new store
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* store.set("test","example") // or Array, Object, Number, Functions...
|
|
18
|
+
*
|
|
19
|
+
* @since memorio 0.0.1
|
|
20
|
+
* @param name The String as name to define the store.
|
|
21
|
+
* @param param The information taht you want to store (Any).
|
|
22
|
+
* @return boolean
|
|
23
|
+
*/
|
|
24
|
+
set: (name: string, value: any) => void
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Have back the data from a store.
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* store.get("test")
|
|
31
|
+
*
|
|
32
|
+
* @since memorio 0.0.1
|
|
33
|
+
* @param name The String as name to define the store.
|
|
34
|
+
*/
|
|
35
|
+
get: (name: string) => any
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Delete an existing store:
|
|
39
|
+
*
|
|
40
|
+
* @example
|
|
41
|
+
* store.delete("test")
|
|
42
|
+
* store.remove("test")
|
|
43
|
+
*
|
|
44
|
+
* @since memorio 0.0.1
|
|
45
|
+
* @param name The String as name to define the store.
|
|
46
|
+
* @return boolean
|
|
47
|
+
*/
|
|
48
|
+
delete: (name: string) => boolean | undefined
|
|
49
|
+
remove: (name: string) => boolean | undefined
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Delete all storages
|
|
53
|
+
*
|
|
54
|
+
* @example
|
|
55
|
+
* store.clearAll()
|
|
56
|
+
* store.removeAll()
|
|
57
|
+
*
|
|
58
|
+
* @since memorio 0.0.1
|
|
59
|
+
* @return boolean
|
|
60
|
+
*/
|
|
61
|
+
clearAll: () => boolean
|
|
62
|
+
removeAll: () => boolean
|
|
63
|
+
|
|
64
|
+
/**
|
|
65
|
+
* Know how much space you have for total storages
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* store.quota()
|
|
69
|
+
*
|
|
70
|
+
* @since memorio 0.0.1
|
|
71
|
+
* @return values
|
|
72
|
+
*/
|
|
73
|
+
quota: () => void
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Get the size of stores an the total
|
|
77
|
+
*
|
|
78
|
+
* @example
|
|
79
|
+
* store.size()
|
|
80
|
+
*
|
|
81
|
+
* @since memorio 0.0.1
|
|
82
|
+
* @return dimension in kb
|
|
83
|
+
*/
|
|
84
|
+
size: () => number
|
|
85
|
+
|
|
86
|
+
// TODO
|
|
87
|
+
// readonly increaseQuota: (value: number) => void
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
declare var store: _store
|
|
91
|
+
type store = _store
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import esbuild from 'esbuild'
|
|
2
|
+
import { copy } from 'esbuild-plugin-copy'
|
|
3
|
+
import { clean } from 'esbuild-plugin-clean'
|
|
4
|
+
|
|
5
|
+
esbuild.build(
|
|
6
|
+
{
|
|
7
|
+
entryPoints: ['init.ts'],
|
|
8
|
+
outfile: 'dist/index.js',
|
|
9
|
+
legalComments: 'none',
|
|
10
|
+
color: true,
|
|
11
|
+
bundle: true,
|
|
12
|
+
minify: true,
|
|
13
|
+
sourcemap: false,
|
|
14
|
+
allowOverwrite: true,
|
|
15
|
+
plugins: [
|
|
16
|
+
clean(
|
|
17
|
+
{
|
|
18
|
+
patterns: [
|
|
19
|
+
'./dist/*'
|
|
20
|
+
]
|
|
21
|
+
}
|
|
22
|
+
),
|
|
23
|
+
copy(
|
|
24
|
+
{
|
|
25
|
+
assets: [
|
|
26
|
+
{
|
|
27
|
+
from: 'types/**/*',
|
|
28
|
+
to: './types'
|
|
29
|
+
},
|
|
30
|
+
// {
|
|
31
|
+
// from: '.github/**/*',
|
|
32
|
+
// to: './'
|
|
33
|
+
// },
|
|
34
|
+
{
|
|
35
|
+
from: '.github/README.md',
|
|
36
|
+
to: './README.md'
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
from: './package.json',
|
|
40
|
+
to: './package.json'
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
from: './index.d.ts',
|
|
44
|
+
to: './index.d.ts'
|
|
45
|
+
}
|
|
46
|
+
]
|
|
47
|
+
}
|
|
48
|
+
)
|
|
49
|
+
]
|
|
50
|
+
}
|
|
51
|
+
)
|
|
52
|
+
.catch(
|
|
53
|
+
() => process.exit(1)
|
|
54
|
+
)
|
|
@@ -0,0 +1,174 @@
|
|
|
1
|
+
import tseslint from '@typescript-eslint/eslint-plugin'
|
|
2
|
+
import tsparser from '@typescript-eslint/parser'
|
|
3
|
+
import { defineConfig } from "eslint/config"
|
|
4
|
+
|
|
5
|
+
export default defineConfig([
|
|
6
|
+
{
|
|
7
|
+
ignores: [
|
|
8
|
+
'**/node_modules/**',
|
|
9
|
+
'**/dist/**',
|
|
10
|
+
'**/build/**',
|
|
11
|
+
'**/coverage/**',
|
|
12
|
+
'**/assets/**',
|
|
13
|
+
'**/types/*.d.ts',
|
|
14
|
+
'**/*.min.js',
|
|
15
|
+
'**/documents/**'
|
|
16
|
+
]
|
|
17
|
+
},
|
|
18
|
+
// Base configuration for all files
|
|
19
|
+
{
|
|
20
|
+
languageOptions: {
|
|
21
|
+
ecmaVersion: 'latest',
|
|
22
|
+
sourceType: 'module',
|
|
23
|
+
globals: {
|
|
24
|
+
a51dev: 'writable',
|
|
25
|
+
process: 'readonly',
|
|
26
|
+
global: 'writable',
|
|
27
|
+
module: 'writable',
|
|
28
|
+
require: 'readonly',
|
|
29
|
+
console: 'readonly',
|
|
30
|
+
__dirname: 'readonly',
|
|
31
|
+
__filename: 'readonly'
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
linterOptions: {
|
|
35
|
+
reportUnusedDisableDirectives: true
|
|
36
|
+
}
|
|
37
|
+
},
|
|
38
|
+
// JavaScript files configuration
|
|
39
|
+
{
|
|
40
|
+
files: ['**/*.js', '**/*.mjs', '**/*.cjs'],
|
|
41
|
+
languageOptions: {
|
|
42
|
+
ecmaVersion: 'latest',
|
|
43
|
+
sourceType: 'module'
|
|
44
|
+
},
|
|
45
|
+
rules: {
|
|
46
|
+
'no-var': 'off',
|
|
47
|
+
'no-console': 'off',
|
|
48
|
+
'no-undef': 'off', // Disable undefined variable checking for JS files
|
|
49
|
+
'no-unused-vars': 'warn', // Make unused vars warnings instead of errors
|
|
50
|
+
'semi': ['warn', 'never']
|
|
51
|
+
}
|
|
52
|
+
},
|
|
53
|
+
// TypeScript files configuration
|
|
54
|
+
{
|
|
55
|
+
files: ['**/*.ts', '**/*.tsx'],
|
|
56
|
+
plugins: {
|
|
57
|
+
'@typescript-eslint': tseslint
|
|
58
|
+
},
|
|
59
|
+
languageOptions: {
|
|
60
|
+
parser: tsparser,
|
|
61
|
+
parserOptions: {
|
|
62
|
+
ecmaVersion: 'latest',
|
|
63
|
+
sourceType: 'module'
|
|
64
|
+
}
|
|
65
|
+
},
|
|
66
|
+
rules: {
|
|
67
|
+
'no-var': 'off',
|
|
68
|
+
'no-console': 'off',
|
|
69
|
+
'no-undef': 'off', // TypeScript handles this better
|
|
70
|
+
'no-unused-vars': 'off', // Use the TypeScript specific version instead
|
|
71
|
+
'semi': ['warn', 'never'],
|
|
72
|
+
'@typescript-eslint/no-unused-vars': 'warn',
|
|
73
|
+
'@typescript-eslint/no-explicit-any': 'off',
|
|
74
|
+
'@typescript-eslint/no-var-requires': 'off'
|
|
75
|
+
}
|
|
76
|
+
},
|
|
77
|
+
// Jest test files
|
|
78
|
+
{
|
|
79
|
+
files: ['**/*.test.js', '**/*.test.ts', '**/*.spec.js', '**/*.spec.ts'],
|
|
80
|
+
languageOptions: {
|
|
81
|
+
globals: {
|
|
82
|
+
jest: 'readonly',
|
|
83
|
+
describe: 'readonly',
|
|
84
|
+
it: 'readonly',
|
|
85
|
+
expect: 'readonly',
|
|
86
|
+
beforeEach: 'readonly',
|
|
87
|
+
beforeAll: 'readonly',
|
|
88
|
+
afterEach: 'readonly',
|
|
89
|
+
afterAll: 'readonly',
|
|
90
|
+
test: 'readonly',
|
|
91
|
+
spyOn: 'readonly'
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
rules: {
|
|
95
|
+
'no-undef': 'off' // Jest globals are defined above
|
|
96
|
+
}
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
rules: {
|
|
100
|
+
"no-var": 0,
|
|
101
|
+
"no-empty": 0,
|
|
102
|
+
"no-console": 0,
|
|
103
|
+
"no-process-exit": 0,
|
|
104
|
+
"no-underscore-dangle": 0,
|
|
105
|
+
"no-param-reassign": 0,
|
|
106
|
+
"no-prototype-builtins": 0,
|
|
107
|
+
"no-unused-vars": 0,
|
|
108
|
+
"no-undef": 0,
|
|
109
|
+
"no-debugger": 0,
|
|
110
|
+
"no-dupe-else-if": 0,
|
|
111
|
+
"no-useless-escape": 0,
|
|
112
|
+
"node/no-extraneous-require": 0,
|
|
113
|
+
"node/no-unpublished-require": 0,
|
|
114
|
+
"node/no-unsupported-features/es-syntax": 0,
|
|
115
|
+
"node/no-missing-import": 0,
|
|
116
|
+
"node/no-unpublished-import": 0,
|
|
117
|
+
"node/no-unsupported-features/node-builtins": 0,
|
|
118
|
+
"node/no-missing-require": 0,
|
|
119
|
+
"react/prop-types": 0,
|
|
120
|
+
"react/no-string-refs": 0,
|
|
121
|
+
"react/no-find-dom-node": 0,
|
|
122
|
+
"react/display-name": 0,
|
|
123
|
+
"react/jsx-no-undef": 0,
|
|
124
|
+
"promise/no-nesting": 0,
|
|
125
|
+
"promise/no-callback-in-promise": 0,
|
|
126
|
+
"promise/always-return": 0,
|
|
127
|
+
"promise/catch-or-return": 0,
|
|
128
|
+
"promise/no-return-wrap": 0,
|
|
129
|
+
"promise/valid-params": 0,
|
|
130
|
+
"import/export": 0,
|
|
131
|
+
"import/namespace": 0,
|
|
132
|
+
"import/default": 0,
|
|
133
|
+
"import/no-named-as-default": 0,
|
|
134
|
+
"import/no-named-as-default-member": 0,
|
|
135
|
+
"import/no-mutable-exports": 0,
|
|
136
|
+
"import/no-extraneous-dependencies": 0,
|
|
137
|
+
"import/no-unresolved": 0,
|
|
138
|
+
"import/no-duplicates": 0,
|
|
139
|
+
"import/named": 0,
|
|
140
|
+
"@typescript-eslint/no-var-requires": 0,
|
|
141
|
+
"@typescript-eslint/no-unused-vars": 0,
|
|
142
|
+
"@typescript-eslint/no-empty-function": 0,
|
|
143
|
+
"@typescript-eslint/no-explicit-any": 0,
|
|
144
|
+
"consistent-return": 0,
|
|
145
|
+
"unicorn/no-process-exit": 0,
|
|
146
|
+
"comma-dangle": [
|
|
147
|
+
"error",
|
|
148
|
+
"never"
|
|
149
|
+
],
|
|
150
|
+
"prefer-const": [
|
|
151
|
+
"warn"
|
|
152
|
+
],
|
|
153
|
+
"semi": [
|
|
154
|
+
"warn",
|
|
155
|
+
"never"
|
|
156
|
+
],
|
|
157
|
+
"max-nested-callbacks": [
|
|
158
|
+
"warn",
|
|
159
|
+
4
|
|
160
|
+
],
|
|
161
|
+
"no-plusplus": 0,
|
|
162
|
+
"operator-linebreak": [
|
|
163
|
+
"error",
|
|
164
|
+
"after",
|
|
165
|
+
{
|
|
166
|
+
"overrides": {
|
|
167
|
+
"?": "ignore",
|
|
168
|
+
":": "ignore"
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
]
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
])
|
package/examples/bg.jpg
ADDED
|
Binary file
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
// Copyright (c) 2024 Dario Passariello
|
|
2
|
+
|
|
3
|
+
* {
|
|
4
|
+
box-sizing: border-box;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
article,
|
|
8
|
+
aside,
|
|
9
|
+
details,
|
|
10
|
+
figcaption,
|
|
11
|
+
figure,
|
|
12
|
+
footer,
|
|
13
|
+
header,
|
|
14
|
+
hgroup,
|
|
15
|
+
nav,
|
|
16
|
+
section {
|
|
17
|
+
display: block;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
audio,
|
|
21
|
+
canvas,
|
|
22
|
+
video {
|
|
23
|
+
display: inline-block;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
audio:not([controls]) {
|
|
27
|
+
display: none;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
sub,
|
|
31
|
+
sup {
|
|
32
|
+
position: relative;
|
|
33
|
+
font-size: 75%;
|
|
34
|
+
line-height: 0;
|
|
35
|
+
vertical-align: baseline;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
sup {
|
|
39
|
+
top: -0.1em;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
sub {
|
|
43
|
+
bottom: -0.1em;
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
img {
|
|
47
|
+
border: 0;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
ol,
|
|
51
|
+
ul {
|
|
52
|
+
list-style: square;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
blockquote,
|
|
56
|
+
q,
|
|
57
|
+
blockquote:before,
|
|
58
|
+
blockquote:after,
|
|
59
|
+
q:before,
|
|
60
|
+
q:after {
|
|
61
|
+
quotes: none;
|
|
62
|
+
content: '';
|
|
63
|
+
content: none;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
b,
|
|
67
|
+
strong {
|
|
68
|
+
font-weight: 600;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
table {
|
|
72
|
+
border-collapse: collapse;
|
|
73
|
+
border-spacing: 0;
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
input::-moz-focus-inner {
|
|
77
|
+
border: 0;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
h1,
|
|
81
|
+
h2,
|
|
82
|
+
h3,
|
|
83
|
+
h4,
|
|
84
|
+
h5,
|
|
85
|
+
h6 {
|
|
86
|
+
margin: 0;
|
|
87
|
+
padding: 0;
|
|
88
|
+
font-size: 1.5em;
|
|
89
|
+
letter-spacing: -.05em;
|
|
90
|
+
color: #666;
|
|
91
|
+
line-height: 1em;
|
|
92
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
<!DOCTYPE html>
|
|
2
|
+
|
|
3
|
+
<html lang="en" dir="ltr" prefix="og: http://ogp.me/ns#" itemscope itemtype="http://schema.org/WebPage">
|
|
4
|
+
|
|
5
|
+
<head>
|
|
6
|
+
<meta charset="UTF-8" />
|
|
7
|
+
|
|
8
|
+
<meta name="description" content="Example by Dario Passariello, Copyright (c) 2024" />
|
|
9
|
+
<meta name="viewport" content="width=device-width, initial-scale=1, viewport-fit=cover" />
|
|
10
|
+
<meta name="mobile-web-app-capable" content="yes" />
|
|
11
|
+
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
12
|
+
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent">
|
|
13
|
+
<meta name="msapplication-starturl" content="index.html" />
|
|
14
|
+
<meta name="msapplication-TileColor" content="#ffffff" />
|
|
15
|
+
<meta name="theme-color" content="#ffffff" />
|
|
16
|
+
<meta name="google" content="nopagereadaloud" />
|
|
17
|
+
<meta name="referrer" content="no-referrer" />
|
|
18
|
+
|
|
19
|
+
<link rel="preconnect" href="https://cdn.jsdelivr.net">
|
|
20
|
+
<link rel="dns-prefetch" href="https://cdn.jsdelivr.net" nonce />
|
|
21
|
+
|
|
22
|
+
<link rel="stylesheet/less" type="text/css" href="bootstrap.less" />
|
|
23
|
+
<link rel="stylesheet/less" type="text/css" href="styles.less" />
|
|
24
|
+
<link rel="stylesheet/less" type="text/css" href="responsive.less" />
|
|
25
|
+
|
|
26
|
+
<link rel="preload stylesheet preconnect"
|
|
27
|
+
href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.1/css/all.min.css" as="style"
|
|
28
|
+
onload="this.onload=null;this.rel='stylesheet'" nonce>
|
|
29
|
+
|
|
30
|
+
<link rel="icon" type="image/x-icon" href="favicon.ico">
|
|
31
|
+
|
|
32
|
+
<title>Example Memorio by Dario Passariello</title>
|
|
33
|
+
|
|
34
|
+
</head>
|
|
35
|
+
|
|
36
|
+
<body>
|
|
37
|
+
|
|
38
|
+
<header>
|
|
39
|
+
<nav> </nav>
|
|
40
|
+
</header>
|
|
41
|
+
|
|
42
|
+
<aside>
|
|
43
|
+
<section>
|
|
44
|
+
</section>
|
|
45
|
+
</aside>
|
|
46
|
+
|
|
47
|
+
<main>
|
|
48
|
+
|
|
49
|
+
<br />
|
|
50
|
+
<h1><i class="fa-solid fa-person-through-window"></i> Memorio Example </h1>
|
|
51
|
+
|
|
52
|
+
<hr />
|
|
53
|
+
|
|
54
|
+
</main>
|
|
55
|
+
|
|
56
|
+
<footer>Copyright © <span class="year">2025</span> - Dario Passariello</footer>
|
|
57
|
+
|
|
58
|
+
<!-- Custom NPM -->
|
|
59
|
+
<script src="https://cdn.jsdelivr.net/npm/memorio"></script>
|
|
60
|
+
<script src="https://cdn.jsdelivr.net/npm/less"></script>
|
|
61
|
+
<script src="javascript.js"></script>
|
|
62
|
+
|
|
63
|
+
</body>
|
|
64
|
+
|
|
65
|
+
</html>
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
@media screen and (max-width: 699px) {
|
|
2
|
+
|
|
3
|
+
:root {
|
|
4
|
+
--w2: 60px !important;
|
|
5
|
+
}
|
|
6
|
+
|
|
7
|
+
html {
|
|
8
|
+
overflow: auto !important;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
body {
|
|
12
|
+
display: flex !important;
|
|
13
|
+
position: relative !important;
|
|
14
|
+
flex-direction: column-reverse;
|
|
15
|
+
align-items: center;
|
|
16
|
+
overflow: auto !important;
|
|
17
|
+
padding: 20px 10px !important;
|
|
18
|
+
|
|
19
|
+
&:before {
|
|
20
|
+
all: unset !important;
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
#fs {
|
|
24
|
+
display: none;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
main,
|
|
28
|
+
aside,
|
|
29
|
+
section,
|
|
30
|
+
footer {
|
|
31
|
+
all: unset !important;
|
|
32
|
+
width: 100%;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
main {
|
|
36
|
+
display: flex !important;
|
|
37
|
+
flex-direction: column !important;
|
|
38
|
+
|
|
39
|
+
input {
|
|
40
|
+
width: 80% !important;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
@import url('https://fonts.googleapis.com/css2?family=Lato');
|
|
2
|
+
|
|
3
|
+
// Copyright (c) 2024 Dario Passariello
|
|
4
|
+
|
|
5
|
+
:root {
|
|
6
|
+
--header-height: 30px;
|
|
7
|
+
--aside: 300px;
|
|
8
|
+
--w1: 15px;
|
|
9
|
+
--w2: 35px;
|
|
10
|
+
--h1: 20px;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// html{
|
|
14
|
+
// display: none;
|
|
15
|
+
// }
|
|
16
|
+
|
|
17
|
+
* {
|
|
18
|
+
font-family: 'Lato', sans-serif;
|
|
19
|
+
|
|
20
|
+
&::backdrop {
|
|
21
|
+
background-color: rgba(255, 255, 255, 0);
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
html,
|
|
26
|
+
body {
|
|
27
|
+
cursor: default;
|
|
28
|
+
margin: 0;
|
|
29
|
+
padding: 0;
|
|
30
|
+
font-size: 1em;
|
|
31
|
+
position: absolute;
|
|
32
|
+
top: 0;
|
|
33
|
+
left: 0;
|
|
34
|
+
right: 0;
|
|
35
|
+
bottom: 0;
|
|
36
|
+
overflow: hidden;
|
|
37
|
+
|
|
38
|
+
&:before {
|
|
39
|
+
content: '';
|
|
40
|
+
position: absolute;
|
|
41
|
+
top: 0;
|
|
42
|
+
left: 0;
|
|
43
|
+
right: 0;
|
|
44
|
+
bottom: 0;
|
|
45
|
+
background-image: url('bg.jpg');
|
|
46
|
+
background-size: cover;
|
|
47
|
+
filter: blur(4px);
|
|
48
|
+
z-index: 0
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
header {
|
|
52
|
+
position: absolute;
|
|
53
|
+
top: 0;
|
|
54
|
+
height: var(--header-height);
|
|
55
|
+
left: 0;
|
|
56
|
+
right: 0;
|
|
57
|
+
background: black;
|
|
58
|
+
color: white;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
aside {
|
|
62
|
+
padding: 15px 0;
|
|
63
|
+
display: flex;
|
|
64
|
+
flex-direction: column;
|
|
65
|
+
align-items: center;
|
|
66
|
+
position: absolute;
|
|
67
|
+
top: var(--header-height);
|
|
68
|
+
left: 0;
|
|
69
|
+
bottom: 0;
|
|
70
|
+
width: var(--aside);
|
|
71
|
+
border-right: 1px solid #bbb;
|
|
72
|
+
overflow: auto;
|
|
73
|
+
background: #eee;
|
|
74
|
+
|
|
75
|
+
section {
|
|
76
|
+
display: flex
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
hr {
|
|
80
|
+
width: 150px;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.table {
|
|
84
|
+
.title {
|
|
85
|
+
display: flex;
|
|
86
|
+
padding-left: var(--w1);
|
|
87
|
+
display: flex;
|
|
88
|
+
|
|
89
|
+
span {
|
|
90
|
+
color: cornflowerblue;
|
|
91
|
+
text-align: center;
|
|
92
|
+
font-size: .65em;
|
|
93
|
+
width: var(--w2);
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
.row {
|
|
98
|
+
display: flex;
|
|
99
|
+
|
|
100
|
+
>span {
|
|
101
|
+
color: cornflowerblue;
|
|
102
|
+
font-size: .65em;
|
|
103
|
+
width: var(--w1);
|
|
104
|
+
text-align: right;
|
|
105
|
+
padding-right: 3px;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
input {
|
|
109
|
+
width: var(--w2);
|
|
110
|
+
height: var(--h1);
|
|
111
|
+
padding: 1px;
|
|
112
|
+
text-align: center;
|
|
113
|
+
font-size: .65em;
|
|
114
|
+
border: 1px solid #ddd;
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
main {
|
|
121
|
+
display: flex;
|
|
122
|
+
flex-direction: column;
|
|
123
|
+
align-items: center;
|
|
124
|
+
position: absolute;
|
|
125
|
+
top: var(--header-height);
|
|
126
|
+
left: var(--aside);
|
|
127
|
+
right: 0;
|
|
128
|
+
bottom: 0;
|
|
129
|
+
overflow: auto;
|
|
130
|
+
|
|
131
|
+
>span {
|
|
132
|
+
position: absolute;
|
|
133
|
+
top: 10px;
|
|
134
|
+
right: 10px;
|
|
135
|
+
width: unset
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
button {
|
|
139
|
+
font-size: 1em;
|
|
140
|
+
margin: 3px;
|
|
141
|
+
padding: 8px;
|
|
142
|
+
width: 390px;
|
|
143
|
+
border-radius: 10px;
|
|
144
|
+
border: 1px solid #AAA;
|
|
145
|
+
color: #AAA;
|
|
146
|
+
text-shadow: black 0 -1px, white 0 1px;
|
|
147
|
+
|
|
148
|
+
&:hover {
|
|
149
|
+
background: #CCC;
|
|
150
|
+
cursor: pointer;
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
hr {
|
|
155
|
+
background: gray;
|
|
156
|
+
height: 1px;
|
|
157
|
+
width: 350px;
|
|
158
|
+
margin: 10px;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
footer {
|
|
163
|
+
position: absolute;
|
|
164
|
+
bottom: 10px;
|
|
165
|
+
right: 20px;
|
|
166
|
+
font-size: .8em;
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
}
|