@@ -12,8 +12,10 @@ export default async function buildTypes() {
12
12
elapsed . start ( 'types' ) ;
13
13
let coreEventsReact = '' ;
14
14
let coreEventsVue = '' ;
15
+ let coreEventsElement = '' ;
15
16
let modulesEventsReact = '' ;
16
17
let modulesEventsVue = '' ;
18
+ let modulesEventsElement = '' ;
17
19
18
20
const replaceInstances = ( content ) => {
19
21
return content
@@ -29,6 +31,14 @@ export default async function buildTypes() {
29
31
coreEventsContent = coreEventsContent
30
32
. split ( '// CORE_EVENTS_START' ) [ 1 ]
31
33
. split ( '// CORE_EVENTS_END' ) [ 0 ] ;
34
+ coreEventsElement = replaceInstances (
35
+ coreEventsContent . replace ( / ( [ a - z A - Z _ ? ] * ) : ( [ ^ ; ] * ) ; / g, ( string , name ) => {
36
+ if ( name . includes ( '_' ) ) {
37
+ return '' ;
38
+ }
39
+ return ` ${ name . toLowerCase ( ) } : CustomEvent;` ;
40
+ } ) ,
41
+ ) ;
32
42
coreEventsReact = replaceInstances (
33
43
coreEventsContent . replace ( / ( [ a - z A - Z ] * ) : \( / g, ( string , name ) => {
34
44
return ` on${ name [ 0 ] . toUpperCase ( ) } ${ name . substr ( 1 ) } ?: (` ;
@@ -50,6 +60,11 @@ export default async function buildTypes() {
50
60
let eventsContent = await fs . readFile ( eventsFile , 'utf-8' ) ;
51
61
eventsContent = eventsContent . split ( 'Events {' ) [ 1 ] . split ( '}' ) [ 0 ] . trim ( ) ;
52
62
if ( eventsContent . length ) {
63
+ modulesEventsElement += replaceInstances (
64
+ eventsContent . replace ( / ( [ a - z A - Z ] * ) : ( [ ^ ; ] * ) ; / g, ( string , name ) => {
65
+ return ` ${ name . toLowerCase ( ) } : CustomEvent;` ;
66
+ } ) ,
67
+ ) ;
53
68
modulesEventsReact += replaceInstances (
54
69
eventsContent . replace ( / ( [ a - z A - Z ] * ) : \( / g, ( string , name ) => {
55
70
return ` on${ name [ 0 ] . toUpperCase ( ) } ${ name . substr ( 1 ) } ?: (` ;
@@ -86,7 +101,7 @@ export default async function buildTypes() {
86
101
return fs . writeFile ( destPath , content ) ;
87
102
} ;
88
103
if ( file . includes ( 'swiper-element.d.ts' ) ) {
89
- return processTypingFile ( '' , '' ) ;
104
+ return processTypingFile ( coreEventsElement , modulesEventsElement ) ;
90
105
}
91
106
if ( file . includes ( 'swiper-react.d.ts' ) ) {
92
107
return processTypingFile ( coreEventsReact , modulesEventsReact ) ;
0 commit comments