Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
K
Koishi Plugin Cache Memcached
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
3rdeye
Koishi Plugin Cache Memcached
Commits
fa614711
Commit
fa614711
authored
Nov 21, 2021
by
nanahira
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
catchup
parent
cb53fbf2
Changes
7
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
142 additions
and
117 deletions
+142
-117
.gitlab-ci.yml
.gitlab-ci.yml
+1
-1
package-lock.json
package-lock.json
+96
-83
package.json
package.json
+8
-8
src/config.ts
src/config.ts
+2
-1
src/index.ts
src/index.ts
+2
-5
src/plugin.ts
src/plugin.ts
+5
-6
webpack.config.js
webpack.config.js
+28
-13
No files found.
.gitlab-ci.yml
View file @
fa614711
...
@@ -23,7 +23,7 @@ upload_to_minio:
...
@@ -23,7 +23,7 @@ upload_to_minio:
tags
:
tags
:
-
linux
-
linux
script
:
script
:
-
aws s3 --endpoint=https://minio.mycard.moe:9000 sync --delete dist/ s3://nanahira/koishi-plugin/cache-memcached
-
aws s3 --endpoint=https://minio.mycard.moe:9000 sync --delete dist/
full/
s3://nanahira/koishi-plugin/cache-memcached
only
:
only
:
-
master
-
master
...
...
package-lock.json
View file @
fa614711
...
@@ -10,6 +10,7 @@
...
@@ -10,6 +10,7 @@
"license"
:
"MIT"
,
"license"
:
"MIT"
,
"dependencies"
:
{
"dependencies"
:
{
"@types/memjs"
:
"^1.2.3"
,
"@types/memjs"
:
"^1.2.3"
,
"schemastery-gen"
:
"^1.0.3"
,
"source-map-support"
:
"^0.5.20"
"source-map-support"
:
"^0.5.20"
},
},
"devDependencies"
:
{
"devDependencies"
:
{
...
@@ -21,8 +22,7 @@
...
@@ -21,8 +22,7 @@
"eslint"
:
"^7.32.0"
,
"eslint"
:
"^7.32.0"
,
"eslint-config-prettier"
:
"^8.3.0"
,
"eslint-config-prettier"
:
"^8.3.0"
,
"eslint-plugin-prettier"
:
"^3.4.1"
,
"eslint-plugin-prettier"
:
"^3.4.1"
,
"koishi"
:
"^4.0.0-alpha.10"
,
"koishi"
:
"^4.0.0-beta.2"
,
"koishi-utils-schemagen"
:
"^1.1.7"
,
"memjs"
:
"^1.3.0"
,
"memjs"
:
"^1.3.0"
,
"moment"
:
"^2.29.1"
,
"moment"
:
"^2.29.1"
,
"prettier"
:
"^2.4.1"
,
"prettier"
:
"^2.4.1"
,
...
@@ -214,34 +214,35 @@
...
@@ -214,34 +214,35 @@
}
}
},
},
"node_modules/@koishijs/core"
:
{
"node_modules/@koishijs/core"
:
{
"version"
:
"4.0.0-
alpha.10
"
,
"version"
:
"4.0.0-
beta.2
"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/core/-/core-4.0.0-
alpha.10
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/core/-/core-4.0.0-
beta.2
.tgz"
,
"integrity"
:
"sha512-
VoCRV2pGyFsqxvvZnUz7a0/rvzwNoS4c61cdyKX05K3fjiHuzBWezk5vNwkgE5pvtCGmMXaOmMwSfazSZ/rLLQ
=="
,
"integrity"
:
"sha512-
L3KPpPOXJaxMCezDrn4Yv0whEKeOtLy1Xe71UQ36TKTDaQ/ytHTvu5ShLWxFYFvdh8yCCvcGx+6YErXJogfwmw
=="
,
"dev"
:
true
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"@koishijs/utils"
:
"^5.0.0-alpha.6"
,
"@koishijs/utils"
:
"^5.0.0-beta.1"
,
"fastest-levenshtein"
:
"^1.0.12"
"fastest-levenshtein"
:
"^1.0.12"
,
"schemastery"
:
"^1.0.0"
},
},
"engines"
:
{
"engines"
:
{
"node"
:
">=12.0.0"
"node"
:
">=12.0.0"
}
}
},
},
"node_modules/@koishijs/plugin-cache-lru"
:
{
"node_modules/@koishijs/plugin-cache-lru"
:
{
"version"
:
"1.0.0-
alph
a.1"
,
"version"
:
"1.0.0-
bet
a.1"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/plugin-cache-lru/-/plugin-cache-lru-1.0.0-
alph
a.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/plugin-cache-lru/-/plugin-cache-lru-1.0.0-
bet
a.1.tgz"
,
"integrity"
:
"sha512-
GaLkOMMOy7djNSOT/eGHSUEu4kikmUjmxJIvOrAA/Y7oJAdXaTcY4gcZi5Vtie6NWXUIBssqqJmcJBgF/Bwwv
w=="
,
"integrity"
:
"sha512-
8l5o4RKEZ58wZJIrII3x/2vmZYdxkHGzfuUm5jWOBXzw1bDmJRa0q8RrYhjabs/QKbTa9Q+fzmcMtaMnKEGta
w=="
,
"dev"
:
true
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"lru-cache"
:
"^6.0.0"
"lru-cache"
:
"^6.0.0"
},
},
"peerDependencies"
:
{
"peerDependencies"
:
{
"koishi"
:
"^4.0.0-
alpha.10
"
"koishi"
:
"^4.0.0-
beta.2
"
}
}
},
},
"node_modules/@koishijs/utils"
:
{
"node_modules/@koishijs/utils"
:
{
"version"
:
"5.0.0-
alpha.6
"
,
"version"
:
"5.0.0-
beta.1
"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/utils/-/utils-5.0.0-
alpha.6
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/utils/-/utils-5.0.0-
beta.1
.tgz"
,
"integrity"
:
"sha512-
nvSZmDErNwAuTE+bVnVRn1s+Tt9ni7n5B6GbD2if7cNiLbWaJJkUgHLiiJaRRIhHJOmN/OEPaUwijf4j5LGXrg
=="
,
"integrity"
:
"sha512-
JZae1kaums2beMH+AVc7jiKYJArnqCgw+1h2kEuvnaiaSHe7qNJp+BAhMJfxrXOe3VZ/oYKoUOd71FNjzaN2RA
=="
,
"dev"
:
true
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"supports-color"
:
"^8.1.0"
"supports-color"
:
"^8.1.0"
...
@@ -1181,12 +1182,6 @@
...
@@ -1181,12 +1182,6 @@
"node"
:
">=6.0"
"node"
:
">=6.0"
}
}
},
},
"node_modules/class-transformer"
:
{
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/class-transformer/-/class-transformer-0.4.0.tgz"
,
"integrity"
:
"sha512-ETWD/H2TbWbKEi7m9N4Km5+cw1hNcqJSxlSYhsLsNjQzWWiZIYA1zafxpK9PwVfaZ6AqR5rrjPVUBGESm5tQUA=="
,
"dev"
:
true
},
"node_modules/clone-deep"
:
{
"node_modules/clone-deep"
:
{
"version"
:
"4.0.1"
,
"version"
:
"4.0.1"
,
"resolved"
:
"https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
,
...
@@ -2709,41 +2704,29 @@
...
@@ -2709,41 +2704,29 @@
}
}
},
},
"node_modules/koishi"
:
{
"node_modules/koishi"
:
{
"version"
:
"4.0.0-
alpha.10
"
,
"version"
:
"4.0.0-
beta.2
"
,
"resolved"
:
"https://registry.npmjs.org/koishi/-/koishi-4.0.0-
alpha.10
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/koishi/-/koishi-4.0.0-
beta.2
.tgz"
,
"integrity"
:
"sha512-
1d1Sztg4i6ob+voet0nbpaOt0RRkL7HJfTPQDAbzSZow49xFe4M0QyvyFJa3t96Mg60aQZCQZHrBkiAEQzPbYg
=="
,
"integrity"
:
"sha512-
5nLpioIS/9aboZSQyyB8cacY8PMXUulP2fjDO1uAbacSpSANOGBp+KRvTZYqZPIVZxfKR+T8WdsqNAdcBmrCiQ
=="
,
"dev"
:
true
,
"dev"
:
true
,
"dependencies"
:
{
"dependencies"
:
{
"@koa/router"
:
"^10.1.1"
,
"@koa/router"
:
"^10.1.1"
,
"@koishijs/core"
:
"^4.0.0-
alpha.10
"
,
"@koishijs/core"
:
"^4.0.0-
beta.2
"
,
"@koishijs/plugin-cache-lru"
:
"^1.0.0-
alph
a.1"
,
"@koishijs/plugin-cache-lru"
:
"^1.0.0-
bet
a.1"
,
"@koishijs/utils"
:
"^5.0.0-
alpha.6
"
,
"@koishijs/utils"
:
"^5.0.0-
beta.1
"
,
"@types/koa"
:
"*"
,
"@types/koa"
:
"*"
,
"@types/koa__router"
:
"*"
,
"@types/koa__router"
:
"*"
,
"@types/ws"
:
"^7.4.7"
,
"@types/ws"
:
"^7.4.7"
,
"axios"
:
"^0.21.4"
,
"axios"
:
"^0.21.4"
,
"koa"
:
"^2.13.1"
,
"koa"
:
"^2.13.1"
,
"koa-bodyparser"
:
"^4.3.0"
,
"koa-bodyparser"
:
"^4.3.0"
,
"parseurl"
:
"^1.3.3"
,
"path-to-regexp"
:
"^6.2.0"
,
"proxy-agent"
:
"^5.0.0"
"proxy-agent"
:
"^5.0.0"
},
},
"engines"
:
{
"engines"
:
{
"node"
:
">=12.0.0"
"node"
:
">=12.0.0"
}
}
},
},
"node_modules/koishi-utils-schemagen"
:
{
"version"
:
"1.1.7"
,
"resolved"
:
"https://registry.npmjs.org/koishi-utils-schemagen/-/koishi-utils-schemagen-1.1.7.tgz"
,
"integrity"
:
"sha512-0fajhFliGZEUI8/Bt5BqCnvhPw4Aha8ceNxHqpqCE6zwS+9KCkY4WVXGZT1wrtzWxC8WKx8en9LtxerZsJ9TQA=="
,
"dev"
:
true
,
"dependencies"
:
{
"class-transformer"
:
"^0.4.0"
,
"lodash"
:
"^4.17.21"
},
"peerDependencies"
:
{
"koishi"
:
"^4.0.0-alpha.10"
,
"reflect-metadata"
:
"^0.1.13"
}
},
"node_modules/levn"
:
{
"node_modules/levn"
:
{
"version"
:
"0.3.0"
,
"version"
:
"0.3.0"
,
"resolved"
:
"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz"
,
...
@@ -2795,8 +2778,7 @@
...
@@ -2795,8 +2778,7 @@
"node_modules/lodash"
:
{
"node_modules/lodash"
:
{
"version"
:
"4.17.21"
,
"version"
:
"4.17.21"
,
"resolved"
:
"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
,
"resolved"
:
"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
,
"integrity"
:
"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
,
"integrity"
:
"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
"dev"
:
true
},
},
"node_modules/lodash.clonedeep"
:
{
"node_modules/lodash.clonedeep"
:
{
"version"
:
"4.5.0"
,
"version"
:
"4.5.0"
,
...
@@ -3465,9 +3447,7 @@
...
@@ -3465,9 +3447,7 @@
"node_modules/reflect-metadata"
:
{
"node_modules/reflect-metadata"
:
{
"version"
:
"0.1.13"
,
"version"
:
"0.1.13"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz"
,
"integrity"
:
"sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
,
"integrity"
:
"sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
"dev"
:
true
,
"peer"
:
true
},
},
"node_modules/regexpp"
:
{
"node_modules/regexpp"
:
{
"version"
:
"3.2.0"
,
"version"
:
"3.2.0"
,
...
@@ -3611,6 +3591,24 @@
...
@@ -3611,6 +3591,24 @@
"url"
:
"https://opencollective.com/webpack"
"url"
:
"https://opencollective.com/webpack"
}
}
},
},
"node_modules/schemastery"
:
{
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/schemastery/-/schemastery-1.0.0.tgz"
,
"integrity"
:
"sha512-TwjfFcstdU1rSkV9/dATEk8YFLa1OOxCuGT2mMepZxpMAATQdVm7Fw2tRr4tEsrqAitP+X1/8P5Vv51OUBClAw=="
},
"node_modules/schemastery-gen"
:
{
"version"
:
"1.0.3"
,
"resolved"
:
"https://registry.npmjs.org/schemastery-gen/-/schemastery-gen-1.0.3.tgz"
,
"integrity"
:
"sha512-qJQS0N5ZOsCsMkv4ZhQYS50j9iIEaizIABC3u/331pY737al2E9rrx77cK5yc/ChZUq+ejm3/eKIgATrpLaCnQ=="
,
"dependencies"
:
{
"lodash"
:
"^4.17.21"
,
"reflect-metadata"
:
"^0.1.13"
,
"typed-reflector"
:
"^1.0.5"
},
"peerDependencies"
:
{
"schemastery"
:
"^1.0.0"
}
},
"node_modules/semver"
:
{
"node_modules/semver"
:
{
"version"
:
"7.3.5"
,
"version"
:
"7.3.5"
,
"resolved"
:
"https://registry.npmjs.org/semver/-/semver-7.3.5.tgz"
,
"resolved"
:
"https://registry.npmjs.org/semver/-/semver-7.3.5.tgz"
,
...
@@ -4092,6 +4090,14 @@
...
@@ -4092,6 +4090,14 @@
"node"
:
">= 0.6"
"node"
:
">= 0.6"
}
}
},
},
"node_modules/typed-reflector"
:
{
"version"
:
"1.0.5"
,
"resolved"
:
"https://registry.npmjs.org/typed-reflector/-/typed-reflector-1.0.5.tgz"
,
"integrity"
:
"sha512-uVXjRyfia44NftErLxahyXgXN2C9GhLtFvVnUxdjwU4fRn0dFI+MbqEKy8oYAMdVkC8xRh8xm3r4w/C1aYZMXg=="
,
"dependencies"
:
{
"reflect-metadata"
:
"^0.1.13"
}
},
"node_modules/typescript"
:
{
"node_modules/typescript"
:
{
"version"
:
"4.4.4"
,
"version"
:
"4.4.4"
,
"resolved"
:
"https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz"
,
"resolved"
:
"https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz"
,
...
@@ -4534,28 +4540,29 @@
...
@@ -4534,28 +4540,29 @@
}
}
},
},
"@koishijs/core"
:
{
"@koishijs/core"
:
{
"version"
:
"4.0.0-
alpha.10
"
,
"version"
:
"4.0.0-
beta.2
"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/core/-/core-4.0.0-
alpha.10
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/core/-/core-4.0.0-
beta.2
.tgz"
,
"integrity"
:
"sha512-
VoCRV2pGyFsqxvvZnUz7a0/rvzwNoS4c61cdyKX05K3fjiHuzBWezk5vNwkgE5pvtCGmMXaOmMwSfazSZ/rLLQ
=="
,
"integrity"
:
"sha512-
L3KPpPOXJaxMCezDrn4Yv0whEKeOtLy1Xe71UQ36TKTDaQ/ytHTvu5ShLWxFYFvdh8yCCvcGx+6YErXJogfwmw
=="
,
"dev"
:
true
,
"dev"
:
true
,
"requires"
:
{
"requires"
:
{
"@koishijs/utils"
:
"^5.0.0-alpha.6"
,
"@koishijs/utils"
:
"^5.0.0-beta.1"
,
"fastest-levenshtein"
:
"^1.0.12"
"fastest-levenshtein"
:
"^1.0.12"
,
"schemastery"
:
"^1.0.0"
}
}
},
},
"@koishijs/plugin-cache-lru"
:
{
"@koishijs/plugin-cache-lru"
:
{
"version"
:
"1.0.0-
alph
a.1"
,
"version"
:
"1.0.0-
bet
a.1"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/plugin-cache-lru/-/plugin-cache-lru-1.0.0-
alph
a.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/plugin-cache-lru/-/plugin-cache-lru-1.0.0-
bet
a.1.tgz"
,
"integrity"
:
"sha512-
GaLkOMMOy7djNSOT/eGHSUEu4kikmUjmxJIvOrAA/Y7oJAdXaTcY4gcZi5Vtie6NWXUIBssqqJmcJBgF/Bwwv
w=="
,
"integrity"
:
"sha512-
8l5o4RKEZ58wZJIrII3x/2vmZYdxkHGzfuUm5jWOBXzw1bDmJRa0q8RrYhjabs/QKbTa9Q+fzmcMtaMnKEGta
w=="
,
"dev"
:
true
,
"dev"
:
true
,
"requires"
:
{
"requires"
:
{
"lru-cache"
:
"^6.0.0"
"lru-cache"
:
"^6.0.0"
}
}
},
},
"@koishijs/utils"
:
{
"@koishijs/utils"
:
{
"version"
:
"5.0.0-
alpha.6
"
,
"version"
:
"5.0.0-
beta.1
"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/utils/-/utils-5.0.0-
alpha.6
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/@koishijs/utils/-/utils-5.0.0-
beta.1
.tgz"
,
"integrity"
:
"sha512-
nvSZmDErNwAuTE+bVnVRn1s+Tt9ni7n5B6GbD2if7cNiLbWaJJkUgHLiiJaRRIhHJOmN/OEPaUwijf4j5LGXrg
=="
,
"integrity"
:
"sha512-
JZae1kaums2beMH+AVc7jiKYJArnqCgw+1h2kEuvnaiaSHe7qNJp+BAhMJfxrXOe3VZ/oYKoUOd71FNjzaN2RA
=="
,
"dev"
:
true
,
"dev"
:
true
,
"requires"
:
{
"requires"
:
{
"supports-color"
:
"^8.1.0"
"supports-color"
:
"^8.1.0"
...
@@ -5305,12 +5312,6 @@
...
@@ -5305,12 +5312,6 @@
"integrity"
:
"sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg=="
,
"integrity"
:
"sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg=="
,
"dev"
:
true
"dev"
:
true
},
},
"class-transformer"
:
{
"version"
:
"0.4.0"
,
"resolved"
:
"https://registry.npmjs.org/class-transformer/-/class-transformer-0.4.0.tgz"
,
"integrity"
:
"sha512-ETWD/H2TbWbKEi7m9N4Km5+cw1hNcqJSxlSYhsLsNjQzWWiZIYA1zafxpK9PwVfaZ6AqR5rrjPVUBGESm5tQUA=="
,
"dev"
:
true
},
"clone-deep"
:
{
"clone-deep"
:
{
"version"
:
"4.0.1"
,
"version"
:
"4.0.1"
,
"resolved"
:
"https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
,
"resolved"
:
"https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz"
,
...
@@ -6472,34 +6473,26 @@
...
@@ -6472,34 +6473,26 @@
}
}
},
},
"koishi"
:
{
"koishi"
:
{
"version"
:
"4.0.0-
alpha.10
"
,
"version"
:
"4.0.0-
beta.2
"
,
"resolved"
:
"https://registry.npmjs.org/koishi/-/koishi-4.0.0-
alpha.10
.tgz"
,
"resolved"
:
"https://registry.npmjs.org/koishi/-/koishi-4.0.0-
beta.2
.tgz"
,
"integrity"
:
"sha512-
1d1Sztg4i6ob+voet0nbpaOt0RRkL7HJfTPQDAbzSZow49xFe4M0QyvyFJa3t96Mg60aQZCQZHrBkiAEQzPbYg
=="
,
"integrity"
:
"sha512-
5nLpioIS/9aboZSQyyB8cacY8PMXUulP2fjDO1uAbacSpSANOGBp+KRvTZYqZPIVZxfKR+T8WdsqNAdcBmrCiQ
=="
,
"dev"
:
true
,
"dev"
:
true
,
"requires"
:
{
"requires"
:
{
"@koa/router"
:
"^10.1.1"
,
"@koa/router"
:
"^10.1.1"
,
"@koishijs/core"
:
"^4.0.0-
alpha.10
"
,
"@koishijs/core"
:
"^4.0.0-
beta.2
"
,
"@koishijs/plugin-cache-lru"
:
"^1.0.0-
alph
a.1"
,
"@koishijs/plugin-cache-lru"
:
"^1.0.0-
bet
a.1"
,
"@koishijs/utils"
:
"^5.0.0-
alpha.6
"
,
"@koishijs/utils"
:
"^5.0.0-
beta.1
"
,
"@types/koa"
:
"*"
,
"@types/koa"
:
"*"
,
"@types/koa__router"
:
"*"
,
"@types/koa__router"
:
"*"
,
"@types/ws"
:
"^7.4.7"
,
"@types/ws"
:
"^7.4.7"
,
"axios"
:
"^0.21.4"
,
"axios"
:
"^0.21.4"
,
"koa"
:
"^2.13.1"
,
"koa"
:
"^2.13.1"
,
"koa-bodyparser"
:
"^4.3.0"
,
"koa-bodyparser"
:
"^4.3.0"
,
"parseurl"
:
"^1.3.3"
,
"path-to-regexp"
:
"^6.2.0"
,
"proxy-agent"
:
"^5.0.0"
"proxy-agent"
:
"^5.0.0"
}
}
},
},
"koishi-utils-schemagen"
:
{
"version"
:
"1.1.7"
,
"resolved"
:
"https://registry.npmjs.org/koishi-utils-schemagen/-/koishi-utils-schemagen-1.1.7.tgz"
,
"integrity"
:
"sha512-0fajhFliGZEUI8/Bt5BqCnvhPw4Aha8ceNxHqpqCE6zwS+9KCkY4WVXGZT1wrtzWxC8WKx8en9LtxerZsJ9TQA=="
,
"dev"
:
true
,
"requires"
:
{
"class-transformer"
:
"^0.4.0"
,
"lodash"
:
"^4.17.21"
}
},
"levn"
:
{
"levn"
:
{
"version"
:
"0.3.0"
,
"version"
:
"0.3.0"
,
"resolved"
:
"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz"
,
"resolved"
:
"https://registry.npmjs.org/levn/-/levn-0.3.0.tgz"
,
...
@@ -6539,8 +6532,7 @@
...
@@ -6539,8 +6532,7 @@
"lodash"
:
{
"lodash"
:
{
"version"
:
"4.17.21"
,
"version"
:
"4.17.21"
,
"resolved"
:
"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
,
"resolved"
:
"https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz"
,
"integrity"
:
"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
,
"integrity"
:
"sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
"dev"
:
true
},
},
"lodash.clonedeep"
:
{
"lodash.clonedeep"
:
{
"version"
:
"4.5.0"
,
"version"
:
"4.5.0"
,
...
@@ -7047,9 +7039,7 @@
...
@@ -7047,9 +7039,7 @@
"reflect-metadata"
:
{
"reflect-metadata"
:
{
"version"
:
"0.1.13"
,
"version"
:
"0.1.13"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz"
,
"resolved"
:
"https://registry.npmjs.org/reflect-metadata/-/reflect-metadata-0.1.13.tgz"
,
"integrity"
:
"sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
,
"integrity"
:
"sha512-Ts1Y/anZELhSsjMcU605fU9RE4Oi3p5ORujwbIKXfWa+0Zxs510Qrmrce5/Jowq3cHSZSJqBjypxmHarc+vEWg=="
"dev"
:
true
,
"peer"
:
true
},
},
"regexpp"
:
{
"regexpp"
:
{
"version"
:
"3.2.0"
,
"version"
:
"3.2.0"
,
...
@@ -7143,6 +7133,21 @@
...
@@ -7143,6 +7133,21 @@
"ajv-keywords"
:
"^3.5.2"
"ajv-keywords"
:
"^3.5.2"
}
}
},
},
"schemastery"
:
{
"version"
:
"1.0.0"
,
"resolved"
:
"https://registry.npmjs.org/schemastery/-/schemastery-1.0.0.tgz"
,
"integrity"
:
"sha512-TwjfFcstdU1rSkV9/dATEk8YFLa1OOxCuGT2mMepZxpMAATQdVm7Fw2tRr4tEsrqAitP+X1/8P5Vv51OUBClAw=="
},
"schemastery-gen"
:
{
"version"
:
"1.0.3"
,
"resolved"
:
"https://registry.npmjs.org/schemastery-gen/-/schemastery-gen-1.0.3.tgz"
,
"integrity"
:
"sha512-qJQS0N5ZOsCsMkv4ZhQYS50j9iIEaizIABC3u/331pY737al2E9rrx77cK5yc/ChZUq+ejm3/eKIgATrpLaCnQ=="
,
"requires"
:
{
"lodash"
:
"^4.17.21"
,
"reflect-metadata"
:
"^0.1.13"
,
"typed-reflector"
:
"^1.0.5"
}
},
"semver"
:
{
"semver"
:
{
"version"
:
"7.3.5"
,
"version"
:
"7.3.5"
,
"resolved"
:
"https://registry.npmjs.org/semver/-/semver-7.3.5.tgz"
,
"resolved"
:
"https://registry.npmjs.org/semver/-/semver-7.3.5.tgz"
,
...
@@ -7491,6 +7496,14 @@
...
@@ -7491,6 +7496,14 @@
"mime-types"
:
"~2.1.24"
"mime-types"
:
"~2.1.24"
}
}
},
},
"typed-reflector"
:
{
"version"
:
"1.0.5"
,
"resolved"
:
"https://registry.npmjs.org/typed-reflector/-/typed-reflector-1.0.5.tgz"
,
"integrity"
:
"sha512-uVXjRyfia44NftErLxahyXgXN2C9GhLtFvVnUxdjwU4fRn0dFI+MbqEKy8oYAMdVkC8xRh8xm3r4w/C1aYZMXg=="
,
"requires"
:
{
"reflect-metadata"
:
"^0.1.13"
}
},
"typescript"
:
{
"typescript"
:
{
"version"
:
"4.4.4"
,
"version"
:
"4.4.4"
,
"resolved"
:
"https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz"
,
"resolved"
:
"https://registry.npmjs.org/typescript/-/typescript-4.4.4.tgz"
,
...
...
package.json
View file @
fa614711
...
@@ -6,7 +6,7 @@
...
@@ -6,7 +6,7 @@
"types"
:
"dist/index.d.ts"
,
"types"
:
"dist/index.d.ts"
,
"scripts"
:
{
"scripts"
:
{
"lint"
:
"eslint --fix ."
,
"lint"
:
"eslint --fix ."
,
"build"
:
"webpack"
"build"
:
"webpack
&& env PACK_ALL=1 webpack
"
},
},
"repository"
:
{
"repository"
:
{
"type"
:
"git"
,
"type"
:
"git"
,
...
@@ -31,24 +31,24 @@
...
@@ -31,24 +31,24 @@
"homepage"
:
"
https://github.com/koishijs/koishi-plugin-cache-memcached
"
,
"homepage"
:
"
https://github.com/koishijs/koishi-plugin-cache-memcached
"
,
"dependencies"
:
{
"dependencies"
:
{
"
@types/memjs
"
:
"
^1.2.3
"
,
"
@types/memjs
"
:
"
^1.2.3
"
,
"
source-map-support
"
:
"
^0.5.20
"
"
schemastery-gen
"
:
"
^1.0.3
"
,
"
source-map-support
"
:
"
^0.5.20
"
,
"
memjs
"
:
"
^1.3.0
"
,
"
moment
"
:
"
^2.29.1
"
,
"
encoded-buffer
"
:
"
^0.2.6
"
},
},
"peerDependencies"
:
{
"peerDependencies"
:
{
"
koishi
"
:
"
^4.0.0-
alpha.10
"
"koishi"
:
"
^4.0.0-
beta-2
"
},
},
"devDependencies"
:
{
"devDependencies"
:
{
"
@types/moment
"
:
"
^2.13.0
"
,
"
@types/moment
"
:
"
^2.13.0
"
,
"
@types/node
"
:
"
^16.11.1
"
,
"
@types/node
"
:
"
^16.11.1
"
,
"
@typescript-eslint/eslint-plugin
"
:
"
^4.33.0
"
,
"
@typescript-eslint/eslint-plugin
"
:
"
^4.33.0
"
,
"
@typescript-eslint/parser
"
:
"
^4.33.0
"
,
"
@typescript-eslint/parser
"
:
"
^4.33.0
"
,
"
encoded-buffer
"
:
"
^0.2.6
"
,
"
eslint
"
:
"
^7.32.0
"
,
"
eslint
"
:
"
^7.32.0
"
,
"
eslint-config-prettier
"
:
"
^8.3.0
"
,
"
eslint-config-prettier
"
:
"
^8.3.0
"
,
"
eslint-plugin-prettier
"
:
"
^3.4.1
"
,
"
eslint-plugin-prettier
"
:
"
^3.4.1
"
,
"
koishi
"
:
"
^4.0.0-alpha.10
"
,
"
koishi
"
:
"
^4.0.0-beta.2
"
,
"
koishi-utils-schemagen
"
:
"
^1.1.7
"
,
"
memjs
"
:
"
^1.3.0
"
,
"
moment
"
:
"
^2.29.1
"
,
"
prettier
"
:
"
^2.4.1
"
,
"
prettier
"
:
"
^2.4.1
"
,
"
raw-loader
"
:
"
^4.0.2
"
,
"
raw-loader
"
:
"
^4.0.2
"
,
"
ts-loader
"
:
"
^9.2.6
"
,
"
ts-loader
"
:
"
^9.2.6
"
,
...
...
src/config.ts
View file @
fa614711
import
'
source-map-support/register
'
;
import
'
source-map-support/register
'
;
import
{
DefineSchema
}
from
'
koishi-utils-schemagen
'
;
import
{
ClientOptions
}
from
'
memjs
'
;
import
{
ClientOptions
}
from
'
memjs
'
;
import
{
RegisterSchema
,
DefineSchema
}
from
'
schemastery-gen
'
;
@
RegisterSchema
()
export
class
MemcachedCachePluginConfig
{
export
class
MemcachedCachePluginConfig
{
@
DefineSchema
({
desc
:
'
Memcached 服务器地址
'
,
default
:
'
localhost:11211
'
})
@
DefineSchema
({
desc
:
'
Memcached 服务器地址
'
,
default
:
'
localhost:11211
'
})
endpoint
:
string
;
endpoint
:
string
;
...
...
src/index.ts
View file @
fa614711
import
'
source-map-support/register
'
;
import
'
source-map-support/register
'
;
import
{
Context
}
from
'
koishi
'
;
import
{
Context
}
from
'
koishi
'
;
import
{
MemcachedCache
,
MemcachedCachePlugin
}
from
'
./plugin
'
;
import
{
MemcachedCache
,
MemcachedCachePlugin
}
from
'
./plugin
'
;
import
{
MemcachedCachePluginConfig
Like
}
from
'
./config
'
;
import
{
MemcachedCachePluginConfig
}
from
'
./config
'
;
export
*
from
'
./config
'
;
export
*
from
'
./config
'
;
export
*
from
'
./plugin
'
;
export
*
from
'
./plugin
'
;
export
const
name
=
'
memcached
'
;
export
const
name
=
'
memcached
'
;
const
plugin
=
new
MemcachedCachePlugin
();
const
plugin
=
new
MemcachedCachePlugin
();
export
const
schema
=
plugin
.
schema
;
export
const
schema
=
plugin
.
schema
;
export
function
apply
(
export
function
apply
(
ctx
:
Context
,
config
:
MemcachedCachePluginConfig
)
{
ctx
:
Context
,
config
:
Partial
<
MemcachedCachePluginConfigLike
>
,
)
{
ctx
.
plugin
(
plugin
,
config
);
ctx
.
plugin
(
plugin
,
config
);
}
}
src/plugin.ts
View file @
fa614711
...
@@ -4,13 +4,14 @@ import {
...
@@ -4,13 +4,14 @@ import {
MemcachedCachePluginConfig
,
MemcachedCachePluginConfig
,
MemcachedCachePluginConfigLike
,
MemcachedCachePluginConfigLike
,
}
from
'
./config
'
;
}
from
'
./config
'
;
import
{
schemaFromClass
,
schemaTransform
}
from
'
koishi-utils-schemagen
'
;
import
{
Client
}
from
'
memjs
'
;
import
{
Client
}
from
'
memjs
'
;
import
{
Moment
}
from
'
moment
'
;
import
{
Moment
}
from
'
moment
'
;
import
moment
from
'
moment
'
;
import
moment
from
'
moment
'
;
import
*
as
EncodeBuffer
from
'
encoded-buffer
'
;
import
*
as
EncodeBuffer
from
'
encoded-buffer
'
;
export
class
MemcachedCache
extends
Cache
{
export
class
MemcachedCache
extends
Cache
{
protected
start
():
void
|
Promise
<
void
>
{}
protected
stop
():
void
|
Promise
<
void
>
{}
private
logger
=
new
Logger
(
'
memcached
'
);
private
logger
=
new
Logger
(
'
memcached
'
);
private
mem
:
Client
;
private
mem
:
Client
;
constructor
(
ctx
:
Context
,
private
config
:
MemcachedCachePluginConfig
)
{
constructor
(
ctx
:
Context
,
private
config
:
MemcachedCachePluginConfig
)
{
...
@@ -148,12 +149,10 @@ export class MemcachedCachePlugin {
...
@@ -148,12 +149,10 @@ export class MemcachedCachePlugin {
private
config
:
MemcachedCachePluginConfig
;
private
config
:
MemcachedCachePluginConfig
;
private
ctx
:
Context
;
private
ctx
:
Context
;
name
=
'
memcached-main
'
;
name
=
'
memcached-main
'
;
schema
:
Schema
<
MemcachedCachePluginConfigLike
>
=
schemaFromClass
(
schema
=
MemcachedCachePluginConfig
;
MemcachedCachePluginConfig
,
apply
(
ctx
:
Context
,
config
:
MemcachedCachePluginConfig
)
{
);
apply
(
ctx
:
Context
,
config
:
MemcachedCachePluginConfigLike
)
{
this
.
ctx
=
ctx
;
this
.
ctx
=
ctx
;
this
.
config
=
schemaTransform
(
MemcachedCachePluginConfig
,
config
)
;
this
.
config
=
config
;
ctx
.
cache
=
new
MemcachedCache
(
ctx
,
this
.
config
);
ctx
.
cache
=
new
MemcachedCache
(
ctx
,
this
.
config
);
}
}
}
}
webpack.config.js
View file @
fa614711
const
path
=
require
(
"
path
"
);
const
path
=
require
(
'
path
'
);
const
packgeInfo
=
require
(
'
./package.json
'
);
function
externalsFromDep
()
{
return
Object
.
fromEntries
(
[
...
Object
.
keys
(
packgeInfo
.
dependencies
||
{}),
...
Object
.
keys
(
packgeInfo
.
peerDependencies
||
{}),
]
.
filter
((
dep
)
=>
dep
!==
'
source-map-support
'
)
.
map
((
dep
)
=>
[
dep
,
dep
]),
);
}
const
packAll
=
!!
process
.
env
.
PACK_ALL
;
module
.
exports
=
{
module
.
exports
=
{
entry
:
"
./src/index.ts
"
,
entry
:
'
./src/index.ts
'
,
mode
:
"
production
"
,
mode
:
'
production
'
,
target
:
"
node
"
,
target
:
'
node
'
,
devtool
:
"
source-map
"
,
devtool
:
'
source-map
'
,
module
:
{
module
:
{
rules
:
[
rules
:
[
{
{
test
:
/
\.
tsx
?
$/
,
test
:
/
\.
tsx
?
$/
,
use
:
"
ts-loader
"
,
use
:
'
ts-loader
'
,
exclude
:
/node_modules/
,
exclude
:
/node_modules/
,
},
},
{
test
:
/
\.
mustache$/
,
use
:
"
raw-loader
"
},
{
test
:
/
\.
mustache$/
,
use
:
'
raw-loader
'
},
],
],
},
},
resolve
:
{
resolve
:
{
extensions
:
[
"
.tsx
"
,
"
.ts
"
,
"
.js
"
],
extensions
:
[
'
.tsx
'
,
'
.ts
'
,
'
.js
'
],
},
},
output
:
{
output
:
{
filename
:
"
index.js
"
,
filename
:
'
index.js
'
,
library
:
{
library
:
{
type
:
"
commonjs
"
,
type
:
'
commonjs
'
,
},
},
path
:
path
.
resolve
(
__dirname
,
"
dist
"
),
path
:
path
.
resolve
(
__dirname
,
packAll
?
'
dist/full
'
:
'
dist
'
),
},
},
externals
:
{
externals
:
{
'
koishi
'
:
'
koishi
'
,
koishi
:
'
koishi
'
,
}
...(
packAll
?
{}
:
externalsFromDep
()),
},
};
};
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment