@@ -766,7 +766,7 @@ function expandModuleConfig(config: Record<string, unknown> | undefined) {
766
766
...expanded ,
767
767
[ key ] : value === true ? { } : value ,
768
768
} ) ,
769
- { } ,
769
+ { } as Record < string , unknown > ,
770
770
) ;
771
771
}
772
772
@@ -784,55 +784,53 @@ function expandConfig(
784
784
if ( ! container ) {
785
785
throw new Error ( 'Invalid Quill container' ) ;
786
786
}
787
-
788
- const userOptions = { ...options } ;
789
787
790
788
const shouldUseDefaultTheme =
791
- ! userOptions . theme || userOptions . theme === Quill . DEFAULTS . theme ;
789
+ ! options . theme || options . theme === Quill . DEFAULTS . theme ;
792
790
const theme = shouldUseDefaultTheme
793
791
? Theme
794
- : Quill . import ( `themes/${ userOptions . theme } ` ) ;
792
+ : Quill . import ( `themes/${ options . theme } ` ) ;
795
793
if ( ! theme ) {
796
- throw new Error ( `Invalid theme ${ userOptions . theme } . Did you register it?` ) ;
794
+ throw new Error ( `Invalid theme ${ options . theme } . Did you register it?` ) ;
797
795
}
798
796
799
797
const { modules : quillModuleDefaults , ...quillDefaults } = Quill . DEFAULTS ;
800
798
const { modules : themeModuleDefaults , ...themeDefaults } = theme . DEFAULTS ;
801
799
800
+ let userModuleOptions = expandModuleConfig ( options . modules ) ;
802
801
// Special case toolbar shorthand
803
-
804
802
if (
805
- userOptions . modules != null &&
806
- userOptions . modules . toolbar &&
807
- userOptions . modules . toolbar . constructor !== Object
803
+ userModuleOptions != null &&
804
+ userModuleOptions . toolbar &&
805
+ userModuleOptions . toolbar . constructor !== Object
808
806
) {
809
- userOptions . modules . toolbar = {
810
- container : userOptions . modules . toolbar
807
+ userModuleOptions = {
808
+ ...userModuleOptions ,
809
+ toolbar : { container : userModuleOptions . toolbar } ,
811
810
} ;
812
811
}
813
812
814
813
const modules : ExpandedQuillOptions [ 'modules' ] = merge (
815
814
{ } ,
816
815
expandModuleConfig ( quillModuleDefaults ) ,
817
816
expandModuleConfig ( themeModuleDefaults ) ,
818
- expandModuleConfig ( userOptions . modules ) ,
817
+ userModuleOptions ,
819
818
) ;
820
819
821
-
822
820
const config = {
823
821
...quillDefaults ,
824
822
...omitUndefinedValuesFromOptions ( themeDefaults ) ,
825
- ...omitUndefinedValuesFromOptions ( userOptions ) ,
823
+ ...omitUndefinedValuesFromOptions ( options ) ,
826
824
} ;
827
825
828
- let registry = userOptions . registry ;
826
+ let registry = options . registry ;
829
827
if ( registry ) {
830
- if ( userOptions . formats ) {
828
+ if ( options . formats ) {
831
829
debug . warn ( 'Ignoring "formats" option because "registry" is specified' ) ;
832
830
}
833
831
} else {
834
- registry = userOptions . formats
835
- ? createRegistryWithFormats ( userOptions . formats , config . registry , debug )
832
+ registry = options . formats
833
+ ? createRegistryWithFormats ( options . formats , config . registry , debug )
836
834
: config . registry ;
837
835
}
838
836
0 commit comments