File tree Expand file tree Collapse file tree 4 files changed +21
-3
lines changed
Expand file tree Collapse file tree 4 files changed +21
-3
lines changed Original file line number Diff line number Diff line change 88 "scripts" : {
99 "test" : " jest" ,
1010 "build" : " rm -rf dist && tsc && lessc src/index.less dist/index.css" ,
11- "example" : " npm run build && cp dist/* example" ,
11+ "example" : " esbuild ./src/index.ts --bundle --outdir=example --format=esm && lessc src/index.less example/index.css " ,
1212 "prepublishOnly" : " npm run build && np --no-publish" ,
1313 "gh-pages" : " npm run example && gh-pages -d example"
1414 },
2929 "@babel/preset-typescript" : " ^7.13.0" ,
3030 "@types/jest" : " ^26.0.23" ,
3131 "babel-jest" : " ^26.6.3" ,
32+ "esbuild" : " ^0.11.20" ,
3233 "gh-pages" : " ^3.1.0" ,
3334 "jest" : " ^26.6.3" ,
3435 "less" : " ^4.1.1" ,
3536 "typescript" : " ^4.2.4"
37+ },
38+ "dependencies" : {
39+ "wave-effect" : " ^1.0.0"
3640 }
3741}
Original file line number Diff line number Diff line change 1+ // lessc don't support ~
2+ @import ' wave-effect/src/wave.less' ;
3+
14/* *
25 Copy from Ant Design
36 https://github.com/ant-design/ant-design/blob/master/components/switch/style/index.less
Original file line number Diff line number Diff line change 1+ import wave , { clearEffect } from 'wave-effect'
2+
13interface ExtendOptions {
24 prefixCls ?: string
35 role ?: string
@@ -71,11 +73,13 @@ const extend = (options: ExtendOptions) => {
7173
7274 const createSwitch = < T extends HTMLElement > ( element : T , values ?: Partial < SwitchValues > ) => {
7375 const buttonEle = element
76+ buttonEle . innerHTML = ''
77+
7478 const handleEle = document . createElement ( 'div' )
7579 const textEle = document . createElement ( 'span' )
7680 const loadingEle = document . createElement ( 'span' )
7781
78- buttonEle . className = classWithPrefix ( 'switch' )
82+ buttonEle . classList . add ( classWithPrefix ( 'switch' ) )
7983 if ( small ) {
8084 buttonEle . classList . add ( classWithPrefix ( 'switch-small' ) )
8185 }
@@ -135,12 +139,18 @@ const extend = (options: ExtendOptions) => {
135139
136140 buttonEle . addEventListener ( 'click' , internalClickEvent )
137141
142+ wave ( buttonEle , {
143+ disabledClass : [ 'loading' , 'disabled' ] ,
144+ } )
145+
138146 return proxyValues
139147 }
140148 return createSwitch
141149}
142150
143151const deleteSwitch = < T extends HTMLElement > ( element : HTMLElement ) => {
152+ clearEffect ( element )
153+
144154 element . innerHTML = ''
145155 element . className = ''
146156 element . removeAttribute ( 'role' )
Original file line number Diff line number Diff line change 11{
22 "compilerOptions" : {
33 "target" : " ES2015" ,
4- "module" : " ES2015 " ,
4+ "module" : " commonjs " ,
55 "outDir" : " ./dist" ,
66 "strict" : true ,
77 "esModuleInterop" : true ,
88 "declaration" : true ,
99 "skipLibCheck" : true ,
10+ "moduleResolution" : " node" ,
1011 "forceConsistentCasingInFileNames" : true
1112 },
1213 "exclude" : [" */test.ts" ]
You can’t perform that action at this time.
0 commit comments