From f851b0bf1c702373ff4cb2dab59708fc877c0681 Mon Sep 17 00:00:00 2001
From: cKey <35512826+colinin@users.noreply.github.com>
Date: Wed, 16 Sep 2020 11:07:28 +0800
Subject: [PATCH 1/3] Re-reference a valid EventBus component
---
aspnet-core/services/cleanup-logs.bat | 1 +
...AbpIdentityServerAdminHttpApiHostModule.cs | 4 +-
...UN.Abp.IdentityServer4.HttpApi.Host.csproj | 4 +-
.../Program.cs | 2 +-
.../Startup.cs | 2 +-
vueJs/package-lock.json | 6 --
vueJs/package.json | 1 -
vueJs/src/components/EventBus/events.d.ts | 21 +++++
vueJs/src/components/EventBus/index.d.ts | 10 +++
vueJs/src/components/EventBus/index.js | 83 +++++++++++++++++++
vueJs/src/components/EventBus/vue.d.ts | 7 ++
vueJs/src/components/Notification/index.vue | 9 +-
vueJs/src/main.ts | 2 +-
vueJs/src/mixins/DataListMiXin.ts | 8 +-
vueJs/src/mixins/EventBusMiXin.ts | 59 +++++++++++++
vueJs/src/utils/request.ts | 40 +++++----
16 files changed, 220 insertions(+), 39 deletions(-)
create mode 100644 vueJs/src/components/EventBus/events.d.ts
create mode 100644 vueJs/src/components/EventBus/index.d.ts
create mode 100644 vueJs/src/components/EventBus/index.js
create mode 100644 vueJs/src/components/EventBus/vue.d.ts
create mode 100644 vueJs/src/mixins/EventBusMiXin.ts
diff --git a/aspnet-core/services/cleanup-logs.bat b/aspnet-core/services/cleanup-logs.bat
index 74f137b75..dfeccae34 100644
--- a/aspnet-core/services/cleanup-logs.bat
+++ b/aspnet-core/services/cleanup-logs.bat
@@ -8,6 +8,7 @@ del .\platform\LINGYUN.Platform.HttpApi.Host\Logs /Q
del .\apigateway\LINGYUN.ApiGateway.Host\Logs /Q
del .\apigateway\LINGYUN.ApiGateway.HttpApi.Host\Logs /Q
del .\account\AuthServer.Host\Logs /Q
+del .\identity-server\LINGYUN.Abp.IdentityServer4.HttpApi.Host\Logs /Q
del .\messages\LINGYUN.Abp.MessageService.HttpApi.Host\Logs /Q
del .\admin\LINGYUN.Abp.BackendAdmin.HttpApi.Host\Logs /Q
diff --git a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/AbpIdentityServerAdminHttpApiHostModule.cs b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/AbpIdentityServerAdminHttpApiHostModule.cs
index b79432c67..651b2a8c4 100644
--- a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/AbpIdentityServerAdminHttpApiHostModule.cs
+++ b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/AbpIdentityServerAdminHttpApiHostModule.cs
@@ -1,4 +1,4 @@
-using DotNetCore.CAP;
+using DotNetCore.CAP;
using IdentityModel;
using LINGYUN.Abp.EventBus.CAP;
using LINGYUN.Abp.ExceptionHandling;
@@ -267,4 +267,4 @@ namespace LINGYUN.Abp.IdentityServer4
app.UseConfiguredEndpoints();
}
}
-}
+}
\ No newline at end of file
diff --git a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/LINGYUN.Abp.IdentityServer4.HttpApi.Host.csproj b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/LINGYUN.Abp.IdentityServer4.HttpApi.Host.csproj
index 8de7ac6b4..b55623fe4 100644
--- a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/LINGYUN.Abp.IdentityServer4.HttpApi.Host.csproj
+++ b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/LINGYUN.Abp.IdentityServer4.HttpApi.Host.csproj
@@ -1,4 +1,4 @@
-
+
netcoreapp3.1
@@ -61,4 +61,4 @@
-
+
\ No newline at end of file
diff --git a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Program.cs b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Program.cs
index 73223e247..454c84767 100644
--- a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Program.cs
+++ b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Program.cs
@@ -46,4 +46,4 @@ namespace LINGYUN.Abp.IdentityServer4.HttpApi.Host
.UseSerilog()
.UseAutofac();
}
-}
+}
\ No newline at end of file
diff --git a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Startup.cs b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Startup.cs
index 15c1915db..bd45bfb5c 100644
--- a/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Startup.cs
+++ b/aspnet-core/services/identity-server/LINGYUN.Abp.IdentityServer4.HttpApi.Host/Startup.cs
@@ -15,4 +15,4 @@ namespace LINGYUN.Abp.IdentityServer4.HttpApi.Host
app.InitializeApplication();
}
}
-}
+}
\ No newline at end of file
diff --git a/vueJs/package-lock.json b/vueJs/package-lock.json
index ba0978c00..be3cf43d6 100644
--- a/vueJs/package-lock.json
+++ b/vueJs/package-lock.json
@@ -21314,12 +21314,6 @@
}
}
},
- "vue-events": {
- "version": "3.1.0",
- "resolved": "https://registry.npm.taobao.org/vue-events/download/vue-events-3.1.0.tgz",
- "integrity": "sha1-jiMSHDRbT/Mu4FT5eVmV8+NEsn0=",
- "dev": true
- },
"vue-hot-reload-api": {
"version": "2.3.4",
"resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz",
diff --git a/vueJs/package.json b/vueJs/package.json
index e17da4654..e5f50de33 100644
--- a/vueJs/package.json
+++ b/vueJs/package.json
@@ -117,7 +117,6 @@
"typescript": "^3.8.3",
"vue-cli-plugin-element": "^1.0.1",
"vue-cli-plugin-style-resources-loader": "^0.1.4",
- "vue-events": "^3.1.0",
"vue-template-compiler": "^2.6.11",
"vue-virtual-scroll-list": "^2.1.8",
"webpack": "^4.42.1"
diff --git a/vueJs/src/components/EventBus/events.d.ts b/vueJs/src/components/EventBus/events.d.ts
new file mode 100644
index 000000000..11416484f
--- /dev/null
+++ b/vueJs/src/components/EventBus/events.d.ts
@@ -0,0 +1,21 @@
+import { PluginFunction } from 'vue'
+
+export declare class VueEvents {
+ static install: PluginFunction
+
+ emit(event: string, ...args: any[]): void
+
+ fire(event: string, ...args: any[]): void
+
+ on(event: string, callback: (eventData: any) => void): void
+
+ listen(event: string, callback: (eventData: any) => void): void
+
+ once(event: string, callback: (eventData: any) => void): void
+
+ off(event:string, callback?: (eventData: any) => void): void
+
+ unlisten (event:string, callback?: (eventData: any) => void): void
+
+ removeAll(): void
+}
diff --git a/vueJs/src/components/EventBus/index.d.ts b/vueJs/src/components/EventBus/index.d.ts
new file mode 100644
index 000000000..551d2eac4
--- /dev/null
+++ b/vueJs/src/components/EventBus/index.d.ts
@@ -0,0 +1,10 @@
+import './vue';
+import * as E from './events'
+
+declare namespace VueEvents {
+ export type VueEvents = E.VueEvents;
+}
+
+declare class VueEvents extends E.VueEvents {}
+
+export default VueEvents
diff --git a/vueJs/src/components/EventBus/index.js b/vueJs/src/components/EventBus/index.js
new file mode 100644
index 000000000..2efeb3976
--- /dev/null
+++ b/vueJs/src/components/EventBus/index.js
@@ -0,0 +1,83 @@
+/**
+ * vue-event-handler typescript adapter
+ * src: https://github.com/sandeepk01/vue-event-handler
+ * reference: https://github.com/cklmercer/vue-events
+ */
+
+function plugin(Vue) {
+ if (plugin.installed) {
+ return
+ }
+ const evmap = {}
+ const events = new Vue({
+ methods: {
+ fire(name, data = null) {
+ this.emit(name, data)
+ },
+ emit(name, data = null) {
+ this.$emit(name, data)
+ },
+ listen(name, cb) {
+ this.on(name, cb)
+ },
+ listenOnce(name, cb) {
+ this.once(name, cb)
+ },
+ on(name, cb) {
+ evmap[name] = cb
+ this.$on(name, cb)
+ },
+ once(name, cb) {
+ evmap[name] = cb
+ this.$once(name, cb)
+ },
+ off(name, cb) {
+ if (!cb) {
+ cb = evmap[name]
+ }
+ this.$off(name, cb)
+ },
+ unlisten(name, cb) {
+ this.off(name, cb)
+ },
+ removeAll() {
+ this.$off()
+ }
+ }
+ })
+
+ Vue.mixin({
+ beforeCreate() {
+ if (typeof this.$options.events !== 'object') return
+ let eventMap = {}
+ for (const key in this.$options.events) {
+ eventMap[key] = this.$options.events[key].bind(this)
+ }
+ this.$once('hook:beforeMount', () => {
+ for (const key in eventMap) {
+ events.$on(key, eventMap[key])
+ }
+ })
+ this.$once('hook:beforeDestroy', () => {
+ for (const key in eventMap) {
+ events.$off(key, eventMap[key])
+ }
+ eventMap = null
+ })
+ }
+ })
+
+ Vue.events = events
+
+ Object.defineProperty(Vue.prototype, '$events', {
+ get() {
+ return events
+ }
+ })
+}
+
+if (typeof window !== 'undefined' && window.Vue) {
+ window.Vue.use(plugin)
+}
+
+export default plugin
diff --git a/vueJs/src/components/EventBus/vue.d.ts b/vueJs/src/components/EventBus/vue.d.ts
new file mode 100644
index 000000000..47d0a9f40
--- /dev/null
+++ b/vueJs/src/components/EventBus/vue.d.ts
@@ -0,0 +1,7 @@
+import VueEvents from './index';
+
+declare module 'vue/types/vue' {
+ interface Vue {
+ $events: VueEvents
+ }
+}
diff --git a/vueJs/src/components/Notification/index.vue b/vueJs/src/components/Notification/index.vue
index 37d4f5756..09339c7c9 100644
--- a/vueJs/src/components/Notification/index.vue
+++ b/vueJs/src/components/Notification/index.vue
@@ -33,7 +33,8 @@