@@ -5,7 +5,14 @@ const nsWebpack = require('@nativescript/webpack');
55const CopyWebpackPlugin = require ( 'copy-webpack-plugin' ) ;
66const ForkTsCheckerWebpackPlugin = require ( 'fork-ts-checker-webpack-plugin' ) ;
77const NsVueTemplateCompiler = require ( 'nativescript-vue-template-compiler' ) ;
8-
8+ function fixedFromCharCode ( codePt ) {
9+ if ( codePt > 0xffff ) {
10+ codePt -= 0x10000 ;
11+ return String . fromCharCode ( 0xd800 + ( codePt >> 10 ) , 0xdc00 + ( codePt & 0x3ff ) ) ;
12+ } else {
13+ return String . fromCharCode ( codePt ) ;
14+ }
15+ }
916// temporary hack to support v-model using ns-vue-template-compiler
1017// See https://github.com/nativescript-vue/nativescript-vue/issues/371
1118NsVueTemplateCompiler . registerElement ( 'MDTextField' , ( ) => require ( '@nativescript-community/ui-material-textfield' ) . TextField , {
@@ -148,8 +155,9 @@ module.exports = (env, params = {}) => {
148155 test : / \. s c s s $ / ,
149156 exclude : / \. m o d u l e \. s c s s $ / ,
150157 use : [
158+ { loader : 'apply-css-loader' } ,
151159 {
152- loader : '@nativescript/webpack/dist/loaders/ css2json-loader' ,
160+ loader : 'css2json-loader' ,
153161 options : { useForImports : true }
154162 } ,
155163 {
@@ -184,10 +192,10 @@ module.exports = (env, params = {}) => {
184192 {
185193 loader : 'string-replace-loader' ,
186194 options : {
187- search : 'mdi-([a-z- ]+)' ,
195+ search : 'mdi-([a-z0-9-_ ]+)' ,
188196 replace : ( match , p1 , offset , str ) => {
189197 if ( mdiIcons [ p1 ] ) {
190- return String . fromCharCode ( parseInt ( mdiIcons [ p1 ] , 16 ) ) ;
198+ return fixedFromCharCode ( parseInt ( mdiIcons [ p1 ] , 16 ) ) ;
191199 }
192200 return match ;
193201 } ,
0 commit comments