<?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.framework</groupId>
    <artifactId>frameworks</artifactId>
    <version>0.9.8</version>
  </parent>

  <artifactId>themes</artifactId>
  <version>0.9.8</version>
  <packaging>pom</packaging>

  <name>Apache Royale: Framework: Themes</name>

  <properties>
    <project.compiler.options>${repo.compiler.options}-js-default-initializers=false;-source-map=${source.map};-js-complex-implicit-coercions=false;-js-vector-index-checks=false;-js-resolve-uncertain=false</project.compiler.options>
  <project.build.outputTimestamp>2020-03-27T08:32:05Z</project.build.outputTimestamp></properties>

  <modules>
    <module>Basic</module>
    <module>MDL</module>
    <module>MXRoyale</module>

    <module>JewelTheme</module>

    <!-- Light & NoFlat-->
    <module>Jewel-Light-NoFlat-Primary-Amethyst-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Blue-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Emerald-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Green-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Orange-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Red-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Sapphire-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Sunflower-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Topaz-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Turquoise-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Violet-Theme</module>
    <module>Jewel-Light-NoFlat-Primary-Yellow-Theme</module>

    <module>Jewel-Light-NoFlat-Secondary-Amethyst-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Blue-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Emerald-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Green-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Orange-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Red-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Sapphire-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Sunflower-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Topaz-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Turquoise-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Violet-Theme</module>
    <module>Jewel-Light-NoFlat-Secondary-Yellow-Theme</module>

    <module>Jewel-Light-NoFlat-Emphasized-Amethyst-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Blue-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Emerald-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Green-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Orange-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Red-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Sapphire-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Sunflower-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Topaz-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Turquoise-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Violet-Theme</module>
    <module>Jewel-Light-NoFlat-Emphasized-Yellow-Theme</module>
    
    <!-- Light & Flat-->
    <module>Jewel-Light-Flat-Primary-Amethyst-Theme</module>
    <module>Jewel-Light-Flat-Primary-Blue-Theme</module>
    <module>Jewel-Light-Flat-Primary-Emerald-Theme</module>
    <module>Jewel-Light-Flat-Primary-Green-Theme</module>
    <module>Jewel-Light-Flat-Primary-Orange-Theme</module>
    <module>Jewel-Light-Flat-Primary-Red-Theme</module>
    <module>Jewel-Light-Flat-Primary-Sapphire-Theme</module>
    <module>Jewel-Light-Flat-Primary-Sunflower-Theme</module>
    <module>Jewel-Light-Flat-Primary-Topaz-Theme</module>
    <module>Jewel-Light-Flat-Primary-Turquoise-Theme</module>
    <module>Jewel-Light-Flat-Primary-Violet-Theme</module>
    <module>Jewel-Light-Flat-Primary-Yellow-Theme</module>

    <module>Jewel-Light-Flat-Secondary-Amethyst-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Blue-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Emerald-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Green-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Orange-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Red-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Sapphire-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Sunflower-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Topaz-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Turquoise-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Violet-Theme</module>
    <module>Jewel-Light-Flat-Secondary-Yellow-Theme</module>

    <module>Jewel-Light-Flat-Emphasized-Amethyst-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Blue-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Emerald-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Green-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Orange-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Red-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Sapphire-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Sunflower-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Topaz-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Turquoise-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Violet-Theme</module>
    <module>Jewel-Light-Flat-Emphasized-Yellow-Theme</module>

    <!-- Dark & NoFlat-->
    <module>Jewel-Dark-NoFlat-Primary-Amethyst-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Blue-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Emerald-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Green-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Orange-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Red-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Sapphire-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Sunflower-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Topaz-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Turquoise-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Violet-Theme</module>
    <module>Jewel-Dark-NoFlat-Primary-Yellow-Theme</module>

    <module>Jewel-Dark-NoFlat-Secondary-Amethyst-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Blue-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Emerald-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Green-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Orange-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Red-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Sapphire-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Sunflower-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Topaz-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Turquoise-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Violet-Theme</module>
    <module>Jewel-Dark-NoFlat-Secondary-Yellow-Theme</module>

    <module>Jewel-Dark-NoFlat-Emphasized-Amethyst-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Blue-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Emerald-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Green-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Orange-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Red-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Sapphire-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Sunflower-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Topaz-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Turquoise-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Violet-Theme</module>
    <module>Jewel-Dark-NoFlat-Emphasized-Yellow-Theme</module>
  </modules>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.royale.compiler</groupId>
        <artifactId>royale-maven-plugin</artifactId>
        <configuration>
          <!-- We don't want dependencies to be linked into the resulting libraries -->
          <forceSwcExternalLibraryPath>true</forceSwcExternalLibraryPath>
          <additionalCompilerOptions>${project.compiler.options}</additionalCompilerOptions>
          <targets>${royale.targets}</targets>
          <allowSubclassOverrides>true</allowSubclassOverrides>
          <skipAS>${royale.skipAS}</skipAS>
          <skipExtern>true</skipExtern>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <dependencies>
    <dependency>
      <groupId>org.apache.royale.typedefs</groupId>
      <artifactId>royale-typedefs-gcl</artifactId>
      <version>${royale.typedefs.version}</version>
      <type>swc</type>
      <classifier>typedefs</classifier>
    </dependency>
    <!--
      By declaring this dependency here, we force the royale-externs-js to be
      added to the external library path of all modules. Without this it would
      have gone to the library path.
    -->
    <dependency>
      <groupId>org.apache.royale.typedefs</groupId>
      <artifactId>royale-typedefs-js</artifactId>
      <version>${royale.typedefs.version}</version>
      <type>swc</type>
      <classifier>typedefs</classifier>
      <scope>runtime</scope>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>option-with-sass-compile</id>
      <build>
        <plugins>
          <plugin>
            <groupId>nl.geodienstencentrum.maven</groupId>
            <artifactId>sass-maven-plugin</artifactId>
            <version>3.7.2</version>
            <configuration>
              <resources>
                <!-- Depends on JewelTheme SASS framework files-->
                <resource>
                  <source>
                    <directory>${basedir}/src/main/sass</directory>
                    <includes>
                      <include>defaults.sass</include>
                    </includes>
                  </source>
                  <destination>${basedir}/src/main/resources</destination>
                </resource>
              </resources>
            </configuration>
            <executions>
              <execution>
                <id>generate-css-using-sass</id>
                <goals>
                  <goal>update-stylesheets</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <!--
      This is a self-activating profile that causes the sass plugin
      to not be executed if there is no src/main/sass directory.
    -->
    <profile>
      <id>_skip-sass-compilation</id>
      <activation>
        <file>
          <missing>src/main/sass</missing>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>nl.geodienstencentrum.maven</groupId>
            <artifactId>sass-maven-plugin</artifactId>
            <configuration>
              <skip>true</skip>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>

</project>
