app.json 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502
  1. {
  2. "name": "uas",
  3. "namespace": "uas",
  4. "version": "1.0.0.0",
  5. "framework": "ext",
  6. "toolkit": "classic",
  7. "theme": "theme-triton",
  8. /**
  9. * The list of required packages (with optional versions; default is "latest").
  10. *
  11. * For example,
  12. *
  13. * "requires": [
  14. * "charts"
  15. * ]
  16. */
  17. "requires": [
  18. "font-awesome"
  19. ],
  20. /**
  21. * The relative path to the application's markup file (html, jsp, asp, etc.).
  22. */
  23. "indexHtmlPath": "index.html",
  24. /**
  25. * Comma-separated string with the paths of directories or files to search. Any classes
  26. * declared in these locations will be available in your class "requires" or in calls
  27. * to "Ext.require". The "app.dir" variable below is expanded to the path where the
  28. * application resides (the same folder in which this file is located).
  29. */
  30. "classpath": [
  31. "${app.dir}/app",
  32. "${app.dir}/ux",
  33. "${app.dir}/samples"
  34. ],
  35. /**
  36. * Comma-separated string with the paths of directories or files to search. Any classes
  37. * declared in these locations will be automatically required and included in the build.
  38. * If any file defines an Ext JS override (using Ext.define with an "override" property),
  39. * that override will in fact only be included in the build if the target class specified
  40. * in the "override" property is also included.
  41. */
  42. "overrides": [
  43. "overrides"
  44. ],
  45. /**
  46. * Fashion build configuration properties.
  47. */
  48. "fashion": {
  49. "missingParameters": "error",
  50. "inliner": {
  51. /**
  52. * Disable resource inliner. Production builds enable this by default.
  53. */
  54. "enable": false
  55. }
  56. },
  57. /**
  58. * Sass configuration properties.
  59. */
  60. "sass": {
  61. /**
  62. * The root namespace to use when mapping *.scss files to classes in the
  63. * sass/src and sass/var directories. For example, "uas.view.Foo" would
  64. * map to "sass/src/view/Foo.scss". If we changed this to "uas.view" then
  65. * it would map to "sass/src/Foo.scss". To style classes outside the app's
  66. * root namespace, change this to "". Doing so would change the mapping of
  67. * "uas.view.Foo" to "sass/src/uas/view/Foo.scss".
  68. */
  69. "namespace": "uas",
  70. /**
  71. * Generated sass source settings
  72. *
  73. * "generated": {
  74. * // The file used to save sass variables edited via Sencha Inspector and Sencha Themer.
  75. * // This file will automatically be applied to the end of the scss build.
  76. * "var": "sass/save.scss",
  77. *
  78. * // The directory used to save generated sass sources.
  79. * // This directory will automatically be applied to the end of the scss build.
  80. * "src": "sass/save"
  81. * }
  82. *
  83. */
  84. "generated": {
  85. "var": "sass/save.scss",
  86. "src": "sass/save"
  87. },
  88. /**
  89. * Comma-separated list of files or folders containing extra Sass. These
  90. * files are automatically included in the Sass compilation. By default this
  91. * is just "etc/all.scss" to allow import directives to control the order
  92. * other files are included.
  93. *
  94. * All "etc" files are included at the top of the Sass compilation in their
  95. * dependency order:
  96. *
  97. * +-------+---------+
  98. * | | base |
  99. * | theme +---------+
  100. * | | derived |
  101. * +-------+---------+
  102. * | packages | (in package dependency order)
  103. * +-----------------+
  104. * | application |
  105. * +-----------------+
  106. */
  107. "etc": [
  108. "sass/etc/all.scss"
  109. ],
  110. /**
  111. * Comma-separated list of folders containing Sass variable definitions
  112. * files. These file can also define Sass mixins for use by components.
  113. *
  114. * All "var" files are included after "etc" files in the Sass compilation in
  115. * dependency order:
  116. *
  117. * +-------+---------+
  118. * | | base |
  119. * | theme +---------+
  120. * | | derived |
  121. * +-------+---------+
  122. * | packages | (in package dependency order)
  123. * +-----------------+
  124. * | application |
  125. * +-----------------+
  126. *
  127. * The "sass/var/all.scss" file is always included at the start of the var
  128. * block before any files associated with JavaScript classes.
  129. */
  130. "var": [
  131. "sass/var/all.scss",
  132. "sass/var"
  133. ],
  134. /**
  135. * Comma-separated list of folders containing Sass rule files.
  136. *
  137. * All "src" files are included after "var" files in the Sass compilation in
  138. * dependency order (the same order as "etc"):
  139. *
  140. * +-------+---------+
  141. * | | base |
  142. * | theme +---------+
  143. * | | derived |
  144. * +-------+---------+
  145. * | packages | (in package dependency order)
  146. * +-----------------+
  147. * | application |
  148. * +-----------------+
  149. */
  150. "src": [
  151. "sass/src"
  152. ]
  153. },
  154. /**
  155. * List of all JavaScript assets in the right execution order.
  156. *
  157. * Each item is an object with the following format:
  158. *
  159. * {
  160. * // Path to file. If the file is local this must be a relative path from
  161. * // this app.json file.
  162. * //
  163. * "path": "path/to/script.js", // REQUIRED
  164. *
  165. * // Set to true on one file to indicate that it should become the container
  166. * // for the concatenated classes.
  167. * //
  168. * "bundle": false, // OPTIONAL
  169. *
  170. * // Set to true to include this file in the concatenated classes.
  171. * //
  172. * "includeInBundle": false, // OPTIONAL
  173. *
  174. * // Specify as true if this file is remote and should not be copied into the
  175. * // build folder. Defaults to false for a local file which will be copied.
  176. * //
  177. * "remote": false, // OPTIONAL
  178. *
  179. * // If not specified, this file will only be loaded once, and cached inside
  180. * // localStorage until this value is changed. You can specify:
  181. * //
  182. * // - "delta" to enable over-the-air delta update for this file
  183. * // - "full" means full update will be made when this file changes
  184. * //
  185. * "update": "", // OPTIONAL
  186. *
  187. * // A value of true indicates that is a development mode only dependency.
  188. * // These files will not be copied into the build directory or referenced
  189. * // in the generate app.json manifest for the micro loader.
  190. * //
  191. * "bootstrap": false // OPTIONAL
  192. * }
  193. *
  194. */
  195. "js": [
  196. {
  197. "path": "${framework.dir}/build/ext-all-rtl-debug.js"
  198. },
  199. {
  200. "path": "app.js",
  201. "bundle": true
  202. }
  203. ],
  204. /**
  205. * List of all CSS assets in the right inclusion order.
  206. *
  207. * Each item is an object with the following format:
  208. *
  209. * {
  210. * // Path to file. If the file is local this must be a relative path from
  211. * // this app.json file.
  212. * //
  213. * "path": "path/to/stylesheet.css", // REQUIRED
  214. *
  215. * // Specify as true if this file is remote and should not be copied into the
  216. * // build folder. Defaults to false for a local file which will be copied.
  217. * //
  218. * "remote": false, // OPTIONAL
  219. *
  220. * // If not specified, this file will only be loaded once, and cached inside
  221. * // localStorage until this value is changed. You can specify:
  222. * //
  223. * // - "delta" to enable over-the-air delta update for this file
  224. * // - "full" means full update will be made when this file changes
  225. * //
  226. * "update": "" // OPTIONAL
  227. * }
  228. */
  229. "css": [
  230. {
  231. // this entry uses an ant variable that is the calculated
  232. // value of the generated output css file for the app,
  233. // defined in .sencha/app/defaults.properties
  234. "path": "${build.out.css.path}",
  235. "bundle": true,
  236. "exclude": ["fashion"]
  237. }
  238. ],
  239. /**
  240. * This option is used to configure the dynamic loader. At present these options
  241. * are supported.
  242. *
  243. */
  244. "loader": {
  245. // This property controls how the loader manages caching for requests:
  246. //
  247. // - true: allows requests to receive cached responses
  248. // - false: disable cached responses by adding a random "cache buster"
  249. // - other: a string (such as the build.timestamp shown here) to allow
  250. // requests to be cached for this build.
  251. //
  252. "cache": false,
  253. // When "cache" is not true, this value is the request parameter used
  254. // to control caching.
  255. //
  256. "cacheParam": "_dc"
  257. },
  258. /**
  259. * Settings specific to production builds.
  260. */
  261. "production": {
  262. "output": {
  263. "appCache": {
  264. "enable": true,
  265. "path": "cache.appcache"
  266. }
  267. },
  268. "loader": {
  269. "cache": "${build.timestamp}"
  270. },
  271. "cache": {
  272. "enable": true
  273. },
  274. "compressor": {
  275. "type": "yui"
  276. }
  277. },
  278. /**
  279. * Settings specific to testing builds.
  280. */
  281. "testing": {
  282. },
  283. /**
  284. * Settings specific to development builds.
  285. */
  286. "development": {
  287. "watch": {
  288. "delay": 250
  289. }
  290. },
  291. /**
  292. * Controls the output structure of development-mode (bootstrap) artifacts. May
  293. * be specified by a string:
  294. *
  295. * "bootstrap": "${app.dir}"
  296. *
  297. * This will adjust the base path for all bootstrap objects, or expanded into object
  298. * form:
  299. *
  300. * "bootstrap": {
  301. * "base": "${app.dir}",
  302. * "manifest": "bootstrap.json",
  303. * "microloader": "bootstrap.js",
  304. * "css": "bootstrap.css"
  305. * }
  306. *
  307. * You can optionally exclude entries from the manifest. For example, to exclude
  308. * the "loadOrder" (to help development load approximate a build) you can add:
  309. *
  310. * "bootstrap": {
  311. * "manifest": {
  312. * "path": "bootstrap.json",
  313. * "exclude": "loadOrder"
  314. * }
  315. * }
  316. *
  317. */
  318. "bootstrap": {
  319. "base": "${app.dir}",
  320. "microloader": "bootstrap.js",
  321. "css": "bootstrap.css"
  322. },
  323. /**
  324. * Controls the output directory for build resources. May be set with
  325. * either a string:
  326. *
  327. * "${workspace.build.dir}/${build.environment}/${app.name}"
  328. *
  329. * or an object containing values for various types of build artifacts:
  330. *
  331. * {
  332. * "base": "${workspace.build.dir}/${build.environment}/${app.name}",
  333. * "page": {
  334. * "path": "../index.html",
  335. * "enable": false
  336. * },
  337. * "css": "${app.output.resources}/${app.name}-all.css",
  338. * "js": {
  339. * "path": "app.js",
  340. * // This setting constrols the output language level. Set to 'ES6' to
  341. * // disable the transpiler
  342. * "version": "ES5"
  343. * },
  344. * "microloader": {
  345. * "path": "microloader.js",
  346. * "embed": true,
  347. * "enable": true
  348. * },
  349. * "manifest": {
  350. * "path": "app.json",
  351. * "embed": false,
  352. * "enable": "${app.output.microloader.enable}"
  353. * },
  354. * "resources": "resources",
  355. * "slicer": {
  356. * "path": "${app.output.resources}/images",
  357. * "enable": false
  358. * },
  359. * // Setting the "enable" property of this object to a Truthy value will cause a Application Cache
  360. * // manifest file to be generated based on this files appCache object. This file will then be injected
  361. * // into the index.html file of the built application
  362. * "appCache":{
  363. * "enable": false"
  364. * }
  365. * }
  366. *
  367. */
  368. "output": {
  369. "base": "${workspace.build.dir}/${build.environment}/${app.name}",
  370. "appCache": {
  371. "enable": false
  372. }
  373. },
  374. /**
  375. * Controls for localStorage caching
  376. * "cache": {
  377. * // This property controls whether localStorage caching of this manifest file is on or off.
  378. * // if disabled no deltas will be generated during a build and full updates will be disabled
  379. * "enable": false,
  380. *
  381. * // This property allows for global toggle of deltas.
  382. * // If set to a string the value will be used as the path to where deltas will be generated relative to you build.
  383. * // If set to a Truthy Value the default path ok "deltas" will be used
  384. * // If set to a Falsey value or if this property is not present deltas will be disabled and not generated.
  385. *
  386. * "deltas": "deltas"
  387. * }
  388. */
  389. "cache": {
  390. "enable": false,
  391. "deltas": true
  392. },
  393. /**
  394. * Used to automatically generate cache.manifest (HTML 5 application cache manifest)
  395. * file when you build.
  396. */
  397. "appCache": {
  398. /**
  399. * List of items in the CACHE MANIFEST section
  400. */
  401. "cache": [
  402. "index.html"
  403. ],
  404. /**
  405. * List of items in the NETWORK section
  406. */
  407. "network": [
  408. "*"
  409. ],
  410. /**
  411. * List of items in the FALLBACK section
  412. */
  413. "fallback": []
  414. },
  415. /**
  416. * Extra resources to be copied into the resource folder as specified in the "resources"
  417. * property of the "output" object. Folders specified in this list will be deeply copied.
  418. */
  419. "resources": [
  420. {
  421. "path": "resources",
  422. "output": "shared"
  423. }
  424. ],
  425. /**
  426. * Directory path to store all previous production builds. Note that the content
  427. * generated inside this directory must be kept intact for proper generation of
  428. * deltas between updates.
  429. */
  430. "archivePath": "archive",
  431. /**
  432. * Additional resources used during theme slicing operations
  433. */
  434. "slicer": {
  435. "js": [
  436. {
  437. "path": "sass/example/custom.js",
  438. "isWidgetManifest": true
  439. }
  440. ],
  441. "output": {
  442. "appCache": {
  443. "enable": false
  444. }
  445. },
  446. "cache": {
  447. "enable": false
  448. }
  449. },
  450. /**
  451. * Build Profiles. This object's properties are each a "build profile". You can
  452. * add as many as you need to produce optimized builds for devices, themes, locales
  453. * or other criteria. Your "Ext.beforeLoad" hook (see index.html) is responsible for
  454. * selecting the desired build profile by setting "Ext.manifest" to one of these
  455. * names.
  456. *
  457. */
  458. /**
  459. * File / directory name patttern to ignore when copying to the builds. Must be a
  460. * valid regular expression.
  461. */
  462. "ignore": [
  463. "(^|/)CVS(/?$|/.*?$)"
  464. ],
  465. /**
  466. * Uniquely generated id for this application, used as prefix for localStorage keys.
  467. * Normally you should never change this value.
  468. */
  469. "id": "87100719-3701-4a39-9b0f-ed5f99833426"
  470. }