Flash / Flex Build Support
Install
$ npm install flbuild --save-dev
Create swc library
var fl = var exec = var config = configconfigconfigconfigconfigconfigconfigconfigconfig var lib = config// If you want filter your classes for import to swc.// you can do it with using `fl.Lib.filterFunction`lib { return asclassclasspath > -1} lib
namespace.yaml
Write If you want set custom namespace for your component classes. (like xmlns:mx
or xmlns:s
)
You can do it with writing namespace.yaml
- src
- com
- yourdomain
- ComponentClass1
- ComponentClass2
- ComponentClass3
- namespace.yaml
- yourdomain
- com
Create namespace.yaml
file in your namespace directory like that.
namespace: "http://yourdomain.com/somens"components:- ComponentClass1- ComponentClass2- ComponentClass3
And write namespace and components names.
Then you can use your library with custom namespace.
Create application and module swf files
var fl = var exec = var config = configconfigconfigconfigconfigconfigconfigconfigconfig var app = configappappappapp var module = configmodulemodulemodulemodule
fl.App
build command will be make files App.swf
, App.xml
and App.size.xml
.
App.xml
is report file for module optimization. It can using when create sub module.
If you want create library with swf files
var fl = var exec = var config = configconfigconfigconfigconfigconfig var lib = configliblibliblib var app = configappappappapp var module = configmodulemodulemodulemodule
If you need create swc library with swf applications. You can set different libraries and args each modules. (because mxmlc
need import flex libraries. but, compc
no need flex libraries.)
With gulpfile.js
You can make flbuild into one of gulpfile tasks. It is better for your build.
var gulp = var fl = var exec = var run = var config = configconfigconfigconfigconfigconfigconfigconfigconfig gulp gulp gulp
API
fl.Config
class constructor(parent?:fl.Config)
setEnv(name:string, value?:string)
If value is null. Read value from system environment variables.getEnv(name:string):string
addLibraryDirectory(path:string)
addExternalLibraryDirectory(path:string)
addSourceDirectory(path:string)
addArg(arg:string)
mxmlc, compc optionsgetLibraryDirectories():string[]
getExternalLibraryDirectories():string[]
getSourceDirectories():string[]
getArgs():string[]
fl.App extends fl.Config
class constructor(config:fl.Config)
createBuildCommand(mxmlPath: string, swfPath: string, complete: (command: string) => void)
fl.Module extends fl.Config
class constructor(config:fl.Config)
createBuildCommand(appReportPath: string, mxmlPath: string, swfPath: string, complete: (command: string) => void)
fl.Lib extends fl.Config
class constructor(config:fl.Config)
filterFunction: (asclass: fl.ASClass) => boolean
createBuildCommand(swcPath: string, complete: (command: string) => void)
fl.ASClass
interface path:string
= '/project/path/src/your/namespace/Class.as'relative_path:string
= 'your/namespace/Class.as'base:string
= '/project/path/src/your/namespace'relative_base:string
= 'your/namespace'name:string
= 'Class'extension:string
= '.as'atime:number
= 1430095512987 (fromDate.getTime()
)mtime:number
= 1430095512987ctime:number
= 1430095512987classpath:string
= 'your.namespace.Class'