<?xml version="1.0" encoding="UTF-8"?>
<!--

  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.

-->
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.apache.royale.typedefs</groupId>
    <artifactId>royale-typedefs-parent</artifactId>
    <version>0.9.6</version>
  </parent>

  <artifactId>royale-typedefs-createjs</artifactId>
  <version>0.9.6</version>
  <packaging>swc</packaging>

  <name>Apache Royale: TypeDefs: CreateJS</name>

  <properties>
    <createjs.version>0.8.0</createjs.version>
    <tweenjs.version>0.6.2</tweenjs.version>
  </properties>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.royale.compiler</groupId>
        <artifactId>royale-maven-plugin</artifactId>
        <version>${royale.compiler.version}</version>
        <extensions>true</extensions>
        <configuration>
          <includeSources>true</includeSources>
          <externcInput>
            <fileSet>
              <directory>${project.basedir}/src/main/javascript</directory>
              <includes>
                <include>**/*.js</include>
              </includes>
            </fileSet>
          </externcInput>
          <externcConfig>
            <class-excludes>
              <class-exclude>
                <className>MovieClipPlugin</className>
              </class-exclude>
              <class-exclude>
                <className>createjs.Text.V_OFFSETS</className>
              </class-exclude>
              <class-exclude>
                <className>createjs.Text.H_OFFSETS</className>
              </class-exclude>
              <class-exclude>
                <className>createjs.Graphics.BASE_64</className>
              </class-exclude>
            </class-excludes>
          </externcConfig>
          <includeFiles>
            <include-file>
              <name>externs/missing.js</name>
              <path>../src/main/javascript/missing.js</path>
            </include-file>
            <include-file>
              <name>externs/createjs.js</name>
              <path>../src/main/javascript/createjs.js</path>
            </include-file>
            <!--
            <include-file>
              <name>externs/AlphaMapFilter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/AlphaMapFilter.js</path>
            </include-file>
            <include-file>
              <name>externs/AlphaMaskFilter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/AlphaMaskFilter.js</path>
            </include-file>
            <include-file>
              <name>externs/BlurFilter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/BlurFilter.js</path>
            </include-file>
            <include-file>
              <name>externs/ColorFilter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/ColorFilter.js</path>
            </include-file>
            <include-file>
              <name>externs/ColorMatrix.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/ColorMatrix.js</path>
            </include-file>
            <include-file>
              <name>externs/ColorMatrixFilter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/ColorMatrixFilter.js</path>
            </include-file>
            <include-file>
              <name>externs/Filter.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/filters/Filter.js</path>
            </include-file>
            <include-file>
              <name>externs/Bitmap.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Bitmap.js</path>
            </include-file>
            <include-file>
              <name>externs/BitmapText.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/BitmapText.js</path>
            </include-file>
            <include-file>
              <name>externs/Container.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Container.js</path>
            </include-file>
            <include-file>
              <name>externs/DisplayObject.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/DisplayObject.js</path>
            </include-file>
            <include-file>
              <name>externs/DOMElement.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/DOMElement.js</path>
            </include-file>
            <include-file>
              <name>externs/Graphics.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Graphics.js</path>
            </include-file>
            <include-file>
              <name>externs/MovieClip.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/MovieClip.js</path>
            </include-file>
            <include-file>
              <name>externs/Shadow.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Shadow.js</path>
            </include-file>
            <include-file>
              <name>externs/Shape.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Shape.js</path>
            </include-file>
            <include-file>
              <name>externs/Sprite.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Sprite.js</path>
            </include-file>
            <include-file>
              <name>externs/SpriteContainer.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/SpriteContainer.js</path>
            </include-file>
            <include-file>
              <name>externs/SpriteSheet.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/SpriteSheet.js</path>
            </include-file>
            <include-file>
              <name>externs/SpriteStage.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/SpriteStage.js</path>
            </include-file>
            <include-file>
              <name>externs/Stage.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Stage.js</path>
            </include-file>
            <include-file>
              <name>externs/Text.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/display/Text.js</path>
            </include-file>
            <include-file>
              <name>externs/ButtonHelper.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/ui/ButtonHelper.js</path>
            </include-file>
            <include-file>
              <name>externs/DisplayProps.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/geom/DisplayProps.js</path>
            </include-file>
            <include-file>
              <name>externs/Matrix2D.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/geom/Matrix2D.js</path>
            </include-file>
            <include-file>
              <name>externs/Point.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/geom/Point.js</path>
            </include-file>
            <include-file>
              <name>externs/Rectangle.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/geom/Rectangle.js</path>
            </include-file>
            <include-file>
              <name>externs/Ease.js</name>
              <path>downloads/TweenJS-0.6.2/src/tweenjs/Ease.js</path>
            </include-file>
            <include-file>
              <name>externs/Tween.js</name>
              <path>downloads/TweenJS-0.6.2/src/tweenjs/Tween.js</path>
            </include-file>
            <include-file>
              <name>externs/Timeline.js</name>
              <path>downloads/TweenJS-0.6.2/src/tweenjs/Timeline.js</path>
            </include-file>
            <include-file>
              <name>externs/Event.js</name>
              <path>downloads/EaselJS-0.8.0/src/createjs/events/Event.js</path>
            </include-file>
            <include-file>
              <name>externs/EventDispatcher.js</name>
              <path>downloads/EaselJS-0.8.0/src/createjs/events/EventDispatcher.js</path>
            </include-file>
            <include-file>
              <name>externs/MouseEvent.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/events/MouseEvent.js</path>
            </include-file>
            <include-file>
              <name>externs/SpriteSheetBuilder.js</name>
              <path>downloads/EaselJS-0.8.0/src/easeljs/utils/SpriteSheetBuilder.js</path>
            </include-file>
            <include-file>
              <name>externs/Ticker.js</name>
              <path>downloads/EaselJS-0.8.0/src/createjs/utils/Ticker.js</path>
            </include-file>
             -->
          </includeFiles>
          <skipSwc>true</skipSwc>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.apache.royale.compiler</groupId>
            <artifactId>compiler-jx</artifactId>
            <version>${royale.compiler.version}</version>
          </dependency>
        </dependencies>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>org.apache.royale.typedefs</groupId>
      <artifactId>royale-typedefs-js</artifactId>
      <version>0.9.6</version>
      <type>swc</type>
      <classifier>typedefs</classifier>
      <scope>runtime</scope>
    </dependency>
  </dependencies>

</project>
