{
    /**
     * The application's namespace.
     */
    "name": "KitchenSink",
    "framework": "ext",

    /**
     * Comma-separated string with the paths of directories or files to search. Any classes
     * declared in these locations will be available in your class "requires" or in calls
     * to "Ext.require". The "app.dir" variable below is expanded to the path where the
     * application resides (the same folder in which this file is located).
     */
    "classpath": [
        "${app.dir}/app",
        "${app.dir}/ux",
        "${app.dir}/samples",
        "${app.dir}/${toolkit.name}/src",
        "${app.dir}/${toolkit.name}/samples"
    ],

    /**
     * Sass configuration properties.
     */
    "sass": {
        /**
         * The root namespace to use when mapping *.scss files to classes in the
         * sass/src and sass/var directories. For example, "KitchenSink.view.Foo" would
         * map to "sass/src/view/Foo.scss". If we changed this to "KitchenSink.view" then
         * it would map to "sass/src/Foo.scss". To style classes outside the app's
         * root namespace, change this to "". Doing so would change the mapping of
         * "KitchenSink.view.Foo" to "sass/src/KitchenSink/view/Foo.scss".
         */
        "namespace": "KitchenSink",

        "src": [
            "${app.dir}/sass/src",
            "${app.dir}/${toolkit.name}/sass/src",
            "${app.dir}/${theme.name}/sass/src"
        ],

        "var": [
            "${app.dir}/sass/var",
            "${app.dir}/${toolkit.name}/sass/var",
            "${app.dir}/${theme.name}/sass/var"
        ],

        "etc": [
            "${app.dir}/sass/etc/all.scss",
            "${app.dir}/${toolkit.name}/sass/etc/all.scss"
        ]
    },

    /**
     * The file path to this application's front HTML document. This is relative
     * to this app.json file.
     */
    "indexHtmlPath": "index.html",

    /**
     * The absolute URL to this application in development environment, i.e: the URL to run
     * this application on your web browser, e.g: "http://localhost/KitchenSink/index.html".
     *
     * This value is needed when build to resolve your application's dependencies if it
     * requires server-side resources. This setting is only used if you enable dynamic
     * resolution by setting "skip.resolve=0" (in .sencha/app/sencha.cfg) or if you
     * invoke "sencha app resolve".
     */
    "url": null,

    /**
     * List of all JavaScript assets in the right execution order.
     *
     * Each item is an object with the following format:
     *
     *      {
     *          // Path to file. If the file is local this must be a relative path from
     *          // this app.json file.
     *          //
     *          "path": "path/to/script.js",   // REQUIRED
     *
     *          // Set to true on one file to indicate that it should become the container
     *          // for the concatenated classes.
     *          //
     *          "bundle": false,    // OPTIONAL
     *
     *          // Set to true to include this file in the concatenated classes.
     *          //
     *          "includeInBundle": false,  // OPTIONAL
     *
     *          // Specify as true if this file is remote and should not be copied into the
     *          // build folder. Defaults to false for a local file which will be copied.
     *          //
     *          "remote": false,    // OPTIONAL
     *
     *          // If not specified, this file will only be loaded once, and cached inside
     *          // localStorage until this value is changed. You can specify:
     *          //
     *          //   - "delta" to enable over-the-air delta update for this file
     *          //   - "full" means full update will be made when this file changes
     *          //
     *          "update": "",        // OPTIONAL
     *
     *          // A value of true indicates that is a development mode only dependency.
     *          // These files will not be copied into the build directory or referenced
     *          // in the generate app.json manifest for the micro loader.
     *          //
     *          "bootstrap": false   // OPTIONAL
     *      }
     */
    "js": [
    	{
            "path": "lib/prettify/prettify.js",
            "includeInBundle": true
    	},
        {
            "path": "app.js",
            "bundle": true
        }
    ],

    /**
     * List of all CSS assets in the right inclusion order.
     *
     * Each item is an object with the following format:
     *
     *      {
     *          // Path to file. If the file is local this must be a relative path from
     *          // this app.json file.
     *          //
     *          "path": "path/to/stylesheet.css",   // REQUIRED
     *
     *          // Specify as true if this file is remote and should not be copied into the
     *          // build folder. Defaults to false for a local file which will be copied.
     *          //
     *          "remote": false,    // OPTIONAL
     *
     *          // If not specified, this file will only be loaded once, and cached inside
     *          // localStorage until this value is changed. You can specify:
     *          //
     *          //   - "delta" to enable over-the-air delta update for this file
     *          //   - "full" means full update will be made when this file changes
     *          //
     *          "update": ""      // OPTIONAL
     *      }
     */
    "css": [
        {
            "path": "lib/prettify/prettify.css"
        },
        {
            "path": "${build.out.css.dir}/KitchenSink-all.css",
            "bundle": true,
            "exclude": ["fashion"]
        },
        {
            "path": "../resources/Sencha-Examples/style.css",
            "remote": true
        }
    ],

    /**
     * Used to automatically generate cache.manifest (HTML 5 application cache manifest) file when you build
     */
    "appCache": {
        /**
         * List of items in the CACHE MANIFEST section
         */
        "cache": [
            "index.html"
        ],
        /**
         * List of items in the NETWORK section
         */
        "network": [
            "*"
        ],
        /**
         * List of items in the FALLBACK section
         */
        "fallback": []
    },

    /**
     * Extra resources to be copied along when build
     */
    "resources": [
        {
            "path": "${toolkit.name}/samples",
            "mode": "relative"
        },
        {
            "path": "${toolkit.name}/sass",
            "mode": "relative"
        },
        {
            "path": "${toolkit.name}/src",
            "mode": "relative"
        },
        {
            "path": "data",
            "mode": "relative"
        },
        {
            "path": "samples/data/calendar",
            "mode": "relative"
        },
        {
            "path": "lib",
            "mode": "relative"
        },
        {
            "path": "resources",
            "output": "shared"
        },
        {
            "path": "${toolkit.name}/resources",
            "mode": "relative"
        },
        {
            "path": "${toolkit.name}/resources/images",
            "output": "images"
        },
        {
            "path": "${build.id}/resources"
        }
    ],

    /**
     * File / directory name matchers to ignore when copying to the builds, must be valid regular expressions
     */
    "ignore": [
        "^\\.svn$",
        "^\\.git$"
    ],

    /**
     * Directory path to store all previous production builds. Note that the content generated inside this directory
     * must be kept intact for proper generation of deltas between updates
     */
    "archivePath": "archive",

    /**
     * Additional resources used during theme slicing operations
     */
    "slicer": {
        "js": [
            {
                "path": "${app.dir}/sass/example/custom.js",
                "isWidgetManifest": true
            }
        ]
    },

    /**
     * override objects for setting build environment specific
     * settings.
     */
    "production": {
        "compressor": {
            "type": "yui"
        },
        "output": {
            "appCache": {
                "enable": false
            }
        },
        "cache": {
            "enable": false
        }
    },

    "testing": {
    },

    "development": {
        "fashion": {
            "inliner": {
                "enable": false
            }
        }
    },

    /**
     * Controls the name of the manifest file used by the microloader for
     * dev mode
     */
    "bootstrap": {
        "manifest": "${build.id}.json"
    },

    /**
     *  Controls the output directory for build resources.  May be set with
     *  either a string:
     *
     *      outputDir: ""
     *
     *  or an object containing 5 possible values for various types of
     *  build artifacts:
     *
     *  outputDir: {
     *      // this is the base of the output directory.  all other paths
     *      // are relative to this
     *      base: ""
     *
     *      // output dir for the index.html and manifest.json files.
     *      // defaults to base
     *      page:".",
     *
     *      // output dir for compile js files.
     *      // defaults to base
     *      js: ".",
     *
     *      // output dir for compiled app css content.
     *      // defaults to "resources" under the base location
     *      css: "./resources",
     *
     *      // output dir for all other page resources (images, etc.)
     *      // defaults to the css location
     *      resources: ""
     *  }
     *
     */
    "output": {
        "base": "${ext.dir}/build/examples/kitchensink",
        "page": "index.html",
        "manifest": "${build.id}.json",
        "js": "${build.id}/app.js",
        "framework": "${build.id}/framework.js",
        "resources": {
            "path": "./${build.id}/resources",
            "images": "./${build.id}/resources/images",
            "shared": "./resources",
            "toolkit": "${toolkit.name}/resources",
            "base": "."
        },
        "deltas": {
            "enable": false
        },
        "appCache": {
            "enable": false
        }
    },

    "overrides": [
        "${app.dir}/overrides",
        "${app.dir}/locale/${app.locale}",
        "${app.dir}/${toolkit.name}/overrides",
        "${app.dir}/${toolkit.name}/locale/${app.locale}"
    ],

    "requires": [
        "font-awesome",
        "ux",
        "amf",
        "soap",
        "pivot",
        "charts",
        "d3",
        "calendar",
        "pivot-d3"
    ],

    "classic": {
        "js": [
            {
                "path": "../classic/shared/examples.js",
                "includeInBundle": true
            }
        ],
        "locales": [
            "en",
            "he"
        ],
        "requires": [
            "locale",
            "font-ext"
        ]
    },

    "modern": {
        "slicer": null,
        "requires": [
            "google"
        ],
        "locales": [
            "en"
        ]
    },

   "builds": {
        "classic": {
            "toolkit": "classic",
            "theme": "theme-classic"
        },
        "gray": {
            "toolkit": "classic",
            "theme": "theme-gray"
        },
        "crisp": {
            "toolkit": "classic",
            "theme": "theme-crisp"
        },
        "crisp-touch": {
            "toolkit": "classic",
            "theme": "theme-crisp-touch"
        },
        "neptune": {
            "toolkit": "classic",
            "theme": "theme-neptune"
        },
        "neptune-touch": {
            "toolkit": "classic",
            "theme": "theme-neptune-touch"
        },
        "triton": {
            "toolkit": "classic",
            "theme": "theme-triton"
        },

        "modern-triton": {
            "toolkit": "modern",
            "theme": "theme-triton"
        },
        "modern-neptune": {
            "toolkit": "modern",
            "theme": "theme-neptune"
        },
        "material": {
            "toolkit": "modern",
            "material" : {
                "toolbar": {
                    "color": "#1976d2",
                    "dynamic": true
                }
            },
            "theme": "theme-material"
        },
        "ios": {
            "toolkit": "modern",
            "theme": "theme-ios"
        }
    },

//    "fashion": {
//        "inliner": {
//            "enable": false,
//            "report": true,
//            "excludes": [
//                ".*OpenSans.*",
//                ".*font.?awesome.*"
//            ]
//        }
//    }

    /**
     * Uniquely generated id for this application, used as prefix for localStorage keys.
     * Normally you should never change this value.
     */
    "id": "7f0d3b50-5cb1-47e0-97b7-ffe69d12d49e"
}
