diff --git a/scripts/Tools.hx b/scripts/Tools.hx index 9a3d0fb..7307103 100644 --- a/scripts/Tools.hx +++ b/scripts/Tools.hx @@ -137,9 +137,9 @@ class Tools private static function generateSWFClasses(project:HXProject, output:HXProject, swfAsset:Asset, prefix:String = ""):Array { - var bitmapDataTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/swf/BitmapData.mtt"); - var movieClipTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/swf/MovieClip.mtt"); - var simpleButtonTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/swf/SimpleButton.mtt"); + var bitmapDataTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/haxe/BitmapData.mtt"); + var movieClipTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/haxe/MovieClip.mtt"); + var simpleButtonTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/haxe/SimpleButton.mtt"); var bytes = ByteArray.fromBytes(File.getBytes(swfAsset.sourcePath)); bytes = readSWC(bytes); @@ -594,10 +594,11 @@ class Tools var inputPath = words.length > 1 ? words[1] : Sys.getCwd(); var outputPath = words.length > 2 ? words[2] : null; + var language = words.length > 3 ? words[3] : "haxe"; - if (words.length < 2 || Path.extension(inputPath) == "swf" || Path.extension(inputPath) == "swc") + if (words.length < 3 || Path.extension(inputPath) == "swf" || Path.extension(inputPath) == "swc") { - if (words.length > 3) + if (words.length > 4) { Log.error("Incorrect number of arguments for command 'process'"); return; @@ -638,7 +639,8 @@ class Tools Log.info("\x1b[1mProcessing file:\x1b[0m " + fileLabel, " - \x1b[1mProcessing file:\x1b[0m " + file + " \x1b[3;37m->\x1b[0m " + output); - processFile(file, output, filePrefix, generate); + var language = "haxe"; + processFile(file, output, filePrefix, generate, language); } } else @@ -655,7 +657,12 @@ class Tools outputPath = Path.combine(outputPath, Path.withoutExtension(Path.withoutDirectory(inputPath)) + ".zip"); } - processFile(inputPath, outputPath, filePrefix, generate); + var language = "haxe"; + if(words[words.length-1] == "haxe" || words[words.length-1] == "ts" || words[words.length-1] == "as3" || words[words.length-1] == "es5" || words[words.length-1] == "es6") + { + language = words[words.length-1]; + } + processFile(inputPath, outputPath, filePrefix, generate, language); } } else if (words.length > 2) @@ -749,7 +756,7 @@ class Tools } } - private static function processFile(sourcePath:String, targetPath:String, prefix:String = null, generate:Bool = false):Bool + private static function processFile(sourcePath:String, targetPath:String, prefix:String = null, generate:Bool = false, language:String = "haxe"):Bool { if (targetPath == null) { @@ -768,7 +775,7 @@ class Tools var generatePath = Path.tryFullPath(Path.directory(targetPath)); var output = []; - var generatedClasses = exporter.generateClasses("", output, prefix); + var generatedClasses = exporter.generateClasses("", output, language, prefix); for (asset in output) { @@ -1066,7 +1073,7 @@ class Tools targetPath = Path.tryFullPath(targetDirectory) + "/haxe/_generated"; } - var generatedClasses = exporter.generateClasses(targetPath, output.assets, library.prefix); + var generatedClasses = exporter.generateClasses(targetPath, output.assets, "haxe", library.prefix); // for (className in generatedClasses) // { diff --git a/src/swf/exporters/AnimateLibraryExporter.hx b/src/swf/exporters/AnimateLibraryExporter.hx index f36ebe7..57b6633 100644 --- a/src/swf/exporters/AnimateLibraryExporter.hx +++ b/src/swf/exporters/AnimateLibraryExporter.hx @@ -1126,16 +1126,16 @@ class AnimateLibraryExporter return; } - public function generateClasses(targetPath:String, output:Array, prefix:String = ""):Array + public function generateClasses(targetPath:String, output:Array, language:String = "haxe", prefix:String = ""):Array { #if commonjs - var bitmapDataTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/animate/BitmapData.mtt")); - var movieClipTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/animate/MovieClip.mtt")); - var simpleButtonTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/animate/SimpleButton.mtt")); + var bitmapDataTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/" + language + "/BitmapData.mtt")); + var movieClipTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/" + language + "/MovieClip.mtt")); + var simpleButtonTemplate = File.getContent(Path.combine(js.Node.__dirname, "../templates/" + language + "/SimpleButton.mtt")); #else - var bitmapDataTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/animate/BitmapData.mtt"); - var movieClipTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/animate/MovieClip.mtt"); - var simpleButtonTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/animate/SimpleButton.mtt"); + var bitmapDataTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/" + language + "/BitmapData.mtt"); + var movieClipTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/" + language + "/MovieClip.mtt"); + var simpleButtonTemplate = File.getContent(Haxelib.getPath(new Haxelib("swf"), true) + "/templates/" + language + "/SimpleButton.mtt"); #end var generatedClasses = []; @@ -1291,9 +1291,13 @@ class AnimateLibraryExporter context.BASE_CLASS_NAME = baseClassName; } + var languageExtension:String = ".hx"; + if(language == "es5" || language == "es6") languageExtension = ".js"; + if(language == "as3") languageExtension = ".as"; + var template = new Template(templateData); - var templateFile = new Asset("", Path.combine(Path.combine(targetPath, Path.directory(className.split(".").join("/"))), name + ".hx"), + var templateFile = new Asset("", Path.combine(Path.combine(targetPath, Path.directory(className.split(".").join("/"))), name + languageExtension), cast AssetType.TEMPLATE); templateFile.embed = false; templateFile.data = template.execute(context); diff --git a/templates/animate/BitmapData.mtt b/templates/animate/BitmapData.mtt deleted file mode 100644 index fbe3416..0000000 --- a/templates/animate/BitmapData.mtt +++ /dev/null @@ -1,16 +0,0 @@ -package ::PACKAGE_NAME::; - -@:access(swf.exporters.animate.AnimateLibrary) - -class ::CLASS_NAME:: extends openfl.display.BitmapData -{ - public function new(width:Int = 0, height:Int = 0, transparent:Bool = false, background:Int = 0) - { - super(0, 0, true, 0); - - var library = swf.exporters.animate.AnimateLibrary.get("::UUID::"); - var symbol:swf.exporters.animate.AnimateBitmapSymbol = cast library.symbols.get(::SYMBOL_ID::); - var image = library.getImage(symbol.path); - __fromImage(image); - } -} \ No newline at end of file diff --git a/templates/animate/MovieClip.mtt b/templates/animate/MovieClip.mtt deleted file mode 100644 index 5aeb90c..0000000 --- a/templates/animate/MovieClip.mtt +++ /dev/null @@ -1,18 +0,0 @@ -package ::PACKAGE_NAME::; - -@:access(swf.exporters.animate) - -class ::CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::#if flash flash.display.MovieClip.MovieClip2 #else openfl.display.MovieClip #end::end:: -{ - ::foreach CLASS_PROPERTIES::@:keep ::if hidden::@:noCompletion @:dox(hide) ::end::public var ::name::(default, null):::type::; - ::end:: - - public function new() - { - var library = swf.exporters.animate.AnimateLibrary.get("::UUID::"); - var symbol = library.symbols.get(::SYMBOL_ID::); - symbol.__init(library); - - super(); - } -} \ No newline at end of file diff --git a/templates/animate/SimpleButton.mtt b/templates/animate/SimpleButton.mtt deleted file mode 100644 index 95fec87..0000000 --- a/templates/animate/SimpleButton.mtt +++ /dev/null @@ -1,15 +0,0 @@ -package ::PACKAGE_NAME::; - -@:access(swf.exporters.animate) - -class ::CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::#if flash flash.display.SimpleButton.SimpleButton2 #else openfl.display.SimpleButton #end::end:: -{ - public function new() - { - var library = swf.exporters.animate.AnimateLibrary.get("::UUID::"); - var symbol = library.symbols.get(::SYMBOL_ID::); - symbol.__init(library); - - super(); - } -} \ No newline at end of file diff --git a/templates/as3/BitmapData.mtt b/templates/as3/BitmapData.mtt new file mode 100644 index 0000000..9d35f16 --- /dev/null +++ b/templates/as3/BitmapData.mtt @@ -0,0 +1,12 @@ +package ::PACKAGE_NAME:: { + import openfl.utils.Assets; + import openfl.display.BitmapData; + + public class ::NATIVE_CLASS_NAME:: extends BitmapData { + + public function ::NATIVE_CLASS_NAME:: (width:int = 0, height:int = 0, transparent:boolean = false, background:int = 0) { + super (width, height, transparent, background); + } + + } +} \ No newline at end of file diff --git a/templates/as3/MovieClip.mtt b/templates/as3/MovieClip.mtt new file mode 100644 index 0000000..8cf089f --- /dev/null +++ b/templates/as3/MovieClip.mtt @@ -0,0 +1,15 @@ +package ::PACKAGE_NAME:: { + import openfl.utils.Assets; + ::if BASE_CLASS_NAME::::else::import openfl.display.MovieClip;::end:: + + public class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::MovieClip::end:: { + + ::foreach CLASS_PROPERTIES::public var ::name:::::type::; + ::end:: + + public function ::NATIVE_CLASS_NAME:: () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + } +} \ No newline at end of file diff --git a/templates/as3/SimpleButton.mtt b/templates/as3/SimpleButton.mtt new file mode 100644 index 0000000..e76f1c6 --- /dev/null +++ b/templates/as3/SimpleButton.mtt @@ -0,0 +1,12 @@ +package ::PACKAGE_NAME:: { + import openfl.utils.Assets; + ::if BASE_CLASS_NAME::::else::import openfl.display.SimpleButton;::end:: + + public class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::SimpleButton::end:: { + + public function ::NATIVE_CLASS_NAME:: () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + } +} diff --git a/templates/es5/BitmapData.mtt b/templates/es5/BitmapData.mtt new file mode 100644 index 0000000..ebdf21b --- /dev/null +++ b/templates/es5/BitmapData.mtt @@ -0,0 +1,18 @@ +"use strict" +var Assets = require ("openfl/utils/Assets").default; +var BitmapData = require ("openfl/display/BitmapData").default; + +var ::NATIVE_CLASS_NAME:: = (function(width, height, transparent, background) { + width = width || 0; + height = height || 0; + transparent = transparent || false; + background = background || 0; + BitmapData.call (this, width, height, transparent, background); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); +}) + +::NATIVE_CLASS_NAME::.prototype = Object.create(BitmapData.prototype); +::NATIVE_CLASS_NAME::.prototype.constructor = ::NATIVE_CLASS_NAME::; + +module.exports.::NATIVE_CLASS_NAME:: = ::NATIVE_CLASS_NAME::; +module.exports.default = ::NATIVE_CLASS_NAME::; diff --git a/templates/es5/MovieClip.mtt b/templates/es5/MovieClip.mtt new file mode 100644 index 0000000..8314432 --- /dev/null +++ b/templates/es5/MovieClip.mtt @@ -0,0 +1,14 @@ +"use strict" +var Assets = require ("openfl/utils/Assets").default; +::if BASE_CLASS_NAME::::else::var MovieClip = require ("openfl/display/MovieClip").default;::end:: + +var ::NATIVE_CLASS_NAME:: = (function() { + ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::MovieClip::end::.call (this); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); +}) + +::NATIVE_CLASS_NAME::.prototype = Object.create(::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::MovieClip::end::.prototype); +::NATIVE_CLASS_NAME::.prototype.constructor = ::NATIVE_CLASS_NAME::; + +module.exports.::NATIVE_CLASS_NAME:: = ::NATIVE_CLASS_NAME::; +module.exports.default = ::NATIVE_CLASS_NAME::; diff --git a/templates/es5/SimpleButton.mtt b/templates/es5/SimpleButton.mtt new file mode 100644 index 0000000..50dfe91 --- /dev/null +++ b/templates/es5/SimpleButton.mtt @@ -0,0 +1,14 @@ +"use strict" +var Assets = require ("openfl/utils/Assets").default; +::if BASE_CLASS_NAME::::else::var SimpleButton = require ("openfl/display/SimpleButton").default;::end:: + +var ::NATIVE_CLASS_NAME:: = function() { + ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::SimpleButton::end::.call (this); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); +} + +::NATIVE_CLASS_NAME::.prototype = Object.create(::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::SimpleButton::end::.prototype); +::NATIVE_CLASS_NAME::.prototype.constructor = ::NATIVE_CLASS_NAME::; + +module.exports.::NATIVE_CLASS_NAME:: = ::NATIVE_CLASS_NAME::; +module.exports.default = ::NATIVE_CLASS_NAME::; diff --git a/templates/es6/BitmapData.mtt b/templates/es6/BitmapData.mtt new file mode 100644 index 0000000..426bfa7 --- /dev/null +++ b/templates/es6/BitmapData.mtt @@ -0,0 +1,13 @@ +"use strict"; +import Assets from "openfl/utils/Assets"; +import BitmapData from "openfl/display/BitmapData"; + +class ::NATIVE_CLASS_NAME:: extends BitmapData { + + constructor (width = 0, height = 0, transparent = false, background = 0) { + super (width, height, transparent, background); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::; diff --git a/templates/es6/MovieClip.mtt b/templates/es6/MovieClip.mtt new file mode 100644 index 0000000..243500f --- /dev/null +++ b/templates/es6/MovieClip.mtt @@ -0,0 +1,17 @@ +"use strict"; +import Assets from "openfl/utils/Assets"; +::if BASE_CLASS_NAME::::else::import MovieClip from "openfl/display/MovieClip";::end:: + +class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::MovieClip::end:: { + + ::foreach CLASS_PROPERTIES::::name::; + ::end:: + + constructor () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::; + diff --git a/templates/es6/SimpleButton.mtt b/templates/es6/SimpleButton.mtt new file mode 100644 index 0000000..bec5d58 --- /dev/null +++ b/templates/es6/SimpleButton.mtt @@ -0,0 +1,13 @@ +"use strict"; +import Assets from "openfl/utils/Assets"; +::if BASE_CLASS_NAME::::else::import SimpleButton from "openfl/display/SimpleButton";::end:: + +class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::SimpleButton:: { + + constructor () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::; diff --git a/templates/haxe/BitmapData.mtt b/templates/haxe/BitmapData.mtt new file mode 100644 index 0000000..e5821bd --- /dev/null +++ b/templates/haxe/BitmapData.mtt @@ -0,0 +1,11 @@ +package ::PACKAGE_NAME::; + +@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends openfl.display.BitmapData { + + public function new (width:Int = 0, height:Int = 0, transparent:Bool = false, background:Int = 0) { + + super (width, height, transparent, background); + + } + +} \ No newline at end of file diff --git a/templates/haxe/MovieClip.mtt b/templates/haxe/MovieClip.mtt new file mode 100644 index 0000000..15d1665 --- /dev/null +++ b/templates/haxe/MovieClip.mtt @@ -0,0 +1,16 @@ +package ::PACKAGE_NAME::; + + +@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::#if flash flash.display.MovieClip.MovieClip2 #else openfl.display.MovieClip #end::end:: +{ + + ::foreach CLASS_PROPERTIES::@:keep ::if hidden::@:noCompletion @:dox(hide) ::end::public var ::name:: (default, null):::type::; + ::end:: + + public function new () { + + super (); + + } + +} \ No newline at end of file diff --git a/templates/haxe/SimpleButton.mtt b/templates/haxe/SimpleButton.mtt new file mode 100644 index 0000000..7cf89dd --- /dev/null +++ b/templates/haxe/SimpleButton.mtt @@ -0,0 +1,13 @@ +package ::PACKAGE_NAME::; + +@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::#if flash flash.display.SimpleButton.SimpleButton2 #else openfl.display.SimpleButton #end::end:: +{ + + public function new () { + + super (); + + } + + +} \ No newline at end of file diff --git a/templates/swf/BitmapData.mtt b/templates/swf/BitmapData.mtt deleted file mode 100644 index 9a381d9..0000000 --- a/templates/swf/BitmapData.mtt +++ /dev/null @@ -1,39 +0,0 @@ -package ::PACKAGE_NAME::; #if !flash - - -import swf.exporters.swflite.SWFLite; -import openfl.display.BitmapData; -import openfl.utils.Assets; - - -class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - public function new (width:Int = 0, height:Int = 0, transparent:Bool = false, background:Int = 0) { - - super (0, 0, true, 0); - - var swfLite = SWFLite.instances.get ("::SWF_ID::"); - var symbol = swfLite.symbols.get (::SYMBOL_ID::); - - __fromSymbol (swfLite, cast symbol); - - } - - -} - - -#else -@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - public function new (width:Int = 0, height:Int = 0, transparent:Bool = false, background:Int = 0) { - - super (width, height, transparent, background); - - } - - -} -#end \ No newline at end of file diff --git a/templates/swf/MovieClip.mtt b/templates/swf/MovieClip.mtt deleted file mode 100644 index 6cc9757..0000000 --- a/templates/swf/MovieClip.mtt +++ /dev/null @@ -1,45 +0,0 @@ -package ::PACKAGE_NAME::; #if !flash - - -import swf.exporters.swflite.SWFLite; -import openfl.display.MovieClip; -import openfl.utils.Assets; - -@:access(swf.exporters.swflite) - -class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - ::foreach CLASS_PROPERTIES::@:keep ::if hidden::@:noCompletion @:dox(hide) ::end::public var ::name:: (default, null):::type::; - ::end:: - - public function new () { - - var swfLite = SWFLite.instances.get ("::SWF_ID::"); - var symbol = swfLite.symbols.get (::SYMBOL_ID::); - symbol.__init(swfLite); - - super(); - - } - - -} - - -#else -@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - ::foreach CLASS_PROPERTIES::@:keep ::if hidden::@:noCompletion @:dox(hide) ::end::public var ::name:: (default, null):::type::; - ::end:: - - public function new () { - - super (); - - } - - -} -#end \ No newline at end of file diff --git a/templates/swf/SimpleButton.mtt b/templates/swf/SimpleButton.mtt deleted file mode 100644 index 726e134..0000000 --- a/templates/swf/SimpleButton.mtt +++ /dev/null @@ -1,39 +0,0 @@ -package ::PACKAGE_NAME::; #if !flash - - -import swf.exporters.swflite.SWFLite; -import openfl.display.SimpleButton; -import openfl.utils.Assets; - -@:access(swf.exporters.swflite) - -class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - public function new () { - - var swfLite = SWFLite.instances.get ("::SWF_ID::"); - var symbol = swfLite.symbols.get (::SYMBOL_ID::); - symbol.__init(swfLite); - - super (); - - } - - -} - - -#else -@:bind @:native("::NATIVE_CLASS_NAME::") class ::CLASS_NAME:: extends ::BASE_CLASS_NAME:: { - - - public function new () { - - super (); - - } - - -} -#end \ No newline at end of file diff --git a/templates/ts/BitmapData.mtt b/templates/ts/BitmapData.mtt new file mode 100644 index 0000000..dc9801b --- /dev/null +++ b/templates/ts/BitmapData.mtt @@ -0,0 +1,15 @@ +import Assets from "openfl/utils/Assets"; +import Assets from "openfl/display/BitmapData"; + +class ::NATIVE_CLASS_NAME:: extends BitmapData { + + ::foreach CLASS_PROPERTIES:: ::name::; + ::end:: + + constructor (width:number = 0, height:number = 0, transparent:bool = false, background:number = 0) { + super (width, height, transparent, background); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::; diff --git a/templates/ts/MovieClip.mtt b/templates/ts/MovieClip.mtt new file mode 100644 index 0000000..fecd58e --- /dev/null +++ b/templates/ts/MovieClip.mtt @@ -0,0 +1,16 @@ +import Assets from "openfl/utils/Assets"; +::if BASE_CLASS_NAME::::else::import MovieClip from "openfl/display/MovieClip";::end:: + +class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::MovieClip::end:: { + + ::foreach CLASS_PROPERTIES::public ::name::!:::type::; + ::end:: + + constructor () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::; + diff --git a/templates/ts/SimpleButton.mtt b/templates/ts/SimpleButton.mtt new file mode 100644 index 0000000..9c0becc --- /dev/null +++ b/templates/ts/SimpleButton.mtt @@ -0,0 +1,12 @@ +import Assets from "openfl/utils/Assets"; +::if BASE_CLASS_NAME::::else::import SimpleButton from "openfl/display/SimpleButton";::end:: + +class ::NATIVE_CLASS_NAME:: extends ::if BASE_CLASS_NAME::::BASE_CLASS_NAME::::else::SimpleButton:: { + + constructor () { + super (); + Assets.initBinding("::NATIVE_CLASS_NAME::", this); + } + +} +export default ::NATIVE_CLASS_NAME::;