@slickgrid-universal/event-pub-sub 9.13.0 → 10.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/README.md +0 -1
- package/dist/eventPubSub.service.d.ts +1 -1
- package/dist/eventPubSub.service.d.ts.map +1 -1
- package/dist/eventPubSub.service.js +9 -9
- package/dist/eventPubSub.service.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +1 -1
- package/dist/types/eventNamingStyle.type.d.ts +12 -0
- package/dist/types/eventNamingStyle.type.d.ts.map +1 -0
- package/dist/types/eventNamingStyle.type.js +2 -0
- package/dist/types/eventNamingStyle.type.js.map +1 -0
- package/package.json +3 -3
- package/src/eventPubSub.service.ts +9 -9
- package/src/index.ts +1 -1
- package/src/types/{eventNamingStyle.enum.ts → eventNamingStyle.type.ts} +6 -7
- package/dist/types/eventNamingStyle.enum.d.ts +0 -13
- package/dist/types/eventNamingStyle.enum.d.ts.map +0 -1
- package/dist/types/eventNamingStyle.enum.js +0 -14
- package/dist/types/eventNamingStyle.enum.js.map +0 -1
package/README.md
CHANGED
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
[](https://github.com/ghiscoding/lerna-lite)
|
|
4
4
|
[](https://www.npmjs.com/package/@slickgrid-universal/event-pub-sub)
|
|
5
5
|
[](https://www.npmjs.com/package/@slickgrid-universal/event-pub-sub)
|
|
6
|
-
[](https://bundlephobia.com/result?p=@slickgrid-universal/event-pub-sub)
|
|
7
6
|
|
|
8
7
|
## Event PubSub Service
|
|
9
8
|
#### @slickgrid-universal/event-pub-sub
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { type BasePubSubService } from './types/basePubSubService.interface.js';
|
|
2
|
-
import { EventNamingStyle } from './types/eventNamingStyle.
|
|
2
|
+
import { type EventNamingStyle } from './types/eventNamingStyle.type.js';
|
|
3
3
|
import { type EventSubscription, type Subscription } from './types/eventSubscription.interface.js';
|
|
4
4
|
export interface PubSubEvent<T = any> {
|
|
5
5
|
name: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventPubSub.service.d.ts","sourceRoot":"","sources":["../src/eventPubSub.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"eventPubSub.service.d.ts","sourceRoot":"","sources":["../src/eventPubSub.service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,wCAAwC,CAAC;AAChF,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,KAAK,iBAAiB,EAAE,KAAK,YAAY,EAAE,MAAM,wCAAwC,CAAC;AAEnG,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;CACnD;AAED,qBAAa,kBAAmB,YAAW,iBAAiB;IAC1D,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC;IAClC,SAAS,CAAC,iBAAiB,EAAE,WAAW,EAAE,CAAM;IAChD,SAAS,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC;IAEvB,gBAAgB,EAAE,gBAAgB,CAAe;IAEjD,IAAI,aAAa,IAAI,OAAO,CAE3B;IACD,IAAI,aAAa,CAAC,OAAO,EAAE,OAAO,EAEjC;IAED,IAAI,gBAAgB,IAAI,WAAW,EAAE,CAEpC;IAED,IAAI,oBAAoB,IAAI,MAAM,EAAE,CAEnC;gBAEW,aAAa,CAAC,EAAE,OAAO;IAMnC,OAAO,IAAI,IAAI;IAQf;;;;;;;;OAQG;IACH,mBAAmB,CAAC,CAAC,GAAG,GAAG,EACzB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,CAAC,EACR,UAAU,UAAO,EACjB,YAAY,UAAO,EACnB,wBAAwB,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,GAC5C,OAAO;IAYV;;;;;OAKG;IACH,8BAA8B,CAAC,cAAc,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM;IAyBvF;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,wBAAwB,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,KAAK,IAAI,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAgBxI;;;;;OAKG;IACH,SAAS,CAAC,CAAC,GAAG,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,IAAI,GAAG,YAAY;IAoB5F;;;;;;OAMG;IACH,cAAc,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,YAAY;IAWvG;;;;;;OAMG;IACH,WAAW,CAAC,CAAC,GAAG,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,yBAAyB,UAAO,GAAG,IAAI;IAQlI,kEAAkE;IAClE,cAAc,CAAC,aAAa,CAAC,EAAE,iBAAiB,EAAE,GAAG,IAAI;IAwBzD,SAAS,CAAC,8BAA8B,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,KAAK,IAAI,GAAG,IAAI;CAMxH"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { titleCase, toKebabCase } from '@slickgrid-universal/utils';
|
|
2
2
|
import {} from './types/basePubSubService.interface.js';
|
|
3
|
-
import {
|
|
3
|
+
import {} from './types/eventNamingStyle.type.js';
|
|
4
4
|
import {} from './types/eventSubscription.interface.js';
|
|
5
5
|
export class EventPubSubService {
|
|
6
6
|
get elementSource() {
|
|
@@ -17,7 +17,7 @@ export class EventPubSubService {
|
|
|
17
17
|
}
|
|
18
18
|
constructor(elementSource) {
|
|
19
19
|
this._subscribedEvents = [];
|
|
20
|
-
this.eventNamingStyle =
|
|
20
|
+
this.eventNamingStyle = 'camelCase';
|
|
21
21
|
// use the provided element
|
|
22
22
|
// or create a "phantom DOM node" (a div element that is never rendered) to set up a custom event dispatching
|
|
23
23
|
this._elementSource = elementSource || document.createElement('div');
|
|
@@ -58,19 +58,19 @@ export class EventPubSubService {
|
|
|
58
58
|
getEventNameByNamingConvention(inputEventName, eventNamePrefix) {
|
|
59
59
|
let outputEventName = inputEventName;
|
|
60
60
|
switch (this.eventNamingStyle) {
|
|
61
|
-
case
|
|
62
|
-
case
|
|
63
|
-
if (this.eventNamingStyle ===
|
|
61
|
+
case 'camelCase':
|
|
62
|
+
case 'camelCaseWithExtraOnPrefix':
|
|
63
|
+
if (this.eventNamingStyle === 'camelCaseWithExtraOnPrefix') {
|
|
64
64
|
outputEventName = `${eventNamePrefix}${inputEventName.replace(/^on/, 'onOn')}`;
|
|
65
65
|
}
|
|
66
66
|
outputEventName = eventNamePrefix !== '' ? `${eventNamePrefix}${titleCase(outputEventName)}` : outputEventName;
|
|
67
67
|
break;
|
|
68
|
-
case
|
|
68
|
+
case 'kebabCase':
|
|
69
69
|
outputEventName = eventNamePrefix !== '' ? `${eventNamePrefix}-${toKebabCase(outputEventName)}` : toKebabCase(outputEventName);
|
|
70
70
|
break;
|
|
71
|
-
case
|
|
72
|
-
case
|
|
73
|
-
if (this.eventNamingStyle ===
|
|
71
|
+
case 'lowerCase':
|
|
72
|
+
case 'lowerCaseWithoutOnPrefix':
|
|
73
|
+
if (this.eventNamingStyle === 'lowerCaseWithoutOnPrefix') {
|
|
74
74
|
outputEventName = `${eventNamePrefix}${inputEventName.replace(/^on/, '')}`;
|
|
75
75
|
}
|
|
76
76
|
outputEventName = `${eventNamePrefix}${outputEventName}`.toLowerCase();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"eventPubSub.service.js","sourceRoot":"","sources":["../src/eventPubSub.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,EAA0B,MAAM,wCAAwC,CAAC;AAChF,OAAO,
|
|
1
|
+
{"version":3,"file":"eventPubSub.service.js","sourceRoot":"","sources":["../src/eventPubSub.service.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export * from './eventPubSub.service.js';
|
|
2
2
|
export type * from './types/basePubSubService.interface.js';
|
|
3
|
-
export * from './types/eventNamingStyle.
|
|
3
|
+
export * from './types/eventNamingStyle.type.js';
|
|
4
4
|
export type * from './types/eventSubscription.interface.js';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.js
CHANGED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type EventNamingStyle =
|
|
2
|
+
/** Event name showing in Camel Case, so "onValidationError" would stay as "onValidationError" (i.e. Angular) */
|
|
3
|
+
'camelCase'
|
|
4
|
+
/** Event name showing in Camel Case but with an extra (duplicate) "on" prefix, so "onValidationError" would become "onOnValidationError" (i.e. Slickgrid-Vue). */
|
|
5
|
+
| 'camelCaseWithExtraOnPrefix'
|
|
6
|
+
/** Event name showing in Kebab Case, so "onValidationError" would become "on-validation-error" (i.e. Aurelia-Slickgrid) */
|
|
7
|
+
| 'kebabCase'
|
|
8
|
+
/** Event name showing all in lowercase, so "onValidationError" would become "onvalidationerror" */
|
|
9
|
+
| 'lowerCase'
|
|
10
|
+
/** Event name showing all in lowercase but without the "on" prefix, so "onValidationError" would be "validationerror" (i.e. Salesforce). */
|
|
11
|
+
| 'lowerCaseWithoutOnPrefix';
|
|
12
|
+
//# sourceMappingURL=eventNamingStyle.type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventNamingStyle.type.d.ts","sourceRoot":"","sources":["../../src/types/eventNamingStyle.type.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB;AAC1B,gHAAgH;AAC9G,WAAW;AAEb,kKAAkK;GAChK,4BAA4B;AAE9B,2HAA2H;GACzH,WAAW;AAEb,mGAAmG;GACjG,WAAW;AAEb,4IAA4I;GAC1I,0BAA0B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"eventNamingStyle.type.js","sourceRoot":"","sources":["../../src/types/eventNamingStyle.type.ts"],"names":[],"mappings":""}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@slickgrid-universal/event-pub-sub",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "10.0.0",
|
|
4
4
|
"description": "Simple Vanilla Implementation of an Event PubSub Service to do simply publish/subscribe inter-communication while optionally providing data in the event",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -31,7 +31,7 @@
|
|
|
31
31
|
"url": "https://github.com/ghiscoding/slickgrid-universal/issues"
|
|
32
32
|
},
|
|
33
33
|
"dependencies": {
|
|
34
|
-
"@slickgrid-universal/utils": "
|
|
34
|
+
"@slickgrid-universal/utils": "10.0.0"
|
|
35
35
|
},
|
|
36
|
-
"gitHead": "
|
|
36
|
+
"gitHead": "2da6d300a326e4fffe97c0240e0c311cc1dde2cd"
|
|
37
37
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { titleCase, toKebabCase } from '@slickgrid-universal/utils';
|
|
2
2
|
import { type BasePubSubService } from './types/basePubSubService.interface.js';
|
|
3
|
-
import { EventNamingStyle } from './types/eventNamingStyle.
|
|
3
|
+
import { type EventNamingStyle } from './types/eventNamingStyle.type.js';
|
|
4
4
|
import { type EventSubscription, type Subscription } from './types/eventSubscription.interface.js';
|
|
5
5
|
|
|
6
6
|
export interface PubSubEvent<T = any> {
|
|
@@ -13,7 +13,7 @@ export class EventPubSubService implements BasePubSubService {
|
|
|
13
13
|
protected _subscribedEvents: PubSubEvent[] = [];
|
|
14
14
|
protected _timer?: any;
|
|
15
15
|
|
|
16
|
-
eventNamingStyle: EventNamingStyle =
|
|
16
|
+
eventNamingStyle: EventNamingStyle = 'camelCase';
|
|
17
17
|
|
|
18
18
|
get elementSource(): Element {
|
|
19
19
|
return this._elementSource;
|
|
@@ -81,19 +81,19 @@ export class EventPubSubService implements BasePubSubService {
|
|
|
81
81
|
let outputEventName = inputEventName;
|
|
82
82
|
|
|
83
83
|
switch (this.eventNamingStyle) {
|
|
84
|
-
case
|
|
85
|
-
case
|
|
86
|
-
if (this.eventNamingStyle ===
|
|
84
|
+
case 'camelCase':
|
|
85
|
+
case 'camelCaseWithExtraOnPrefix':
|
|
86
|
+
if (this.eventNamingStyle === 'camelCaseWithExtraOnPrefix') {
|
|
87
87
|
outputEventName = `${eventNamePrefix}${inputEventName.replace(/^on/, 'onOn')}`;
|
|
88
88
|
}
|
|
89
89
|
outputEventName = eventNamePrefix !== '' ? `${eventNamePrefix}${titleCase(outputEventName)}` : outputEventName;
|
|
90
90
|
break;
|
|
91
|
-
case
|
|
91
|
+
case 'kebabCase':
|
|
92
92
|
outputEventName = eventNamePrefix !== '' ? `${eventNamePrefix}-${toKebabCase(outputEventName)}` : toKebabCase(outputEventName);
|
|
93
93
|
break;
|
|
94
|
-
case
|
|
95
|
-
case
|
|
96
|
-
if (this.eventNamingStyle ===
|
|
94
|
+
case 'lowerCase':
|
|
95
|
+
case 'lowerCaseWithoutOnPrefix':
|
|
96
|
+
if (this.eventNamingStyle === 'lowerCaseWithoutOnPrefix') {
|
|
97
97
|
outputEventName = `${eventNamePrefix}${inputEventName.replace(/^on/, '')}`;
|
|
98
98
|
}
|
|
99
99
|
outputEventName = `${eventNamePrefix}${outputEventName}`.toLowerCase();
|
package/src/index.ts
CHANGED
|
@@ -1,16 +1,15 @@
|
|
|
1
|
-
export
|
|
1
|
+
export type EventNamingStyle =
|
|
2
2
|
/** Event name showing in Camel Case, so "onValidationError" would stay as "onValidationError" (i.e. Angular) */
|
|
3
|
-
|
|
3
|
+
| 'camelCase'
|
|
4
4
|
|
|
5
5
|
/** Event name showing in Camel Case but with an extra (duplicate) "on" prefix, so "onValidationError" would become "onOnValidationError" (i.e. Slickgrid-Vue). */
|
|
6
|
-
|
|
6
|
+
| 'camelCaseWithExtraOnPrefix'
|
|
7
7
|
|
|
8
8
|
/** Event name showing in Kebab Case, so "onValidationError" would become "on-validation-error" (i.e. Aurelia-Slickgrid) */
|
|
9
|
-
|
|
9
|
+
| 'kebabCase'
|
|
10
10
|
|
|
11
11
|
/** Event name showing all in lowercase, so "onValidationError" would become "onvalidationerror" */
|
|
12
|
-
|
|
12
|
+
| 'lowerCase'
|
|
13
13
|
|
|
14
14
|
/** Event name showing all in lowercase but without the "on" prefix, so "onValidationError" would be "validationerror" (i.e. Salesforce). */
|
|
15
|
-
|
|
16
|
-
}
|
|
15
|
+
| 'lowerCaseWithoutOnPrefix';
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
export declare enum EventNamingStyle {
|
|
2
|
-
/** Event name showing in Camel Case, so "onValidationError" would stay as "onValidationError" (i.e. Angular) */
|
|
3
|
-
camelCase = "camelCase",
|
|
4
|
-
/** Event name showing in Camel Case but with an extra (duplicate) "on" prefix, so "onValidationError" would become "onOnValidationError" (i.e. Slickgrid-Vue). */
|
|
5
|
-
camelCaseWithExtraOnPrefix = "camelCaseWithExtraOnPrefix",
|
|
6
|
-
/** Event name showing in Kebab Case, so "onValidationError" would become "on-validation-error" (i.e. Aurelia-Slickgrid) */
|
|
7
|
-
kebabCase = "kebabCase",
|
|
8
|
-
/** Event name showing all in lowercase, so "onValidationError" would become "onvalidationerror" */
|
|
9
|
-
lowerCase = "lowerCase",
|
|
10
|
-
/** Event name showing all in lowercase but without the "on" prefix, so "onValidationError" would be "validationerror" (i.e. Salesforce). */
|
|
11
|
-
lowerCaseWithoutOnPrefix = "lowerCaseWithoutOnPrefix"
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=eventNamingStyle.enum.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eventNamingStyle.enum.d.ts","sourceRoot":"","sources":["../../src/types/eventNamingStyle.enum.ts"],"names":[],"mappings":"AAAA,oBAAY,gBAAgB;IAC1B,gHAAgH;IAChH,SAAS,cAAc;IAEvB,kKAAkK;IAClK,0BAA0B,+BAA+B;IAEzD,2HAA2H;IAC3H,SAAS,cAAc;IAEvB,mGAAmG;IACnG,SAAS,cAAc;IAEvB,4IAA4I;IAC5I,wBAAwB,6BAA6B;CACtD"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export var EventNamingStyle;
|
|
2
|
-
(function (EventNamingStyle) {
|
|
3
|
-
/** Event name showing in Camel Case, so "onValidationError" would stay as "onValidationError" (i.e. Angular) */
|
|
4
|
-
EventNamingStyle["camelCase"] = "camelCase";
|
|
5
|
-
/** Event name showing in Camel Case but with an extra (duplicate) "on" prefix, so "onValidationError" would become "onOnValidationError" (i.e. Slickgrid-Vue). */
|
|
6
|
-
EventNamingStyle["camelCaseWithExtraOnPrefix"] = "camelCaseWithExtraOnPrefix";
|
|
7
|
-
/** Event name showing in Kebab Case, so "onValidationError" would become "on-validation-error" (i.e. Aurelia-Slickgrid) */
|
|
8
|
-
EventNamingStyle["kebabCase"] = "kebabCase";
|
|
9
|
-
/** Event name showing all in lowercase, so "onValidationError" would become "onvalidationerror" */
|
|
10
|
-
EventNamingStyle["lowerCase"] = "lowerCase";
|
|
11
|
-
/** Event name showing all in lowercase but without the "on" prefix, so "onValidationError" would be "validationerror" (i.e. Salesforce). */
|
|
12
|
-
EventNamingStyle["lowerCaseWithoutOnPrefix"] = "lowerCaseWithoutOnPrefix";
|
|
13
|
-
})(EventNamingStyle || (EventNamingStyle = {}));
|
|
14
|
-
//# sourceMappingURL=eventNamingStyle.enum.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"eventNamingStyle.enum.js","sourceRoot":"","sources":["../../src/types/eventNamingStyle.enum.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,gBAeX;AAfD,WAAY,gBAAgB;IAC1B,gHAAgH;IAChH,2CAAuB,CAAA;IAEvB,kKAAkK;IAClK,6EAAyD,CAAA;IAEzD,2HAA2H;IAC3H,2CAAuB,CAAA;IAEvB,mGAAmG;IACnG,2CAAuB,CAAA;IAEvB,4IAA4I;IAC5I,yEAAqD,CAAA;AACvD,CAAC,EAfW,gBAAgB,KAAhB,gBAAgB,QAe3B"}
|