<!--

  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</name></exclude> 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.

-->
<royale-config>

    <compiler>
        <accessible>true</accessible>
        
        <locale/>
        
        <library-path/>
        
        <warn-no-constructor>false</warn-no-constructor>
    </compiler>
    
    <typedefs>
        <path-element>../resources/typedefs/unit_tests/missing.js</path-element>
        <path-element>../../../target/downloads/es3.js</path-element>
        <path-element>../../../target/downloads/es5.js</path-element>
        <path-element>../../../target/downloads/es6.js</path-element>
        <path-element>../../../target/downloads/es6_collections.js</path-element>

        <path-element>../../../target/downloads/browser/w3c_anim_timing.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_audio.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_batterystatus.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_css.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_css3d.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_device_sensor_event.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_dom1.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_dom2.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_dom3.js</path-element>
        <!-- path-element>../../../target/downloads/browser/w3c_dom4.js</path-element>-->
        <path-element>../../../target/downloads/browser/w3c_elementtraversal.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_event.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_event3.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_gamepad.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_geolocation.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_indexeddb.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_midi.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_navigation_timing.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_permissions.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_pointer_events.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_range.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_requestidlecallback.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_rtc.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_screen_orientation.js</path-element>
        <path-element>../../../target/downloads/browser/w3c_selectors.js</path-element>
        <!-- path-element>../../../target/downloads/browser/w3c_serviceworker.js</path-element>-->
        <path-element>../../../target/downloads/browser/w3c_touch_event.js</path-element>
        <!-- path-element>../../../target/downloads/browser/w3c_webcrypto.js</path-element>-->
        <path-element>../../../target/downloads/browser/w3c_xml.js</path-element>

        <path-element>../../../target/downloads/browser/whatwg_encoding.js</path-element>

        <!-- path-element>../../../target/downloads/browser/fetchapi.js</path-element>-->
        <path-element>../../../target/downloads/browser/fileapi.js</path-element>
        <path-element>../../../target/downloads/browser/flash.js</path-element>
        <path-element>../../../target/downloads/browser/gecko_css.js</path-element>
        <path-element>../../../target/downloads/browser/gecko_dom.js</path-element>
        <path-element>../../../target/downloads/browser/gecko_event.js</path-element>
        <path-element>../../../target/downloads/browser/gecko_xml.js</path-element>
        <path-element>../../../target/downloads/browser/html5.js</path-element>
        <path-element>../../../target/downloads/browser/ie_css.js</path-element>
        <path-element>../../../target/downloads/browser/ie_dom.js</path-element>
        <path-element>../../../target/downloads/browser/ie_event.js</path-element>
        <path-element>../../../target/downloads/browser/ie_vml.js</path-element>
        <path-element>../../../target/downloads/browser/intl.js</path-element>
        <path-element>../../../target/downloads/browser/iphone.js</path-element>
        <path-element>../../../target/downloads/browser/mediasource.js</path-element>
        <path-element>../../../target/downloads/browser/page_visibility.js</path-element>
        <path-element>../../../target/downloads/browser/streamsapi.js</path-element>
        <path-element>../../../target/downloads/browser/url.js</path-element>
        <path-element>../../../target/downloads/browser/v8.js</path-element>
        <path-element>../../../target/downloads/browser/webgl.js</path-element>
        <path-element>../../../target/downloads/browser/webkit_css.js</path-element>
        <path-element>../../../target/downloads/browser/webkit_dom.js</path-element>
        <path-element>../../../target/downloads/browser/webkit_event.js</path-element>
        <!-- path-element>../../../target/downloads/browser/webkit_notifications.js</path-element>-->
        <path-element>../../../target/downloads/browser/webkit_usercontent.js</path-element>
        <path-element>../../../target/downloads/browser/webstorage.js</path-element>
        <path-element>../../../target/downloads/browser/window.js</path-element>
    </typedefs>

    <as-root>../../../target/generated-sources/externc</as-root>
    
    <field-exclude>
        <class>Window</class>
        <field>focus</field>
    </field-exclude>

    <class-exclude>
        <class>controlRange</class>
        <class>ITemplateArray</class>
        <class>Symbol</class>
    </class-exclude>
    
    <!-- Object.toString() is excluded by the ExternC compiler.  Otherwise
         int.toString(radix) becomes an illegal override.  The compiler should
         allow toString() usage in every object -->
    <exclude>
        <class>Array</class>
        <name>toSource</name>
    </exclude>
    <exclude>
        <class>Date</class>
        <name>valueOf</name>
    </exclude>
    <exclude>
        <class>String</class>
        <name>valueOf</name>
    </exclude>
    <exclude>
        <class>String</class>
        <name>raw</name>
    </exclude>
    <exclude>
        <class>Document</class>
        <name>loadXML</name>
    </exclude>
    <exclude>
        <class>Event</class>
        <name>initUIEvent</name>
    </exclude>
    <exclude>
        <class>Event</class>
        <name>initMessageEvent</name>
    </exclude>
    <exclude>
        <class>Element</class>
        <name>load</name>
    </exclude>
    <exclude>
        <class>Document</class>
        <name>open</name>
    </exclude>
    <exclude>
        <class>Document</class>
        <name>close</name>
    </exclude>
    <exclude>
        <class>Document</class>
        <name>createTreeWalker</name>
    </exclude>
    <exclude>
        <class>AsyncGenerator</class>
        <name>next</name>
    </exclude>
    <exclude>
        <class>Generator</class>
        <name>next</name>
    </exclude>
    <!-- SVG -->
    <exclude><class>SVGStylable</class><name>className</name></exclude>
    <exclude><class>SVGStylable</class><name>style</name></exclude>
    <exclude><class>SVGLocatable</class><name>farthestViewportElement</name></exclude>
    <exclude><class>SVGLocatable</class><name>nearestViewportElement</name></exclude>

    <!-- read-only properties where we only emit a 'get' accessor method -->
    <field-readonly>
        <class>Date</class>
        <name>timezoneOffset</name>
    </field-readonly>
    <field-readonly>
        <class>Date</class>
        <name>day</name>
    </field-readonly>
    <field-readonly>
        <class>Date</class>
        <name>dayUTC</name>
    </field-readonly>

</royale-config>
