machinery-tool 1.23.1 → 1.24.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (83) hide show
  1. checksums.yaml +5 -5
  2. data/.git_revision +1 -1
  3. data/NEWS +11 -0
  4. data/export_helpers/kiwi_export_readme.md +3 -3
  5. data/export_helpers/merge_users_and_groups.pl.erb +1 -1
  6. data/lib/build_task.rb +5 -3
  7. data/lib/deploy_task.rb +0 -1
  8. data/lib/exceptions.rb +13 -0
  9. data/lib/kiwi_config.rb +3 -9
  10. data/lib/machinery_helper.rb +15 -1
  11. data/lib/remote_system.rb +4 -2
  12. data/lib/system_description.rb +0 -9
  13. data/lib/version.rb +1 -1
  14. data/machinery-helper/version.go +1 -1
  15. data/man/generated/machinery.1.gz +0 -0
  16. data/manual/docs/index.html +2 -8
  17. data/manual/docs/machinery.ymp +10 -10
  18. data/manual/mkdocs.yml +3 -1
  19. data/manual/site/404.html +145 -0
  20. data/manual/site/css/base.css +324 -0
  21. data/manual/site/css/bootstrap-custom.min.css +1 -0
  22. data/manual/site/css/fixed-positioning.css +0 -0
  23. data/manual/site/css/font-awesome.min.css +4 -0
  24. data/manual/site/docs/index.html +25 -70
  25. data/manual/site/fonts/fontawesome-webfont.eot +0 -0
  26. data/manual/site/fonts/fontawesome-webfont.svg +2671 -0
  27. data/manual/site/fonts/fontawesome-webfont.ttf +0 -0
  28. data/manual/site/fonts/fontawesome-webfont.woff +0 -0
  29. data/manual/site/fonts/fontawesome-webfont.woff2 +0 -0
  30. data/manual/site/fonts/glyphicons-halflings-regular.eot +0 -0
  31. data/manual/site/fonts/glyphicons-halflings-regular.svg +288 -0
  32. data/manual/site/fonts/glyphicons-halflings-regular.ttf +0 -0
  33. data/manual/site/fonts/glyphicons-halflings-regular.woff +0 -0
  34. data/manual/site/fonts/glyphicons-halflings-regular.woff2 +0 -0
  35. data/manual/site/img/favicon.ico +0 -0
  36. data/manual/site/img/grid.png +0 -0
  37. data/manual/site/index.html +135 -396
  38. data/manual/site/js/base.js +216 -0
  39. data/manual/site/js/bootstrap-3.0.3.min.js +7 -0
  40. data/manual/site/js/jquery-1.10.2.min.js +6 -0
  41. data/manual/site/js/jquery.nicescroll.min.js +0 -0
  42. data/manual/site/js/jquery.pageslide.min.js +0 -0
  43. data/manual/site/js/parallaxImg.js +0 -0
  44. data/manual/site/machinery-analyze.1/index.html +25 -54
  45. data/manual/site/machinery-build.1/index.html +25 -85
  46. data/manual/site/machinery-compare.1/index.html +25 -87
  47. data/manual/site/machinery-config.1/index.html +25 -62
  48. data/manual/site/machinery-copy.1/index.html +25 -50
  49. data/manual/site/machinery-deploy.1/index.html +25 -87
  50. data/manual/site/machinery-export-autoyast.1/index.html +25 -74
  51. data/manual/site/machinery-export-html.1/index.html +25 -55
  52. data/manual/site/machinery-export-kiwi.1/index.html +25 -56
  53. data/manual/site/machinery-inspect-container.1/index.html +25 -129
  54. data/manual/site/machinery-inspect.1/index.html +25 -172
  55. data/manual/site/machinery-list.1/index.html +25 -67
  56. data/manual/site/machinery-man.1/index.html +25 -34
  57. data/manual/site/machinery-move.1/index.html +25 -49
  58. data/manual/site/machinery-remove.1/index.html +25 -62
  59. data/manual/site/machinery-serve.1/index.html +25 -61
  60. data/manual/site/machinery-show.1/index.html +25 -86
  61. data/manual/site/machinery-upgrade-format.1/index.html +25 -60
  62. data/manual/site/machinery-validate.1/index.html +25 -48
  63. data/manual/site/machinery.ymp +10 -10
  64. data/manual/site/machinery_main_general.1/index.html +25 -133
  65. data/manual/site/machinery_main_scopes.1/index.html +25 -129
  66. data/manual/site/machinery_main_security_implications.1/index.html +25 -108
  67. data/manual/site/machinery_main_usecases.1/index.html +25 -44
  68. data/manual/site/search/lunr.js +2986 -0
  69. data/manual/site/search/main.js +96 -0
  70. data/manual/site/search/search_index.json +1 -0
  71. data/manual/site/search/worker.js +128 -0
  72. data/manual/site/sitemap.xml +48 -87
  73. data/manual/site/sitemap.xml.gz +0 -0
  74. data/plugins/os/os_model.rb +0 -29
  75. data/tools/go.rb +14 -20
  76. metadata +32 -17
  77. data/manual/site/mkdocs/js/lunr.min.js +0 -7
  78. data/manual/site/mkdocs/js/mustache.min.js +0 -1
  79. data/manual/site/mkdocs/js/require.js +0 -36
  80. data/manual/site/mkdocs/js/search-results-template.mustache +0 -4
  81. data/manual/site/mkdocs/js/search.js +0 -88
  82. data/manual/site/mkdocs/js/text.js +0 -390
  83. data/manual/site/mkdocs/search_index.json +0 -869
data/tools/go.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  # encoding:utf-8
2
2
 
3
- # Copyright (c) 2013-2016 SUSE LLC
3
+ # Copyright (c) 2013-2019 SUSE LLC
4
4
  #
5
5
  # This program is free software; you can redistribute it and/or
6
6
  # modify it under the terms of version 3 of the GNU General Public License as
@@ -21,29 +21,26 @@
21
21
 
22
22
  class Go
23
23
  def archs
24
- @archs ||= case
25
- when version <= 1.4
24
+ @archs ||= if Gem::Version.new(version) <= Gem::Version.new("1.4")
26
25
  ["i686", "x86_64"].include?(local_arch) ? [local_arch] : []
27
- when version == 1.6 && suse_package_includes_s390?
28
- ["i686", "x86_64", "ppc64le", "ppc64", "s390x", "armv6l", "armv7l", "aarch64"]
29
- when version <= 1.6
30
- ["i686", "x86_64", "ppc64le", "ppc64", "armv6l", "armv7l", "aarch64"]
31
- when version >= 1.7
32
- ["i686", "x86_64", "ppc64le", "ppc64", "s390x", "armv6l", "armv7l", "aarch64"]
26
+ elsif Gem::Version.new(version) == Gem::Version.new("1.6") && suse_package_includes_s390?
27
+ ["i686", "x86_64", "ppc64le", "ppc64", "s390x", "armv7l", "aarch64"]
28
+ elsif Gem::Version.new(version) <= Gem::Version.new("1.6")
29
+ ["i686", "x86_64", "ppc64le", "ppc64", "armv7l", "aarch64"]
30
+ elsif Gem::Version.new(version) >= Gem::Version.new("1.7")
31
+ ["i686", "x86_64", "ppc64le", "ppc64", "s390x", "armv7l", "aarch64"]
33
32
  end
34
33
  end
35
34
 
36
35
  def build
37
36
  if archs.count == 1
38
- arch = archs.first
39
- puts("Building machinery-helper for architecture #{arch}.")
40
- system("go build -o machinery-helper-#{arch}")
37
+ single_arch = archs.first
38
+ puts("Building machinery-helper for architecture #{single_arch}.")
39
+ system("go build -o machinery-helper-#{single_arch}")
41
40
  else
42
41
  archs.each do |arch|
43
42
  puts("Building machinery-helper for architecture #{arch}.")
44
- system(
45
- "env GOOS=linux #{compile_options(arch)} go build -o machinery-helper-#{arch}"
46
- )
43
+ system("env GOOS=linux #{compile_options(arch)} go build -o machinery-helper-#{arch}")
47
44
  end
48
45
  end
49
46
  end
@@ -63,7 +60,7 @@ class Go
63
60
  private
64
61
 
65
62
  def version
66
- @version ||= run_go_version[/go(\d+.\d)/, 1].to_f
63
+ @version ||= run_go_version[/go(\d+.\d+)/, 1]
67
64
  end
68
65
 
69
66
  def suse_package_includes_s390?
@@ -81,11 +78,8 @@ class Go
81
78
  "386"
82
79
  when "aarch64"
83
80
  "arm64"
84
- when "armv6l"
85
- additional_options = " GOARM=6"
86
- "arm"
87
81
  when "armv7l"
88
- additional_options = " GOARM=7"
82
+ additional_options = " GOARM=6"
89
83
  "arm"
90
84
  else
91
85
  arch
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: machinery-tool
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.23.1
4
+ version: 1.24.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - SUSE
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-11-24 00:00:00.000000000 Z
11
+ date: 2019-07-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: cheetah
@@ -72,14 +72,14 @@ dependencies:
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 2.2.4
75
+ version: '2.2'
76
76
  type: :runtime
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 2.2.4
82
+ version: '2.2'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: haml
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -98,14 +98,14 @@ dependencies:
98
98
  name: kramdown
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - "~>"
101
+ - - ">="
102
102
  - !ruby/object:Gem::Version
103
103
  version: '1.3'
104
104
  type: :runtime
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - "~>"
108
+ - - ">="
109
109
  - !ruby/object:Gem::Version
110
110
  version: '1.3'
111
111
  - !ruby/object:Gem::Dependency
@@ -209,8 +209,7 @@ dependencies:
209
209
  description: Machinery is a systems management toolkit for Linux. It supports configuration
210
210
  discovery, system validation, and service migration. It's based on the idea of a
211
211
  universal system description.
212
- email:
213
- - machinery@lists.suse.com
212
+ email:
214
213
  executables:
215
214
  - machinery
216
215
  extensions:
@@ -468,13 +467,27 @@ files:
468
467
  - manual/docs/machinery_main_usecases.1.md
469
468
  - manual/docs/wheels.png
470
469
  - manual/mkdocs.yml
470
+ - manual/site/404.html
471
471
  - manual/site/CNAME
472
+ - manual/site/css/base.css
473
+ - manual/site/css/bootstrap-custom.min.css
472
474
  - manual/site/css/bootstrap.min.css
473
475
  - manual/site/css/custom.css
474
476
  - manual/site/css/fixed-positioning.css
477
+ - manual/site/css/font-awesome.min.css
475
478
  - manual/site/custom.css
476
479
  - manual/site/docs/index.html
477
480
  - manual/site/favicon.png
481
+ - manual/site/fonts/fontawesome-webfont.eot
482
+ - manual/site/fonts/fontawesome-webfont.svg
483
+ - manual/site/fonts/fontawesome-webfont.ttf
484
+ - manual/site/fonts/fontawesome-webfont.woff
485
+ - manual/site/fonts/fontawesome-webfont.woff2
486
+ - manual/site/fonts/glyphicons-halflings-regular.eot
487
+ - manual/site/fonts/glyphicons-halflings-regular.svg
488
+ - manual/site/fonts/glyphicons-halflings-regular.ttf
489
+ - manual/site/fonts/glyphicons-halflings-regular.woff
490
+ - manual/site/fonts/glyphicons-halflings-regular.woff2
478
491
  - manual/site/hand3.png
479
492
  - manual/site/img/arrow.png
480
493
  - manual/site/img/background/1.png
@@ -490,9 +503,11 @@ files:
490
503
  - manual/site/img/configuration-discovery.png
491
504
  - manual/site/img/dot-line-left.png
492
505
  - manual/site/img/dot-line-right.png
506
+ - manual/site/img/favicon.ico
493
507
  - manual/site/img/gear.png
494
508
  - manual/site/img/gear2.png
495
509
  - manual/site/img/gear3.png
510
+ - manual/site/img/grid.png
496
511
  - manual/site/img/hand.png
497
512
  - manual/site/img/hand2.png
498
513
  - manual/site/img/hand3.png
@@ -510,8 +525,11 @@ files:
510
525
  - manual/site/img/usecase4.png
511
526
  - manual/site/img/wheels.png
512
527
  - manual/site/index.html
528
+ - manual/site/js/base.js
529
+ - manual/site/js/bootstrap-3.0.3.min.js
513
530
  - manual/site/js/bootstrap.min.js
514
531
  - manual/site/js/custom.js
532
+ - manual/site/js/jquery-1.10.2.min.js
515
533
  - manual/site/js/jquery.js
516
534
  - manual/site/js/jquery.nicescroll.min.js
517
535
  - manual/site/js/jquery.pageslide.min.js
@@ -541,14 +559,12 @@ files:
541
559
  - manual/site/machinery_main_scopes.1/index.html
542
560
  - manual/site/machinery_main_security_implications.1/index.html
543
561
  - manual/site/machinery_main_usecases.1/index.html
544
- - manual/site/mkdocs/js/lunr.min.js
545
- - manual/site/mkdocs/js/mustache.min.js
546
- - manual/site/mkdocs/js/require.js
547
- - manual/site/mkdocs/js/search-results-template.mustache
548
- - manual/site/mkdocs/js/search.js
549
- - manual/site/mkdocs/js/text.js
550
- - manual/site/mkdocs/search_index.json
562
+ - manual/site/search/lunr.js
563
+ - manual/site/search/main.js
564
+ - manual/site/search/search_index.json
565
+ - manual/site/search/worker.js
551
566
  - manual/site/sitemap.xml
567
+ - manual/site/sitemap.xml.gz
552
568
  - manual/site/wheels.png
553
569
  - plugins/changed_config_files/changed_config_files.yml
554
570
  - plugins/changed_config_files/changed_config_files_inspector.rb
@@ -763,8 +779,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
763
779
  - !ruby/object:Gem::Version
764
780
  version: 1.3.6
765
781
  requirements: []
766
- rubyforge_project:
767
- rubygems_version: 2.2.5
782
+ rubygems_version: 3.0.3
768
783
  signing_key:
769
784
  specification_version: 4
770
785
  summary: Systems management toolkit
@@ -1,7 +0,0 @@
1
- /**
2
- * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 0.7.0
3
- * Copyright (C) 2016 Oliver Nightingale
4
- * MIT Licensed
5
- * @license
6
- */
7
- !function(){var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.7.0",t.utils={},t.utils.warn=function(t){return function(e){t.console&&console.warn&&console.warn(e)}}(this),t.utils.asString=function(t){return void 0===t||null===t?"":t.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var t=Array.prototype.slice.call(arguments),e=t.pop(),n=t;if("function"!=typeof e)throw new TypeError("last argument must be a function");n.forEach(function(t){this.hasHandler(t)||(this.events[t]=[]),this.events[t].push(e)},this)},t.EventEmitter.prototype.removeListener=function(t,e){if(this.hasHandler(t)){var n=this.events[t].indexOf(e);this.events[t].splice(n,1),this.events[t].length||delete this.events[t]}},t.EventEmitter.prototype.emit=function(t){if(this.hasHandler(t)){var e=Array.prototype.slice.call(arguments,1);this.events[t].forEach(function(t){t.apply(void 0,e)})}},t.EventEmitter.prototype.hasHandler=function(t){return t in this.events},t.tokenizer=function(e){return arguments.length&&null!=e&&void 0!=e?Array.isArray(e)?e.map(function(e){return t.utils.asString(e).toLowerCase()}):e.toString().trim().toLowerCase().split(t.tokenizer.seperator):[]},t.tokenizer.seperator=/[\s\-]+/,t.tokenizer.load=function(t){var e=this.registeredFunctions[t];if(!e)throw new Error("Cannot load un-registered function: "+t);return e},t.tokenizer.label="default",t.tokenizer.registeredFunctions={"default":t.tokenizer},t.tokenizer.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing tokenizer: "+n),e.label=n,this.registeredFunctions[n]=e},t.Pipeline=function(){this._stack=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in this.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[e.label]=e},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.registeredFunctions[e];if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._stack.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._stack.indexOf(e);if(-1==i)throw new Error("Cannot find existingFn");i+=1,this._stack.splice(i,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._stack.indexOf(e);if(-1==i)throw new Error("Cannot find existingFn");this._stack.splice(i,0,n)},t.Pipeline.prototype.remove=function(t){var e=this._stack.indexOf(t);-1!=e&&this._stack.splice(e,1)},t.Pipeline.prototype.run=function(t){for(var e=[],n=t.length,i=this._stack.length,r=0;n>r;r++){for(var o=t[r],s=0;i>s&&(o=this._stack[s](o,r,t),void 0!==o&&""!==o);s++);void 0!==o&&""!==o&&e.push(o)}return e},t.Pipeline.prototype.reset=function(){this._stack=[]},t.Pipeline.prototype.toJSON=function(){return this._stack.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Vector=function(){this._magnitude=null,this.list=void 0,this.length=0},t.Vector.Node=function(t,e,n){this.idx=t,this.val=e,this.next=n},t.Vector.prototype.insert=function(e,n){this._magnitude=void 0;var i=this.list;if(!i)return this.list=new t.Vector.Node(e,n,i),this.length++;if(e<i.idx)return this.list=new t.Vector.Node(e,n,i),this.length++;for(var r=i,o=i.next;void 0!=o;){if(e<o.idx)return r.next=new t.Vector.Node(e,n,o),this.length++;r=o,o=o.next}return r.next=new t.Vector.Node(e,n,o),this.length++},t.Vector.prototype.magnitude=function(){if(this._magnitude)return this._magnitude;for(var t,e=this.list,n=0;e;)t=e.val,n+=t*t,e=e.next;return this._magnitude=Math.sqrt(n)},t.Vector.prototype.dot=function(t){for(var e=this.list,n=t.list,i=0;e&&n;)e.idx<n.idx?e=e.next:e.idx>n.idx?n=n.next:(i+=e.val*n.val,e=e.next,n=n.next);return i},t.Vector.prototype.similarity=function(t){return this.dot(t)/(this.magnitude()*t.magnitude())},t.SortedSet=function(){this.length=0,this.elements=[]},t.SortedSet.load=function(t){var e=new this;return e.elements=t,e.length=t.length,e},t.SortedSet.prototype.add=function(){var t,e;for(t=0;t<arguments.length;t++)e=arguments[t],~this.indexOf(e)||this.elements.splice(this.locationFor(e),0,e);this.length=this.elements.length},t.SortedSet.prototype.toArray=function(){return this.elements.slice()},t.SortedSet.prototype.map=function(t,e){return this.elements.map(t,e)},t.SortedSet.prototype.forEach=function(t,e){return this.elements.forEach(t,e)},t.SortedSet.prototype.indexOf=function(t){for(var e=0,n=this.elements.length,i=n-e,r=e+Math.floor(i/2),o=this.elements[r];i>1;){if(o===t)return r;t>o&&(e=r),o>t&&(n=r),i=n-e,r=e+Math.floor(i/2),o=this.elements[r]}return o===t?r:-1},t.SortedSet.prototype.locationFor=function(t){for(var e=0,n=this.elements.length,i=n-e,r=e+Math.floor(i/2),o=this.elements[r];i>1;)t>o&&(e=r),o>t&&(n=r),i=n-e,r=e+Math.floor(i/2),o=this.elements[r];return o>t?r:t>o?r+1:void 0},t.SortedSet.prototype.intersect=function(e){for(var n=new t.SortedSet,i=0,r=0,o=this.length,s=e.length,a=this.elements,h=e.elements;;){if(i>o-1||r>s-1)break;a[i]!==h[r]?a[i]<h[r]?i++:a[i]>h[r]&&r++:(n.add(a[i]),i++,r++)}return n},t.SortedSet.prototype.clone=function(){var e=new t.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},t.SortedSet.prototype.union=function(t){var e,n,i;this.length>=t.length?(e=this,n=t):(e=t,n=this),i=e.clone();for(var r=0,o=n.toArray();r<o.length;r++)i.add(o[r]);return i},t.SortedSet.prototype.toJSON=function(){return this.toArray()},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.Store,this.tokenStore=new t.TokenStore,this.corpusTokens=new t.SortedSet,this.eventEmitter=new t.EventEmitter,this.tokenizerFn=t.tokenizer,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var t=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,t)},t.Index.prototype.off=function(t,e){return this.eventEmitter.removeListener(t,e)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;return n._fields=e.fields,n._ref=e.ref,n.tokenizer=t.tokenizer.load(e.tokenizer),n.documentStore=t.Store.load(e.documentStore),n.tokenStore=t.TokenStore.load(e.tokenStore),n.corpusTokens=t.SortedSet.load(e.corpusTokens),n.pipeline=t.Pipeline.load(e.pipeline),n},t.Index.prototype.field=function(t,e){var e=e||{},n={name:t,boost:e.boost||1};return this._fields.push(n),this},t.Index.prototype.ref=function(t){return this._ref=t,this},t.Index.prototype.tokenizer=function(e){var n=e.label&&e.label in t.tokenizer.registeredFunctions;return n||t.utils.warn("Function is not a registered tokenizer. This may cause problems when serialising the index"),this.tokenizerFn=e,this},t.Index.prototype.add=function(e,n){var i={},r=new t.SortedSet,o=e[this._ref],n=void 0===n?!0:n;this._fields.forEach(function(t){var n=this.pipeline.run(this.tokenizerFn(e[t.name]));i[t.name]=n;for(var o=0;o<n.length;o++){var s=n[o];r.add(s),this.corpusTokens.add(s)}},this),this.documentStore.set(o,r);for(var s=0;s<r.length;s++){for(var a=r.elements[s],h=0,u=0;u<this._fields.length;u++){var l=this._fields[u],c=i[l.name],f=c.length;if(f){for(var d=0,p=0;f>p;p++)c[p]===a&&d++;h+=d/f*l.boost}}this.tokenStore.add(a,{ref:o,tf:h})}n&&this.eventEmitter.emit("add",e,this)},t.Index.prototype.remove=function(t,e){var n=t[this._ref],e=void 0===e?!0:e;if(this.documentStore.has(n)){var i=this.documentStore.get(n);this.documentStore.remove(n),i.forEach(function(t){this.tokenStore.remove(t,n)},this),e&&this.eventEmitter.emit("remove",t,this)}},t.Index.prototype.update=function(t,e){var e=void 0===e?!0:e;this.remove(t,!1),this.add(t,!1),e&&this.eventEmitter.emit("update",t,this)},t.Index.prototype.idf=function(t){var e="@"+t;if(Object.prototype.hasOwnProperty.call(this._idfCache,e))return this._idfCache[e];var n=this.tokenStore.count(t),i=1;return n>0&&(i=1+Math.log(this.documentStore.length/n)),this._idfCache[e]=i},t.Index.prototype.search=function(e){var n=this.pipeline.run(this.tokenizerFn(e)),i=new t.Vector,r=[],o=this._fields.reduce(function(t,e){return t+e.boost},0),s=n.some(function(t){return this.tokenStore.has(t)},this);if(!s)return[];n.forEach(function(e,n,s){var a=1/s.length*this._fields.length*o,h=this,u=this.tokenStore.expand(e).reduce(function(n,r){var o=h.corpusTokens.indexOf(r),s=h.idf(r),u=1,l=new t.SortedSet;if(r!==e){var c=Math.max(3,r.length-e.length);u=1/Math.log(c)}o>-1&&i.insert(o,a*s*u);for(var f=h.tokenStore.get(r),d=Object.keys(f),p=d.length,v=0;p>v;v++)l.add(f[d[v]].ref);return n.union(l)},new t.SortedSet);r.push(u)},this);var a=r.reduce(function(t,e){return t.intersect(e)});return a.map(function(t){return{ref:t,score:i.similarity(this.documentVector(t))}},this).sort(function(t,e){return e.score-t.score})},t.Index.prototype.documentVector=function(e){for(var n=this.documentStore.get(e),i=n.length,r=new t.Vector,o=0;i>o;o++){var s=n.elements[o],a=this.tokenStore.get(s)[e].tf,h=this.idf(s);r.insert(this.corpusTokens.indexOf(s),a*h)}return r},t.Index.prototype.toJSON=function(){return{version:t.version,fields:this._fields,ref:this._ref,tokenizer:this.tokenizerFn.label,documentStore:this.documentStore.toJSON(),tokenStore:this.tokenStore.toJSON(),corpusTokens:this.corpusTokens.toJSON(),pipeline:this.pipeline.toJSON()}},t.Index.prototype.use=function(t){var e=Array.prototype.slice.call(arguments,1);e.unshift(this),t.apply(this,e)},t.Store=function(){this.store={},this.length=0},t.Store.load=function(e){var n=new this;return n.length=e.length,n.store=Object.keys(e.store).reduce(function(n,i){return n[i]=t.SortedSet.load(e.store[i]),n},{}),n},t.Store.prototype.set=function(t,e){this.has(t)||this.length++,this.store[t]=e},t.Store.prototype.get=function(t){return this.store[t]},t.Store.prototype.has=function(t){return t in this.store},t.Store.prototype.remove=function(t){this.has(t)&&(delete this.store[t],this.length--)},t.Store.prototype.toJSON=function(){return{store:this.store,length:this.length}},t.stemmer=function(){var t={ational:"ate",tional:"tion",enci:"ence",anci:"ance",izer:"ize",bli:"ble",alli:"al",entli:"ent",eli:"e",ousli:"ous",ization:"ize",ation:"ate",ator:"ate",alism:"al",iveness:"ive",fulness:"ful",ousness:"ous",aliti:"al",iviti:"ive",biliti:"ble",logi:"log"},e={icate:"ic",ative:"",alize:"al",iciti:"ic",ical:"ic",ful:"",ness:""},n="[^aeiou]",i="[aeiouy]",r=n+"[^aeiouy]*",o=i+"[aeiou]*",s="^("+r+")?"+o+r,a="^("+r+")?"+o+r+"("+o+")?$",h="^("+r+")?"+o+r+o+r,u="^("+r+")?"+i,l=new RegExp(s),c=new RegExp(h),f=new RegExp(a),d=new RegExp(u),p=/^(.+?)(ss|i)es$/,v=/^(.+?)([^s])s$/,g=/^(.+?)eed$/,m=/^(.+?)(ed|ing)$/,y=/.$/,S=/(at|bl|iz)$/,w=new RegExp("([^aeiouylsz])\\1$"),k=new RegExp("^"+r+i+"[^aeiouwxy]$"),x=/^(.+?[^aeiou])y$/,b=/^(.+?)(ational|tional|enci|anci|izer|bli|alli|entli|eli|ousli|ization|ation|ator|alism|iveness|fulness|ousness|aliti|iviti|biliti|logi)$/,E=/^(.+?)(icate|ative|alize|iciti|ical|ful|ness)$/,F=/^(.+?)(al|ance|ence|er|ic|able|ible|ant|ement|ment|ent|ou|ism|ate|iti|ous|ive|ize)$/,_=/^(.+?)(s|t)(ion)$/,z=/^(.+?)e$/,O=/ll$/,P=new RegExp("^"+r+i+"[^aeiouwxy]$"),T=function(n){var i,r,o,s,a,h,u;if(n.length<3)return n;if(o=n.substr(0,1),"y"==o&&(n=o.toUpperCase()+n.substr(1)),s=p,a=v,s.test(n)?n=n.replace(s,"$1$2"):a.test(n)&&(n=n.replace(a,"$1$2")),s=g,a=m,s.test(n)){var T=s.exec(n);s=l,s.test(T[1])&&(s=y,n=n.replace(s,""))}else if(a.test(n)){var T=a.exec(n);i=T[1],a=d,a.test(i)&&(n=i,a=S,h=w,u=k,a.test(n)?n+="e":h.test(n)?(s=y,n=n.replace(s,"")):u.test(n)&&(n+="e"))}if(s=x,s.test(n)){var T=s.exec(n);i=T[1],n=i+"i"}if(s=b,s.test(n)){var T=s.exec(n);i=T[1],r=T[2],s=l,s.test(i)&&(n=i+t[r])}if(s=E,s.test(n)){var T=s.exec(n);i=T[1],r=T[2],s=l,s.test(i)&&(n=i+e[r])}if(s=F,a=_,s.test(n)){var T=s.exec(n);i=T[1],s=c,s.test(i)&&(n=i)}else if(a.test(n)){var T=a.exec(n);i=T[1]+T[2],a=c,a.test(i)&&(n=i)}if(s=z,s.test(n)){var T=s.exec(n);i=T[1],s=c,a=f,h=P,(s.test(i)||a.test(i)&&!h.test(i))&&(n=i)}return s=O,a=c,s.test(n)&&a.test(n)&&(s=y,n=n.replace(s,"")),"y"==o&&(n=o.toLowerCase()+n.substr(1)),n};return T}(),t.Pipeline.registerFunction(t.stemmer,"stemmer"),t.generateStopWordFilter=function(t){var e=t.reduce(function(t,e){return t[e]=e,t},{});return function(t){return t&&e[t]!==t?t:void 0}},t.stopWordFilter=t.generateStopWordFilter(["a","able","about","across","after","all","almost","also","am","among","an","and","any","are","as","at","be","because","been","but","by","can","cannot","could","dear","did","do","does","either","else","ever","every","for","from","get","got","had","has","have","he","her","hers","him","his","how","however","i","if","in","into","is","it","its","just","least","let","like","likely","may","me","might","most","must","my","neither","no","nor","not","of","off","often","on","only","or","other","our","own","rather","said","say","says","she","should","since","so","some","than","that","the","their","them","then","there","these","they","this","tis","to","too","twas","us","wants","was","we","were","what","when","where","which","while","who","whom","why","will","with","would","yet","you","your"]),t.Pipeline.registerFunction(t.stopWordFilter,"stopWordFilter"),t.trimmer=function(t){return t.replace(/^\W+/,"").replace(/\W+$/,"")},t.Pipeline.registerFunction(t.trimmer,"trimmer"),t.TokenStore=function(){this.root={docs:{}},this.length=0},t.TokenStore.load=function(t){var e=new this;return e.root=t.root,e.length=t.length,e},t.TokenStore.prototype.add=function(t,e,n){var n=n||this.root,i=t.charAt(0),r=t.slice(1);return i in n||(n[i]={docs:{}}),0===r.length?(n[i].docs[e.ref]=e,void(this.length+=1)):this.add(r,e,n[i])},t.TokenStore.prototype.has=function(t){if(!t)return!1;for(var e=this.root,n=0;n<t.length;n++){if(!e[t.charAt(n)])return!1;e=e[t.charAt(n)]}return!0},t.TokenStore.prototype.getNode=function(t){if(!t)return{};for(var e=this.root,n=0;n<t.length;n++){if(!e[t.charAt(n)])return{};e=e[t.charAt(n)]}return e},t.TokenStore.prototype.get=function(t,e){return this.getNode(t,e).docs||{}},t.TokenStore.prototype.count=function(t,e){return Object.keys(this.get(t,e)).length},t.TokenStore.prototype.remove=function(t,e){if(t){for(var n=this.root,i=0;i<t.length;i++){if(!(t.charAt(i)in n))return;n=n[t.charAt(i)]}delete n.docs[e]}},t.TokenStore.prototype.expand=function(t,e){var n=this.getNode(t),i=n.docs||{},e=e||[];return Object.keys(i).length&&e.push(t),Object.keys(n).forEach(function(n){"docs"!==n&&e.concat(this.expand(t+n,e))},this),e},t.TokenStore.prototype.toJSON=function(){return{root:this.root,length:this.length}},function(t,e){"function"==typeof define&&define.amd?define(e):"object"==typeof exports?module.exports=e():t.lunr=e()}(this,function(){return t})}();
@@ -1 +0,0 @@
1
- (function(global,factory){if(typeof exports==="object"&&exports){factory(exports)}else if(typeof define==="function"&&define.amd){define(["exports"],factory)}else{factory(global.Mustache={})}})(this,function(mustache){var Object_toString=Object.prototype.toString;var isArray=Array.isArray||function(object){return Object_toString.call(object)==="[object Array]"};function isFunction(object){return typeof object==="function"}function escapeRegExp(string){return string.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}var RegExp_test=RegExp.prototype.test;function testRegExp(re,string){return RegExp_test.call(re,string)}var nonSpaceRe=/\S/;function isWhitespace(string){return!testRegExp(nonSpaceRe,string)}var entityMap={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#x2F;"};function escapeHtml(string){return String(string).replace(/[&<>"'\/]/g,function(s){return entityMap[s]})}var whiteRe=/\s*/;var spaceRe=/\s+/;var equalsRe=/\s*=/;var curlyRe=/\s*\}/;var tagRe=/#|\^|\/|>|\{|&|=|!/;function parseTemplate(template,tags){if(!template)return[];var sections=[];var tokens=[];var spaces=[];var hasTag=false;var nonSpace=false;function stripSpace(){if(hasTag&&!nonSpace){while(spaces.length)delete tokens[spaces.pop()]}else{spaces=[]}hasTag=false;nonSpace=false}var openingTagRe,closingTagRe,closingCurlyRe;function compileTags(tags){if(typeof tags==="string")tags=tags.split(spaceRe,2);if(!isArray(tags)||tags.length!==2)throw new Error("Invalid tags: "+tags);openingTagRe=new RegExp(escapeRegExp(tags[0])+"\\s*");closingTagRe=new RegExp("\\s*"+escapeRegExp(tags[1]));closingCurlyRe=new RegExp("\\s*"+escapeRegExp("}"+tags[1]))}compileTags(tags||mustache.tags);var scanner=new Scanner(template);var start,type,value,chr,token,openSection;while(!scanner.eos()){start=scanner.pos;value=scanner.scanUntil(openingTagRe);if(value){for(var i=0,valueLength=value.length;i<valueLength;++i){chr=value.charAt(i);if(isWhitespace(chr)){spaces.push(tokens.length)}else{nonSpace=true}tokens.push(["text",chr,start,start+1]);start+=1;if(chr==="\n")stripSpace()}}if(!scanner.scan(openingTagRe))break;hasTag=true;type=scanner.scan(tagRe)||"name";scanner.scan(whiteRe);if(type==="="){value=scanner.scanUntil(equalsRe);scanner.scan(equalsRe);scanner.scanUntil(closingTagRe)}else if(type==="{"){value=scanner.scanUntil(closingCurlyRe);scanner.scan(curlyRe);scanner.scanUntil(closingTagRe);type="&"}else{value=scanner.scanUntil(closingTagRe)}if(!scanner.scan(closingTagRe))throw new Error("Unclosed tag at "+scanner.pos);token=[type,value,start,scanner.pos];tokens.push(token);if(type==="#"||type==="^"){sections.push(token)}else if(type==="/"){openSection=sections.pop();if(!openSection)throw new Error('Unopened section "'+value+'" at '+start);if(openSection[1]!==value)throw new Error('Unclosed section "'+openSection[1]+'" at '+start)}else if(type==="name"||type==="{"||type==="&"){nonSpace=true}else if(type==="="){compileTags(value)}}openSection=sections.pop();if(openSection)throw new Error('Unclosed section "'+openSection[1]+'" at '+scanner.pos);return nestTokens(squashTokens(tokens))}function squashTokens(tokens){var squashedTokens=[];var token,lastToken;for(var i=0,numTokens=tokens.length;i<numTokens;++i){token=tokens[i];if(token){if(token[0]==="text"&&lastToken&&lastToken[0]==="text"){lastToken[1]+=token[1];lastToken[3]=token[3]}else{squashedTokens.push(token);lastToken=token}}}return squashedTokens}function nestTokens(tokens){var nestedTokens=[];var collector=nestedTokens;var sections=[];var token,section;for(var i=0,numTokens=tokens.length;i<numTokens;++i){token=tokens[i];switch(token[0]){case"#":case"^":collector.push(token);sections.push(token);collector=token[4]=[];break;case"/":section=sections.pop();section[5]=token[2];collector=sections.length>0?sections[sections.length-1][4]:nestedTokens;break;default:collector.push(token)}}return nestedTokens}function Scanner(string){this.string=string;this.tail=string;this.pos=0}Scanner.prototype.eos=function(){return this.tail===""};Scanner.prototype.scan=function(re){var match=this.tail.match(re);if(!match||match.index!==0)return"";var string=match[0];this.tail=this.tail.substring(string.length);this.pos+=string.length;return string};Scanner.prototype.scanUntil=function(re){var index=this.tail.search(re),match;switch(index){case-1:match=this.tail;this.tail="";break;case 0:match="";break;default:match=this.tail.substring(0,index);this.tail=this.tail.substring(index)}this.pos+=match.length;return match};function Context(view,parentContext){this.view=view;this.cache={".":this.view};this.parent=parentContext}Context.prototype.push=function(view){return new Context(view,this)};Context.prototype.lookup=function(name){var cache=this.cache;var value;if(name in cache){value=cache[name]}else{var context=this,names,index,lookupHit=false;while(context){if(name.indexOf(".")>0){value=context.view;names=name.split(".");index=0;while(value!=null&&index<names.length){if(index===names.length-1&&value!=null)lookupHit=typeof value==="object"&&value.hasOwnProperty(names[index]);value=value[names[index++]]}}else if(context.view!=null&&typeof context.view==="object"){value=context.view[name];lookupHit=context.view.hasOwnProperty(name)}if(lookupHit)break;context=context.parent}cache[name]=value}if(isFunction(value))value=value.call(this.view);return value};function Writer(){this.cache={}}Writer.prototype.clearCache=function(){this.cache={}};Writer.prototype.parse=function(template,tags){var cache=this.cache;var tokens=cache[template];if(tokens==null)tokens=cache[template]=parseTemplate(template,tags);return tokens};Writer.prototype.render=function(template,view,partials){var tokens=this.parse(template);var context=view instanceof Context?view:new Context(view);return this.renderTokens(tokens,context,partials,template)};Writer.prototype.renderTokens=function(tokens,context,partials,originalTemplate){var buffer="";var token,symbol,value;for(var i=0,numTokens=tokens.length;i<numTokens;++i){value=undefined;token=tokens[i];symbol=token[0];if(symbol==="#")value=this._renderSection(token,context,partials,originalTemplate);else if(symbol==="^")value=this._renderInverted(token,context,partials,originalTemplate);else if(symbol===">")value=this._renderPartial(token,context,partials,originalTemplate);else if(symbol==="&")value=this._unescapedValue(token,context);else if(symbol==="name")value=this._escapedValue(token,context);else if(symbol==="text")value=this._rawValue(token);if(value!==undefined)buffer+=value}return buffer};Writer.prototype._renderSection=function(token,context,partials,originalTemplate){var self=this;var buffer="";var value=context.lookup(token[1]);function subRender(template){return self.render(template,context,partials)}if(!value)return;if(isArray(value)){for(var j=0,valueLength=value.length;j<valueLength;++j){buffer+=this.renderTokens(token[4],context.push(value[j]),partials,originalTemplate)}}else if(typeof value==="object"||typeof value==="string"||typeof value==="number"){buffer+=this.renderTokens(token[4],context.push(value),partials,originalTemplate)}else if(isFunction(value)){if(typeof originalTemplate!=="string")throw new Error("Cannot use higher-order sections without the original template");value=value.call(context.view,originalTemplate.slice(token[3],token[5]),subRender);if(value!=null)buffer+=value}else{buffer+=this.renderTokens(token[4],context,partials,originalTemplate)}return buffer};Writer.prototype._renderInverted=function(token,context,partials,originalTemplate){var value=context.lookup(token[1]);if(!value||isArray(value)&&value.length===0)return this.renderTokens(token[4],context,partials,originalTemplate)};Writer.prototype._renderPartial=function(token,context,partials){if(!partials)return;var value=isFunction(partials)?partials(token[1]):partials[token[1]];if(value!=null)return this.renderTokens(this.parse(value),context,partials,value)};Writer.prototype._unescapedValue=function(token,context){var value=context.lookup(token[1]);if(value!=null)return value};Writer.prototype._escapedValue=function(token,context){var value=context.lookup(token[1]);if(value!=null)return mustache.escape(value)};Writer.prototype._rawValue=function(token){return token[1]};mustache.name="mustache.js";mustache.version="2.0.0";mustache.tags=["{{","}}"];var defaultWriter=new Writer;mustache.clearCache=function(){return defaultWriter.clearCache()};mustache.parse=function(template,tags){return defaultWriter.parse(template,tags)};mustache.render=function(template,view,partials){return defaultWriter.render(template,view,partials)};mustache.to_html=function(template,view,partials,send){var result=mustache.render(template,view,partials);if(isFunction(send)){send(result)}else{return result}};mustache.escape=escapeHtml;mustache.Scanner=Scanner;mustache.Context=Context;mustache.Writer=Writer});
@@ -1,36 +0,0 @@
1
- /*
2
- RequireJS 2.1.16 Copyright (c) 2010-2015, The Dojo Foundation All Rights Reserved.
3
- Available via the MIT or new BSD license.
4
- see: http://github.com/jrburke/requirejs for details
5
- */
6
- var requirejs,require,define;
7
- (function(ba){function G(b){return"[object Function]"===K.call(b)}function H(b){return"[object Array]"===K.call(b)}function v(b,c){if(b){var d;for(d=0;d<b.length&&(!b[d]||!c(b[d],d,b));d+=1);}}function T(b,c){if(b){var d;for(d=b.length-1;-1<d&&(!b[d]||!c(b[d],d,b));d-=1);}}function t(b,c){return fa.call(b,c)}function m(b,c){return t(b,c)&&b[c]}function B(b,c){for(var d in b)if(t(b,d)&&c(b[d],d))break}function U(b,c,d,e){c&&B(c,function(c,g){if(d||!t(b,g))e&&"object"===typeof c&&c&&!H(c)&&!G(c)&&!(c instanceof
8
- RegExp)?(b[g]||(b[g]={}),U(b[g],c,d,e)):b[g]=c});return b}function u(b,c){return function(){return c.apply(b,arguments)}}function ca(b){throw b;}function da(b){if(!b)return b;var c=ba;v(b.split("."),function(b){c=c[b]});return c}function C(b,c,d,e){c=Error(c+"\nhttp://requirejs.org/docs/errors.html#"+b);c.requireType=b;c.requireModules=e;d&&(c.originalError=d);return c}function ga(b){function c(a,k,b){var f,l,c,d,e,g,i,p,k=k&&k.split("/"),h=j.map,n=h&&h["*"];if(a){a=a.split("/");l=a.length-1;j.nodeIdCompat&&
9
- Q.test(a[l])&&(a[l]=a[l].replace(Q,""));"."===a[0].charAt(0)&&k&&(l=k.slice(0,k.length-1),a=l.concat(a));l=a;for(c=0;c<l.length;c++)if(d=l[c],"."===d)l.splice(c,1),c-=1;else if(".."===d&&!(0===c||1==c&&".."===l[2]||".."===l[c-1])&&0<c)l.splice(c-1,2),c-=2;a=a.join("/")}if(b&&h&&(k||n)){l=a.split("/");c=l.length;a:for(;0<c;c-=1){e=l.slice(0,c).join("/");if(k)for(d=k.length;0<d;d-=1)if(b=m(h,k.slice(0,d).join("/")))if(b=m(b,e)){f=b;g=c;break a}!i&&(n&&m(n,e))&&(i=m(n,e),p=c)}!f&&i&&(f=i,g=p);f&&(l.splice(0,
10
- g,f),a=l.join("/"))}return(f=m(j.pkgs,a))?f:a}function d(a){z&&v(document.getElementsByTagName("script"),function(k){if(k.getAttribute("data-requiremodule")===a&&k.getAttribute("data-requirecontext")===i.contextName)return k.parentNode.removeChild(k),!0})}function e(a){var k=m(j.paths,a);if(k&&H(k)&&1<k.length)return k.shift(),i.require.undef(a),i.makeRequire(null,{skipMap:!0})([a]),!0}function n(a){var k,c=a?a.indexOf("!"):-1;-1<c&&(k=a.substring(0,c),a=a.substring(c+1,a.length));return[k,a]}function p(a,
11
- k,b,f){var l,d,e=null,g=k?k.name:null,j=a,p=!0,h="";a||(p=!1,a="_@r"+(K+=1));a=n(a);e=a[0];a=a[1];e&&(e=c(e,g,f),d=m(r,e));a&&(e?h=d&&d.normalize?d.normalize(a,function(a){return c(a,g,f)}):-1===a.indexOf("!")?c(a,g,f):a:(h=c(a,g,f),a=n(h),e=a[0],h=a[1],b=!0,l=i.nameToUrl(h)));b=e&&!d&&!b?"_unnormalized"+(O+=1):"";return{prefix:e,name:h,parentMap:k,unnormalized:!!b,url:l,originalName:j,isDefine:p,id:(e?e+"!"+h:h)+b}}function s(a){var k=a.id,b=m(h,k);b||(b=h[k]=new i.Module(a));return b}function q(a,
12
- k,b){var f=a.id,c=m(h,f);if(t(r,f)&&(!c||c.defineEmitComplete))"defined"===k&&b(r[f]);else if(c=s(a),c.error&&"error"===k)b(c.error);else c.on(k,b)}function w(a,b){var c=a.requireModules,f=!1;if(b)b(a);else if(v(c,function(b){if(b=m(h,b))b.error=a,b.events.error&&(f=!0,b.emit("error",a))}),!f)g.onError(a)}function x(){R.length&&(ha.apply(A,[A.length,0].concat(R)),R=[])}function y(a){delete h[a];delete V[a]}function F(a,b,c){var f=a.map.id;a.error?a.emit("error",a.error):(b[f]=!0,v(a.depMaps,function(f,
13
- d){var e=f.id,g=m(h,e);g&&(!a.depMatched[d]&&!c[e])&&(m(b,e)?(a.defineDep(d,r[e]),a.check()):F(g,b,c))}),c[f]=!0)}function D(){var a,b,c=(a=1E3*j.waitSeconds)&&i.startTime+a<(new Date).getTime(),f=[],l=[],g=!1,h=!0;if(!W){W=!0;B(V,function(a){var i=a.map,j=i.id;if(a.enabled&&(i.isDefine||l.push(a),!a.error))if(!a.inited&&c)e(j)?g=b=!0:(f.push(j),d(j));else if(!a.inited&&(a.fetched&&i.isDefine)&&(g=!0,!i.prefix))return h=!1});if(c&&f.length)return a=C("timeout","Load timeout for modules: "+f,null,
14
- f),a.contextName=i.contextName,w(a);h&&v(l,function(a){F(a,{},{})});if((!c||b)&&g)if((z||ea)&&!X)X=setTimeout(function(){X=0;D()},50);W=!1}}function E(a){t(r,a[0])||s(p(a[0],null,!0)).init(a[1],a[2])}function I(a){var a=a.currentTarget||a.srcElement,b=i.onScriptLoad;a.detachEvent&&!Y?a.detachEvent("onreadystatechange",b):a.removeEventListener("load",b,!1);b=i.onScriptError;(!a.detachEvent||Y)&&a.removeEventListener("error",b,!1);return{node:a,id:a&&a.getAttribute("data-requiremodule")}}function J(){var a;
15
- for(x();A.length;){a=A.shift();if(null===a[0])return w(C("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));E(a)}}var W,Z,i,L,X,j={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},h={},V={},$={},A=[],r={},S={},aa={},K=1,O=1;L={require:function(a){return a.require?a.require:a.require=i.makeRequire(a.map)},exports:function(a){a.usingExports=!0;if(a.map.isDefine)return a.exports?r[a.map.id]=a.exports:a.exports=r[a.map.id]={}},module:function(a){return a.module?
16
- a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){return m(j.config,a.map.id)||{}},exports:a.exports||(a.exports={})}}};Z=function(a){this.events=m($,a.id)||{};this.map=a;this.shim=m(j.shim,a.id);this.depExports=[];this.depMaps=[];this.depMatched=[];this.pluginMaps={};this.depCount=0};Z.prototype={init:function(a,b,c,f){f=f||{};if(!this.inited){this.factory=b;if(c)this.on("error",c);else this.events.error&&(c=u(this,function(a){this.emit("error",a)}));this.depMaps=a&&a.slice(0);this.errback=
17
- c;this.inited=!0;this.ignore=f.ignore;f.enabled||this.enabled?this.enable():this.check()}},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0;i.startTime=(new Date).getTime();var a=this.map;if(this.shim)i.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],u(this,function(){return a.prefix?this.callPlugin():this.load()}));else return a.prefix?this.callPlugin():this.load()}},load:function(){var a=
18
- this.map.url;S[a]||(S[a]=!0,i.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id;b=this.depExports;var f=this.exports,l=this.factory;if(this.inited)if(this.error)this.emit("error",this.error);else{if(!this.defining){this.defining=!0;if(1>this.depCount&&!this.defined){if(G(l)){if(this.events.error&&this.map.isDefine||g.onError!==ca)try{f=i.execCb(c,l,b,f)}catch(d){a=d}else f=i.execCb(c,l,b,f);this.map.isDefine&&void 0===f&&((b=this.module)?f=b.exports:this.usingExports&&
19
- (f=this.exports));if(a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",w(this.error=a)}else f=l;this.exports=f;if(this.map.isDefine&&!this.ignore&&(r[c]=f,g.onResourceLoad))g.onResourceLoad(i,this.map,this.depMaps);y(c);this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=
20
- this.map,b=a.id,d=p(a.prefix);this.depMaps.push(d);q(d,"defined",u(this,function(f){var l,d;d=m(aa,this.map.id);var e=this.map.name,P=this.map.parentMap?this.map.parentMap.name:null,n=i.makeRequire(a.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(f.normalize&&(e=f.normalize(e,function(a){return c(a,P,!0)})||""),f=p(a.prefix+"!"+e,this.map.parentMap),q(f,"defined",u(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),d=m(h,f.id)){this.depMaps.push(f);
21
- if(this.events.error)d.on("error",u(this,function(a){this.emit("error",a)}));d.enable()}}else d?(this.map.url=i.nameToUrl(d),this.load()):(l=u(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),l.error=u(this,function(a){this.inited=!0;this.error=a;a.requireModules=[b];B(h,function(a){0===a.map.id.indexOf(b+"_unnormalized")&&y(a.map.id)});w(a)}),l.fromText=u(this,function(f,c){var d=a.name,e=p(d),P=M;c&&(f=c);P&&(M=!1);s(e);t(j.config,b)&&(j.config[d]=j.config[b]);try{g.exec(f)}catch(h){return w(C("fromtexteval",
22
- "fromText eval for "+b+" failed: "+h,h,[b]))}P&&(M=!0);this.depMaps.push(e);i.completeLoad(d);n([d],l)}),f.load(a.name,n,l,j))}));i.enable(d,this);this.pluginMaps[d.id]=d},enable:function(){V[this.map.id]=this;this.enabling=this.enabled=!0;v(this.depMaps,u(this,function(a,b){var c,f;if("string"===typeof a){a=p(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap);this.depMaps[b]=a;if(c=m(L,a.id)){this.depExports[b]=c(this);return}this.depCount+=1;q(a,"defined",u(this,function(a){this.defineDep(b,
23
- a);this.check()}));this.errback?q(a,"error",u(this,this.errback)):this.events.error&&q(a,"error",u(this,function(a){this.emit("error",a)}))}c=a.id;f=h[c];!t(L,c)&&(f&&!f.enabled)&&i.enable(a,this)}));B(this.pluginMaps,u(this,function(a){var b=m(h,a.id);b&&!b.enabled&&i.enable(a,this)}));this.enabling=!1;this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]);c.push(b)},emit:function(a,b){v(this.events[a],function(a){a(b)});"error"===a&&delete this.events[a]}};i={config:j,contextName:b,
24
- registry:h,defined:r,urlFetched:S,defQueue:A,Module:Z,makeModuleMap:p,nextTick:g.nextTick,onError:w,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");var b=j.shim,c={paths:!0,bundles:!0,config:!0,map:!0};B(a,function(a,b){c[b]?(j[b]||(j[b]={}),U(j[b],a,!0,!0)):j[b]=a});a.bundles&&B(a.bundles,function(a,b){v(a,function(a){a!==b&&(aa[a]=b)})});a.shim&&(B(a.shim,function(a,c){H(a)&&(a={deps:a});if((a.exports||a.init)&&!a.exportsFn)a.exportsFn=i.makeShimExports(a);
25
- b[c]=a}),j.shim=b);a.packages&&v(a.packages,function(a){var b,a="string"===typeof a?{name:a}:a;b=a.name;a.location&&(j.paths[b]=a.location);j.pkgs[b]=a.name+"/"+(a.main||"main").replace(ia,"").replace(Q,"")});B(h,function(a,b){!a.inited&&!a.map.unnormalized&&(a.map=p(b))});if(a.deps||a.callback)i.require(a.deps||[],a.callback)},makeShimExports:function(a){return function(){var b;a.init&&(b=a.init.apply(ba,arguments));return b||a.exports&&da(a.exports)}},makeRequire:function(a,e){function j(c,d,m){var n,
26
- q;e.enableBuildCallback&&(d&&G(d))&&(d.__requireJsBuild=!0);if("string"===typeof c){if(G(d))return w(C("requireargs","Invalid require call"),m);if(a&&t(L,c))return L[c](h[a.id]);if(g.get)return g.get(i,c,a,j);n=p(c,a,!1,!0);n=n.id;return!t(r,n)?w(C("notloaded",'Module name "'+n+'" has not been loaded yet for context: '+b+(a?"":". Use require([])"))):r[n]}J();i.nextTick(function(){J();q=s(p(null,a));q.skipMap=e.skipMap;q.init(c,d,m,{enabled:!0});D()});return j}e=e||{};U(j,{isBrowser:z,toUrl:function(b){var d,
27
- e=b.lastIndexOf("."),k=b.split("/")[0];if(-1!==e&&(!("."===k||".."===k)||1<e))d=b.substring(e,b.length),b=b.substring(0,e);return i.nameToUrl(c(b,a&&a.id,!0),d,!0)},defined:function(b){return t(r,p(b,a,!1,!0).id)},specified:function(b){b=p(b,a,!1,!0).id;return t(r,b)||t(h,b)}});a||(j.undef=function(b){x();var c=p(b,a,!0),e=m(h,b);d(b);delete r[b];delete S[c.url];delete $[b];T(A,function(a,c){a[0]===b&&A.splice(c,1)});e&&(e.events.defined&&($[b]=e.events),y(b))});return j},enable:function(a){m(h,a.id)&&
28
- s(a).enable()},completeLoad:function(a){var b,c,d=m(j.shim,a)||{},g=d.exports;for(x();A.length;){c=A.shift();if(null===c[0]){c[0]=a;if(b)break;b=!0}else c[0]===a&&(b=!0);E(c)}c=m(h,a);if(!b&&!t(r,a)&&c&&!c.inited){if(j.enforceDefine&&(!g||!da(g)))return e(a)?void 0:w(C("nodefine","No define call for "+a,null,[a]));E([a,d.deps||[],d.exportsFn])}D()},nameToUrl:function(a,b,c){var d,e,h;(d=m(j.pkgs,a))&&(a=d);if(d=m(aa,a))return i.nameToUrl(d,b,c);if(g.jsExtRegExp.test(a))d=a+(b||"");else{d=j.paths;
29
- a=a.split("/");for(e=a.length;0<e;e-=1)if(h=a.slice(0,e).join("/"),h=m(d,h)){H(h)&&(h=h[0]);a.splice(0,e,h);break}d=a.join("/");d+=b||(/^data\:|\?/.test(d)||c?"":".js");d=("/"===d.charAt(0)||d.match(/^[\w\+\.\-]+:/)?"":j.baseUrl)+d}return j.urlArgs?d+((-1===d.indexOf("?")?"?":"&")+j.urlArgs):d},load:function(a,b){g.load(i,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||ja.test((a.currentTarget||a.srcElement).readyState))N=null,a=I(a),i.completeLoad(a.id)},
30
- onScriptError:function(a){var b=I(a);if(!e(b.id))return w(C("scripterror","Script error for: "+b.id,a,[b.id]))}};i.require=i.makeRequire();return i}var g,x,y,D,I,E,N,J,s,O,ka=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,la=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,Q=/\.js$/,ia=/^\.\//;x=Object.prototype;var K=x.toString,fa=x.hasOwnProperty,ha=Array.prototype.splice,z=!!("undefined"!==typeof window&&"undefined"!==typeof navigator&&window.document),ea=!z&&"undefined"!==typeof importScripts,ja=
31
- z&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,Y="undefined"!==typeof opera&&"[object Opera]"===opera.toString(),F={},q={},R=[],M=!1;if("undefined"===typeof define){if("undefined"!==typeof requirejs){if(G(requirejs))return;q=requirejs;requirejs=void 0}"undefined"!==typeof require&&!G(require)&&(q=require,require=void 0);g=requirejs=function(b,c,d,e){var n,p="_";!H(b)&&"string"!==typeof b&&(n=b,H(c)?(b=c,c=d,d=e):b=[]);n&&n.context&&(p=n.context);(e=m(F,p))||(e=F[p]=g.s.newContext(p));
32
- n&&e.configure(n);return e.require(b,c,d)};g.config=function(b){return g(b)};g.nextTick="undefined"!==typeof setTimeout?function(b){setTimeout(b,4)}:function(b){b()};require||(require=g);g.version="2.1.16";g.jsExtRegExp=/^\/|:|\?|\.js$/;g.isBrowser=z;x=g.s={contexts:F,newContext:ga};g({});v(["toUrl","undef","defined","specified"],function(b){g[b]=function(){var c=F._;return c.require[b].apply(c,arguments)}});if(z&&(y=x.head=document.getElementsByTagName("head")[0],D=document.getElementsByTagName("base")[0]))y=
33
- x.head=D.parentNode;g.onError=ca;g.createNode=function(b){var c=b.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");c.type=b.scriptType||"text/javascript";c.charset="utf-8";c.async=!0;return c};g.load=function(b,c,d){var e=b&&b.config||{};if(z)return e=g.createNode(e,c,d),e.setAttribute("data-requirecontext",b.contextName),e.setAttribute("data-requiremodule",c),e.attachEvent&&!(e.attachEvent.toString&&0>e.attachEvent.toString().indexOf("[native code"))&&
34
- !Y?(M=!0,e.attachEvent("onreadystatechange",b.onScriptLoad)):(e.addEventListener("load",b.onScriptLoad,!1),e.addEventListener("error",b.onScriptError,!1)),e.src=d,J=e,D?y.insertBefore(e,D):y.appendChild(e),J=null,e;if(ea)try{importScripts(d),b.completeLoad(c)}catch(m){b.onError(C("importscripts","importScripts failed for "+c+" at "+d,m,[c]))}};z&&!q.skipDataMain&&T(document.getElementsByTagName("script"),function(b){y||(y=b.parentNode);if(I=b.getAttribute("data-main"))return s=I,q.baseUrl||(E=s.split("/"),
35
- s=E.pop(),O=E.length?E.join("/")+"/":"./",q.baseUrl=O),s=s.replace(Q,""),g.jsExtRegExp.test(s)&&(s=I),q.deps=q.deps?q.deps.concat(s):[s],!0});define=function(b,c,d){var e,g;"string"!==typeof b&&(d=c,c=b,b=null);H(c)||(d=c,c=null);!c&&G(d)&&(c=[],d.length&&(d.toString().replace(ka,"").replace(la,function(b,d){c.push(d)}),c=(1===d.length?["require"]:["require","exports","module"]).concat(c)));if(M){if(!(e=J))N&&"interactive"===N.readyState||T(document.getElementsByTagName("script"),function(b){if("interactive"===
36
- b.readyState)return N=b}),e=N;e&&(b||(b=e.getAttribute("data-requiremodule")),g=F[e.getAttribute("data-requirecontext")])}(g?g.defQueue:R).push([b,c,d])};define.amd={jQuery:!0};g.exec=function(b){return eval(b)};g(q)}})(this);
@@ -1,4 +0,0 @@
1
- <article>
2
- <h3><a href="{{location}}">{{title}}</a></h3>
3
- <p>{{summary}}</p>
4
- </article>
@@ -1,88 +0,0 @@
1
- require([
2
- base_url + '/mkdocs/js/mustache.min.js',
3
- base_url + '/mkdocs/js/lunr.min.js',
4
- 'text!search-results-template.mustache',
5
- 'text!../search_index.json',
6
- ], function (Mustache, lunr, results_template, data) {
7
- "use strict";
8
-
9
- function getSearchTerm()
10
- {
11
- var sPageURL = window.location.search.substring(1);
12
- var sURLVariables = sPageURL.split('&');
13
- for (var i = 0; i < sURLVariables.length; i++)
14
- {
15
- var sParameterName = sURLVariables[i].split('=');
16
- if (sParameterName[0] == 'q')
17
- {
18
- return decodeURIComponent(sParameterName[1].replace(/\+/g, '%20'));
19
- }
20
- }
21
- }
22
-
23
- var index = lunr(function () {
24
- this.field('title', {boost: 10});
25
- this.field('text');
26
- this.ref('location');
27
- });
28
-
29
- data = JSON.parse(data);
30
- var documents = {};
31
-
32
- for (var i=0; i < data.docs.length; i++){
33
- var doc = data.docs[i];
34
- doc.location = base_url + doc.location;
35
- index.add(doc);
36
- documents[doc.location] = doc;
37
- }
38
-
39
- var search = function(){
40
-
41
- var query = document.getElementById('mkdocs-search-query').value;
42
- var search_results = document.getElementById("mkdocs-search-results");
43
- while (search_results.firstChild) {
44
- search_results.removeChild(search_results.firstChild);
45
- }
46
-
47
- if(query === ''){
48
- return;
49
- }
50
-
51
- var results = index.search(query);
52
-
53
- if (results.length > 0){
54
- for (var i=0; i < results.length; i++){
55
- var result = results[i];
56
- doc = documents[result.ref];
57
- doc.base_url = base_url;
58
- doc.summary = doc.text.substring(0, 200);
59
- var html = Mustache.to_html(results_template, doc);
60
- search_results.insertAdjacentHTML('beforeend', html);
61
- }
62
- } else {
63
- search_results.insertAdjacentHTML('beforeend', "<p>No results found</p>");
64
- }
65
-
66
- if(jQuery){
67
- /*
68
- * We currently only automatically hide bootstrap models. This
69
- * requires jQuery to work.
70
- */
71
- jQuery('#mkdocs_search_modal a').click(function(){
72
- jQuery('#mkdocs_search_modal').modal('hide');
73
- });
74
- }
75
-
76
- };
77
-
78
- var search_input = document.getElementById('mkdocs-search-query');
79
-
80
- var term = getSearchTerm();
81
- if (term){
82
- search_input.value = term;
83
- search();
84
- }
85
-
86
- search_input.addEventListener("keyup", search);
87
-
88
- });
@@ -1,390 +0,0 @@
1
- /**
2
- * @license RequireJS text 2.0.12 Copyright (c) 2010-2014, The Dojo Foundation All Rights Reserved.
3
- * Available via the MIT or new BSD license.
4
- * see: http://github.com/requirejs/text for details
5
- */
6
- /*jslint regexp: true */
7
- /*global require, XMLHttpRequest, ActiveXObject,
8
- define, window, process, Packages,
9
- java, location, Components, FileUtils */
10
-
11
- define(['module'], function (module) {
12
- 'use strict';
13
-
14
- var text, fs, Cc, Ci, xpcIsWindows,
15
- progIds = ['Msxml2.XMLHTTP', 'Microsoft.XMLHTTP', 'Msxml2.XMLHTTP.4.0'],
16
- xmlRegExp = /^\s*<\?xml(\s)+version=[\'\"](\d)*.(\d)*[\'\"](\s)*\?>/im,
17
- bodyRegExp = /<body[^>]*>\s*([\s\S]+)\s*<\/body>/im,
18
- hasLocation = typeof location !== 'undefined' && location.href,
19
- defaultProtocol = hasLocation && location.protocol && location.protocol.replace(/\:/, ''),
20
- defaultHostName = hasLocation && location.hostname,
21
- defaultPort = hasLocation && (location.port || undefined),
22
- buildMap = {},
23
- masterConfig = (module.config && module.config()) || {};
24
-
25
- text = {
26
- version: '2.0.12',
27
-
28
- strip: function (content) {
29
- //Strips <?xml ...?> declarations so that external SVG and XML
30
- //documents can be added to a document without worry. Also, if the string
31
- //is an HTML document, only the part inside the body tag is returned.
32
- if (content) {
33
- content = content.replace(xmlRegExp, "");
34
- var matches = content.match(bodyRegExp);
35
- if (matches) {
36
- content = matches[1];
37
- }
38
- } else {
39
- content = "";
40
- }
41
- return content;
42
- },
43
-
44
- jsEscape: function (content) {
45
- return content.replace(/(['\\])/g, '\\$1')
46
- .replace(/[\f]/g, "\\f")
47
- .replace(/[\b]/g, "\\b")
48
- .replace(/[\n]/g, "\\n")
49
- .replace(/[\t]/g, "\\t")
50
- .replace(/[\r]/g, "\\r")
51
- .replace(/[\u2028]/g, "\\u2028")
52
- .replace(/[\u2029]/g, "\\u2029");
53
- },
54
-
55
- createXhr: masterConfig.createXhr || function () {
56
- //Would love to dump the ActiveX crap in here. Need IE 6 to die first.
57
- var xhr, i, progId;
58
- if (typeof XMLHttpRequest !== "undefined") {
59
- return new XMLHttpRequest();
60
- } else if (typeof ActiveXObject !== "undefined") {
61
- for (i = 0; i < 3; i += 1) {
62
- progId = progIds[i];
63
- try {
64
- xhr = new ActiveXObject(progId);
65
- } catch (e) {}
66
-
67
- if (xhr) {
68
- progIds = [progId]; // so faster next time
69
- break;
70
- }
71
- }
72
- }
73
-
74
- return xhr;
75
- },
76
-
77
- /**
78
- * Parses a resource name into its component parts. Resource names
79
- * look like: module/name.ext!strip, where the !strip part is
80
- * optional.
81
- * @param {String} name the resource name
82
- * @returns {Object} with properties "moduleName", "ext" and "strip"
83
- * where strip is a boolean.
84
- */
85
- parseName: function (name) {
86
- var modName, ext, temp,
87
- strip = false,
88
- index = name.indexOf("."),
89
- isRelative = name.indexOf('./') === 0 ||
90
- name.indexOf('../') === 0;
91
-
92
- if (index !== -1 && (!isRelative || index > 1)) {
93
- modName = name.substring(0, index);
94
- ext = name.substring(index + 1, name.length);
95
- } else {
96
- modName = name;
97
- }
98
-
99
- temp = ext || modName;
100
- index = temp.indexOf("!");
101
- if (index !== -1) {
102
- //Pull off the strip arg.
103
- strip = temp.substring(index + 1) === "strip";
104
- temp = temp.substring(0, index);
105
- if (ext) {
106
- ext = temp;
107
- } else {
108
- modName = temp;
109
- }
110
- }
111
-
112
- return {
113
- moduleName: modName,
114
- ext: ext,
115
- strip: strip
116
- };
117
- },
118
-
119
- xdRegExp: /^((\w+)\:)?\/\/([^\/\\]+)/,
120
-
121
- /**
122
- * Is an URL on another domain. Only works for browser use, returns
123
- * false in non-browser environments. Only used to know if an
124
- * optimized .js version of a text resource should be loaded
125
- * instead.
126
- * @param {String} url
127
- * @returns Boolean
128
- */
129
- useXhr: function (url, protocol, hostname, port) {
130
- var uProtocol, uHostName, uPort,
131
- match = text.xdRegExp.exec(url);
132
- if (!match) {
133
- return true;
134
- }
135
- uProtocol = match[2];
136
- uHostName = match[3];
137
-
138
- uHostName = uHostName.split(':');
139
- uPort = uHostName[1];
140
- uHostName = uHostName[0];
141
-
142
- return (!uProtocol || uProtocol === protocol) &&
143
- (!uHostName || uHostName.toLowerCase() === hostname.toLowerCase()) &&
144
- ((!uPort && !uHostName) || uPort === port);
145
- },
146
-
147
- finishLoad: function (name, strip, content, onLoad) {
148
- content = strip ? text.strip(content) : content;
149
- if (masterConfig.isBuild) {
150
- buildMap[name] = content;
151
- }
152
- onLoad(content);
153
- },
154
-
155
- load: function (name, req, onLoad, config) {
156
- //Name has format: some.module.filext!strip
157
- //The strip part is optional.
158
- //if strip is present, then that means only get the string contents
159
- //inside a body tag in an HTML string. For XML/SVG content it means
160
- //removing the <?xml ...?> declarations so the content can be inserted
161
- //into the current doc without problems.
162
-
163
- // Do not bother with the work if a build and text will
164
- // not be inlined.
165
- if (config && config.isBuild && !config.inlineText) {
166
- onLoad();
167
- return;
168
- }
169
-
170
- masterConfig.isBuild = config && config.isBuild;
171
-
172
- var parsed = text.parseName(name),
173
- nonStripName = parsed.moduleName +
174
- (parsed.ext ? '.' + parsed.ext : ''),
175
- url = req.toUrl(nonStripName),
176
- useXhr = (masterConfig.useXhr) ||
177
- text.useXhr;
178
-
179
- // Do not load if it is an empty: url
180
- if (url.indexOf('empty:') === 0) {
181
- onLoad();
182
- return;
183
- }
184
-
185
- //Load the text. Use XHR if possible and in a browser.
186
- if (!hasLocation || useXhr(url, defaultProtocol, defaultHostName, defaultPort)) {
187
- text.get(url, function (content) {
188
- text.finishLoad(name, parsed.strip, content, onLoad);
189
- }, function (err) {
190
- if (onLoad.error) {
191
- onLoad.error(err);
192
- }
193
- });
194
- } else {
195
- //Need to fetch the resource across domains. Assume
196
- //the resource has been optimized into a JS module. Fetch
197
- //by the module name + extension, but do not include the
198
- //!strip part to avoid file system issues.
199
- req([nonStripName], function (content) {
200
- text.finishLoad(parsed.moduleName + '.' + parsed.ext,
201
- parsed.strip, content, onLoad);
202
- });
203
- }
204
- },
205
-
206
- write: function (pluginName, moduleName, write, config) {
207
- if (buildMap.hasOwnProperty(moduleName)) {
208
- var content = text.jsEscape(buildMap[moduleName]);
209
- write.asModule(pluginName + "!" + moduleName,
210
- "define(function () { return '" +
211
- content +
212
- "';});\n");
213
- }
214
- },
215
-
216
- writeFile: function (pluginName, moduleName, req, write, config) {
217
- var parsed = text.parseName(moduleName),
218
- extPart = parsed.ext ? '.' + parsed.ext : '',
219
- nonStripName = parsed.moduleName + extPart,
220
- //Use a '.js' file name so that it indicates it is a
221
- //script that can be loaded across domains.
222
- fileName = req.toUrl(parsed.moduleName + extPart) + '.js';
223
-
224
- //Leverage own load() method to load plugin value, but only
225
- //write out values that do not have the strip argument,
226
- //to avoid any potential issues with ! in file names.
227
- text.load(nonStripName, req, function (value) {
228
- //Use own write() method to construct full module value.
229
- //But need to create shell that translates writeFile's
230
- //write() to the right interface.
231
- var textWrite = function (contents) {
232
- return write(fileName, contents);
233
- };
234
- textWrite.asModule = function (moduleName, contents) {
235
- return write.asModule(moduleName, fileName, contents);
236
- };
237
-
238
- text.write(pluginName, nonStripName, textWrite, config);
239
- }, config);
240
- }
241
- };
242
-
243
- if (masterConfig.env === 'node' || (!masterConfig.env &&
244
- typeof process !== "undefined" &&
245
- process.versions &&
246
- !!process.versions.node &&
247
- !process.versions['node-webkit'])) {
248
- //Using special require.nodeRequire, something added by r.js.
249
- fs = require.nodeRequire('fs');
250
-
251
- text.get = function (url, callback, errback) {
252
- try {
253
- var file = fs.readFileSync(url, 'utf8');
254
- //Remove BOM (Byte Mark Order) from utf8 files if it is there.
255
- if (file.indexOf('\uFEFF') === 0) {
256
- file = file.substring(1);
257
- }
258
- callback(file);
259
- } catch (e) {
260
- if (errback) {
261
- errback(e);
262
- }
263
- }
264
- };
265
- } else if (masterConfig.env === 'xhr' || (!masterConfig.env &&
266
- text.createXhr())) {
267
- text.get = function (url, callback, errback, headers) {
268
- var xhr = text.createXhr(), header;
269
- xhr.open('GET', url, true);
270
-
271
- //Allow plugins direct access to xhr headers
272
- if (headers) {
273
- for (header in headers) {
274
- if (headers.hasOwnProperty(header)) {
275
- xhr.setRequestHeader(header.toLowerCase(), headers[header]);
276
- }
277
- }
278
- }
279
-
280
- //Allow overrides specified in config
281
- if (masterConfig.onXhr) {
282
- masterConfig.onXhr(xhr, url);
283
- }
284
-
285
- xhr.onreadystatechange = function (evt) {
286
- var status, err;
287
- //Do not explicitly handle errors, those should be
288
- //visible via console output in the browser.
289
- if (xhr.readyState === 4) {
290
- status = xhr.status || 0;
291
- if (status > 399 && status < 600) {
292
- //An http 4xx or 5xx error. Signal an error.
293
- err = new Error(url + ' HTTP status: ' + status);
294
- err.xhr = xhr;
295
- if (errback) {
296
- errback(err);
297
- }
298
- } else {
299
- callback(xhr.responseText);
300
- }
301
-
302
- if (masterConfig.onXhrComplete) {
303
- masterConfig.onXhrComplete(xhr, url);
304
- }
305
- }
306
- };
307
- xhr.send(null);
308
- };
309
- } else if (masterConfig.env === 'rhino' || (!masterConfig.env &&
310
- typeof Packages !== 'undefined' && typeof java !== 'undefined')) {
311
- //Why Java, why is this so awkward?
312
- text.get = function (url, callback) {
313
- var stringBuffer, line,
314
- encoding = "utf-8",
315
- file = new java.io.File(url),
316
- lineSeparator = java.lang.System.getProperty("line.separator"),
317
- input = new java.io.BufferedReader(new java.io.InputStreamReader(new java.io.FileInputStream(file), encoding)),
318
- content = '';
319
- try {
320
- stringBuffer = new java.lang.StringBuffer();
321
- line = input.readLine();
322
-
323
- // Byte Order Mark (BOM) - The Unicode Standard, version 3.0, page 324
324
- // http://www.unicode.org/faq/utf_bom.html
325
-
326
- // Note that when we use utf-8, the BOM should appear as "EF BB BF", but it doesn't due to this bug in the JDK:
327
- // http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4508058
328
- if (line && line.length() && line.charAt(0) === 0xfeff) {
329
- // Eat the BOM, since we've already found the encoding on this file,
330
- // and we plan to concatenating this buffer with others; the BOM should
331
- // only appear at the top of a file.
332
- line = line.substring(1);
333
- }
334
-
335
- if (line !== null) {
336
- stringBuffer.append(line);
337
- }
338
-
339
- while ((line = input.readLine()) !== null) {
340
- stringBuffer.append(lineSeparator);
341
- stringBuffer.append(line);
342
- }
343
- //Make sure we return a JavaScript string and not a Java string.
344
- content = String(stringBuffer.toString()); //String
345
- } finally {
346
- input.close();
347
- }
348
- callback(content);
349
- };
350
- } else if (masterConfig.env === 'xpconnect' || (!masterConfig.env &&
351
- typeof Components !== 'undefined' && Components.classes &&
352
- Components.interfaces)) {
353
- //Avert your gaze!
354
- Cc = Components.classes;
355
- Ci = Components.interfaces;
356
- Components.utils['import']('resource://gre/modules/FileUtils.jsm');
357
- xpcIsWindows = ('@mozilla.org/windows-registry-key;1' in Cc);
358
-
359
- text.get = function (url, callback) {
360
- var inStream, convertStream, fileObj,
361
- readData = {};
362
-
363
- if (xpcIsWindows) {
364
- url = url.replace(/\//g, '\\');
365
- }
366
-
367
- fileObj = new FileUtils.File(url);
368
-
369
- //XPCOM, you so crazy
370
- try {
371
- inStream = Cc['@mozilla.org/network/file-input-stream;1']
372
- .createInstance(Ci.nsIFileInputStream);
373
- inStream.init(fileObj, 1, 0, false);
374
-
375
- convertStream = Cc['@mozilla.org/intl/converter-input-stream;1']
376
- .createInstance(Ci.nsIConverterInputStream);
377
- convertStream.init(inStream, "utf-8", inStream.available(),
378
- Ci.nsIConverterInputStream.DEFAULT_REPLACEMENT_CHARACTER);
379
-
380
- convertStream.readString(inStream.available(), readData);
381
- convertStream.close();
382
- inStream.close();
383
- callback(readData.value);
384
- } catch (e) {
385
- throw new Error((fileObj && fileObj.path || '') + ': ' + e);
386
- }
387
- };
388
- }
389
- return text;
390
- });