File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -10,7 +10,10 @@ interface CustomElement {
1010 * Example: HelloController => hello-controller
1111 */
1212export function register ( classObject : CustomElement ) : void {
13- const name = classObject . name . replace ( / ( [ a - z A - Z ] ) (? = [ A - Z ] ) / g, '$1-' ) . toLowerCase ( )
13+ const name = classObject . name
14+ . replace ( / ( [ a - z A - Z ] ) (? = [ A - Z ] ) / g, '$1-' )
15+ . replace ( / - E l e m e n t $ / , '' )
16+ . toLowerCase ( )
1417 if ( ! window . customElements . get ( name ) ) {
1518 // eslint-disable-next-line @typescript-eslint/ban-ts-comment
1619 // @ts -ignore
Original file line number Diff line number Diff line change @@ -27,4 +27,10 @@ describe('register', () => {
2727 ThisIsAnExampleOfADasherisedClassName
2828 )
2929 } )
30+
31+ it ( 'automatically drops the `Element` suffix' , ( ) => {
32+ class ASuffixedElement { }
33+ register ( ASuffixedElement )
34+ expect ( window . customElements . get ( 'a-suffixed' ) ) . to . equal ( ASuffixedElement )
35+ } )
3036} )
You can’t perform that action at this time.
0 commit comments