<project name="ape" basedir="C:\Users\ape">

	<property name="src" location="aped/src"/>
	<property name="build" location="aped/build"/>
	<target name="js.rollups">

	<!-- concat all dom-f.js files, EXCEPT the first (style-f.js).
		 Remove the APE.namespace(APE.dom) from each file (except the first)
	-->
		<concat destfile="${src}/dom/_dom.js">
			<filelist dir="${src}/dom"
				 files="viewport-f.js, position-f.js, classname-f.js, traversal-f.js, Event.js"/>
			<filterchain>
				<tokenfilter>
					<replacestring from='APE.namespace("APE.dom");' to=""/>
					<replacestring from="APE.namespace('APE.dom');" to=""/>
				</tokenfilter>
			</filterchain>
		</concat>

		<!-- Add back in style-f.js -->
		<concat destfile="${src}/dom/dom.js">
			<filelist dir="${src}/dom" files="style-f.js, _dom.js"/>
		</concat>
		<delete file="${src}/dom/_dom.js"/>

		<!-- build ape-ep-dom.js rollup -->
		<concat destfile="${src}/ape-ep-dom.js">
			<filelist dir="${src}"
				 files="APE.js, EventPublisher.js, dom/dom.js"/>
		</concat>

		<!-- build anim.js rollup -->
		<concat destfile="${src}/anim/_anim.js">
			<filelist dir="${src}/anim"
				 files="StyleTransition.js"/>
			<filterchain>
				<tokenfilter>
					<replacestring from='APE.namespace("APE.anim");' to=""/>
					<replacestring from="APE.namespace('APE.anim');" to=""/>
				</tokenfilter>
			</filterchain>
		</concat>
		<concat destfile="${src}/anim/anim.js">
			<filelist dir="${src}/anim"
				 files="Animation.js, _anim.js"/>
		</concat>
		<delete file="${src}/anim/_anim.js"/>

		<!-- build drag-slider.js rollup -->
		<concat destfile="${src}/drag/_drag-slider.js">
			<filelist dir="${src}/drag"
				 files="Slider.js"/>
			<filterchain>
				<tokenfilter>
					<replacestring from='APE.namespace("APE.drag");' to=""/>
					<replacestring from="APE.namespace('APE.drag');" to=""/>
				</tokenfilter>
			</filterchain>
		</concat>
		<concat destfile="${src}/drag/drag-slider.js">
			<filelist dir="${src}/drag"
				 files="Draggable.js, _drag-slider.js"/>
		</concat>
		<delete file="${src}/drag/_drag-slider.js"/>
	
	</target>

	<target name="js.copy" depends="js.rollups">
		<copy todir="${build}">
			<fileset dir="${src}" excludes="**/*.java"/>
		</copy>
	</target>

	<target name="js.minify" depends="js.copy">
		<apply executable="java" parallel="false" dest="${build}" taskname="yui">
			<fileset dir="${src}" includes="**/*.js"/>
			<arg line="-jar"/>
			<arg path="yuicompressor-2.3.5/build/yuicompressor-2.3.5.jar"/>
			<arg line="-v"/>
			<srcfile/>
			<arg line="-o"/>
			<mapper type="glob" from="*.js" to="*-min.js"/>
			<targetfile/>
		</apply>
	</target>

	<target name="clean">
		<delete file="${build}/EventPublisher-min.js" failonerror="false"/>
	</target>
</project>