app.json 16 KB

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