You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by sc...@apache.org on 2018/04/30 19:01:26 UTC

[01/19] nifi-fds git commit: update disabled td-chip style [Forced Update!]

Repository: nifi-fds
Updated Branches:
  refs/heads/gh-pages 727565c41 -> e7eda493c (forced update)


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/platform/core/common/styles/_chips.scss
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/_chips.scss b/platform/core/common/styles/_chips.scss
index 894fbec..755b2f4 100644
--- a/platform/core/common/styles/_chips.scss
+++ b/platform/core/common/styles/_chips.scss
@@ -38,6 +38,10 @@ body[fds] .mat-basic-chip {
   margin: 22px 8px 0 0;
 }
 
+body[fds] .mat-basic-chip.td-chip-after-pad {
+  padding: 4px 12px 4px 12px;
+}
+
 body[fds] .mat-basic-chip i {
   margin-left: 10px;
   float: right;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/platform/core/common/styles/css/fluid-design-system.min.css
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css b/platform/core/common/styles/css/fluid-design-system.min.css
index f8d88d1..4f12b1d 100644
--- a/platform/core/common/styles/css/fluid-design-system.min.css
+++ b/platform/core/common/styles/css/fluid-design-system.min.css
@@ -1,3 +1,3 @@
-@font-face{font-family:'Roboto';font-style:normal;font-weight:300;src:local("Roboto Light"),local("Roboto-Light"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Light.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:300;src:local("Roboto LightItalic"),local("Roboto-LightItalic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:normal;src:local("Roboto Regular"),local("Roboto-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local("Roboto Medium"),local("Roboto-Medium"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Medium.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:bold;src:local("Roboto Bo
 ld"),local("Roboto-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Bold.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:normal;src:local("Roboto Italic"),local("Roboto-Italic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-RegularItalic.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:normal;src:local("RobotoSlab Regular"),local("RobotoSlab-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:bold;src:local("RobotoSlab Bold"),local("RobotoSlab-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Bold.ttf") format("truetype")}body,html{height:100%}body,button,input,label,select,td,textarea{font-family:"Roboto",sans-serif;font-size:14px}body{color:#333}strong{font-
 weight:bold}pre{overflow-x:auto}em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Roboto",sans-serif;font-weight:normal;font-style:normal;background:#FFFFFF}h1{color:#333}h2{color:#666}table{font-family:"Roboto",sans-serif;font-size:13px;color:#666}.camel-case{text-transform:capitalize}.header{font-family:"Roboto Medium",sans-serif;font-size:16px;color:#333;padding-bottom:10px}.help-icon{font-size:12px;color:#1491C1}.details-header{height:92px}.details-header-container{position:relative;top:22px;left:10px}.description{font-family:"Roboto Light",sans-serif;font-size:12px;color:#666}.description i{padding-right:5px}.label{font-family:"Roboto Medium",sans-serif;font-size:14px;color:#333;text-transform:uppercase}.units{font-family:"Roboto Light",sans-serif;font-size:14px;color:#333}.align-vertical{margin-top:auto;margin-bottom:auto}.align-horizontal{margin-left:auto;margin-right:auto}.fill-available-width{width:100%}.pointer{cursor:pointer}body[fds] .expansion-panel-filter-toggle-grou
 p{box-shadow:none !important}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle{height:75px;width:125px;border:1px solid #ccc}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:63px;text-align:center}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked .md-display-1{color:white}body[fds] .expansion-panel-filter-toggle-group .md-display-1{color:#6B8791}body[fds] .expansion-panel-filter-toggle-group div{line-height:normal}body[fds] .tab-toggle-group{box-shadow:none !important}body[fds] .tab-toggle-group .mat-button-toggle-label-content{border-bottom:2px solid #eee}body[fds] .tab-toggle-group .mat-button-toggle-checked{background:transparent}body[fds] .tab-toggle-group .mat-button-toggle-checked .mat-button-toggle-label-content{border-bottom:2px solid #6B8791;backgroun
 d:transparent}body[fds] .on-off-toggle-group{box-shadow:none !important}body[fds] .on-off-toggle-group .mat-button-toggle{height:20px;width:35px;border:1px solid #ccc}body[fds] .on-off-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:20px;text-align:center}body[fds] .on-off-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white;border:1px solid #6B8791}body[fds] .off-toggle.mat-button-toggle-checked{background-color:#ccc;color:#333;border:1px solid #ccc}body[fds] .mat-checkbox-inner-container{height:10px !important;width:10px !important}body[fds] .mat-checkbox-frame{height:10px;width:10px;border-color:#ddd}body[fds] .mat-checkbox-ripple{left:-7px;top:-7px;right:-7px;bottom:-7px}body[fds] .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,body[fds] .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#6B8791}body[fds] .mat-checkbox-inner-container:hover{background-color:#6B8791;border-r
 adius:2px}body[fds] .mat-checkbox-background{height:10px;width:10px}body[fds] .mat-pseudo-checkbox{height:10px !important;width:10px !important;border:1px solid #ddd}body[fds] .mat-pseudo-checkbox:hover{background-color:#6B8791;border:1px solid #6B8791}body[fds] .mat-pseudo-checkbox-checked::after{content:'\f00c';font-size:8px;font-family:fontawesome;margin-top:-9px;margin-left:-1px;border:none;transform:initial}body[fds] .mat-pseudo-checkbox-checked,body[fds] .mat-pseudo-checkbox-indeterminate{background-color:#6B8791;border:1px solid #6B8791;height:10px;width:10px}body[fds] .mat-checkbox-disabled{cursor:not-allowed}body[fds] .mat-radio-container{height:12px;width:12px}body[fds] .mat-radio-outer-circle{height:12px;width:12px;background-color:#FFFFFF;border:1px solid #ddd}body[fds] .mat-radio-outer-circle:hover{background-color:#6B8791;border-color:#6B8791}body[fds] .mat-radio-checked .mat-radio-outer-circle{border:1px solid #6B8791;background-color:#6B8791}body[fds] .mat-radio-butt
 on.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#6B8791}body[fds] .mat-radio-inner-circle{height:10px;width:10px;left:1px;top:1px;background-color:#FFFFFF}body[fds] .mat-radio-checked .mat-radio-inner-circle{background-color:#FFFFFF}body[fds] .mat-chip{border-radius:2px;font-size:10px;font-family:"Roboto",sans-serif;font-style:normal;font-weight:normal;padding:4px 12px 4px 12px}body[fds] .mat-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip{color:#666;height:24px;margin:22px 8px 0 0}body[fds] .mat-basic-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip .td-chip{font-size:10px;min-height:unset;line-height:20px;position:relative;top:-2px}body[fds] .td-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:65px}body[fds] .td-chip-disabled .td-chip{padding:0px 0px 0px 12px}body[fds] .mat-basic-chip mat-icon.td-chip-removal{font-size:15px;margin-bottom:7px}body[fds] .mat-dialog-container{paddin
 g:20px;width:400px}body[fds] .mat-tab-label{line-height:72px;text-transform:uppercase;color:#666}body[fds] .mat-tab-label:hover:not([disabled]){color:#333}body[fds] .mat-tab-label:focus:not([disabled]){background-color:#FFFFFF}body[fds] .mat-tab-label-active{color:#333}body[fds] .mat-tab-nav-bar,body[fds] .mat-tab-header{border-bottom:0px}body[fds] .mat-input-container{min-width:200px}body[fds] .mat-input-wrapper{margin:0;padding-bottom:0}body[fds] input.mat-input-element,body[fds] textarea.mat-input-element{border-radius:2px;color:#666;border:1px solid #CFD3D7;height:32px;padding:0px 10px;width:calc(100% - 26px)}body[fds] textarea.mat-input-element{padding:10px 10px}body[fds] input.mat-input-element[disabled],body[fds] textarea.mat-input-element[disabled]{background:#b2b8c1;color:#dbdee2;border:1px solid #b2b8c1}body[fds] .mat-input-subscript-wrapper{margin-top:18px;width:calc(100% - 23px)}body[fds] input.mat-input-element:focus,body[fds] textarea.mat-input-element:focus{border-col
 or:#6B8791}body[fds] .mat-input-underline{display:none}body[fds] .mat-input-placeholder{font-size:14px;color:#999;font-weight:300}body[fds] .mat-input-placeholder{top:29px;left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% - 44px)}body[fds] mat-input-container.mat-focused .mat-input-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .input-button{top:5px;left:-4px;border-left:none !important}body[fds] .input-button.mat-raised-button[disabled]{opacity:1}body[fds] td-chips .mat-input-placeholder-wrapper::after{content:'\f0b0';display:inline-table;font-family:FontAwesome;fl
 oat:right;margin:12px 10px 0px 0px;color:#999}body[fds] .mat-hint{color:#999}body[fds] .md-card-title{font-size:20px;color:#333;margin-bottom:0px}body[fds] md-card-title{padding-top:20px;padding-left:20px;padding-right:20px}body[fds] .md-card-subtitle{padding-left:20px;padding-right:20px;padding-top:10px;margin-bottom:0px}body[fds] .md-card-content{color:#666;padding:10px 20px 20px 20px;margin:0px}body[fds] .md-card .md-card-actions:last-child,body[fds] .md-card .md-card .md-card-actions:last-child{padding:0px 20px 20px 20px;margin:0px}body[fds] .fds-panel-menu-button{position:absolute;right:0px;z-index:2}body[fds] .link{color:#6B8791;font-size:14px;text-decoration:none;line-height:24px;cursor:pointer}body[fds] .link:hover{text-decoration:underline}body[fds] .link .disabled{color:#333;text-decoration:none}body[fds] .mat-sidenav-container{height:100%}.td-step-header span{display:none}body[fds] .mat-tooltip{background:#666;opacity:.9;box-shadow:inset 0px 0px 3px 0px #1391c1}body[fds] 
 .td-data-table-cell{font-size:13px;color:#666;padding:0 28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;line-height:30px}body[fds] .td-data-table-column{color:#999;font-weight:normal}body[fds] .td-data-table-row{height:34px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #fff;border-bottom:1px solid #eee}body[fds] .td-data-table-row.selected{background-color:#eee;border:1px solid #eee}body[fds] .td-data-table-row:hover{background-color:#F8F9F9;border:1px solid #B2C1C6}body[fds] .td-data-table-cell .mat-icon-button{color:#6B8791}body[fds] .td-data-table-cell .mat-icon-button:disabled{color:#808793;cursor:not-allowed}body[fds] .td-data-table-cell .mat-button,body[fds] .td-data-table-cell .mat-icon-button,body[fds] .td-data-table-cell .mat-raised-button{height:24px;width:24px;line-height:0}body[fds] .td-data-table-cell .mat-icon-button.badge{border-top-left-radius:0px;border-top-right-radius:0px}body[fds] .td-data-table-cell .mat-i
 con-button.badge[disabled]{opacity:.3}body[fds] .td-data-table-column{font-size:12px;color:#999;height:34px;line-height:34px;padding:0 28px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body[fds] .td-data-table-column .fa-caret-up,body[fds] .td-data-table-column .fa-caret-down{color:#6B8791;font-size:12px;margin-bottom:2px}body[fds] td-paging-bar{color:#999}body[fds] td-paging-bar mat-select .mat-select-value,body[fds] td-paging-bar mat-select .mat-select-arrow{color:#6B8791}body[fds] .table-title{font-size:20px;color:#333;min-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;margin-right:10px}body[fds] div .td-data-table{border-bottom:2px solid #ddd;border-right:1px transparent;border-left:1px transparent}.fds-dialog-title{margin-top:0;margin-bottom:20px}body[fds] snack-bar-container{background:#FFFFFF;padding:0;box-shadow:0px 0px 3px 0px #1391c1}fds-snackbar-title mat-icon.mat-icon.mat-primary.material-icons{font-size:10px;height:10px;
 width:10px;line-height:10px;color:#999}.fds-coaster-message{font-size:12px}.fds-snackbar-title{font-size:14px}.fds-snackbar-title i{font-size:24px}.fds-coaster-icon{position:absolute;top:24px;left:15px}.coaster-close-icon{height:10px !important;width:10px !important;line-height:10px !important;right:10px;position:absolute !important;top:10px}.fds-snackbar-wrapper{border-radius:2px;border-width:1px;border-style:solid}
+@font-face{font-family:'Roboto';font-style:normal;font-weight:300;src:local("Roboto Light"),local("Roboto-Light"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Light.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:300;src:local("Roboto LightItalic"),local("Roboto-LightItalic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:normal;src:local("Roboto Regular"),local("Roboto-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local("Roboto Medium"),local("Roboto-Medium"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Medium.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:bold;src:local("Roboto Bo
 ld"),local("Roboto-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Bold.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:normal;src:local("Roboto Italic"),local("Roboto-Italic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-RegularItalic.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:normal;src:local("RobotoSlab Regular"),local("RobotoSlab-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:bold;src:local("RobotoSlab Bold"),local("RobotoSlab-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Bold.ttf") format("truetype")}body,html{height:100%}body,button,input,label,select,td,textarea{font-family:"Roboto",sans-serif;font-size:14px}body{color:#333}strong{font-
 weight:bold}pre{overflow-x:auto}em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Roboto",sans-serif;font-weight:normal;font-style:normal;background:#FFFFFF}h1{color:#333}h2{color:#666}table{font-family:"Roboto",sans-serif;font-size:13px;color:#666}.camel-case{text-transform:capitalize}.header{font-family:"Roboto Medium",sans-serif;font-size:16px;color:#333;padding-bottom:10px}.help-icon{font-size:12px;color:#1491C1}.details-header{height:92px}.details-header-container{position:relative;top:22px;left:10px}.description{font-family:"Roboto Light",sans-serif;font-size:12px;color:#666}.description i{padding-right:5px}.label{font-family:"Roboto Medium",sans-serif;font-size:14px;color:#333;text-transform:uppercase}.units{font-family:"Roboto Light",sans-serif;font-size:14px;color:#333}.align-vertical{margin-top:auto;margin-bottom:auto}.align-horizontal{margin-left:auto;margin-right:auto}.fill-available-width{width:100%}.pointer{cursor:pointer}body[fds] .expansion-panel-filter-toggle-grou
 p{box-shadow:none !important}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle{height:75px;width:125px;border:1px solid #ccc}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:63px;text-align:center}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked .md-display-1{color:white}body[fds] .expansion-panel-filter-toggle-group .md-display-1{color:#6B8791}body[fds] .expansion-panel-filter-toggle-group div{line-height:normal}body[fds] .tab-toggle-group{box-shadow:none !important}body[fds] .tab-toggle-group .mat-button-toggle-label-content{border-bottom:2px solid #eee}body[fds] .tab-toggle-group .mat-button-toggle-checked{background:transparent}body[fds] .tab-toggle-group .mat-button-toggle-checked .mat-button-toggle-label-content{border-bottom:2px solid #6B8791;backgroun
 d:transparent}body[fds] .on-off-toggle-group{box-shadow:none !important}body[fds] .on-off-toggle-group .mat-button-toggle{height:20px;width:35px;border:1px solid #ccc}body[fds] .on-off-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:20px;text-align:center}body[fds] .on-off-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white;border:1px solid #6B8791}body[fds] .off-toggle.mat-button-toggle-checked{background-color:#ccc;color:#333;border:1px solid #ccc}body[fds] .mat-checkbox-inner-container{height:10px !important;width:10px !important}body[fds] .mat-checkbox-frame{height:10px;width:10px;border-color:#ddd}body[fds] .mat-checkbox-ripple{left:-7px;top:-7px;right:-7px;bottom:-7px}body[fds] .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,body[fds] .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#6B8791}body[fds] .mat-checkbox-inner-container:hover{background-color:#6B8791;border-r
 adius:2px}body[fds] .mat-checkbox-background{height:10px;width:10px}body[fds] .mat-pseudo-checkbox{height:10px !important;width:10px !important;border:1px solid #ddd}body[fds] .mat-pseudo-checkbox:hover{background-color:#6B8791;border:1px solid #6B8791}body[fds] .mat-pseudo-checkbox-checked::after{content:'\f00c';font-size:8px;font-family:fontawesome;margin-top:-9px;margin-left:-1px;border:none;transform:initial}body[fds] .mat-pseudo-checkbox-checked,body[fds] .mat-pseudo-checkbox-indeterminate{background-color:#6B8791;border:1px solid #6B8791;height:10px;width:10px}body[fds] .mat-checkbox-disabled{cursor:not-allowed}body[fds] .mat-radio-container{height:12px;width:12px}body[fds] .mat-radio-outer-circle{height:12px;width:12px;background-color:#FFFFFF;border:1px solid #ddd}body[fds] .mat-radio-outer-circle:hover{background-color:#6B8791;border-color:#6B8791}body[fds] .mat-radio-checked .mat-radio-outer-circle{border:1px solid #6B8791;background-color:#6B8791}body[fds] .mat-radio-butt
 on.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#6B8791}body[fds] .mat-radio-inner-circle{height:10px;width:10px;left:1px;top:1px;background-color:#FFFFFF}body[fds] .mat-radio-checked .mat-radio-inner-circle{background-color:#FFFFFF}body[fds] .mat-chip{border-radius:2px;font-size:10px;font-family:"Roboto",sans-serif;font-style:normal;font-weight:normal;padding:4px 12px 4px 12px}body[fds] .mat-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip{color:#666;height:24px;margin:22px 8px 0 0}body[fds] .mat-basic-chip.td-chip-after-pad{padding:4px 12px 4px 12px}body[fds] .mat-basic-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip .td-chip{font-size:10px;min-height:unset;line-height:20px;position:relative;top:-2px}body[fds] .td-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:65px}body[fds] .td-chip-disabled .td-chip{padding:0px 0px 0px 12px}body[fds] .mat-basic-chip mat-icon.td-chip-removal{f
 ont-size:15px;margin-bottom:7px}body[fds] .mat-dialog-container{padding:20px;width:400px}body[fds] .mat-tab-label{line-height:72px;text-transform:uppercase;color:#666}body[fds] .mat-tab-label:hover:not([disabled]){color:#333}body[fds] .mat-tab-label:focus:not([disabled]){background-color:#FFFFFF}body[fds] .mat-tab-label-active{color:#333}body[fds] .mat-tab-nav-bar,body[fds] .mat-tab-header{border-bottom:0px}body[fds] .mat-input-container{min-width:200px}body[fds] .mat-input-wrapper{margin:0;padding-bottom:0}body[fds] input.mat-input-element,body[fds] textarea.mat-input-element{border-radius:2px;color:#666;border:1px solid #CFD3D7;height:32px;padding:0px 10px;width:calc(100% - 26px)}body[fds] textarea.mat-input-element{padding:10px 10px}body[fds] input.mat-input-element[disabled],body[fds] textarea.mat-input-element[disabled]{background:#b2b8c1;color:#dbdee2;border:1px solid #b2b8c1}body[fds] .mat-input-subscript-wrapper{margin-top:18px;width:calc(100% - 23px)}body[fds] input.mat-inp
 ut-element:focus,body[fds] textarea.mat-input-element:focus{border-color:#6B8791}body[fds] .mat-input-underline{display:none}body[fds] .mat-input-placeholder{font-size:14px;color:#999;font-weight:300}body[fds] .mat-input-placeholder{top:29px;left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% - 44px)}body[fds] mat-input-container.mat-focused .mat-input-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .input-button{top:5px;left:-4px;border-left:none !important}body[fds] .input-button.mat-raised-button[disabled]{opacity:1}body[fds] td-chips .mat-input-placeholder-wrapper:
 :after{content:'\f0b0';display:inline-table;font-family:FontAwesome;float:right;margin:12px 10px 0px 0px;color:#999}body[fds] .mat-hint{color:#999}body[fds] .md-card-title{font-size:20px;color:#333;margin-bottom:0px}body[fds] md-card-title{padding-top:20px;padding-left:20px;padding-right:20px}body[fds] .md-card-subtitle{padding-left:20px;padding-right:20px;padding-top:10px;margin-bottom:0px}body[fds] .md-card-content{color:#666;padding:10px 20px 20px 20px;margin:0px}body[fds] .md-card .md-card-actions:last-child,body[fds] .md-card .md-card .md-card-actions:last-child{padding:0px 20px 20px 20px;margin:0px}body[fds] .fds-panel-menu-button{position:absolute;right:0px;z-index:2}body[fds] .link{color:#6B8791;font-size:14px;text-decoration:none;line-height:24px;cursor:pointer}body[fds] .link:hover{text-decoration:underline}body[fds] .link .disabled{color:#333;text-decoration:none}body[fds] .mat-sidenav-container{height:100%}.td-step-header span{display:none}body[fds] .mat-tooltip{backgrou
 nd:#666;opacity:.9;box-shadow:inset 0px 0px 3px 0px #1391c1}body[fds] .td-data-table-cell{font-size:13px;color:#666;padding:0 28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;line-height:30px}body[fds] .td-data-table-column{color:#999;font-weight:normal}body[fds] .td-data-table-row{height:34px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #fff;border-bottom:1px solid #eee}body[fds] .td-data-table-row.selected{background-color:#eee;border:1px solid #eee}body[fds] .td-data-table-row:hover{background-color:#F8F9F9;border:1px solid #B2C1C6}body[fds] .td-data-table-cell .mat-icon-button{color:#6B8791}body[fds] .td-data-table-cell .mat-icon-button:disabled{color:#808793;cursor:not-allowed}body[fds] .td-data-table-cell .mat-button,body[fds] .td-data-table-cell .mat-icon-button,body[fds] .td-data-table-cell .mat-raised-button{height:24px;width:24px;line-height:0}body[fds] .td-data-table-cell .mat-icon-button.badge{border-top-left-radiu
 s:0px;border-top-right-radius:0px}body[fds] .td-data-table-cell .mat-icon-button.badge[disabled]{opacity:.3}body[fds] .td-data-table-column{font-size:12px;color:#999;height:34px;line-height:34px;padding:0 28px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body[fds] .td-data-table-column .fa-caret-up,body[fds] .td-data-table-column .fa-caret-down{color:#6B8791;font-size:12px;margin-bottom:2px}body[fds] td-paging-bar{color:#999}body[fds] td-paging-bar mat-select .mat-select-value,body[fds] td-paging-bar mat-select .mat-select-arrow{color:#6B8791}body[fds] .table-title{font-size:20px;color:#333;min-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;margin-right:10px}body[fds] div .td-data-table{border-bottom:2px solid #ddd;border-right:1px transparent;border-left:1px transparent}.fds-dialog-title{margin-top:0;margin-bottom:20px}body[fds] snack-bar-container{background:#FFFFFF;padding:0;box-shadow:0px 0px 3px 0px #1391c1}fds-snackbar-title ma
 t-icon.mat-icon.mat-primary.material-icons{font-size:10px;height:10px;width:10px;line-height:10px;color:#999}.fds-coaster-message{font-size:12px}.fds-snackbar-title{font-size:14px}.fds-snackbar-title i{font-size:24px}.fds-coaster-icon{position:absolute;top:24px;left:15px}.coaster-close-icon{height:10px !important;width:10px !important;line-height:10px !important;right:10px;position:absolute !important;top:10px}.fds-snackbar-wrapper{border-radius:2px;border-width:1px;border-style:solid}
 
 /*# sourceMappingURL=fluid-design-system.min.css.map */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/platform/core/common/styles/css/fluid-design-system.min.css.gz
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.gz b/platform/core/common/styles/css/fluid-design-system.min.css.gz
index 27eb670..8a40d5a 100644
Binary files a/platform/core/common/styles/css/fluid-design-system.min.css.gz and b/platform/core/common/styles/css/fluid-design-system.min.css.gz differ

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/platform/core/common/styles/css/fluid-design-system.min.css.map
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.map b/platform/core/common/styles/css/fluid-design-system.min.css.map
index 9607502..da4b770 100644
--- a/platform/core/common/styles/css/fluid-design-system.min.css.map
+++ b/platform/core/common/styles/css/fluid-design-system.min.css.map
@@ -23,5 +23,5 @@
 		"../../../snackbars/coaster/_coaster.component.scss"
 	],
 	"names": [],
-	"mappings": "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"
+	"mappings": "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"
 }
\ No newline at end of file


[10/19] nifi-fds git commit: [NIFIREG-168] add package-lock.json, update version number to indicate current version, update pr template to simplify reviewer process

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/544c0e4a/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index 8cdb70d..98f05ea 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
   "name": "nifi-fds",
-  "version": "0.0.1",
+  "version": "0.0.0",
   "scripts": {
     "build": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
     "test": "./node_modules/protractor/bin/webdriver-manager update --gecko false && karma start karma.conf.js --single-run",


[05/19] nifi-fds git commit: [NIFIREG-168] upgrade to angular v5.2.0, angular-material v5.2.0, covalent v1.0.1

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index b1738a1..e435153 100644
--- a/package.json
+++ b/package.json
@@ -31,27 +31,28 @@
   ],
   "dependencies": {
     "jquery": "3.2.1",
-    "rxjs": "5.4.3",
+    "rxjs": "5.5.6",
     "systemjs": "0.20.17",
     "systemjs-plugin-text": "0.0.11",
-    "zone.js": "0.8.7",
-    "@angular/animations": "4.4.6",
-    "@angular/cdk": "2.0.0-beta.12",
-    "@angular/common": "4.4.6",
-    "@angular/compiler": "4.4.6",
-    "@angular/core": "4.4.6",
-    "@angular/flex-layout": "2.0.0-beta.9",
-    "@angular/forms": "4.4.6",
-    "@angular/http": "4.4.6",
-    "@angular/material": "2.0.0-beta.12",
-    "@angular/platform-browser": "4.4.6",
-    "@angular/platform-browser-dynamic": "4.4.6",
-    "@angular/router": "4.4.6",
+    "zone.js": "0.8.17",
+    "@angular/animations": "5.2.0",
+    "@angular/cdk": "5.2.0",
+    "@angular/common": "5.2.0",
+    "@angular/compiler": "5.2.0",
+    "@angular/core": "5.2.0",
+    "@angular/flex-layout": "5.0.0-beta.14",
+    "@angular/forms": "5.2.0",
+    "@angular/http": "5.2.0",
+    "@angular/material": "5.2.0",
+    "@angular/platform-browser": "5.2.0",
+    "@angular/platform-browser-dynamic": "5.2.0",
+    "@angular/router": "5.2.0",
+    "@covalent/core": "1.0.0",
     "roboto-fontface": "0.7.0"
   },
   "devDependencies": {
     "grunt": "0.4.5",
-    "grunt-bump": "^0.8.0",
+    "grunt-bump": "0.8.0",
     "grunt-cli": "1.2.0",
     "grunt-contrib-compress": "1.4.3",
     "grunt-sass": "2.0.0",

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/common/styles/_buttons.scss
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/_buttons.scss b/platform/core/common/styles/_buttons.scss
index a9c9627..db6461f 100644
--- a/platform/core/common/styles/_buttons.scss
+++ b/platform/core/common/styles/_buttons.scss
@@ -67,7 +67,7 @@
   body[fds] .mat-raised-button {
     height: 34px;
     font-family: $fontPrimary;
-    font-weight: normal;
+    font-weight: lighter;
     font-size: 14px;
     text-transform: uppercase;
     line-height: normal;
@@ -211,4 +211,4 @@
     color: $buttonFontPrimaryColorSelected;
     background-color: $buttonBgColorPrimarySelected;
   }
-}
\ No newline at end of file
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/common/styles/_inputs.scss
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/_inputs.scss b/platform/core/common/styles/_inputs.scss
index 392f5cb..cbcd08e 100644
--- a/platform/core/common/styles/_inputs.scss
+++ b/platform/core/common/styles/_inputs.scss
@@ -65,7 +65,7 @@ body[fds] .mat-input-placeholder {
 }
 
 body[fds] .mat-input-placeholder {
-  top: 29px;
+  top: 27px;
   left: 10px;
   white-space: nowrap;
   overflow: hidden;
@@ -100,7 +100,7 @@ body[fds] td-chips .mat-input-placeholder-wrapper::after {
   display: inline-table;
   font-family: FontAwesome;
   float: right;
-  margin: 12px 10px 0px 0px;
+  margin: 15px 10px 0px 0px;
   color: $grey3;
 }
 

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/common/styles/css/fluid-design-system.min.css
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css b/platform/core/common/styles/css/fluid-design-system.min.css
deleted file mode 100644
index 09d81be..0000000
--- a/platform/core/common/styles/css/fluid-design-system.min.css
+++ /dev/null
@@ -1,3 +0,0 @@
-@font-face{font-family:'Roboto';font-style:normal;font-weight:300;src:local("Roboto Light"),local("Roboto-Light"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Light.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:300;src:local("Roboto LightItalic"),local("Roboto-LightItalic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:normal;src:local("Roboto Regular"),local("Roboto-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local("Roboto Medium"),local("Roboto-Medium"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Medium.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:bold;src:local("Roboto Bo
 ld"),local("Roboto-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Bold.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:normal;src:local("Roboto Italic"),local("Roboto-Italic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-RegularItalic.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:normal;src:local("RobotoSlab Regular"),local("RobotoSlab-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:bold;src:local("RobotoSlab Bold"),local("RobotoSlab-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Bold.ttf") format("truetype")}body,html{height:100%}body,button,input,label,select,td,textarea{font-family:"Roboto",sans-serif;font-size:14px}body{color:#333}strong{font-
 weight:bold}pre{overflow-x:auto}em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Roboto",sans-serif;font-weight:normal;font-style:normal;background:#FFFFFF}h1{color:#333}h2{color:#666}table{font-family:"Roboto",sans-serif;font-size:13px;color:#666}.camel-case{text-transform:capitalize}.header{font-family:"Roboto Medium",sans-serif;font-size:16px;color:#333;padding-bottom:10px}.help-icon{font-size:12px;color:#1491C1}.details-header{height:92px}.details-header-container{position:relative;top:22px;left:10px}.description{font-family:"Roboto Light",sans-serif;font-size:12px;color:#666}.description i{padding-right:5px}.label{font-family:"Roboto Medium",sans-serif;font-size:14px;color:#333;text-transform:uppercase}.units{font-family:"Roboto Light",sans-serif;font-size:14px;color:#333}.align-vertical{margin-top:auto;margin-bottom:auto}.align-horizontal{margin-left:auto;margin-right:auto}.fill-available-width{width:100%}.pointer{cursor:pointer}body[fds] .expansion-panel-filter-toggle-grou
 p{box-shadow:none !important}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle{height:75px;width:125px;border:1px solid #ccc}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:63px;text-align:center}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked .md-display-1{color:white}body[fds] .expansion-panel-filter-toggle-group .md-display-1{color:#6B8791}body[fds] .expansion-panel-filter-toggle-group div{line-height:normal}body[fds] .tab-toggle-group{box-shadow:none !important}body[fds] .tab-toggle-group .mat-button-toggle-label-content{border-bottom:2px solid #eee}body[fds] .tab-toggle-group .mat-button-toggle-checked{background:transparent}body[fds] .tab-toggle-group .mat-button-toggle-checked .mat-button-toggle-label-content{border-bottom:2px solid #6B8791;backgroun
 d:transparent}body[fds] .on-off-toggle-group{box-shadow:none !important}body[fds] .on-off-toggle-group .mat-button-toggle{height:20px;width:35px;border:1px solid #ccc}body[fds] .on-off-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:20px;text-align:center}body[fds] .on-off-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white;border:1px solid #6B8791}body[fds] .off-toggle.mat-button-toggle-checked{background-color:#ccc;color:#333;border:1px solid #ccc}body[fds] .mat-checkbox-inner-container{height:10px !important;width:10px !important}body[fds] .mat-checkbox-frame{height:10px;width:10px;border-color:#ddd}body[fds] .mat-checkbox-ripple{left:-7px;top:-7px;right:-7px;bottom:-7px}body[fds] .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,body[fds] .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#6B8791}body[fds] .mat-checkbox-inner-container:hover{background-color:#6B8791;border-r
 adius:2px}body[fds] .mat-checkbox-background{height:10px;width:10px}body[fds] .mat-pseudo-checkbox{height:10px !important;width:10px !important;border:1px solid #ddd}body[fds] .mat-pseudo-checkbox:hover{background-color:#6B8791;border:1px solid #6B8791}body[fds] .mat-pseudo-checkbox-checked::after{content:'\f00c';font-size:8px;font-family:fontawesome;margin-top:-9px;margin-left:-1px;border:none;transform:initial}body[fds] .mat-pseudo-checkbox-checked,body[fds] .mat-pseudo-checkbox-indeterminate{background-color:#6B8791;border:1px solid #6B8791;height:10px;width:10px}body[fds] .mat-checkbox-disabled{cursor:not-allowed}body[fds] .mat-radio-container{height:12px;width:12px}body[fds] .mat-radio-outer-circle{height:12px;width:12px;background-color:#FFFFFF;border:1px solid #ddd}body[fds] .mat-radio-outer-circle:hover{background-color:#6B8791;border-color:#6B8791}body[fds] .mat-radio-checked .mat-radio-outer-circle{border:1px solid #6B8791;background-color:#6B8791}body[fds] .mat-radio-butt
 on.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#6B8791}body[fds] .mat-radio-inner-circle{height:10px;width:10px;left:1px;top:1px;background-color:#FFFFFF}body[fds] .mat-radio-checked .mat-radio-inner-circle{background-color:#FFFFFF}body[fds] .mat-chip{border-radius:2px;font-size:10px;font-family:"Roboto",sans-serif;font-style:normal;font-weight:normal;padding:4px 12px 4px 12px}body[fds] .mat-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip{color:#666;height:24px;margin:22px 8px 0 0}body[fds] .mat-basic-chip.td-chip-after-pad{padding:4px 12px 4px 12px}body[fds] .mat-basic-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip .td-chip{font-size:10px;min-height:unset;line-height:20px;position:relative;top:-2px}body[fds] .td-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:65px}body[fds] .td-chip-disabled .td-chip{padding:0px 0px 0px 12px}body[fds] .mat-basic-chip mat-icon.td-chip-removal{f
 ont-size:15px;margin-bottom:7px}body[fds] .mat-dialog-container{padding:20px;width:400px}body[fds] .mat-tab-label{line-height:72px;text-transform:uppercase;color:#666}body[fds] .mat-tab-label:hover:not([disabled]){color:#333}body[fds] .mat-tab-label:focus:not([disabled]){background-color:#FFFFFF}body[fds] .mat-tab-label-active{color:#333}body[fds] .mat-tab-nav-bar,body[fds] .mat-tab-header{border-bottom:0px}body[fds] .mat-input-container{min-width:200px}body[fds] .mat-input-wrapper{margin:0;padding-bottom:0}body[fds] input.mat-input-element,body[fds] textarea.mat-input-element{border-radius:2px;color:#666;border:1px solid #CFD3D7;height:32px;padding:0px 10px;width:calc(100% - 26px)}body[fds] textarea.mat-input-element{padding:10px 10px}body[fds] input.mat-input-element[disabled],body[fds] textarea.mat-input-element[disabled]{background:#b2b8c1;color:#dbdee2;border:1px solid #b2b8c1}body[fds] .mat-input-subscript-wrapper{margin-top:18px;width:calc(100% - 23px)}body[fds] input.mat-inp
 ut-element:focus,body[fds] textarea.mat-input-element:focus{border-color:#6B8791}body[fds] .mat-input-underline{display:none}body[fds] .mat-input-placeholder{font-size:14px;color:#999;font-weight:300}body[fds] .mat-input-placeholder{top:29px;left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% - 44px)}body[fds] mat-input-container.mat-focused .mat-input-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .input-button{top:5px;left:-4px;border-left:none !important}body[fds] .input-button.mat-raised-button[disabled]{opacity:1}body[fds] td-chips .mat-input-placeholder-wrapper:
 :after{content:'\f0b0';display:inline-table;font-family:FontAwesome;float:right;margin:12px 10px 0px 0px;color:#999}body[fds] .mat-hint{color:#999}body[fds] .md-card-title{font-size:20px;color:#333;margin-bottom:0px}body[fds] md-card-title{padding-top:20px;padding-left:20px;padding-right:20px}body[fds] .md-card-subtitle{padding-left:20px;padding-right:20px;padding-top:10px;margin-bottom:0px}body[fds] .md-card-content{color:#666;padding:10px 20px 20px 20px;margin:0px}body[fds] .md-card .md-card-actions:last-child,body[fds] .md-card .md-card .md-card-actions:last-child{padding:0px 20px 20px 20px;margin:0px}body[fds] .fds-panel-menu-button{position:absolute;right:0px;z-index:2}body[fds] .mat-progress-bar-buffer{background-color:#ccc}body[fds] .link{color:#6B8791;font-size:14px;text-decoration:none;line-height:24px;cursor:pointer}body[fds] .link:hover{text-decoration:underline}body[fds] .link .disabled{color:#333;text-decoration:none}body[fds] .mat-sidenav-container{height:100%}.td-step
 -header span{display:none}body[fds] .mat-tooltip{background:#666;opacity:.9;box-shadow:inset 0px 0px 3px 0px #1391c1}body[fds] .td-data-table-cell{font-size:13px;color:#666;padding:0 28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;line-height:30px}body[fds] .td-data-table-column{color:#999;font-weight:normal}body[fds] .td-data-table-row{height:34px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #fff;border-bottom:1px solid #eee}body[fds] .td-data-table-row.selected{background-color:#eee;border:1px solid #eee}body[fds] .td-data-table-row:hover{background-color:#F8F9F9;border:1px solid #B2C1C6}body[fds] .td-data-table-cell .mat-icon-button{color:#6B8791}body[fds] .td-data-table-cell .mat-icon-button:disabled{color:#808793;cursor:not-allowed}body[fds] .td-data-table-cell .mat-button,body[fds] .td-data-table-cell .mat-icon-button,body[fds] .td-data-table-cell .mat-raised-button{height:24px;width:24px;line-height:0}body[fds] .td-dat
 a-table-cell .mat-icon-button.badge{border-top-left-radius:0px;border-top-right-radius:0px}body[fds] .td-data-table-cell .mat-icon-button.badge[disabled]{opacity:.3}body[fds] .td-data-table-column{font-size:12px;color:#999;height:34px;line-height:34px;padding:0 28px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body[fds] .td-data-table-column .fa-caret-up,body[fds] .td-data-table-column .fa-caret-down{color:#6B8791;font-size:12px;margin-bottom:2px}body[fds] td-paging-bar{color:#999}body[fds] td-paging-bar mat-select .mat-select-value,body[fds] td-paging-bar mat-select .mat-select-arrow{color:#6B8791}body[fds] .table-title{font-size:20px;color:#333;min-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;margin-right:10px}body[fds] div .td-data-table{border-bottom:2px solid #ddd;border-right:1px transparent;border-left:1px transparent}.fds-dialog-title{margin-top:0;margin-bottom:20px}body[fds] snack-bar-container{background:#FFFFFF;padding:0
 ;box-shadow:0px 0px 3px 0px #1391c1}fds-snackbar-title mat-icon.mat-icon.mat-primary.material-icons{font-size:10px;height:10px;width:10px;line-height:10px;color:#999}.fds-coaster-message{font-size:12px}.fds-snackbar-title{font-size:14px}.fds-snackbar-title i{font-size:24px}.fds-coaster-icon{position:absolute;top:24px;left:15px}.coaster-close-icon{height:10px !important;width:10px !important;line-height:10px !important;right:10px;position:absolute !important;top:10px}.fds-snackbar-wrapper{border-radius:2px;border-width:1px;border-style:solid}
-
-/*# sourceMappingURL=fluid-design-system.min.css.map */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/common/styles/css/fluid-design-system.min.css.gz
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.gz b/platform/core/common/styles/css/fluid-design-system.min.css.gz
deleted file mode 100644
index b878c9b..0000000
Binary files a/platform/core/common/styles/css/fluid-design-system.min.css.gz and /dev/null differ

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/common/styles/css/fluid-design-system.min.css.map
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.map b/platform/core/common/styles/css/fluid-design-system.min.css.map
deleted file mode 100644
index a8f8911..0000000
--- a/platform/core/common/styles/css/fluid-design-system.min.css.map
+++ /dev/null
@@ -1,28 +0,0 @@
-{
-	"version": 3,
-	"file": "fluid-design-system.min.css",
-	"sources": [
-		"../fluid-design-system.scss",
-		"../_globalVars.scss",
-		"../_basicElements.scss",
-		"../_helperClasses.scss",
-		"../_buttonToggles.scss",
-		"../_checkboxes.scss",
-		"../_radios.scss",
-		"../_chips.scss",
-		"../_modals.scss",
-		"../_tabs.scss",
-		"../_inputs.scss",
-		"../_panels.scss",
-		"../_progress-bar.scss",
-		"../_links.scss",
-		"../_sideNav.scss",
-		"../_stepper.scss",
-		"../_tooltips.scss",
-		"../_tables.scss",
-		"../../../dialogs/_fds-dialog-component.scss",
-		"../../../snackbars/coaster/_coaster.component.scss"
-	],
-	"names": [],
-	"mappings": "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"
-}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/dialogs/fds-dialog.component.js
----------------------------------------------------------------------
diff --git a/platform/core/dialogs/fds-dialog.component.js b/platform/core/dialogs/fds-dialog.component.js
index e52bd5b..43eba47 100644
--- a/platform/core/dialogs/fds-dialog.component.js
+++ b/platform/core/dialogs/fds-dialog.component.js
@@ -17,21 +17,38 @@
 
 var ngCore = require('@angular/core');
 
-var FdsDialogTitleDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-dialog-title'}),
-    constructor: function () {
-    }
-});
-var FdsDialogContentDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-dialog-content'}),
-    constructor: function () {
-    }
-});
-var FdsDialogActionsDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-dialog-actions'}),
-    constructor: function () {
-    }
-});
+function FdsDialogTitleDirective() {
+}
+
+FdsDialogTitleDirective.prototype = {
+    contstructor: FdsDialogTitleDirective
+}
+
+FdsDialogTitleDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-dialog-title' },] },
+];
+
+function FdsDialogContentDirective() {
+}
+
+FdsDialogContentDirective.prototype = {
+    contstructor: FdsDialogContentDirective
+}
+
+FdsDialogContentDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-dialog-content' },] },
+];
+
+function FdsDialogActionsDirective() {
+}
+
+FdsDialogActionsDirective.prototype = {
+    contstructor: FdsDialogActionsDirective
+}
+
+FdsDialogActionsDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-dialog-actions' },] },
+];
 
 /**
  * FdsDialogComponent constructor

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/dialogs/services/dialog.service.js
----------------------------------------------------------------------
diff --git a/platform/core/dialogs/services/dialog.service.js b/platform/core/dialogs/services/dialog.service.js
index 9bf1ee9..985baf5 100644
--- a/platform/core/dialogs/services/dialog.service.js
+++ b/platform/core/dialogs/services/dialog.service.js
@@ -19,26 +19,32 @@ var ngCore = require('@angular/core');
 var ngMaterial = require('@angular/material');
 var FdsConfirmDialogComponent = require('@fluid-design-system/confirm-dialog-component');
 
-var IDialogConfig = new ngCore.Class({
-    extends: ngMaterial.MatDialogConfig,
-    constructor: function () {
-        this.title = '';
-        this.message = '';
-        this.dialogRef = undefined;
-        this.viewContainerRef = undefined;
-        this.disableClose = true;
-    }
-});
+function IDialogConfig() {
+    this.title = '';
+    this.message = '';
+    this.dialogRef = undefined;
+    this.viewContainerRef = undefined;
+    this.disableClose = true;
+}
+
+IDialogConfig.prototype = {
+    contstructor: IDialogConfig
+}
+
+$.extend(IDialogConfig, ngMaterial.MatDialogConfig);
+
+function IConfirmConfig() {
+    this.acceptButton = 'ACCEPT';
+    this.acceptButtonColor = 'fds-primary';
+    this.cancelButton = 'CANCEL';
+    this.cancelButtonColor = 'fds-secondary';
+}
+
+IConfirmConfig.prototype = {
+    contstructor: IConfirmConfig
+}
 
-var IConfirmConfig = new ngCore.Class({
-    extends: IDialogConfig,
-    constructor: function () {
-        this.acceptButton = 'ACCEPT';
-        this.acceptButtonColor = 'fds-primary';
-        this.cancelButton = 'CANCEL';
-        this.cancelButtonColor = 'fds-secondary';
-    }
-});
+$.extend(IConfirmConfig, IDialogConfig);
 
 function createConfig(config) {
     var dialogConfig = new IConfirmConfig();
@@ -131,4 +137,4 @@ module.exports = {
     IDialogConfig: IDialogConfig,
     IConfirmConfig: IConfirmConfig,
     FdsDialogService: FdsDialogService
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/snackbars/fds-snackbar.component.js
----------------------------------------------------------------------
diff --git a/platform/core/snackbars/fds-snackbar.component.js b/platform/core/snackbars/fds-snackbar.component.js
index 88974b8..959f6dc 100644
--- a/platform/core/snackbars/fds-snackbar.component.js
+++ b/platform/core/snackbars/fds-snackbar.component.js
@@ -17,21 +17,38 @@
 
 var ngCore = require('@angular/core');
 
-var FdsSnackBarTitleDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-snackbar-title'}),
-    constructor: function () {
-    }
-});
-var FdsSnackBarContentDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-snackbar-content'}),
-    constructor: function () {
-    }
-});
-var FdsSnackBarActionsDirective = new ngCore.Class({
-    extends: ngCore.Directive({selector: 'fds-snackbar-actions'}),
-    constructor: function () {
-    }
-});
+function FdsSnackBarTitleDirective() {
+}
+
+FdsSnackBarTitleDirective.prototype = {
+    contstructor: FdsSnackBarTitleDirective
+}
+
+FdsSnackBarTitleDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-snackbar-title' },] },
+];
+
+function FdsSnackBarContentDirective() {
+}
+
+FdsSnackBarContentDirective.prototype = {
+    contstructor: FdsSnackBarContentDirective
+}
+
+FdsSnackBarContentDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-snackbar-content' },] },
+];
+
+function FdsSnackBarActionsDirective() {
+}
+
+FdsSnackBarActionsDirective.prototype = {
+    contstructor: FdsSnackBarActionsDirective
+}
+
+FdsSnackBarActionsDirective.decorators = [
+    { type: ngCore.Directive, args: [{ selector: 'fds-snackbar-actions' },] },
+];
 
 /**
  * FdsSnackBarComponent constructor

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/core/snackbars/services/snackbar.service.js
----------------------------------------------------------------------
diff --git a/platform/core/snackbars/services/snackbar.service.js b/platform/core/snackbars/services/snackbar.service.js
index 433db11..e02e505 100644
--- a/platform/core/snackbars/services/snackbar.service.js
+++ b/platform/core/snackbars/services/snackbar.service.js
@@ -20,23 +20,29 @@ var ngMaterial = require('@angular/material');
 var FdsCoasterComponent = require('@fluid-design-system/coaster-component');
 var $ = require('jquery');
 
-var ISnackBarConfig = new ngCore.Class({
-    extends: ngMaterial.MatSnackBarConfig,
-    constructor: function () {
-        this.title = '';
-        this.message = '';
-        this.snackBarRef = undefined;
-        this.viewContainerRef = undefined;
-    }
-});
+function ISnackBarConfig() {
+    this.title = '';
+    this.message = '';
+    this.snackBarRef = undefined;
+    this.viewContainerRef = undefined;
+}
+
+ISnackBarConfig.prototype = {
+    contstructor: ISnackBarConfig
+}
+
+$.extend(ISnackBarConfig, ngMaterial.MatSnackBarConfig);
+
+function ICoasterConfig() {
+    this.icon = '';
+    this.color = '';
+}
+
+ICoasterConfig.prototype = {
+    contstructor: ICoasterConfig
+}
 
-var ICoasterConfig = new ngCore.Class({
-    extends: ISnackBarConfig,
-    constructor: function () {
-        this.icon = '';
-        this.color = '';
-    }
-});
+$.extend(ICoasterConfig, ISnackBarConfig);
 
 /**
  * FdsSnackBarService constructor.
@@ -129,4 +135,4 @@ module.exports = {
     ISnackBarConfig: ISnackBarConfig,
     ICoasterConfig: ICoasterConfig,
     FdsSnackBarService: FdsSnackBarService
-};
\ No newline at end of file
+};

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/platform/systemjs.spec.config.js
----------------------------------------------------------------------
diff --git a/platform/systemjs.spec.config.js b/platform/systemjs.spec.config.js
index 2888d96..9a1281f 100644
--- a/platform/systemjs.spec.config.js
+++ b/platform/systemjs.spec.config.js
@@ -40,7 +40,27 @@
             '@angular/router': 'npm:@angular/router/bundles/router.umd.js',
             '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
             '@angular/flex-layout': 'npm:@angular/flex-layout/bundles/flex-layout.umd.js',
+            '@angular/flex-layout/core': 'npm:@angular/flex-layout/bundles/flex-layout-core.umd.js',
+            '@angular/flex-layout/extended': 'npm:@angular/flex-layout/bundles/flex-layout-extended.umd.js',
+            '@angular/flex-layout/flex': 'npm:@angular/flex-layout/bundles/flex-layout-flex.umd.js',
             '@angular/material': 'npm:@angular/material/bundles/material.umd.js',
+            '@angular/material/core': 'npm:@angular/material/bundles/material-core.umd.js',
+            '@angular/material/card': 'npm:@angular/material/bundles/material-card.umd.js',
+            '@angular/material/divider': 'npm:@angular/material/bundles/material-divider.umd.js',
+            '@angular/material/progress-bar': 'npm:@angular/material/bundles/material-progress-bar.umd.js',
+            '@angular/material/progress-spinner': 'npm:@angular/material/bundles/material-progress-spinner.umd.js',
+            '@angular/material/chips': 'npm:@angular/material/bundles/material-chips.umd.js',
+            '@angular/material/input': 'npm:@angular/material/bundles/material-input.umd.js',
+            '@angular/material/icon': 'npm:@angular/material/bundles/material-icon.umd.js',
+            '@angular/material/button': 'npm:@angular/material/bundles/material-button.umd.js',
+            '@angular/material/checkbox': 'npm:@angular/material/bundles/material-checkbox.umd.js',
+            '@angular/material/tooltip': 'npm:@angular/material/bundles/material-tooltip.umd.js',
+            '@angular/material/dialog': 'npm:@angular/material/bundles/material-dialog.umd.js',
+            '@angular/material/sidenav': 'npm:@angular/material/bundles/material-sidenav.umd.js',
+            '@angular/material/menu': 'npm:@angular/material/bundles/material-menu.umd.js',
+            '@angular/material/form-field': 'npm:@angular/material/bundles/material-form-field.umd.js',
+            '@angular/material/toolbar': 'npm:@angular/material/bundles/material-toolbar.umd.js',
+            '@angular/material/autocomplete': 'npm:@angular/material/bundles/material-autocomplete.umd.js',
             '@angular/platform-browser/animations': 'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js',
             '@angular/cdk': 'npm:@angular/cdk/bundles/cdk.umd.js',
             '@angular/cdk/a11y': 'npm:@angular/cdk/bundles/cdk-a11y.umd.js',
@@ -62,16 +82,16 @@
             '@angular/animations/browser': 'npm:@angular/animations/bundles/animations-browser.umd.js',
             '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
 
+            // needed to support gestures for angular material
+            'hammerjs': 'npm:hammerjs/hammer.min.js',
+
             // Covalent
-            '@covalent/core': 'npm:@covalent/core/bundles/core.umd.min.js',
+            '@covalent/core': 'npm:@covalent/core/bundles/covalent-core.umd.min.js',
+            '@covalent/core/common': 'npm:@covalent/core/bundles/covalent-core-common.umd.min.js',
 
             // other libraries
             'rxjs': 'npm:rxjs',
             'zone.js': 'npm:zone.js/dist/zone.js',
-            // 'core-js': 'npm:core-js/client/shim.min.js',
-            // 'superagent': 'npm:superagent/superagent.js',
-            // 'querystring': 'npm:querystring',
-            // 'tslib': 'npm:tslib/tslib.js',
 
             // Fluid Design System
             '@fluid-design-system/core': 'platform/core/fluid-design-system.module.js',


[13/19] nifi-fds git commit: [NIFIREG-168] include webapp in src to facilitate local build and review process

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/components/fluid-design-system/fds-demo.js
----------------------------------------------------------------------
diff --git a/webapp/components/fluid-design-system/fds-demo.js b/webapp/components/fluid-design-system/fds-demo.js
new file mode 100644
index 0000000..a21dd6b
--- /dev/null
+++ b/webapp/components/fluid-design-system/fds-demo.js
@@ -0,0 +1,1066 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngCore = require('@angular/core');
+var covalentCore = require('@covalent/core');
+var ngRouter = require('@angular/router');
+var ngMaterial = require('@angular/material');
+var fdsAnimations = require('webapp/fds.animations.js');
+var fdsDialogsModule = require('@fluid-design-system/dialogs');
+var fdsSnackBarsModule = require('@fluid-design-system/snackbars');
+var FdsService = require('webapp/services/fds.service.js');
+var FdsDemoDialog = require('webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js');
+
+var NUMBER_FORMAT = function (v) {
+    return v;
+};
+var DECIMAL_FORMAT = function (v) {
+    return v.toFixed(2);
+};
+var date = new Date();
+
+/**
+ * FdsDemo constructor.
+ *
+ * @param FdsSnackBarService    The FDS snack bar service module.
+ * @param FdsService            The FDS service module.
+ * @param dialog                The angular material dialog module.
+ * @param TdDialogService       The covalent dialog service module.
+ * @param TdDataTableService    The covalent data table service module.
+ * @constructor
+ */
+function FdsDemo(FdsSnackBarService, FdsService, dialog, TdDataTableService, FdsDialogService) {
+
+    this.fdsService = FdsService;
+
+    //<editor-fold desc="Snack Bars">
+
+    this.snackBarService = FdsSnackBarService;
+
+    //</editor-fold>
+
+    //<editor-fold desc="Dialog">
+
+    this.dialog = dialog;
+
+    //</editor-fold>
+
+    //<editor-fold desc="Simple Dialogs">
+
+    this.dialogService = FdsDialogService;
+
+    //</editor-fold>
+
+    //<editor-fold desc="Expansion Panel">
+
+    this.expandCollapseExpansion1Msg = 'No expanded/collapsed detected yet';
+    this.expansion1 = false;
+    this.disabled = false;
+
+    //</editor-fold>
+
+    //<editor-fold desc="Autocomplete">
+
+    this.currentState = '';
+    this.reactiveStates = '';
+    this.tdStates = [];
+    this.tdDisabled = false;
+    this.states = [
+        {code: 'AL', name: 'Alabama'},
+        {code: 'AK', name: 'Alaska'},
+        {code: 'AZ', name: 'Arizona'},
+        {code: 'AR', name: 'Arkansas'},
+        {code: 'CA', name: 'California'},
+        {code: 'CO', name: 'Colorado'},
+        {code: 'CT', name: 'Connecticut'},
+        {code: 'DE', name: 'Delaware'},
+        {code: 'FL', name: 'Florida'},
+        {code: 'GA', name: 'Georgia'},
+        {code: 'HI', name: 'Hawaii'},
+        {code: 'ID', name: 'Idaho'},
+        {code: 'IL', name: 'Illinois'},
+        {code: 'IN', name: 'Indiana'},
+        {code: 'IA', name: 'Iowa'},
+        {code: 'KS', name: 'Kansas'},
+        {code: 'KY', name: 'Kentucky'},
+        {code: 'LA', name: 'Louisiana'},
+        {code: 'ME', name: 'Maine'},
+        {code: 'MD', name: 'Maryland'},
+        {code: 'MA', name: 'Massachusetts'},
+        {code: 'MI', name: 'Michigan'},
+        {code: 'MN', name: 'Minnesota'},
+        {code: 'MS', name: 'Mississippi'},
+        {code: 'MO', name: 'Missouri'},
+        {code: 'MT', name: 'Montana'},
+        {code: 'NE', name: 'Nebraska'},
+        {code: 'NV', name: 'Nevada'},
+        {code: 'NH', name: 'New Hampshire'},
+        {code: 'NJ', name: 'New Jersey'},
+        {code: 'NM', name: 'New Mexico'},
+        {code: 'NY', name: 'New York'},
+        {code: 'NC', name: 'North Carolina'},
+        {code: 'ND', name: 'North Dakota'},
+        {code: 'OH', name: 'Ohio'},
+        {code: 'OK', name: 'Oklahoma'},
+        {code: 'OR', name: 'Oregon'},
+        {code: 'PA', name: 'Pennsylvania'},
+        {code: 'RI', name: 'Rhode Island'},
+        {code: 'SC', name: 'South Carolina'},
+        {code: 'SD', name: 'South Dakota'},
+        {code: 'TN', name: 'Tennessee'},
+        {code: 'TX', name: 'Texas'},
+        {code: 'UT', name: 'Utah'},
+        {code: 'VT', name: 'Vermont'},
+        {code: 'VA', name: 'Virginia'},
+        {code: 'WA', name: 'Washington'},
+        {code: 'WV', name: 'West Virginia'},
+        {code: 'WI', name: 'Wisconsin'},
+        {code: 'WY', name: 'Wyoming'},
+    ];
+
+    //</editor-fold>
+
+    //<editor-fold desc="Searchable Expansion Panels">
+
+    this.dataTableService = TdDataTableService;
+
+    this.droplets = [{
+        id: '23f6cc59-0156-1000-09b4-2b0610089090',
+        name: "Decompression_Circular_Flow",
+        displayName: 'Decompressed Circular flow',
+        type: 'flow',
+        sublabel: 'A sublabel',
+        compliant: {
+            id: '25fd6vv87-3549-0001-05g6-4d4567890765',
+            label: 'Compliant',
+            type: 'certification'
+        },
+        fleet: {
+            id: '23f6cc59-3549-0001-05g6-4d4567890765',
+            label: 'Fleet',
+            type: 'certification'
+        },
+        prod: {
+            id: '52fd6vv87-3549-0001-05g6-4d4567890765',
+            label: 'Production Ready',
+            type: 'certification'
+        },
+        secure: {
+            id: '32f6cc59-3549-0001-05g6-4d4567890765',
+            label: 'Secure',
+            type: 'certification'
+        },
+        versions: [{
+            id: '23f6cc59-0156-1000-06b4-2b0810089090',
+            revision: '1',
+            dependentFlows: [{
+                id: '25fd6vv87-3549-0001-05g6-4d4567890765'
+            }],
+            created: date.setDate(date.getDate() - 1),
+            updated: new Date()
+        }, {
+            id: '25fd6vv87-3549-0001-05g6-4d4567890765',
+            revision: '2',
+            dependentFlows: [{
+                id: '23f6cc59-0156-1000-06b4-2b0810089090'
+            }],
+            created: new Date(),
+            updated: new Date()
+        }],
+        flows: [],
+        extensions: [],
+        assets: [],
+        actions: [{
+            'name': 'Delete',
+            'icon': 'fa fa-close',
+            'tooltip': 'Delete User'
+        }, {
+            'name': 'Manage',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage User'
+        }, {
+            'name': 'Action 3',
+            'icon': 'fa fa-question',
+            'tooltip': 'Whatever else we want to do...'
+        }]
+    }, {
+        id: '25fd6vv87-3249-0001-05g6-4d4767890765',
+        name: "DateConversion",
+        displayName: 'Date conversion',
+        type: 'asset',
+        sublabel: 'A sublabel',
+        compliant: {
+            id: '25fd6vv34-3549-0001-05g6-4d4567890765',
+            label: 'Compliant',
+            type: 'certification'
+        },
+        prod: {
+            id: '52vn6vv87-3549-0001-05g6-4d4567890765',
+            label: 'Production Ready',
+            type: 'certification'
+        },
+        versions: [{
+            id: '23f6ic59-0156-1000-06b4-2b0810089090',
+            revision: '1',
+            dependentFlows: [{
+                id: '23f6cc19-0156-1000-06b4-2b0810089090'
+            }],
+            created: new Date(),
+            updated: new Date()
+        }],
+        flows: [],
+        extensions: [],
+        assets: [],
+        actions: [{
+            'name': 'Delete',
+            'icon': 'fa fa-close',
+            'tooltip': 'Delete User'
+        }]
+    }, {
+        id: '52fd6vv87-3294-0001-05g6-4d4767890765',
+        name: "nifi-email-bundle",
+        displayName: 'nifi-email-bundle',
+        type: 'extension',
+        sublabel: 'A sublabel',
+        compliant: {
+            id: '33fd6vv87-3549-0001-05g6-4d4567890765',
+            label: 'Compliant',
+            test: {
+                label: 'test'
+            },
+            type: 'certification'
+        },
+        versions: [{
+            id: '23d3cc59-0156-1000-06b4-2b0810089090',
+            revision: '1',
+            dependentFlows: [{
+                id: '23f6cc89-0156-1000-06b4-2b0810089090'
+            }],
+            created: new Date(),
+            updated: new Date()
+        }],
+        flows: [],
+        extensions: [],
+        assets: [],
+        actions: [{
+            'name': 'Delete',
+            'icon': 'fa fa-close',
+            'tooltip': 'Delete User'
+        }, {
+            'name': 'Manage',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage User'
+        },]
+    }];
+
+    this.filteredDroplets = [];
+
+    this.dropletColumns = [
+        {name: 'id', label: 'ID', sortable: true},
+        {name: 'name', label: 'Name', sortable: true,},
+        {name: 'displayName', label: 'Display Name', sortable: true},
+        {name: 'sublabel', label: 'Label', sortable: true},
+        {name: 'type', label: 'Type', sortable: true}
+    ];
+    this.activeDropletColumn = this.dropletColumns[0];
+
+    this.autoCompleteDroplets = [];
+    this.dropletsSearchTerms = [];
+
+    //</editor-fold>
+
+    //<editor-fold desc="Data Tables">
+
+    this.data = [{
+        'id': 1,
+        'name': 'Frozen yogurt',
+        'type': 'Ice cream',
+        'calories': 159.0,
+        'fat': 6.0,
+        'carbs': 24.0,
+        'protein': 4.0,
+        'sodium': 87.0,
+        'calcium': 14.0,
+        'iron': 1.0,
+        'comments': 'I love froyo!',
+        'actions': [{
+            'name': 'Action 1',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage Users'
+        }, {
+            'name': 'Action 2',
+            'icon': 'fa fa-key',
+            'tooltip': 'Manage Permissions'
+        }]
+    }, {
+        'id': 2,
+        'name': 'Ice cream sandwich',
+        'type': 'Ice cream',
+        'calories': 237.0,
+        'fat': 9.0,
+        'carbs': 37.0,
+        'protein': 4.3,
+        'sodium': 129.0,
+        'calcium': 8.0,
+        'iron': 1.0,
+        'actions': [{
+            'name': 'Action 1',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage Users'
+        }, {
+            'name': 'Action 2',
+            'icon': 'fa fa-key',
+            'tooltip': 'Manage Permissions'
+        }, {
+            'name': 'Action 3',
+            'tooltip': 'Action 3'
+        }, {
+            'name': 'Action 4',
+            'disabled': true,
+            'tooltip': 'Action 4'
+        }, {
+            'name': 'Action 5',
+            'tooltip': 'Action 5'
+        }]
+    }, {
+        'id': 3,
+        'name': 'Eclair',
+        'type': 'Pastry',
+        'calories': 262.0,
+        'fat': 16.0,
+        'carbs': 24.0,
+        'protein': 6.0,
+        'sodium': 337.0,
+        'calcium': 6.0,
+        'iron': 7.0,
+        'actions': [{
+            'name': 'Action 1',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage Users'
+        }, {
+            'name': 'Action 2',
+            'icon': 'fa fa-key',
+            'tooltip': 'Manage Permissions'
+        }, {
+            'name': 'Action 3',
+            'tooltip': 'Action 3'
+        }, {
+            'name': 'Action 4',
+            'disabled': true,
+            'tooltip': 'Action 4'
+        }, {
+            'name': 'Action 5',
+            'tooltip': 'Action 5'
+        }],
+    }, {
+        'id': 4,
+        'name': 'Cupcake',
+        'type': 'Pastry',
+        'calories': 305.0,
+        'fat': 3.7,
+        'carbs': 67.0,
+        'protein': 4.3,
+        'sodium': 413.0,
+        'calcium': 3.0,
+        'iron': 8.0,
+        'actions': [{
+            'name': 'Action 1',
+            'icon': 'fa fa-user',
+            'tooltip': 'Manage Users'
+        }, {
+            'name': 'Action 2',
+            'icon': 'fa fa-key',
+            'tooltip': 'Manage Permissions'
+        }, {
+            'name': 'Action 3',
+            'tooltip': 'Action 3'
+        }, {
+            'name': 'Action 4',
+            'disabled': true,
+            'tooltip': 'Action 4'
+        }, {
+            'name': 'Action 5',
+            'tooltip': 'Action 5'
+        }],
+    }, {
+        'id': 5,
+        'name': 'Jelly bean',
+        'type': 'Candy',
+        'calories': 375.0,
+        'fat': 0.0,
+        'carbs': 94.0,
+        'protein': 0.0,
+        'sodium': 50.0,
+        'calcium': 0.0,
+        'iron': 0.0,
+    }, {
+        'id': 6,
+        'name': 'Lollipop',
+        'type': 'Candy',
+        'calories': 392.0,
+        'fat': 0.2,
+        'carbs': 98.0,
+        'protein': 0.0,
+        'sodium': 38.0,
+        'calcium': 0.0,
+        'iron': 2.0,
+    }, {
+        'id': 7,
+        'name': 'Honeycomb',
+        'type': 'Other',
+        'calories': 408.0,
+        'fat': 3.2,
+        'carbs': 87.0,
+        'protein': 6.5,
+        'sodium': 562.0,
+        'calcium': 0.0,
+        'iron': 45.0,
+    }, {
+        'id': 8,
+        'name': 'Donut',
+        'type': 'Pastry',
+        'calories': 452.0,
+        'fat': 25.0,
+        'carbs': 51.0,
+        'protein': 4.9,
+        'sodium': 326.0,
+        'calcium': 2.0,
+        'iron': 22.0,
+    }, {
+        'id': 9,
+        'name': 'KitKat',
+        'type': 'Candy',
+        'calories': 518.0,
+        'fat': 26.0,
+        'carbs': 65.0,
+        'protein': 7.0,
+        'sodium': 54.0,
+        'calcium': 12.0,
+        'iron': 6.0,
+    }, {
+        'id': 10,
+        'name': 'Chocolate',
+        'type': 'Candy',
+        'calories': 518.0,
+        'fat': 26.0,
+        'carbs': 65.0,
+        'protein': 7.0,
+        'sodium': 54.0,
+        'calcium': 12.0,
+        'iron': 6.0,
+    }, {
+        'id': 11,
+        'name': 'Chamoy',
+        'type': 'Candy',
+        'calories': 518.0,
+        'fat': 26.0,
+        'carbs': 65.0,
+        'protein': 7.0,
+        'sodium': 54.0,
+        'calcium': 12.0,
+        'iron': 6.0,
+    },];
+
+    this.filteredData = this.data;
+    this.filteredTotal = this.data.length;
+
+    this.columns = [
+        {name: 'comments', label: 'Comments', width: 10},
+        {name: 'name', label: 'Dessert (100g serving)', sortable: true, width: 10},
+        {name: 'type', label: 'Type', sortable: true, width: 10},
+        {name: 'calories', label: 'Calories', numeric: true, format: NUMBER_FORMAT, sortable: true, width: 10},
+        {name: 'fat', label: 'Fat (g)', numeric: true, format: DECIMAL_FORMAT, sortable: true, width: 10},
+        {name: 'carbs', label: 'Carbs (g)', numeric: true, format: NUMBER_FORMAT, sortable: true, width: 10},
+        {name: 'protein', label: 'Protein (g)', numeric: true, format: DECIMAL_FORMAT, sortable: true, width: 10},
+        {name: 'sodium', label: 'Sodium (mg)', numeric: true, format: NUMBER_FORMAT, sortable: true, width: 10},
+        {name: 'calcium', label: 'Calcium (%)', numeric: true, format: NUMBER_FORMAT, sortable: true, width: 10},
+        {name: 'iron', label: 'Iron (%)', numeric: true, format: NUMBER_FORMAT, width: 10},
+    ];
+
+    this.allRowsSelected = false;
+    this.autoCompleteData = [];
+    this.selectedRows = [];
+
+    this.searchTerm = [];
+    this.fromRow = 1;
+    this.currentPage = 1;
+    this.pageSize = 5;
+    this.pageCount = 0;
+
+    //</editor-fold>
+
+    //<editor-fold desc="Chips $ Autocomplete">
+
+    this.readOnly = false;
+
+    this.items = [
+        'stepper',
+        'expansion-panel',
+        'markdown',
+        'highlight',
+        'loading',
+        'media',
+        'chips',
+        'http',
+        'json-formatter',
+        'pipes',
+        'need more?',
+    ];
+
+    this.itemsRequireMatch = this.items.slice(0, 6);
+
+    //</editor-fold>
+
+    //<editor-fold desc="Radios">
+
+    this.favoriteSeason = 'Autumn';
+
+    this.seasonOptions = [
+        'Winter',
+        'Spring',
+        'Summer',
+        'Autumn',
+    ];
+
+    //</editor-fold>
+
+    //<editor-fold desc="Select">
+
+    this.selectedValue = '';
+
+    this.foods = [
+        {value: 'steak-0', viewValue: 'Steak'},
+        {value: 'pizza-1', viewValue: 'Pizza'},
+        {value: 'tacos-2', viewValue: 'Tacos'},
+    ];
+
+    //</editor-fold>
+
+    //<editor-fold desc="Checkbox">
+
+    this.user = {
+        agreesToTOS: false
+    };
+
+    this.groceries = [{
+        bought: true,
+        name: 'Seitan',
+    }, {
+        bought: false,
+        name: 'Almond Meal Flour',
+    }, {
+        bought: false,
+        name: 'Organic Eggs',
+    },];
+
+    //</editor-fold>
+
+    //<editor-fold desc="Slide Toggle">
+
+    this.systems = [{
+        name: 'Lights',
+        on: false,
+        color: 'primary',
+    }, {
+        name: 'Surround Sound',
+        on: true,
+        color: 'accent',
+    }, {
+        name: 'T.V.',
+        on: true,
+        color: 'warn',
+    },];
+
+    this.house = {
+        lockHouse: false,
+    };
+
+    //</editor-fold>
+};
+
+FdsDemo.prototype = {
+    constructor: FdsDemo,
+
+    //<editor-fold desc="Autocomplete">
+
+    displayFn: function (value) {
+        return value && typeof value === 'object' ? value.name : value;
+    },
+
+    filterStates: function (val) {
+        return val ? this.states.filter(function (s) {
+            return s.name.match(new RegExp(val, 'gi'));
+        }) : this.states;
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Snack Bars">
+
+    showSuccessSnackBar: function () {
+        var snackBarRef = this.snackBarService.openCoaster({
+            title: 'Success',
+            message: 'Some help text regarding the successful event.',
+            verticalPosition: 'top',
+            horizontalPosition: 'right',
+            icon: 'fa fa-check-circle-o',
+            color: '#1EB475',
+            duration: 3000
+        });
+    },
+
+    showWarnSnackBar: function () {
+        var snackBarRef = this.snackBarService.openCoaster({
+            title: 'Warning',
+            message: 'Some help text regarding the warning.',
+            verticalPosition: 'top',
+            horizontalPosition: 'left',
+            icon: 'fa fa-exclamation-triangle',
+            color: '#E98A40',
+            duration: 3000
+        });
+    },
+
+    showErrorSnackBar: function () {
+        var snackBarRef = this.snackBarService.openCoaster({
+            title: 'Error',
+            message: 'Some help text regarding the critical error. This coaster will stay open until closed with the `x` or if another coaster is created.',
+            verticalPosition: 'bottom',
+            horizontalPosition: 'right',
+            icon: 'fa fa-times-circle-o',
+            color: '#EF6162'
+        });
+    },
+
+    showRegularSnackBar: function () {
+        var snackBarRef = this.snackBarService.openCoaster({
+            title: 'Regular',
+            message: 'Something interesting.',
+            verticalPosition: 'bottom',
+            horizontalPosition: 'left',
+            color: '#808793',
+            duration: 3000
+        });
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Dialog">
+
+    openDialog: function () {
+        this.dialog.open(FdsDemoDialog);
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Expansion Panel">
+
+    toggleExpansion1: function () {
+        if (!this.disabled) {
+            this.expansion1 = !this.expansion1;
+        }
+    },
+
+    toggleDisabled: function () {
+        this.disabled = !this.disabled;
+    },
+
+    expandExpansion1Event: function () {
+        this.expandCollapseExpansion1Msg = 'Expand event emitted.';
+    },
+
+    collapseExpansion1Event: function () {
+        this.expandCollapseExpansion1Msg = 'Collapse event emitted.';
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Simple Dialogs">
+
+    openAlert: function () {
+        this.dialogService.openAlert({
+            title: 'Alert',
+            disableClose: true,
+            message: 'This is how simple it is to create an alert with this wrapper service.',
+        });
+    },
+
+    openConfirm: function () {
+        this.dialogService.openConfirm({
+            title: 'Confirm',
+            message: 'This is how simple it is to create a confirm with this wrapper service. Do you agree?',
+            cancelButton: 'Disagree',
+            acceptButton: 'Agree',
+        });
+    },
+
+    openPrompt: function () {
+        this.dialogService.openPrompt({
+            title: 'Prompt',
+            message: 'This is how simple it is to create a prompt with this wrapper service. Prompt something.',
+            value: 'Populated value',
+            cancelButton: 'Cancel',
+            acceptButton: 'Ok',
+        });
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Searchable Expansion Panels">
+
+    isDropletFilterChecked: function (term) {
+        return (this.dropletsSearchTerms.indexOf(term) > -1);
+    },
+
+    getDropletTypeCount: function (type) {
+        return this.filteredDroplets.filter(function (droplet) {
+            return droplet.type === type;
+        }).length;
+    },
+
+    getDropletCertificationCount: function (certification) {
+        return this.filteredDroplets.filter(function (droplet) {
+            return Object.keys(droplet).find(function (key) {
+                if (key === certification && droplet[certification].type === 'certification') {
+                    return droplet;
+                }
+            });
+        }).length;
+    },
+
+    getSortBy: function () {
+        var sortByColumnLabel;
+        var arrayLength = this.dropletColumns.length;
+        for (var i = 0; i < arrayLength; i++) {
+            if (this.dropletColumns[i].active === true) {
+                sortByColumnLabel = this.dropletColumns[i].label;
+                break;
+            }
+        }
+        return sortByColumnLabel;
+    },
+
+    sortDroplets: function (column) {
+        if (column.sortable === true) {
+            // toggle column sort order
+            var sortOrder = column.sortOrder = (column.sortOrder === 'ASC') ? 'DESC' : 'ASC';
+            this.filterDroplets(column.name, sortOrder);
+            //only one column can be actively sorted so we reset all to inactive
+            this.dropletColumns.forEach(function (c) {
+                c.active = false;
+            });
+            //and set this column as the actively sorted column
+            column.active = true;
+            this.activeDropletColumn = column;
+        }
+    },
+
+    toggleDropletsFilter: function (searchTerm) {
+        var applySearchTerm = true;
+        // check if the search term is already applied and remove it if true
+        if (this.dropletsSearchTerms.length > 0) {
+            var arrayLength = this.dropletsSearchTerms.length;
+            for (var i = 0; i < arrayLength; i++) {
+                var index = this.dropletsSearchTerms.indexOf(searchTerm);
+                if (index > -1) {
+                    this.dropletsSearchTerms.splice(index, 1);
+                    applySearchTerm = false;
+                }
+            }
+        }
+
+        // if we just removed the search term do NOT apply it again
+        if (applySearchTerm) {
+            this.dropletsSearchTerms.push(searchTerm);
+        }
+
+        this.filterDroplets(this.activeDropletColumn.name, this.activeDropletColumn.sortOrder);
+    },
+
+    filterDroplets: function (sortBy, sortOrder) {
+        // if `sortOrder` is `undefined` then use 'ASC'
+        if (sortOrder === undefined) {
+            sortOrder = 'ASC'
+        }
+        // if `sortBy` is `undefined` then find the first sortable column in this.dropletColumns
+        if (sortBy === undefined) {
+            var arrayLength = this.dropletColumns.length;
+            for (var i = 0; i < arrayLength; i++) {
+                if (this.dropletColumns[i].sortable === true) {
+                    sortBy = this.dropletColumns[i].name;
+                    this.activeDropletColumn = this.dropletColumns[i];
+                    //only one column can be actively sorted so we reset all to inactive
+                    this.dropletColumns.forEach(function (c) {
+                        c.active = false;
+                    });
+                    //and set this column as the actively sorted column
+                    this.dropletColumns[i].active = true;
+                    this.dropletColumns[i].sortOrder = sortOrder;
+                    break;
+                }
+            }
+        }
+
+        var newData = this.droplets;
+
+        for (var i = 0; i < this.dropletsSearchTerms.length; i++) {
+            newData = this.filterData(newData, this.dropletsSearchTerms[i], true, this.activeDropletColumn.name);
+        }
+
+        newData = this.dataTableService.sortData(newData, sortBy, sortOrder);
+        this.filteredDroplets = newData;
+        this.getAutoCompleteDroplets();
+    },
+
+    getAutoCompleteDroplets: function () {
+        var self = this;
+        this.autoCompleteDroplets = [];
+        this.dropletColumns.forEach(function (c) {
+            self.filteredDroplets.forEach(function (r) {
+                (r[c.name.toLowerCase()]) ? self.autoCompleteDroplets.push(r[c.name.toLowerCase()].toString()) : '';
+            });
+        });
+    },
+
+    //</editor-fold>
+
+    filterData: function (data, searchTerm, ignoreCase) {
+        var field = '';
+        if (searchTerm.indexOf(":") > -1) {
+            field = searchTerm.split(':')[0].trim();
+            searchTerm = searchTerm.split(':')[1].trim();
+        }
+        var filter = searchTerm ? (ignoreCase ? searchTerm.toLowerCase() : searchTerm) : '';
+
+        if (filter) {
+            data = data.filter(function (item) {
+                var res = Object.keys(item).find(function (key) {
+                    if (field.indexOf(".") > -1) {
+                        var objArray = field.split(".");
+                        var obj = item;
+                        var arrayLength = objArray.length;
+                        for (var i = 0; i < arrayLength; i++) {
+                            try {
+                                obj = obj[objArray[i]];
+                            } catch (e) {
+                                return false;
+                            }
+                        }
+                        var preItemValue = ('' + obj);
+                        var itemValue = ignoreCase ? preItemValue.toLowerCase() : preItemValue;
+                        return itemValue.indexOf(filter) > -1;
+                    } else {
+                        if (key !== field && field !== '') {
+                            return false;
+                        }
+                        var preItemValue = ('' + item[key]);
+                        var itemValue = ignoreCase ? preItemValue.toLowerCase() : preItemValue;
+                        return itemValue.indexOf(filter) > -1;
+                    }
+                });
+                return !(typeof res === 'undefined');
+            });
+        }
+        return data;
+    },
+
+    //<editor-fold desc="Data Tables">
+
+    sort: function (sortEvent, column) {
+        if (column.sortable) {
+            var sortBy = column.name;
+            var sortOrder = column.sortOrder = (column.sortOrder === 'ASC') ? 'DESC' : 'ASC';
+            this.filter(sortBy, sortOrder);
+
+            //only one column can be actively sorted so we reset all to inactive
+            this.columns.forEach(function (c) {
+                c.active = false;
+            });
+            //and set this column as the actively sorted column
+            column.active = true;
+        }
+    },
+
+    searchRemove: function (searchTerm) {
+        //only remove the first occurrence of the search term
+        var index = this.searchTerm.indexOf(searchTerm);
+        if (index !== -1) {
+            this.searchTerm.splice(index, 1);
+        }
+        this.fromRow = 1;
+        this.currentPage = 1;
+        this.filter();
+    },
+
+    searchAdd: function (searchTerm) {
+        this.searchTerm.push(searchTerm);
+        this.fromRow = 1;
+        this.currentPage = 1;
+        this.filter();
+    },
+
+    page: function (pagingEvent) {
+        this.fromRow = pagingEvent.fromRow;
+        this.currentPage = pagingEvent.page;
+        this.pageSize = pagingEvent.pageSize;
+        this.allRowsSelected = false;
+        this.filter();
+    },
+
+    filter: function (sortBy, sortOrder) {
+        if (this.allRowsSelected) {
+            this.toggleSelectAll();
+        }
+        this.deselectAll();
+        var newData = this.data;
+
+        for (var i = 0; i < this.searchTerm.length; i++) {
+            newData = this.filterData(newData, this.searchTerm[i], true);
+        }
+        this.filteredTotal = newData.length;
+        newData = this.dataTableService.sortData(newData, sortBy, sortOrder);
+        this.pageCount = newData.length;
+        newData = this.dataTableService.pageData(newData, this.fromRow, this.currentPage * this.pageSize);
+        this.filteredData = newData;
+        this.getAutoCompleteData();
+    },
+
+    toggleSelect: function (row) {
+        if (this.allFilteredRowsSelected()) {
+            this.allRowsSelected = true;
+        } else {
+            this.allRowsSelected = false;
+        }
+    },
+
+    toggleSelectAll: function () {
+        if (this.allRowsSelected) {
+            this.selectAll();
+        } else {
+            this.deselectAll();
+        }
+    },
+
+    selectAll: function () {
+        this.filteredData.forEach(function (c) {
+            c.checked = true;
+        });
+    },
+
+    deselectAll: function () {
+        this.filteredData.forEach(function (c) {
+            c.checked = false;
+        });
+    },
+
+    allFilteredRowsSelected: function () {
+        var allFilteredRowsSelected = true;
+        this.filteredData.forEach(function (c) {
+            if (c.checked === undefined || c.checked === false) {
+                allFilteredRowsSelected = false;
+            }
+        });
+
+        return allFilteredRowsSelected;
+    },
+
+    areTooltipsOn: function () {
+        return this.columns[0].hasOwnProperty('tooltip');
+    },
+
+    toggleTooltips: function () {
+        if (this.columns[0].tooltip) {
+            this.columns.forEach(function (c) {
+                delete c.tooltip;
+            });
+        } else {
+            this.columns.forEach(function (c) {
+                c.tooltip = 'This is ' + c.label + '!';
+            });
+        }
+    },
+
+    openDataTablePrompt: function (row, name) {
+        this.dialogService.openPrompt({
+            message: 'Enter comment?',
+            value: row[name],
+        }).afterClosed().subscribe(function (value) {
+            if (value !== undefined) {
+                row[name] = value;
+            }
+        })
+    },
+
+    getAutoCompleteData: function () {
+        var self = this;
+        this.autoCompleteData = [];
+        this.columns.forEach(function (c) {
+            self.filteredData.forEach(function (r) {
+                (r[c.name.toLowerCase()]) ? self.autoCompleteData.push(r[c.name.toLowerCase()].toString()) : '';
+            });
+        });
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Chips $ Autocomplete">
+
+    toggleReadOnly: function () {
+        this.readOnly = !this.readOnly;
+    },
+
+    //</editor-fold>
+
+    //<editor-fold desc="Life Cycle Listeners">
+
+    /**
+     * Initialize the component
+     */
+    ngOnInit: function () {
+        this.filter();
+        this.filterDroplets();
+    },
+
+    /**
+     * Respond after Angular checks the component's views and child views
+     */
+    ngAfterViewChecked: function () {
+        this.fdsService.inProgress = false;
+    }
+
+    //</editor-fold>
+};
+
+FdsDemo.annotations = [
+    new ngCore.Component({
+        template: require('./fds-demo.html!text'),
+        animations: [fdsAnimations.slideInLeftAnimation],
+        host: {
+            '[@routeAnimation]': 'routeAnimation'
+        }
+    })
+];
+
+FdsDemo.parameters = [
+    fdsSnackBarsModule.FdsSnackBarService,
+    FdsService,
+    ngMaterial.MatDialog,
+    covalentCore.TdDataTableService,
+    fdsDialogsModule.FdsDialogService
+];
+
+module.exports = FdsDemo;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds-bootstrap.js
----------------------------------------------------------------------
diff --git a/webapp/fds-bootstrap.js b/webapp/fds-bootstrap.js
new file mode 100644
index 0000000..d853f67
--- /dev/null
+++ b/webapp/fds-bootstrap.js
@@ -0,0 +1,53 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+require('core-js');
+require('zone.js');
+require('hammerjs');
+var $ = require('jquery');
+var FdsModule = require('webapp/fds.module.js');
+var ngPlatformBrowserDynamic = require('@angular/platform-browser-dynamic');
+var ngCore = require('@angular/core');
+
+// Comment out this line when developing to assert for unidirectional data flow
+ngCore.enableProdMode();
+
+// Get the locale id from the global
+var locale = navigator.language;
+
+var providers = [];
+
+// No locale or U.S. English: no translation providers so go ahead and bootstrap the app
+if (!locale || locale === 'en-US') {
+    ngPlatformBrowserDynamic.platformBrowserDynamic().bootstrapModule(FdsModule, {providers: providers});
+} else { //load the translation providers and bootstrap the module
+    var translationFile = './webapp/messages.' + locale + '.xlf';
+
+    $.ajax({
+        url: translationFile
+    }).done(function (translations) {
+        // add providers if translation file for locale is loaded
+        if (translations) {
+            providers.push({provide: ngCore.TRANSLATIONS, useValue: translations});
+            providers.push({provide: ngCore.TRANSLATIONS_FORMAT, useValue: 'xlf'});
+            providers.push({provide: ngCore.LOCALE_ID, useValue: locale});
+        }
+        ngPlatformBrowserDynamic.platformBrowserDynamic().bootstrapModule(FdsModule, {providers: providers});
+    }).fail(function () {
+        ngPlatformBrowserDynamic.platformBrowserDynamic().bootstrapModule(FdsModule, {providers: providers});
+    });
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds.animations.js
----------------------------------------------------------------------
diff --git a/webapp/fds.animations.js b/webapp/fds.animations.js
new file mode 100644
index 0000000..5f7d0cb
--- /dev/null
+++ b/webapp/fds.animations.js
@@ -0,0 +1,133 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngAnimate = require('@angular/animations');
+
+/**
+ * NfAnimations constructor.
+ *
+ * @constructor
+ */
+function NfAnimations() {
+};
+
+NfAnimations.prototype = {
+    constructor: NfAnimations,
+
+    /**
+     * Fade animation
+     */
+    fadeAnimation: ngAnimate.trigger('routeAnimation', [
+        ngAnimate.state('*',
+            ngAnimate.style({
+                opacity: 1
+            })
+        ),
+        ngAnimate.transition(':enter', [
+            ngAnimate.style({
+                opacity: 0
+            }),
+            ngAnimate.animate('0.5s ease-in')
+        ]),
+        ngAnimate.transition(':leave', [
+            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
+                opacity: 0
+            }))
+        ])
+    ]),
+
+    /**
+     * Slide in from the left animation
+     */
+    slideInLeftAnimation: ngAnimate.trigger('routeAnimation', [
+        ngAnimate.state('*',
+            ngAnimate.style({
+                opacity: 1,
+                transform: 'translateX(0)'
+            })
+        ),
+        ngAnimate.transition(':enter', [
+            ngAnimate.style({
+                opacity: 0,
+                transform: 'translateX(-100%)'
+            }),
+            ngAnimate.animate('0.5s ease-in')
+        ]),
+        ngAnimate.transition(':leave', [
+            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
+                opacity: 0,
+                transform: 'translateX(100%)'
+            }))
+        ])
+    ]),
+
+    /**
+     * Slide in from the top animation
+     */
+    slideInDownAnimation: ngAnimate.trigger('routeAnimation', [
+        ngAnimate.state('*',
+            ngAnimate.style({
+                opacity: 1,
+                transform: 'translateY(0)'
+            })
+        ),
+        ngAnimate.transition(':enter', [
+            ngAnimate.style({
+                opacity: 0,
+                transform: 'translateY(-100%)'
+            }),
+            ngAnimate.animate('0.5s ease-in')
+        ]),
+        ngAnimate.transition(':leave', [
+            ngAnimate.animate('0.5s ease-out', ngAnimate.style({
+                opacity: 0,
+                transform: 'translateY(100%)'
+            }))
+        ])
+    ]),
+
+    /**
+     * Fly in/out animation
+     */
+    flyInOutAnimation: ngAnimate.trigger('flyInOut', [
+        ngAnimate.state('in',
+            ngAnimate.style({transform: 'translateX(0)'})
+        ),
+        ngAnimate.transition('void => *', [
+            ngAnimate.style({transform: 'translateX(100%)'}),
+            ngAnimate.animate('0.4s 0.1s ease-in')
+        ]),
+        ngAnimate.transition('* => void', ngAnimate.animate('0.2s ease-out', ngAnimate.style({transform: 'translateX(-100%)'})))
+    ]),
+
+    /**
+     * Fly in/out animation
+     */
+    fadeInOutAnimation: ngAnimate.trigger('fadeInOut', [
+        ngAnimate.state('in',
+            ngAnimate.style({opacity: 1})
+        ),
+        ngAnimate.transition('void => *', [
+            ngAnimate.style({opacity: 0}),
+            ngAnimate.animate('0.5s 0.1s ease-in')
+        ]),
+        ngAnimate.transition('* => void', ngAnimate.animate('0.5s ease-out', ngAnimate.style({opacity: 0})))
+    ])
+
+};
+
+module.exports = new NfAnimations();

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds.html
----------------------------------------------------------------------
diff --git a/webapp/fds.html b/webapp/fds.html
new file mode 100644
index 0000000..98a3f58
--- /dev/null
+++ b/webapp/fds.html
@@ -0,0 +1,34 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<mat-progress-spinner id="loading-spinner" *ngIf="fdsService.inProgress" mode="indeterminate"></mat-progress-spinner>
+<mat-sidenav-container>
+    <mat-sidenav #sidenav mode="over" align="end" opened="false" disableClose="true">
+        <router-outlet name="sidenav"></router-outlet>
+    </mat-sidenav>
+    <div id="fds-app-container">
+        <mat-toolbar id="fds-toolbar">
+            <!-- <img id="fds-logo" src="fds/images/fds-logo-web-app.svg"> -->
+            <div *ngIf="fdsService.perspective !== 'login' && fdsService.perspective !== 'not-found'" fxFlex="1 1 auto" class="pad-left-xl" [@flyInOut]="fdsService.breadCrumbState">
+                <span class="pointer">{{fdsService.title}}</span>
+            </div>
+        </mat-toolbar>
+        <div id="fds-perspectives-container">
+            <router-outlet></router-outlet>
+        </div>
+    </div>
+</mat-sidenav-container>

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds.js
----------------------------------------------------------------------
diff --git a/webapp/fds.js b/webapp/fds.js
new file mode 100644
index 0000000..175f9d7
--- /dev/null
+++ b/webapp/fds.js
@@ -0,0 +1,74 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngCore = require('@angular/core');
+var ngCommonHttp = require('@angular/common/http');
+var FdsService = require('webapp/services/fds.service.js');
+var fdsAnimations = require('webapp/fds.animations.js');
+var ngRouter = require('@angular/router');
+var MILLIS_PER_SECOND = 1000;
+
+/**
+ * Fds constructor.
+ *
+ * @param fdsService            The fds service.
+ * @param changeDetectorRef     The change detector ref.
+ * @constructor
+ */
+function Fds(fdsService, changeDetectorRef) {
+    this.fdsService = fdsService;
+    this.cd = changeDetectorRef;
+};
+
+Fds.prototype = {
+    constructor: Fds,
+
+    /**
+     * Initialize the component
+     */
+    ngOnInit: function () {
+        var self = this;
+        this.fdsService.sidenav = this.sidenav; //ngCore.ViewChild
+    },
+
+    /**
+     * Since the child views are updating the fdsService values that are used to display
+     * the breadcrumbs in this component's view we need to manually detect changes at the correct
+     * point in the lifecycle.
+     */
+    ngAfterViewChecked: function () {
+        this.cd.detectChanges();
+    }
+};
+
+Fds.annotations = [
+    new ngCore.Component({
+        selector: 'fds-app',
+        template: require('./fds.html!text'),
+        queries: {
+            sidenav: new ngCore.ViewChild('sidenav')
+        },
+        animations: [fdsAnimations.flyInOutAnimation]
+    })
+];
+
+Fds.parameters = [
+    FdsService,
+    ngCore.ChangeDetectorRef
+];
+
+module.exports = Fds;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds.module.js
----------------------------------------------------------------------
diff --git a/webapp/fds.module.js b/webapp/fds.module.js
new file mode 100644
index 0000000..bc8e80b
--- /dev/null
+++ b/webapp/fds.module.js
@@ -0,0 +1,55 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngCore = require('@angular/core');
+var FdsRoutes = require('webapp/fds.routes.js');
+var fdsCore = require('@fluid-design-system/core');
+var Fds = require('webapp/fds.js');
+var FdsDemo = require('webapp/components/fluid-design-system/fds-demo.js');
+var FdsDemoDialog = require('webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js');
+var FdsService = require('webapp/services/fds.service.js');
+var ngCommonHttp = require('@angular/common/http');
+
+function FdsModule() {
+};
+
+FdsModule.prototype = {
+    constructor: FdsModule
+};
+
+FdsModule.annotations = [
+    new ngCore.NgModule({
+        imports: [
+            fdsCore,
+            FdsRoutes
+        ],
+        declarations: [
+            Fds,
+            FdsDemo,
+            FdsDemoDialog
+        ],
+        entryComponents: [
+            FdsDemoDialog
+        ],
+        providers: [
+            FdsService
+        ],
+        bootstrap: [Fds]
+    })
+];
+
+module.exports = FdsModule;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/fds.routes.js
----------------------------------------------------------------------
diff --git a/webapp/fds.routes.js b/webapp/fds.routes.js
new file mode 100644
index 0000000..fa7b10e
--- /dev/null
+++ b/webapp/fds.routes.js
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngRouter = require('@angular/router');
+var FdsDemo = require('webapp/components/fluid-design-system/fds-demo.js');
+
+var FdsRoutes = new ngRouter.RouterModule.forRoot([{
+    path: '',
+    component: FdsDemo
+}]);
+
+module.exports = FdsRoutes;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/services/fds.service.js
----------------------------------------------------------------------
diff --git a/webapp/services/fds.service.js b/webapp/services/fds.service.js
new file mode 100644
index 0000000..26e6686
--- /dev/null
+++ b/webapp/services/fds.service.js
@@ -0,0 +1,52 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var covalentCore = require('@covalent/core');
+var fdsDialogsModule = require('@fluid-design-system/dialogs');
+var fdsSnackBarsModule = require('@fluid-design-system/snackbars');
+
+/**
+ * FdsService constructor.
+ *
+ * @param tdDataTableService    The covalent data table service module.
+ * @param fdsDialogService      The FDS dialog service.
+ * @param fdsSnackBarService    The FDS snack bar service module.
+ * @constructor
+ */
+function FdsService(tdDataTableService, fdsDialogService, fdsSnackBarService) {
+    // Services
+    this.dialogService = fdsDialogService;
+    this.snackBarService = fdsSnackBarService;
+    this.dataTableService = tdDataTableService;
+
+    // General
+    this.title = "Apache NiFi Fluid Design System Demo";
+    this.inProgress = true;
+    this.perspective = '';
+};
+
+FdsService.prototype = {
+    constructor: FdsService,
+};
+
+FdsService.parameters = [
+    covalentCore.TdDataTableService,
+    fdsDialogsModule.FdsDialogService,
+    fdsSnackBarsModule.FdsSnackBarService
+];
+
+module.exports = FdsService;

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/systemjs-angular-loader.js
----------------------------------------------------------------------
diff --git a/webapp/systemjs-angular-loader.js b/webapp/systemjs-angular-loader.js
new file mode 100644
index 0000000..8e33bb5
--- /dev/null
+++ b/webapp/systemjs-angular-loader.js
@@ -0,0 +1,66 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var templateUrlRegex = /templateUrl\s*:(\s*['"`](.*?)['"`]\s*)/gm;
+var stylesRegex = /styleUrls *:(\s*\[[^\]]*?\])/g;
+var stringRegex = /(['`"])((?:[^\\]\\\1|.)*?)\1/g;
+
+module.exports.translate = function (load) {
+    if (load.source.indexOf('moduleId') != -1) return load;
+
+    var url = document.createElement('a');
+    url.href = load.address;
+
+    var basePathParts = url.pathname.split('/');
+
+    basePathParts.pop();
+    var basePath = basePathParts.join('/');
+
+    var baseHref = document.createElement('a');
+    baseHref.href = this.baseURL;
+    baseHref = baseHref.pathname;
+
+    if (!baseHref.startsWith('/base/')) { // it is not karma
+        basePath = basePath.replace(baseHref, '');
+    }
+
+    load.source = load.source
+        .replace(templateUrlRegex, function (match, quote, url) {
+            var resolvedUrl = url;
+
+            if (url.startsWith('.')) {
+                resolvedUrl = basePath + url.substr(1);
+            }
+
+            return 'templateUrl: "' + resolvedUrl + '"';
+        })
+        .replace(stylesRegex, function (match, relativeUrls) {
+            var urls = [];
+
+            while ((match = stringRegex.exec(relativeUrls)) !== null) {
+                if (match[2].startsWith('.')) {
+                    urls.push('"' + basePath + match[2].substr(1) + '"');
+                } else {
+                    urls.push('"' + match[2] + '"');
+                }
+            }
+
+            return "styleUrls: [" + urls.join(', ') + "]";
+        });
+
+    return load;
+};

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/systemjs.config.extras.js
----------------------------------------------------------------------
diff --git a/webapp/systemjs.config.extras.js b/webapp/systemjs.config.extras.js
new file mode 100644
index 0000000..e2a256a
--- /dev/null
+++ b/webapp/systemjs.config.extras.js
@@ -0,0 +1,27 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Add barrels and stuff
+ */
+(function (global) {
+    System.config({
+        packages: {
+            // add packages here
+        }
+    });
+})(this);

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/systemjs.config.js
----------------------------------------------------------------------
diff --git a/webapp/systemjs.config.js b/webapp/systemjs.config.js
new file mode 100644
index 0000000..24857de
--- /dev/null
+++ b/webapp/systemjs.config.js
@@ -0,0 +1,142 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+(function (global) {
+    System.config({
+        paths: {
+            // paths serve as alias
+            'npm:': 'node_modules/'
+        },
+        // map tells the System loader where to look for things
+        map: {
+            'text': 'npm:systemjs-plugin-text/text.js',
+            'app': './webapp',
+
+            // jquery
+            'jquery': 'npm:jquery/dist/jquery.min.js',
+
+            // Angular
+            '@angular/core': 'npm:@angular/core/bundles/core.umd.js',
+            '@angular/common': 'npm:@angular/common/bundles/common.umd.js',
+            '@angular/common/http': 'npm:@angular/common/bundles/common-http.umd.js',
+            '@angular/common/http/testing': 'npm:@angular/common/bundles/common-http-testing.umd.js',
+            '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
+            '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
+            '@angular/http': 'npm:@angular/http/bundles/http.umd.js',
+            '@angular/router': 'npm:@angular/router/bundles/router.umd.js',
+            '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
+            '@angular/flex-layout': 'npm:@angular/flex-layout/bundles/flex-layout.umd.js',
+            '@angular/flex-layout/core': 'npm:@angular/flex-layout/bundles/flex-layout-core.umd.js',
+            '@angular/flex-layout/extended': 'npm:@angular/flex-layout/bundles/flex-layout-extended.umd.js',
+            '@angular/flex-layout/flex': 'npm:@angular/flex-layout/bundles/flex-layout-flex.umd.js',
+            '@angular/material': 'npm:@angular/material/bundles/material.umd.js',
+            '@angular/material/core': 'npm:@angular/material/bundles/material-core.umd.js',
+            '@angular/material/card': 'npm:@angular/material/bundles/material-card.umd.js',
+            '@angular/material/divider': 'npm:@angular/material/bundles/material-divider.umd.js',
+            '@angular/material/progress-bar': 'npm:@angular/material/bundles/material-progress-bar.umd.js',
+            '@angular/material/progress-spinner': 'npm:@angular/material/bundles/material-progress-spinner.umd.js',
+            '@angular/material/chips': 'npm:@angular/material/bundles/material-chips.umd.js',
+            '@angular/material/input': 'npm:@angular/material/bundles/material-input.umd.js',
+            '@angular/material/icon': 'npm:@angular/material/bundles/material-icon.umd.js',
+            '@angular/material/button': 'npm:@angular/material/bundles/material-button.umd.js',
+            '@angular/material/checkbox': 'npm:@angular/material/bundles/material-checkbox.umd.js',
+            '@angular/material/tooltip': 'npm:@angular/material/bundles/material-tooltip.umd.js',
+            '@angular/material/dialog': 'npm:@angular/material/bundles/material-dialog.umd.js',
+            '@angular/material/sidenav': 'npm:@angular/material/bundles/material-sidenav.umd.js',
+            '@angular/material/menu': 'npm:@angular/material/bundles/material-menu.umd.js',
+            '@angular/material/form-field': 'npm:@angular/material/bundles/material-form-field.umd.js',
+            '@angular/material/toolbar': 'npm:@angular/material/bundles/material-toolbar.umd.js',
+            '@angular/material/autocomplete': 'npm:@angular/material/bundles/material-autocomplete.umd.js',
+            '@angular/platform-browser/animations': 'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js',
+            '@angular/cdk': 'npm:@angular/cdk/bundles/cdk.umd.js',
+            '@angular/cdk/a11y': 'npm:@angular/cdk/bundles/cdk-a11y.umd.js',
+            '@angular/cdk/accordion': 'npm:@angular/cdk/bundles/cdk-accordion.umd.js',
+            '@angular/cdk/layout': 'npm:@angular/cdk/bundles/cdk-layout.umd.js',
+            '@angular/cdk/collections': 'npm:@angular/cdk/bundles/cdk-collections.umd.js',
+            '@angular/cdk/observers': 'npm:@angular/cdk/bundles/cdk-observers.umd.js',
+            '@angular/cdk/overlay': 'npm:@angular/cdk/bundles/cdk-overlay.umd.js',
+            '@angular/cdk/platform': 'npm:@angular/cdk/bundles/cdk-platform.umd.js',
+            '@angular/cdk/portal': 'npm:@angular/cdk/bundles/cdk-portal.umd.js',
+            '@angular/cdk/keycodes': 'npm:@angular/cdk/bundles/cdk-keycodes.umd.js',
+            '@angular/cdk/bidi': 'npm:@angular/cdk/bundles/cdk-bidi.umd.js',
+            '@angular/cdk/coercion': 'npm:@angular/cdk/bundles/cdk-coercion.umd.js',
+            '@angular/cdk/table': 'npm:@angular/cdk/bundles/cdk-table.umd.js',
+            '@angular/cdk/rxjs': 'npm:@angular/cdk/bundles/cdk-rxjs.umd.js',
+            '@angular/cdk/scrolling': 'npm:@angular/cdk/bundles/cdk-scrolling.umd.js',
+            '@angular/cdk/stepper': 'npm:@angular/cdk/bundles/cdk-stepper.umd.js',
+            '@angular/animations': 'npm:@angular/animations/bundles/animations.umd.js',
+            '@angular/animations/browser': 'npm:@angular/animations/bundles/animations-browser.umd.js',
+            '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
+
+            // needed to support gestures for angular material
+            'hammerjs': 'npm:hammerjs/hammer.min.js',
+
+            // Covalent
+            '@covalent/core': 'npm:@covalent/core/bundles/covalent-core.umd.min.js',
+            '@covalent/core/common': 'npm:@covalent/core/bundles/covalent-core-common.umd.min.js',
+
+            // other libraries
+            'rxjs': 'npm:rxjs',
+            'zone.js': 'npm:zone.js/dist/zone.js',
+            'core-js': 'npm:core-js/client/shim.min.js',
+            'superagent': 'npm:superagent/superagent.js',
+            'querystring': 'npm:querystring',
+            'tslib': 'npm:tslib/tslib.js',
+
+            // Fluid Design System
+            '@fluid-design-system/core': 'platform/core/fluid-design-system.module.js',
+            '@fluid-design-system/dialogs': 'platform/core/dialogs/fds-dialogs.module.js',
+            '@fluid-design-system/dialog-component': 'platform/core/dialogs/fds-dialog.component.js',
+            '@fluid-design-system/dialog-service': 'platform/core/dialogs/services/dialog.service.js',
+            '@fluid-design-system/confirm-dialog-component': 'platform/core/dialogs/confirm-dialog/confirm-dialog.component.js',
+            '@fluid-design-system/snackbars': 'platform/core/snackbars/fds-snackbars.module.js',
+            '@fluid-design-system/snackbar-component': 'platform/core/snackbars/fds-snackbar.component.js',
+            '@fluid-design-system/snackbar-service': 'platform/core/snackbars/services/snackbar.service.js',
+            '@fluid-design-system/coaster-component': 'platform/core/snackbars/coaster/coaster.component.js',
+            '@fluid-design-system/common/storage-service': 'platform/core/common/services/fds-storage.service.js'
+        },
+        // packages tells the System loader how to load when no filename and/or no extension
+        packages: {
+            app: {
+                defaultExtension: 'js',
+                meta: {
+                    './*.js': {
+                        loader: 'webapp/systemjs-angular-loader.js'
+                    }
+                }
+            },
+            'webapp/systemjs-angular-loader.js': {
+                loader: false
+            },
+            'rxjs': {
+                defaultExtension: 'js'
+            },
+            'querystring': {
+                main: './index.js',
+                defaultExtension: 'js'
+            },
+            'moment': {
+                main: './moment.js',
+                defaultExtension: 'js'
+            },
+            'angular2-moment': {
+                main: './index.js',
+                defaultExtension: 'js'
+            }
+        }
+    });
+})(this);

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/theming/_helperClasses.scss
----------------------------------------------------------------------
diff --git a/webapp/theming/_helperClasses.scss b/webapp/theming/_helperClasses.scss
new file mode 100644
index 0000000..6918db4
--- /dev/null
+++ b/webapp/theming/_helperClasses.scss
@@ -0,0 +1,78 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the 'License'); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+.fa-rotate-45 {
+    -webkit-transform: rotate(45deg);
+    -moz-transform: rotate(45deg);
+    -ms-transform: rotate(45deg);
+    -o-transform: rotate(45deg);
+    transform: rotate(45deg);
+}
+
+.capitalize {
+    text-transform: capitalize;
+}
+
+.uppercase {
+    text-transform: uppercase;
+}
+
+.ellipsis {
+    white-space: nowrap;
+    overflow: hidden;
+    text-overflow: ellipsis;
+    display: block !important;
+}
+
+.info {
+    color: $blue8;
+}
+
+.authorized {
+    color: $red2;
+}
+
+.suspended {
+    color: $green3;
+}
+
+.nonconfigurable {
+    background: $grey9;
+}
+
+.selected-nonconfigurable {
+    background: repeating-linear-gradient(-45deg, $grey5, $grey5 10px, #fff 10px, #fff 20px) !important;
+}
+
+.fds-button-container {
+    position: absolute;
+    bottom: 0px;
+    height: 64px;
+    left: 0px;
+    right: 0px;
+    border-top: 1px solid $grey4;
+}
+
+.fds-button-container .done-button {
+    float: right;
+    margin-right: 15px;
+    margin-top: 15px;
+}
+
+.td-expansion-content {
+    background: $grey6;
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/theming/_structureElements.scss
----------------------------------------------------------------------
diff --git a/webapp/theming/_structureElements.scss b/webapp/theming/_structureElements.scss
new file mode 100644
index 0000000..b84c60a
--- /dev/null
+++ b/webapp/theming/_structureElements.scss
@@ -0,0 +1,84 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+body {
+  background: $grey12;
+  background-size: 40%;
+}
+
+#fds-app-container {
+  margin: 0;
+  width: 100%;
+  height: 100%;
+}
+
+#fds-toolbar {
+  min-width: 1045px;
+  background-color: #FFFFFF;
+  position: absolute;
+  z-index: 1000;
+  background: $grey11;
+}
+
+#fds-toolbar .mat-icon-button {
+  color: $grey5;
+  font-size: 20px;
+  margin: 0;
+}
+
+#fds-toolbar .mat-select-value-text, #fds-toolbar .mat-select-arrow {
+  color: white;
+}
+
+#fds-toolbar span, #fds-toolbar .link {
+  color: $grey5;
+  font-weight: lighter;
+}
+
+#fds-perspectives-container {
+  position: absolute;
+  top: 64px;
+  left: 0px;
+  right: 0px;
+  bottom: 0px;
+  min-height: 370px;
+  min-width: 1045px;
+  overflow: auto;
+  background: $grey12;
+  background-size: 40%;
+}
+
+#loading-spinner {
+  position: absolute;
+  top: calc(50% - 50px);
+  left: calc(50% - 50px);
+  z-index: 2;
+}
+
+mat-sidenav {
+  width: 40%;
+  min-width: 418px;
+}
+
+.sidenav-content {
+  position: absolute;
+  bottom: 60px;
+  top: 80px;
+  right: 0px;
+  left: 0px;
+  overflow: auto;
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/theming/fds-demo.scss
----------------------------------------------------------------------
diff --git a/webapp/theming/fds-demo.scss b/webapp/theming/fds-demo.scss
new file mode 100644
index 0000000..c7730fa
--- /dev/null
+++ b/webapp/theming/fds-demo.scss
@@ -0,0 +1,49 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the 'License'); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an 'AS IS' BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/* Welcome to Compass.
+ * In this file you should centralize your imports. After compilation simply import this file using the following HTML or equivalent:
+ * <link href='webapp/css/fds-demo.min.css' media='screen, projection' rel='stylesheet' type='text/css' /> */
+
+@import '../../platform/core/common/styles/globalVars';
+@import '../../platform/core/theming/all-theme';
+@import 'structureElements';
+@import 'helperClasses';
+
+//Change these
+$primaryColor: $rose1;
+$primaryColorHover: $rose2;
+$accentColor: $blue7;
+$accentColorHover: $grey4;
+
+// Include the base styles for Angular Material core. We include this here so that you only
+// have to load a single css file for Angular Material in your app.
+@include mat-core;
+
+// Define the palettes
+$fds-base-palette: (50: #89df79, 100: $primaryColorHover, 200: #65d550, 300: #53d03b, 400: #46c32f, 500: $primaryColor, 600: $primaryColor, 700: #89df79, 800: #29701b, 900: #215c16, A100: #9be48d, A200: #ade9a2, A400: #bfedb6, A700: #1a4711, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
+$fds-accent-palette: (50: #89df79, 100: $accentColorHover, 200: #65d550, 300: #53d03b, 400: #46c32f, 500: $accentColor, 600: $accentColor, 700: #89df79, 800: #29701b, 900: #215c16, A100: #9be48d, A200: #ade9a2, A400: #bfedb6, A700: #1a4711, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
+$fds-warn-palette: (50: #81410f, 100: #D14A50, 200: #af5814, 300: #c66317, 400: #dd6f19, 500: $warnColor, 600: $warnColor, 700: #eea66e, 800: #f1b485, 900: #f4c29b, A100: #ec9857, A200: #89df79, A400: #89df79, A700: #f6d0b2, contrast: (50: $black-87-opacity, 100: $black-87-opacity, 200: $black-87-opacity, 300: white, 400: white, 500: $white-87-opacity, 600: $white-87-opacity, 700: $white-87-opacity, 800: $white-87-opacity, 900: $white-87-opacity, A100: $black-87-opacity, A200: white, A400: white, A700: $white-87-opacity));
+$fds-primary: mat-palette($fds-base-palette, 500, 100, 500);
+$fds-accent: mat-palette($fds-accent-palette, 500, 100, 500);
+$fds-warn: mat-palette($fds-warn-palette, 500, 100, 500);
+
+// Define the theme (Optionally specify a default, lighter, and darker hue.)
+$fds-theme: mat-light-theme($fds-primary, $fds-accent, $fds-warn);
+
+// FDS theme mixin
+@include fds-theme($fds-theme);


[14/19] nifi-fds git commit: [NIFIREG-168] include webapp in src to facilitate local build and review process

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/components/fluid-design-system/fds-demo.html
----------------------------------------------------------------------
diff --git a/webapp/components/fluid-design-system/fds-demo.html b/webapp/components/fluid-design-system/fds-demo.html
new file mode 100644
index 0000000..621acc6
--- /dev/null
+++ b/webapp/components/fluid-design-system/fds-demo.html
@@ -0,0 +1,2995 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<mat-sidenav-container>
+    <mat-sidenav #sidenav mode="over" align="end" opened="false">
+        <div fxLayout="column" fxLayoutAlign="space-between center">
+            <p>You can also open a dialog from a side nav.</p>
+            <button mat-raised-button color="fds-primary" (click)="openDialog()">Show simple dialog</button>
+        </div>
+    </mat-sidenav>
+    <div id="fds-demo">
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Apache NiFi Fluid Design System</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content class="pad-top-sm">
+                <p>With the Apache NiFi Fluid Design System module, we get an atomic, reusable component platform for Apache NiFi and Apache NiFi Registry to consume, while collaborating in an open source model. This module packages the <a class="link" href="https://material.angular.io/components" target="_blank">Angular Material</a> module as well as the <a class="link" href="https://teradata.github.io/covalent/#/components" target="_blank">Teradata Covalent</a> module. These modules have been themed to match the FDS color palette.</p>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Setup</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <p>Import the FDS Core NgModule into your AppModule</p>
+                <p>HTML:</p>
+                <pre lang="javascript">
+        <![CDATA[
+        var ngCore = require('@angular/core');
+        var fdsCore = require('fluid-design-system/core');
+        // other imports
+          ...
+        new ngCore.NgModule({
+        imports: [
+            fdsCore,
+            // (optional) Additional imports
+          ],
+          ...
+        })
+        ]]>
+    </pre>
+                <p>The core FDS styles also need to be included in your `index.html` like:</p>
+                <p>HTML:</p>
+                <pre lang="html">
+        <![CDATA[
+        <link href="../node_modules/fluid-design-system/core/common/styles/css/fluid-design-system.css" rel="stylesheet">
+        ]]>
+    </pre>
+                <p>Or, if you are using the Angular CLI you will need to add a new entry to the "styles" list in .angular-cli.json.</p>
+                <p>JSON:</p>
+                <pre lang="json">
+        <![CDATA[
+        "styles": [
+            "../node_modules/fluid-design-system/core/common/styles/fluid-design-system.scss"
+        ]
+        ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Typography</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <p class="mat-body-1">Angular Material provides <a class="link" href="https://material.io/guidelines/style/typography.html" target="_blank">typography</a> CSS classes you can use to create visual consistency across your application.</p>
+                <p class="mat-body-1">
+                    <strong>Note:</strong>
+                    <span>Base font size is 10px for easy rem units (1.2rem = 12px). Body font size is 14px. sp = scalable pixels.</span>
+                </p>
+                <h3 class="mat-title">Header Styles</h3>
+                <mat-divider class="push-top push-bottom"></mat-divider>
+                <p class="mat-body-1">To preserve semantic structures, you can optionally style the <code>&lt;h1&gt;</code> - <code>&lt;h6&gt;</code> heading tags with the styling classes shown below:</p>
+                <p>CSS:</p>
+                <div layout-align="center end">
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-display-4</code>
+                        <span class="mat-display-4">Light 112px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-display-3</code>
+                        <span class="mat-display-3">Regular 56px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-display-2</code>
+                        <span class="mat-display-2">Regular 45px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-display-1</code>
+                        <span class="mat-display-1">Regular 34px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-headline</code>
+                        <span class="mat-headline">Regular 24px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-title</code>
+                        <span class="mat-title">Medium 20px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.md-subhead</code>
+                        <span class="md-subhead">Regular 16px</span>
+                    </div>
+                </div>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- Large Heading -->
+        <h1 class="mat-display-4">Roboto is the standard typeface on Android.</h1>
+        <h2 class="mat-display-3">Roboto and Noto are the standard typefaces on Android and Chrome.</h2>
+        <h3 class="mat-display-2">Noto is the standard typeface for all languages on Chrome and Android for all languages not covered by Roboto.</h3>
+        <!-- Medium Heading -->
+        <h1 class="mat-display-1">Roboto is the standard typeface on Android.</h1>
+        <h2 class="mat-headline">Roboto and Noto are the standard typefaces on Android and Chrome.</h2>
+        <h3 class="md-subhead">Noto is the standard typeface for all languages on Chrome and Android for all languages not covered by Roboto.</h3>
+    ]]>
+    </pre>
+                <h3 class="mat-title">Body Copy</h3>
+                <mat-divider class="push-top push-bottom"></mat-divider>
+                <p>CSS:</p>
+                <div class="mat-body-1" layout-align="center end">
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-body-1</code>
+                        <span class="mat-body-1">Regular 14px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-body-2</code>
+                        <span class="mat-body-2">Medium 14px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-button</code>
+                        <span class="mat-button mat-raised">Medium 14px</span>
+                    </div>
+                    <div layout="row" layout-align="start center">
+                        <code flex="15">.mat-caption</code>
+                        <span class="mat-caption">Regular 12px</span>
+                    </div>
+                </div>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- body copy -->
+        <p class="mat-body-1">Roboto is the standard typeface on Android.</p>
+        <p class="mat-body-2">Roboto and Noto are the standard typefaces on Android and Chrome.</p>
+        <p class="mat-button">Roboto and Noto are the standard typefaces on Android and Chrome.</p>
+        <p class="mat-caption">Noto is the standard typeface for all languages on Chrome and Android for all languages not covered by Roboto.</p>
+    ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Raised Buttons</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <p>Tip: Use UPPERCASE text for 1-2 words, and Titlecase text for 3+ words.</p>
+                <button mat-raised-button color="primary">Primary</button>
+                <button mat-raised-button color="accent">Accent</button>
+                <button mat-raised-button color="warn">Warn</button>
+                <button mat-raised-button color="fds-primary">FDS Primary</button>
+                <button mat-raised-button color="fds-secondary">FDS Secondary</button>
+                <button mat-raised-button color="fds-regular">FDS regular</button>
+                <button mat-raised-button color="fds-warn">FDS warn</button>
+                <button mat-raised-button color="fds-critical">FDS critical</button>
+                <button mat-raised-button disabled color="primary">Primary</button>
+                <button mat-raised-button disabled color="accent">Accent</button>
+                <button mat-raised-button disabled color="warn">Warn</button>
+                <button mat-raised-button disabled color="fds-primary">FDS primary</button>
+                <button mat-raised-button disabled color="fds-secondary">FDS Secondary</button>
+                <button mat-raised-button disabled color="fds-regular">FDS regular</button>
+                <button mat-raised-button disabled color="fds-warn">FDS warn</button>
+                <button mat-raised-button disabled color="fds-critical">FDS critical</button>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- Themed Raised Buttons -->
+        <button mat-raised-button color="primary">Primary</button>
+        <button mat-raised-button color="accent">Secondary</button>
+        <button mat-raised-button color="warn">warn</button>
+        <button mat-raised-button color="fds-primary">FDS Primary</button>
+        <button mat-raised-button color="fds-secondary">FDS Secondary</button>
+        <button mat-raised-button color="fds-regular">FDS regular</button>
+        <button mat-raised-button color="fds-warn">FDS warn</button>
+        <button mat-raised-button color="fds-critical">FDS critical</button>
+        <!-- Disabled Raised Buttons -->
+        <button mat-raised-button disabled color="primary">Primary</button>
+        <button mat-raised-button disabled color="accent">Secondary</button>
+        <button mat-raised-button disabled color="warn">warn</button>
+        <button mat-raised-button disabled color="fds-primary">FDS primary</button>
+        <button mat-raised-button disabled color="fds-secondary">FDS Secondary</button>
+        <button mat-raised-button disabled color="fds-regular">FDS regular</button>
+        <button mat-raised-button disabled color="fds-warn">FDS warn</button>
+        <button mat-raised-button disabled color="fds-critical">FDS critical</button>
+    ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Links</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <a class="link" href="https://material.angular.io" target="_blank">Angular Material</a>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+                <![CDATA[
+        <a class="link" href="https://material.angular.io" target="_blank">Angular Material</a>
+                ]]>
+            </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Flat Buttons</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <mat-card-actions>
+                    <button mat-button>Default</button>
+                    <button mat-button color="primary">Primary</button>
+                    <button mat-button color="accent">Secondary</button>
+                    <button mat-button color="warn">Warn</button>
+                    <button mat-button disabled>Disabled Default</button>
+                    <button mat-button disabled color="primary">Disabled Primary</button>
+                    <button mat-button disabled color="accent">Disabled Secondary</button>
+                    <button mat-button disabled color="warn">Disabled Warn</button>
+                </mat-card-actions>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- Themed Flat Buttons -->
+        <button mat-button>Default</button>
+        <button mat-button color="primary">Primary</button>
+        <button mat-button color="accent">Secondary</button>
+        <button mat-button color="warn">warn</button>
+        <!-- Disabled Flat Buttons -->
+        <button mat-button disabled>disabled Default</button>
+        <button mat-button disabled color="primary">disabled primary</button>
+        <button mat-button disabled color="accent">disabled Secondary</button>
+        <button mat-button disabled color="warn">disabled warn</button>
+    ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Fab Buttons</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <mat-card-actions class="pad-left-sm">
+                    <button mat-mini-fab color="primary">P</button>
+                    <button mat-mini-fab color="accent">A</button>
+                    <button mat-mini-fab color="warn">W</button>
+                    <button mat-mini-fab disabled color="primary">P</button>
+                    <button mat-mini-fab disabled color="accent">A</button>
+                    <button mat-mini-fab disabled color="warn">W</button>
+                </mat-card-actions>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- Themed Fab Buttons -->
+        <button mat-mini-fab color="primary">P</button>
+        <button mat-mini-fab color="accent">A</button>
+        <button mat-mini-fab color="warn">W</button>
+        <!-- Disabled Fab Buttons -->
+        <button mat-mini-fab disabled color="primary">P</button>
+        <button mat-mini-fab disabled color="accent">A</button>
+        <button mat-mini-fab disabled color="warn">W</button>
+    ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Button Toggles</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <mat-button-toggle-group name="alignment">
+                    <mat-button-toggle value="left">
+                        <mat-icon>format_align_left</mat-icon>
+                    </mat-button-toggle>
+                    <mat-button-toggle value="center">
+                        <mat-icon>format_align_center</mat-icon>
+                    </mat-button-toggle>
+                    <mat-button-toggle value="right">
+                        <mat-icon>format_align_right</mat-icon>
+                    </mat-button-toggle>
+                    <mat-button-toggle value="justify">
+                        <mat-icon>format_align_justify</mat-icon>
+                    </mat-button-toggle>
+                </mat-button-toggle-group>
+                <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+                <mat-button-toggle-group name="onOffToggle" class="on-off-toggle-group">
+                    <mat-button-toggle value="on" [checked]="true">
+                        ON
+                    </mat-button-toggle>
+                    <mat-button-toggle value="off" class="off-toggle">
+                        OFF
+                    </mat-button-toggle>
+                </mat-button-toggle-group>
+                <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+                <mat-button-toggle-group fxLayout="row" fxLayoutAlign="space-between center" class="expansion-panel-filter-toggle-group" multiple>
+                    <mat-button-toggle>
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">34</div>
+                            <div class="pad-top-sm" fxFlex="45">Assets</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle>
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">300</div>
+                            <div class="pad-top-sm" fxFlex="45">Extensions</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle>
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">5000</div>
+                            <div class="pad-top-sm" fxFlex="45">Flows</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle>
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">0</div>
+                            <div class="pad-top-sm" fxFlex="45">Certifications</div>
+                        </div>
+                    </mat-button-toggle>
+                </mat-button-toggle-group>
+                <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+                <mat-button-toggle-group name="fds-administration-perspective" fxLayout="row" class="tab-toggle-group">
+                    <mat-button-toggle value="general" class="uppercase">
+                        general
+                    </mat-button-toggle>
+                    <div fxLayout="row" class="pad-left-md"></div>
+                    <mat-button-toggle value="users" class="uppercase">
+                        Users
+                    </mat-button-toggle>
+                    <div fxLayout="row" class="pad-left-md"></div>
+                    <mat-button-toggle value="workflow" class="uppercase">
+                        Workflow
+                    </mat-button-toggle>
+                </mat-button-toggle-group>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+      <![CDATA[
+         <mat-button-toggle-group name="alignment">
+            <mat-button-toggle value="left">
+                <mat-icon>format_align_left</mat-icon>
+            </mat-button-toggle>
+            <mat-button-toggle value="center">
+                <mat-icon>format_align_center</mat-icon>
+            </mat-button-toggle>
+            <mat-button-toggle value="right">
+                <mat-icon>format_align_right</mat-icon>
+            </mat-button-toggle>
+            <mat-button-toggle value="justify">
+                <mat-icon>format_align_justify</mat-icon>
+            </mat-button-toggle>
+        </mat-button-toggle-group>
+        <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+        <mat-button-toggle-group name="onOffToggle" class="on-off-toggle-group">
+            <mat-button-toggle value="on" [checked]="true">
+                ON
+            </mat-button-toggle>
+            <mat-button-toggle value="off" class="off-toggle">
+                OFF
+            </mat-button-toggle>
+        </mat-button-toggle-group>
+        <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+        <mat-button-toggle-group fxLayout="row" fxLayoutAlign="space-between center" class="expansion-panel-filter-toggle-group" multiple>
+            <mat-button-toggle>
+                <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                    <div class="md-display-1 pad-top-sm" fxFlex="55">34</div>
+                    <div class="pad-top-sm" fxFlex="45">Assets</div>
+                </div>
+            </mat-button-toggle>
+            <mat-button-toggle>
+                <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                    <div class="md-display-1 pad-top-sm" fxFlex="55">300</div>
+                    <div class="pad-top-sm" fxFlex="45">Extensions</div>
+                </div>
+            </mat-button-toggle>
+            <mat-button-toggle>
+                <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                    <div class="md-display-1 pad-top-sm" fxFlex="55">5000</div>
+                    <div class="pad-top-sm" fxFlex="45">Flows</div>
+                </div>
+            </mat-button-toggle>
+            <mat-button-toggle>
+                <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                    <div class="md-display-1 pad-top-sm" fxFlex="55">0</div>
+                    <div class="pad-top-sm" fxFlex="45">Certifications</div>
+                </div>
+            </mat-button-toggle>
+        </mat-button-toggle-group>
+        <div fxLayout="row" class="pad-top-md pad-bot-md"></div>
+        <mat-button-toggle-group name="fds-administration-perspective" fxLayout="row" class="tab-toggle-group">
+            <mat-button-toggle value="general" class="uppercase">
+                general
+            </mat-button-toggle>
+            <div fxLayout="row" class="pad-left-md"></div>
+            <mat-button-toggle value="users" class="uppercase">
+                Users
+            </mat-button-toggle>
+            <div fxLayout="row" class="pad-left-md"></div>
+            <mat-button-toggle value="workflow" class="uppercase">
+                Workflow
+            </mat-button-toggle>
+        </mat-button-toggle-group>
+        ]]>
+      </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Input</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <form>
+                    <div layout="row" layout-margin>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <input matInput placeholder="Company (disabled)" disabled value="Google">
+                        </mat-input-container>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <input matInput disabled placeholder="First name">
+                        </mat-input-container>
+                        <mat-input-container flex>
+                            <input matInput placeholder="Long Last Name That Will Be Truncated">
+                        </mat-input-container>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <div flex fxLayoutAlign="start center">
+                            <mat-input-container flex>
+                                <input matInput placeholder="Button Addon with dropdown">
+                            </mat-input-container>
+                            <button class="input-button" color="fds-regular" mat-raised-button [matMenuTriggerFor]="inputButtonDropdownAddonMenu">
+                                Select<i class="fa fa-caret-down" aria-hidden="true"></i>
+                            </button>
+                            <mat-menu xPosition="before" #inputButtonDropdownAddonMenu="matMenu" [overlapTrigger]="false">
+                                <button mat-menu-item> Refresh </button>
+                                <button mat-menu-item> Settings </button>
+                                <button mat-menu-item> Help </button>
+                                <button mat-menu-item disabled> Sign Out </button>
+                            </mat-menu>
+                        </div>
+                        <div flex fxLayoutAlign="start center">
+                            <mat-input-container floatPlaceholder="always" flex>
+                                <input matInput placeholder="Button Addon">
+                            </mat-input-container>
+                            <button class="input-button" color="fds-regular" mat-raised-button>
+                                Search
+                            </button>
+                        </div>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <div flex fxLayoutAlign="start center">
+                            <mat-input-container floatPlaceholder="always" flex>
+                                <input disabled matInput placeholder="Button Addon with dropdown">
+                            </mat-input-container>
+                            <button disabled class="input-button" color="fds-regular" mat-raised-button>
+                                Select<i class="fa fa-caret-down" aria-hidden="true"></i>
+                            </button>
+                        </div>
+                        <div flex fxLayoutAlign="start center">
+                            <mat-input-container floatPlaceholder="always" flex>
+                                <input disabled matInput placeholder="Button Addon">
+                            </mat-input-container>
+                            <button disabled class="input-button" color="fds-regular" mat-raised-button>
+                                Search
+                            </button>
+                        </div>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <mat-input-container flex>
+                            <textarea matInput placeholder="Address" value="1600 Amphitheatre Pkway"></textarea>
+                        </mat-input-container>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <textarea disabled value="Address 2 Value" matInput placeholder="Address 2"></textarea>
+                        </mat-input-container>
+                    </div>
+                    <div layout="row" layout-margin>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <input matInput placeholder="City">
+                        </mat-input-container>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <input matInput placeholder="State">
+                        </mat-input-container>
+                        <mat-input-container floatPlaceholder="always" flex>
+                            <input matInput #postalCode maxlength="5" placeholder="Postal Code" value="94043">
+                            <mat-hint align="end">{{postalCode.value.length}} / 5</mat-hint>
+                        </mat-input-container>
+                    </div>
+                </form>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+    <![CDATA[
+        <!-- Inputs -->
+        <form>
+            <div layout="row" layout-margin>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <input matInput placeholder="Company (disabled)" disabled value="Google">
+                </mat-input-container>
+            </div>
+            <div layout="row" layout-margin>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <input matInput disabled placeholder="First name">
+                </mat-input-container>
+                <mat-input-container flex>
+                    <input matInput placeholder="Long Last Name That Will Be Truncated">
+                </mat-input-container>
+            </div>
+            <div layout="row" layout-margin>
+                <div flex fxLayoutAlign="start center">
+                    <mat-input-container flex>
+                        <input matInput placeholder="Button Addon with dropdown">
+                    </mat-input-container>
+                    <button class="input-button" color="fds-regular" mat-raised-button [matMenuTriggerFor]="inputButtonDropdownAddonMenu">
+                        Select<i class="fa fa-caret-down" aria-hidden="true"></i>
+                    </button>
+                    <mat-menu xPosition="before" #inputButtonDropdownAddonMenu="matMenu" [overlapTrigger]="false">
+                        <button mat-menu-item> Refresh </button>
+                        <button mat-menu-item> Settings </button>
+                        <button mat-menu-item> Help </button>
+                        <button mat-menu-item disabled> Sign Out </button>
+                    </mat-menu>
+                </div>
+                <div flex fxLayoutAlign="start center">
+                    <mat-input-container floatPlaceholder="always" flex>
+                        <input matInput placeholder="Button Addon">
+                    </mat-input-container>
+                    <button class="input-button" color="fds-regular" mat-raised-button>
+                        Search
+                    </button>
+                </div>
+            </div>
+            <div layout="row" layout-margin>
+                <div flex fxLayoutAlign="start center">
+                    <mat-input-container floatPlaceholder="always" flex>
+                        <input disabled matInput placeholder="Button Addon with dropdown">
+                    </mat-input-container>
+                    <button disabled class="input-button" color="fds-regular" mat-raised-button>
+                        Select<i class="fa fa-caret-down" aria-hidden="true"></i>
+                    </button>
+                </div>
+                <div flex fxLayoutAlign="start center">
+                    <mat-input-container floatPlaceholder="always" flex>
+                        <input disabled matInput placeholder="Button Addon">
+                    </mat-input-container>
+                    <button disabled class="input-button" color="fds-regular" mat-raised-button>
+                        Search
+                    </button>
+                </div>
+            </div>
+            <div layout="row" layout-margin>
+                <mat-input-container flex>
+                    <textarea matInput placeholder="Address" value="1600 Amphitheatre Pkway"></textarea>
+                </mat-input-container>
+            </div>
+            <div layout="row" layout-margin>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <textarea disabled value="Address 2 Value" matInput placeholder="Address 2"></textarea>
+                </mat-input-container>
+            </div>
+            <div layout="row" layout-margin>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <input matInput placeholder="City">
+                </mat-input-container>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <input matInput placeholder="State">
+                </mat-input-container>
+                <mat-input-container floatPlaceholder="always" flex>
+                    <input matInput #postalCode maxlength="5" placeholder="Postal Code" value="94043">
+                    <mat-hint align="end">{{postalCode.value.length}} / 5</mat-hint>
+                </mat-input-container>
+            </div>
+        </form>
+    ]]>
+    </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Tabs</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <mat-tab-group dynamicHeight>
+                    <mat-tab>
+                        <ng-template mat-tab-label>One</ng-template>
+                        <h3 class="mat-title">First tab content</h3>
+                        <p>Plaid echo park knausgaard normcore franzen cronut. Pickled humblebrag tofu hoodie, umami salvia farm-to-table schlitz try-hard food truck knausgaard pabst. Yuccie portland jean shorts, authentic mixtape waistcoat gentrify blue bottle. Fixie kickstarter church-key small batch seitan, shabby chic vegan listicle before they sold out. Hammock raw denim flannel tousled seitan you probably haven't heard of them. Trust fund man bun pug, kickstarter artisan selvage letterpress cornhole tote bag butcher locavore. Affogato try-hard kickstarter seitan, DIY pickled hella godard pork belly four loko ugh.</p>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Two</ng-template>
+                        <h3 class="mat-title">Second tab content</h3>
+                        <p>Hashtag distillery skateboard man bun gochujang, salvia man braid art party meggings heirloom kitsch farm-to-table. Franzen beard fingerstache gentrify, heirloom portland ennui XOXO microdosing kitsch plaid. Chicharrones bushwick chia, banh mi irony tattooed hammock butcher shabby chic taxidermy semiotics marfa post-ironic. Blue bottle keffiyeh farm-to-table ennui, chambray pitchfork art party pinterest artisan pop-up. Etsy banjo marfa, blue bottle kombucha crucifix XOXO tousled beard. Tilde disrupt kale chips bicycle rights skateboard master cleanse hella shoreditch, meditation retro shabby chic vice heirloom. Etsy listicle vice actually, iPhone chia hoodie four loko.</p>
+                    </mat-tab>
+                </mat-tab-group>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+      <![CDATA[
+        <mat-tab-group dynamicHeight>
+          <mat-tab>
+            <ng-template mat-tab-label>First tab content</ng-template>
+            <h1>First content</h1>
+            <p>...</p>
+          </mat-tab>
+          <mat-tab>
+            <ng-template mat-tab-label>Second tab content</ng-template>
+            <h1>Second tab content</h1>
+            <p>...</p>
+          </mat-tab>
+        </mat-tab-group>
+        ]]>
+      </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Autocomplete</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <div class="pad-top-sm" layout="row">
+                    <mat-input-container flex="50">
+                        <input matInput placeholder="State" [matAutocomplete]="tdAuto" [(ngModel)]="currentState" #modelDir="ngModel" (ngModelChange)="this.tdStates = filterStates(currentState)" [disabled]="tdDisabled">
+                    </mat-input-container>
+                </div>
+                <div class="push-top">
+                    <button mat-button (click)="modelDir.reset()" class="text-upper">Reset</button>
+                    <button mat-button (click)="currentState='California'" class="text-upper">Set value</button>
+                    <button mat-button (click)="tdDisabled=!tdDisabled" class="text-upper">Toggle disabled</button>
+                </div>
+                <mat-autocomplete #tdAuto="matAutocomplete">
+                    <mat-option *ngFor="let state of tdStates" [value]="state.name">
+                        <span>{{ state.name }}</span>
+                        <span class="demo-secondary-text"> ({{state.code}}) </span>
+                    </mat-option>
+                </mat-autocomplete>
+                <h3 class="mat-title">Usage</h3>
+                <p>HTML:</p>
+                <pre lang="html">
+      <![CDATA[
+        <div class="pad-top-sm" layout="row">
+            <mat-input-container flex="50">
+                <input matInput placeholder="State" [matAutocomplete]="tdAuto" [(ngModel)]="currentState" #modelDir="ngModel" (ngModelChange)="this.tdStates = filterStates(currentState)" [disabled]="tdDisabled">
+            </mat-input-container>
+        </div>
+        <div class="push-top">
+            <button mat-button (click)="modelDir.reset()" class="text-upper">Reset</button>
+            <button mat-button (click)="currentState='California'" class="text-upper">Set value</button>
+            <button mat-button (click)="tdDisabled=!tdDisabled" class="text-upper">Toggle disabled</button>
+        </div>
+        <mat-autocomplete #tdAuto="matAutocomplete">
+            <mat-option *ngFor="let state of tdStates" [value]="state.name">
+                <span>{ { state.name } }</span>
+                <span class="demo-secondary-text"> ({ {state.code} }) </span>
+            </mat-option>
+        </mat-autocomplete>
+        ]]>
+      </pre>
+                <p>Javascript:</p>
+                <pre lang="javascript">
+      <![CDATA[
+        this.currentState = '';
+        this.reactiveStates = '';
+        this.tdStates = [];
+        this.tdDisabled = false;
+        this.states = [
+            { code: 'AL', name: 'Alabama' },
+            { code: 'AK', name: 'Alaska' },
+            { code: 'AZ', name: 'Arizona' },
+            { code: 'AR', name: 'Arkansas' },
+            { code: 'CA', name: 'California' },
+            { code: 'CO', name: 'Colorado' },
+            { code: 'CT', name: 'Connecticut' },
+            { code: 'DE', name: 'Delaware' },
+            { code: 'FL', name: 'Florida' },
+            { code: 'GA', name: 'Georgia' },
+            { code: 'HI', name: 'Hawaii' },
+            { code: 'ID', name: 'Idaho' },
+            { code: 'IL', name: 'Illinois' },
+            { code: 'IN', name: 'Indiana' },
+            { code: 'IA', name: 'Iowa' },
+            { code: 'KS', name: 'Kansas' },
+            { code: 'KY', name: 'Kentucky' },
+            { code: 'LA', name: 'Louisiana' },
+            { code: 'ME', name: 'Maine' },
+            { code: 'MD', name: 'Maryland' },
+            { code: 'MA', name: 'Massachusetts' },
+            { code: 'MI', name: 'Michigan' },
+            { code: 'MN', name: 'Minnesota' },
+            { code: 'MS', name: 'Mississippi' },
+            { code: 'MO', name: 'Missouri' },
+            { code: 'MT', name: 'Montana' },
+            { code: 'NE', name: 'Nebraska' },
+            { code: 'NV', name: 'Nevada' },
+            { code: 'NH', name: 'New Hampshire' },
+            { code: 'NJ', name: 'New Jersey' },
+            { code: 'NM', name: 'New Mexico' },
+            { code: 'NY', name: 'New York' },
+            { code: 'NC', name: 'North Carolina' },
+            { code: 'ND', name: 'North Dakota' },
+            { code: 'OH', name: 'Ohio' },
+            { code: 'OK', name: 'Oklahoma' },
+            { code: 'OR', name: 'Oregon' },
+            { code: 'PA', name: 'Pennsylvania' },
+            { code: 'RI', name: 'Rhode Island' },
+            { code: 'SC', name: 'South Carolina' },
+            { code: 'SD', name: 'South Dakota' },
+            { code: 'TN', name: 'Tennessee' },
+            { code: 'TX', name: 'Texas' },
+            { code: 'UT', name: 'Utah' },
+            { code: 'VT', name: 'Vermont' },
+            { code: 'VA', name: 'Virginia' },
+            { code: 'WA', name: 'Washington' },
+            { code: 'WV', name: 'West Virginia' },
+            { code: 'WI', name: 'Wisconsin' },
+            { code: 'WY', name: 'Wyoming' },
+        ];
+
+        ...
+
+        displayFn: function(value) {
+            return value && typeof value === 'object' ? value.name : value;
+        },
+
+        filterStates: function(val) {
+            return val ? this.states.filter((s) => s.name.match(new RegExp(val, 'gi'))) : this.states;
+        },
+
+        ...
+        ]]>
+      </pre>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Filter</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <h3 class="mat-title">Autocomplete with chips and no custom inputs</h3>
+                <mat-divider class="push-top push-bottom"></mat-divider>
+                <mat-tab-group mat-stretch-tabs dynamicHeight>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Demo</ng-template>
+                        <div class="push">
+                            <div class="mat-body-1">Type and select a preset option:</div>
+                            <td-chips [items]="items" [(ngModel)]="itemsRequireMatch" placeholder="Enter autocomplete strings" [disabled]="readOnly" requireMatch></td-chips>
+                        </div>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Code</ng-template>
+                        <mat-card-content>
+                            <p>HTML:</p>
+                            <pre lang="html">
+                            <![CDATA[
+        <td-chips [items]="items" [(ngModel)]="itemsRequireMatch" placeholder="Enter autocomplete strings" [disabled]="readOnly" requireMatch></td-chips>
+          ]]>
+                        </pre>
+                            <p>Javascript:</p>
+                            <pre lang="javascript">
+                            <![CDATA[
+        this.readOnly = false;
+
+        this.items = [
+            'stepper',
+            'expansion-panel',
+            'markdown',
+            'highlight',
+            'loading',
+            'media',
+            'chips',
+            'http',
+            'json-formatter',
+            'pipes',
+            'need more?',
+        ];
+
+        this.itemsRequireMatch = this.items.slice(0, 6);
+
+        ...
+
+        toggleReadOnly: function() {
+            this.readOnly = !this.readOnly;
+        },
+
+        ...
+          ]]>
+                        </pre>
+                        </mat-card-content>
+                    </mat-tab>
+                </mat-tab-group>
+                <mat-divider></mat-divider>
+                <mat-card-actions>
+                    <button mat-button color="primary" (click)="toggleReadOnly()" class="text-upper">Toggle ReadOnly</button>
+                </mat-card-actions>
+            </mat-card-content>
+            <mat-card-content>
+                <h3 class="mat-title">Autocomplete with custom inputs</h3>
+                <mat-divider class="push-top push-bottom"></mat-divider>
+                <mat-tab-group mat-stretch-tabs dynamicHeight>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Demo</ng-template>
+                        <div class="push">
+                            <div class="mat-body-1">Type and select option or enter custom text and press enter:</div>
+                            <td-chips [items]="items" placeholder="Enter any string"></td-chips>
+                        </div>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Code</ng-template>
+                        <mat-card-content>
+                            <p>HTML:</p>
+                            <pre lang="html">
+                            <![CDATA[
+        <td-chips [items]="items" placeholder="Enter any string"></td-chips>
+          ]]>
+                        </pre>
+                            <p>Javascript:</p>
+                            <pre lang="javascript">
+                            <![CDATA[
+        this.items = [
+            'stepper',
+            'expansion-panel',
+            'markdown',
+            'highlight',
+            'loading',
+            'media',
+            'chips',
+            'http',
+            'json-formatter',
+            'pipes',
+            'need more?',
+        ];
+          ]]>
+                        </pre>
+                        </mat-card-content>
+                    </mat-tab>
+                </mat-tab-group>
+            </mat-card-content>
+            <mat-card-content>
+                <h3 class="mat-title">Demo allowing custom inputs for tags</h3>
+                <mat-divider class="push-top push-bottom"></mat-divider>
+                <mat-tab-group mat-stretch-tabs dynamicHeight>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Demo</ng-template>
+                        <div class="push">
+                            <div class="mat-body-1">Type any test and press enter:</div>
+                            <td-chips placeholder="Enter any string"></td-chips>
+                        </div>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Code</ng-template>
+                        <mat-card-content>
+                            <p>HTML:</p>
+                            <pre lang="html">
+                            <![CDATA[
+        <td-chips placeholder="Enter any string"></td-chips>
+          ]]>
+                        </pre>
+                        </mat-card-content>
+                    </mat-tab>
+                </mat-tab-group>
+            </mat-card-content>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Searchable/Filterable Expansion Panels</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <mat-tab-group mat-stretch-tabs>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Demo</ng-template>
+                        <div class="pad-top-md pad-bottom-md pad-right-xxl pad-left-xxl">
+                            <div class="pad-top-md pad-bottom-sm">
+                                <mat-button-toggle-group fxLayout="row" fxLayoutAlign="space-between center" class="expansion-panel-filter-toggle-group" multiple>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('type:asset')" [checked]="isDropletFilterChecked('type:asset')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletTypeCount('asset')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Assets</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('type:extension')" [checked]="isDropletFilterChecked('type:extension')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletTypeCount('extension')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Extensions</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('type:flow')" [checked]="isDropletFilterChecked('type:flow')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletTypeCount('flow')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Flows</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('compliant.label:Compliant')" [checked]="isDropletFilterChecked('compliant.label:Compliant')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletCertificationCount('compliant')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Compliant</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('fleet.label:Fleet')" [checked]="isDropletFilterChecked('fleet.label:Fleet')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletCertificationCount('fleet')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Fleet</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('prod.label:Production Ready')" [checked]="isDropletFilterChecked('prod.label:Production Ready')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletCertificationCount('prod')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Production Ready</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                    <mat-button-toggle (change)="toggleDropletsFilter('secure.label:Secure')" [checked]="isDropletFilterChecked('secure.label:Secure')">
+                                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                                            <div class="md-display-1 pad-top-sm" fxFlex="55">{{getDropletCertificationCount('secure')}}</div>
+                                            <div class="pad-top-sm" fxFlex="45">Secure</div>
+                                        </div>
+                                    </mat-button-toggle>
+                                </mat-button-toggle-group>
+                                <div id="fds-droplet-filter-clear-grouping-button-container">
+                                    <span *ngIf="dropletsSearchTerms.length > 0" (click)="dropletsSearchTerms = [];filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);"><i class="fa fa-plus-circle fa-rotate-45" aria-hidden="true"></i><span class="pad-left-sm link">Clear Grouping</span></span>
+                                </div>
+                            </div>
+                            <div layout="row" layout-align="space-between center">
+                                <div flex fxLayout="row" fxLayoutAlign="end center">
+                                    <td-chips [(ngModel)]="dropletsSearchTerms" [items]="autoCompleteDroplets" (add)="filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);" (remove)="filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);" class="push-right-sm"></td-chips>
+                                    <span class="push-top-sm pad-right-sm">Sort by:</span>
+                                    <button class="push-top-sm" color="fds-primary" mat-raised-button [matMenuTriggerFor]="dropletGridSortMenu">
+                                        {{getSortBy()}}<i class="fa fa-caret-down" aria-hidden="true"></i>
+                                    </button>
+                                </div>
+                                <mat-menu class="fds-primary-dropdown-button-menu" #dropletGridSortMenu="matMenu" [overlapTrigger]="false">
+                                    <div *ngFor="let column of dropletColumns">
+                                        <button mat-menu-item *ngIf="column.sortable" (click)="sortDroplets(column);">{{column.label}} {{(column.sortOrder === 'ASC') ? 'DESC' : 'ASC'}}</button>
+                                    </div>
+                                </mat-menu>
+                            </div>
+                        </div>
+                        <div class="pad-right-xxl pad-left-xxl">
+                            <div *ngFor="let droplet of filteredDroplets">
+                                <td-expansion-panel class="mat-elevation-z5" label={{droplet.label}} sublabel={{droplet.sublabel}} [disabled]="disabled">
+                                    <ng-template td-expansion-panel-label>
+                                        <div fxLayout="column" fxLayoutAlign="space-between start">
+                                            <span class="mat-title capitalize">{{droplet.displayName}}</span>
+                                            <span class="md-subhead">{{droplet.type}}</span>
+                                        </div>
+                                    </ng-template>
+                                    <ng-template td-expansion-panel-sublabel>
+                                        <div fxLayout="row" fxLayoutAlign="space-between center">
+                                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                                <span class="uppercase">Versions</span> {{droplet.versions.length}}
+                                            </div>
+                                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                                <span class="uppercase">Flows</span> {{droplet.flows.length}}
+                                            </div>
+                                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                                <span class="uppercase">Extensions</span> {{droplet.extensions.length}}
+                                            </div>
+                                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                                <span class="uppercase">Assests</span> {{droplet.assets.length}}
+                                            </div>
+                                        </div>
+                                    </ng-template>
+                                    <div class="mat-padding">
+                                        <div fxLayout="column" fxLayoutAlign="space-between stretch">
+                                            <div class="pad-bottom-sm" fxLayout="row" fxLayoutAlign="end center">
+                                                <button color="fds-primary" [matMenuTriggerFor]="primaryButtonDropdownMenu" mat-raised-button>
+                                                    Actions<i class="fa fa-caret-down" aria-hidden="true"></i>
+                                                </button>
+                                                <mat-menu class="fds-primary-dropdown-button-menu" #primaryButtonDropdownMenu="matMenu" [overlapTrigger]="false">
+                                                    <button mat-menu-item *ngFor="let action of droplet.actions">
+                                                        <span>{{action.name}}</span>
+                                                    </button>
+                                                </mat-menu>
+                                            </div>
+                                            <div fxLayout="row">
+                                                <div fxFlex="25">
+                                                    <span class="uppercase">Description</span>
+                                                    <p>Blah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah bla</p>
+                                                </div>
+                                                <div fxFlex="50">
+                                                    <mat-card fxFlex>
+                                                        <mat-card-content class="pad-top-sm">
+                                                            <img src="{{droplet.img}}">
+                                                        </mat-card-content>
+                                                    </mat-card>
+                                                </div>
+                                                <div fxFlex="25">
+                                                    <span class="uppercase">Change Log</span>
+                                                </div>
+                                            </div>
+                                        </div>
+                                    </div>
+                                </td-expansion-panel>
+                                <div class="pad-bottom-sm"></div>
+                            </div>
+                        </div>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Code</ng-template>
+                        <p>HTML:</p>
+                        <pre lang="html">
+                        <![CDATA[
+        <div class="pad-top-md pad-bottom-md pad-right-xxl pad-left-xxl">
+            <div class="pad-top-md pad-bottom-sm">
+                <mat-button-toggle-group fxLayout="row" fxLayoutAlign="space-between center" class="expansion-panel-filter-toggle-group" multiple>
+                    <mat-button-toggle (change)="toggleDropletsFilter('type:asset')" [checked]="isDropletFilterChecked('type:asset')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletTypeCount('asset')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Assets</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('type:extension')" [checked]="isDropletFilterChecked('type:extension')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletTypeCount('extension')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Extensions</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('type:flow')" [checked]="isDropletFilterChecked('type:flow')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletTypeCount('flow')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Flows</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('compliant.label:Compliant')" [checked]="isDropletFilterChecked('compliant.label:Compliant')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletCertificationCount('compliant')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Compliant</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('fleet.label:Fleet')" [checked]="isDropletFilterChecked('fleet.label:Fleet')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletCertificationCount('fleet')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Fleet</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('prod.label:Production Ready')" [checked]="isDropletFilterChecked('prod.label:Production Ready')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletCertificationCount('prod')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Production Ready</div>
+                        </div>
+                    </mat-button-toggle>
+                    <mat-button-toggle (change)="toggleDropletsFilter('secure.label:Secure')" [checked]="isDropletFilterChecked('secure.label:Secure')">
+                        <div fxFlex fxLayout="column" fxLayoutAlign="space-around stretch">
+                            <div class="md-display-1 pad-top-sm" fxFlex="55">{ {getDropletCertificationCount('secure')} }</div>
+                            <div class="pad-top-sm" fxFlex="45">Secure</div>
+                        </div>
+                    </mat-button-toggle>
+                </mat-button-toggle-group>
+                <button *ngIf="activeDropletColumn" mat-button color="primary" (click)="dropletsSearchTerms = [];filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);">Clear Grouping</button>
+            </div>
+            <div layout="row" layout-align="space-between center">
+                <div flex fxLayout="row" fxLayoutAlign="end center">
+                    <td-chips [(ngModel)]="dropletsSearchTerms" [items]="autoCompleteDroplets" (add)="filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);" (remove)="filterDroplets(activeDropletColumn.name, activeDropletColumn.sortOrder);" class="push-right-sm"></td-chips>
+                    <span class="pad-right-sm">Sort by:</span>
+                    <button color="fds-primary" mat-raised-button [matMenuTriggerFor]="dropletGridSortMenu">
+                        { {getSortBy()} }<i class="fa fa-caret-down" aria-hidden="true"></i>
+                    </button>
+                </div>
+                <mat-menu class="fds-primary-dropdown-button-menu" #dropletGridSortMenu="matMenu" [overlapTrigger]="false">
+                    <div *ngFor="let column of dropletColumns">
+                        <button mat-menu-item *ngIf="column.sortable" (click)="sortDroplets(column);">{ {column.label} } { {(column.sortOrder === 'ASC') ? 'DESC' : 'ASC'} }</button>
+                    </div>
+                </mat-menu>
+            </div>
+        </div>
+        <div class="pad-right-xxl pad-left-xxl">
+            <div *ngFor="let droplet of filteredDroplets">
+                <td-expansion-panel class="mat-elevation-z5" label={ {droplet.label} } sublabel={ {droplet.sublabel} } [disabled]="disabled">
+                    <ng-template td-expansion-panel-label>
+                        <div fxLayout="column" fxLayoutAlign="space-between start">
+                            <span class="mat-title capitalize">{ {droplet.displayName} }</span>
+                            <span class="md-subhead">{ {droplet.type} }</span>
+                        </div>
+                    </ng-template>
+                    <ng-template td-expansion-panel-sublabel>
+                        <div fxLayout="row" fxLayoutAlign="space-between center">
+                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                <span class="uppercase">Versions</span> { {droplet.versions.length} }
+                            </div>
+                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                <span class="uppercase">Flows</span> { {droplet.flows.length} }
+                            </div>
+                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                <span class="uppercase">Extensions</span> { {droplet.extensions.length} }
+                            </div>
+                            <div class="pad-right-xxl pad-left-xxl" fxLayout="column" fxLayoutAlign="space-between start">
+                                <span class="uppercase">Assests</span> { {droplet.assets.length} }
+                            </div>
+                        </div>
+                    </ng-template>
+                    <div class="mat-padding">
+                        <div fxLayout="column" fxLayoutAlign="space-between stretch">
+                            <div class="pad-bottom-sm" fxLayout="row" fxLayoutAlign="end center">
+                                <button color="fds-primary" [matMenuTriggerFor]="primaryButtonDropdownMenu" mat-raised-button>
+                                    Actions<i class="fa fa-caret-down" aria-hidden="true"></i>
+                                </button>
+                                <mat-menu class="fds-primary-dropdown-button-menu" #primaryButtonDropdownMenu="matMenu" [overlapTrigger]="false">
+                                    <button mat-menu-item *ngFor="let action of droplet.actions">
+                                        <span>{ {action.name} }</span>
+                                    </button>
+                                </mat-menu>
+                            </div>
+                            <div fxLayout="row">
+                                <div fxFlex="25">
+                                    <span class="uppercase">Description</span>
+                                    <p>Blah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah blaBlah blah bla, bla bla, blah blah bla</p>
+                                </div>
+                                <div fxFlex="50">
+                                    <mat-card fxFlex>
+                                        <mat-card-content class="pad-top-sm">
+                                            <img src="{ {droplet.img} }">
+                                        </mat-card-content>
+                                    </mat-card>
+                                </div>
+                                <div fxFlex="25">
+                                    <span class="uppercase">Change Log</span>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </td-expansion-panel>
+                <div class="pad-bottom-sm"></div>
+            </div>
+        </div>
+          ]]>
+                    </pre>
+                        <p>Javascript:</p>
+                        <pre lang="javascript">
+                        <![CDATA[
+        this.dataTableService = TdDataTableService;
+
+        this.droplets = [{
+            id: '23f6cc59-0156-1000-09b4-2b0610089090',
+            name: "Decompression_Circular_Flow",
+            displayName: 'Decompressed Circular flow',
+            type: 'flow',
+            sublabel: 'A sublabel',
+            compliant: {
+                id: '25fd6vv87-3549-0001-05g6-4d4567890765',
+                label: 'Compliant',
+                type: 'certification'
+            },
+            fleet: {
+                id: '23f6cc59-3549-0001-05g6-4d4567890765',
+                label: 'Fleet',
+                type: 'certification'
+            },
+            prod: {
+                id: '52fd6vv87-3549-0001-05g6-4d4567890765',
+                label: 'Production Ready',
+                type: 'certification'
+            },
+            secure: {
+                id: '32f6cc59-3549-0001-05g6-4d4567890765',
+                label: 'Secure',
+                type: 'certification'
+            },
+            versions: [{
+                id: '23f6cc59-0156-1000-06b4-2b0810089090',
+                revision: '1',
+                dependentFlows: [{
+                    id: '25fd6vv87-3549-0001-05g6-4d4567890765'
+                }],
+                created: date.setDate(date.getDate() - 1),
+                updated: new Date()
+            }, {
+                id: '25fd6vv87-3549-0001-05g6-4d4567890765',
+                revision: '2',
+                dependentFlows: [{
+                    id: '23f6cc59-0156-1000-06b4-2b0810089090'
+                }],
+                created: new Date(),
+                updated: new Date()
+            }],
+            flows: [],
+            extensions: [],
+            assets: [],
+            actions: [{
+                'name': 'Delete',
+                'icon': 'fa fa-close',
+                'tooltip': 'Delete User'
+            }, {
+                'name': 'Manage',
+                'icon': 'fa fa-user',
+                'tooltip': 'Manage User'
+            }, {
+                'name': 'Action 3',
+                'icon': 'fa fa-question',
+                'tooltip': 'Whatever else we want to do...'
+            }]
+        }, {
+            id: '25fd6vv87-3249-0001-05g6-4d4767890765',
+            name: "DateConversion",
+            displayName: 'Date conversion',
+            type: 'asset',
+            sublabel: 'A sublabel',
+            compliant: {
+                id: '25fd6vv34-3549-0001-05g6-4d4567890765',
+                label: 'Compliant',
+                type: 'certification'
+            },
+            prod: {
+                id: '52vn6vv87-3549-0001-05g6-4d4567890765',
+                label: 'Production Ready',
+                type: 'certification'
+            },
+            versions: [{
+                id: '23f6ic59-0156-1000-06b4-2b0810089090',
+                revision: '1',
+                dependentFlows: [{
+                    id: '23f6cc19-0156-1000-06b4-2b0810089090'
+                }],
+                created: new Date(),
+                updated: new Date()
+            }],
+            flows: [],
+            extensions: [],
+            assets: [],
+            actions: [{
+                'name': 'Delete',
+                'icon': 'fa fa-close',
+                'tooltip': 'Delete User'
+            }]
+        }, {
+            id: '52fd6vv87-3294-0001-05g6-4d4767890765',
+            name: "nifi-email-bundle",
+            displayName: 'nifi-email-bundle',
+            type: 'extension',
+            sublabel: 'A sublabel',
+            compliant: {
+                id: '33fd6vv87-3549-0001-05g6-4d4567890765',
+                label: 'Compliant',
+                test: {
+                    label: 'test'
+                },
+                type: 'certification'
+            },
+            versions: [{
+                id: '23d3cc59-0156-1000-06b4-2b0810089090',
+                revision: '1',
+                dependentFlows: [{
+                    id: '23f6cc89-0156-1000-06b4-2b0810089090'
+                }],
+                created: new Date(),
+                updated: new Date()
+            }],
+            flows: [],
+            extensions: [],
+            assets: [],
+            actions: [{
+                'name': 'Delete',
+                'icon': 'fa fa-close',
+                'tooltip': 'Delete User'
+            }, {
+                'name': 'Manage',
+                'icon': 'fa fa-user',
+                'tooltip': 'Manage User'
+            }, ]
+        }];
+
+        this.filteredDroplets = [];
+
+        this.dropletColumns = [
+            { name: 'id', label: 'ID', sortable: true },
+            { name: 'name', label: 'Name', sortable: true },
+            { name: 'displayName', label: 'Display Name', sortable: true },
+            { name: 'sublabel', label: 'Label', sortable: true },
+            { name: 'type', label: 'Type', sortable: true }
+        ];
+
+        this.autoCompleteDroplets = [];
+        this.dropletsSearchTerms = [];
+
+        ...
+
+        isDropletFilterChecked: function(term) {
+            return (this.dropletsSearchTerms.indexOf(term) > -1);
+        },
+
+        getDropletTypeCount: function(type) {
+            return this.filteredDroplets.filter(function(droplet) {
+                return droplet.type === type;
+            }).length;
+        },
+
+        getDropletCertificationCount: function(certification) {
+            return this.filteredDroplets.filter(droplet => {
+                return Object.keys(droplet).find((key) => {
+                    if (key === certification && droplet[certification].type === 'certification') {
+                        return droplet;
+                    }
+                });
+            }).length;
+        },
+
+        getSortBy: function() {
+            var sortByColumnLabel;
+            var arrayLength = this.dropletColumns.length;
+            for (var i = 0; i < arrayLength; i++) {
+                if (this.dropletColumns[i].active === true) {
+                    sortByColumnLabel = this.dropletColumns[i].label;
+                    break;
+                }
+            }
+            return sortByColumnLabel;
+        },
+
+        sortDroplets: function(column) {
+            if (column.sortable === true) {
+                // toggle column sort order
+                var sortOrder = column.sortOrder = (column.sortOrder === 'ASC') ? 'DESC' : 'ASC';
+                this.filterDroplets(column.name, sortOrder);
+                //only one column can be actively sorted so we reset all to inactive
+                this.dropletColumns.forEach(function (c) {
+                    c.active = false;
+                });
+                //and set this column as the actively sorted column
+                column.active = true;
+                this.activeDropletColumn = column;
+            }
+        },
+
+        toggleDropletsFilter: function(searchTerm) {
+            var applySearchTerm = true;
+            // check if the search term is already applied and remove it if true
+            if (this.dropletsSearchTerms.length > 0) {
+                var arrayLength = this.dropletsSearchTerms.length;
+                for (var i = 0; i < arrayLength; i++) {
+                    var index = this.dropletsSearchTerms.indexOf(searchTerm);
+                    if (index > -1) {
+                        this.dropletsSearchTerms.splice(index, 1);
+                        applySearchTerm = false;
+                    }
+                }
+            }
+
+            // if we just removed the search term do NOT apply it again
+            if (applySearchTerm) {
+                this.dropletsSearchTerms.push(searchTerm);
+            }
+
+            this.filterDroplets(this.activeDropletColumn.name, this.activeDropletColumn.sortOrder);
+        },
+
+        filterDroplets: function(sortBy, sortOrder) {
+            // if `sortBy` is `undefined` then find the first sortable column in this.dropletColumns
+            if (sortBy === undefined) {
+                var arrayLength = this.dropletColumns.length;
+                for (var i = 0; i < arrayLength; i++) {
+                    if (this.dropletColumns[i].sortable === true) {
+                        sortBy = this.dropletColumns[i].name;
+                        this.activeDropletColumn = this.dropletColumns[i];
+                        //only one column can be actively sorted so we reset all to inactive
+                        this.dropletColumns.forEach(c => c.active = false);
+                        //and set this column as the actively sorted column
+                        this.dropletColumns[i].active = true;
+                        break;
+                    }
+                }
+            }
+
+            // if `sortOrder` is `undefined` then use 'ASC'
+            if (sortOrder === undefined) {
+                sortOrder = 'ASC'
+            }
+
+            var newData = this.droplets;
+
+            for (var i = 0; i < this.dropletsSearchTerms.length; i++) {
+                newData = this.filterData(newData, this.dropletsSearchTerms[i], true, this.activeDropletColumn.name);
+            }
+
+            newData = this.dataTableService.sortData(newData, sortBy, sortOrder);
+            this.filteredDroplets = newData;
+            this.getAutoCompleteDroplets();
+        },
+
+        getAutoCompleteDroplets: function() {
+            this.autoCompleteDroplets = [];
+            this.dropletColumns.forEach(c => this.filteredDroplets.forEach(r => (r[c.name.toLowerCase()]) ? this.autoCompleteDroplets.push(r[c.name.toLowerCase()].toString()) : ''));
+        },
+
+        filterData: function(data, searchTerm, ignoreCase) {
+            var field = '';
+            if (searchTerm.indexOf(":") > -1) {
+                field = searchTerm.split(':')[0].trim();
+                searchTerm = searchTerm.split(':')[1].trim();
+            }
+            var filter = searchTerm ? (ignoreCase ? searchTerm.toLowerCase() : searchTerm) : '';
+
+            if (filter) {
+                data = data.filter(item => {
+                    var res = Object.keys(item).find((key) => {
+                        if (field.indexOf(".") > -1) {
+                            var objArray = field.split(".");
+                            var obj = item;
+                            var arrayLength = objArray.length;
+                            for (var i = 0; i < arrayLength; i++) {
+                                try {
+                                    obj = obj[objArray[i]];
+                                } catch (e) {
+                                    return false;
+                                }
+                            }
+                            var preItemValue = ('' + obj);
+                            var itemValue = ignoreCase ? preItemValue.toLowerCase() : preItemValue;
+                            return itemValue.indexOf(filter) > -1;
+                        } else {
+                            if (key !== field && field !== '') {
+                                return false;
+                            }
+                            var preItemValue = ('' + item[key]);
+                            var itemValue = ignoreCase ? preItemValue.toLowerCase() : preItemValue;
+                            return itemValue.indexOf(filter) > -1;
+                        }
+                    });
+                    return !(typeof res === 'undefined');
+                });
+            }
+            return data;
+        },
+
+        ...
+          ]]>
+                    </pre>
+                    </mat-tab>
+                </mat-tab-group>
+            </mat-card-content>
+            <mat-divider class="pad-bottom-sm"></mat-divider>
+        </mat-card>
+        <mat-card>
+            <mat-card-title class="pad-bottom-sm">Table</mat-card-title>
+            <mat-divider></mat-divider>
+            <mat-card-content>
+                <p>Example table with: Paging Bar / Filter / Sortable Columns / Multi-select with available Actions</p>
+                <mat-tab-group mat-stretch-tabs>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Demo</ng-template>
+                        <div layout="row" layout-align="space-between center" class="pad-top-md pad-bottom-sm pad-left-md pad-right-md">
+                            <span class="table-title">
+                            <span>Table title</span>
+                            </span>
+                            <div flex class="push-right-sm" fxLayout="row" fxLayoutAlign="end center">
+                                <td-chips [items]="autoCompleteData" (add)="searchAdd($event)" (remove)="searchRemove($event)"></td-chips>
+                                <button class="push-top-sm" color="fds-primary" mat-raised-button [matMenuTriggerFor]="dataTableActionMenu">
+                                    Actions<i class="fa fa-caret-down" aria-hidden="true"></i>
+                                </button>
+                            </div>
+                            <mat-menu class="fds-primary-dropdown-button-menu" #dataTableActionMenu="matMenu" [overlapTrigger]="false">
+                                <button mat-menu-item> Option 1 </button>
+                                <button mat-menu-item> Option 2 </button>
+                            </mat-menu>
+                        </div>
+                        <div class="pad-left-md pad-right-md">
+                            <div fxLayout="row" fxLayoutAlign="space-between center" class="td-data-table">
+                                <div class="td-data-table-column" (click)="sort($event, column)" [matTooltip]="column.tooltip" *ngFor="let column of columns" fxFlex="{{column.width}}">
+                                    <i *ngIf="column.active && column.sortable && column.sortOrder === 'ASC'" class="fa fa-caret-up" aria-hidden="true"></i>
+                                    <i *ngIf="column.active && column.sortable && column.sortOrder === 'DESC'" class="fa fa-caret-down" aria-hidden="true"></i>
+                                    {{column.label}}
+                                </div>
+                                <div class="td-data-table-column" fxFlex=10>
+                                    <div fxLayout="row" fxLayoutAlign="end center">
+                                        <mat-checkbox class="pad-left-sm" [(ngModel)]="allRowsSelected" (checked)="allRowsSelected" (change)="toggleSelectAll()"></mat-checkbox>
+                                    </div>
+                                </div>
+                            </div>
+                            <div>
+                                <div fxLayout="row" fxLayoutAlign="space-between center" class="td-data-table-row" [ngClass]="{'selected' : row.checked}" *ngFor="let row of filteredData" (click)="row.checked = !row.checked;toggleSelect(row)">
+                                    <div class="td-data-table-cell" *ngFor="let column of columns" fxFlex="{{column.width}}">
+                                        <div *ngIf="column.name !== 'comments' || row['comments']">
+                                            {{column.format ? column.format(row[column.name]) : row[column.name]}}
+                                        </div>
+                                    </div>
+                                    <div class="td-data-table-cell" fxFlex=10>
+                                        <div *ngIf="row.actions">
+                                            <div *ngIf="row.actions.length <= 4" fxLayout="row" fxLayoutAlign="end center">
+                                                <button (click)="row.checked = !row.checked" *ngFor="let action of row.actions" matTooltip="{{action.tooltip}}" mat-icon-button color="accent" [disabled]="action.disabled ? '' : null">
+                                                    <i class="{{action.icon}}" aria-hidden="true"></i>
+                                                </button>
+                                                <mat-checkbox class="pad-left-sm" [(ngModel)]="row.checked" [checked]="row.checked" (change)="toggleSelect(row)" (click)="row.checked = !row.checked;toggleSelect(row)"></mat-checkbox>
+                                            </div>
+                                            <div *ngIf="row.actions.length > 4" fxLayout="row" fxLayoutAlign="end center">
+                                                <button (click)="row.checked = !row.checked" matTooltip="Actions" mat-icon-button color="accent" [matMenuTriggerFor]="tableActionMenu">
+                                                    <i class="fa fa-ellipsis-h" aria-hidden="true"></i>
+                                                </button>
+                                                <mat-menu #tableActionMenu="matMenu" [overlapTrigger]="false">
+                                                    <button *ngFor="let action of row.actions" matTooltip="{{action.tooltip}}" mat-menu-item [disabled]="action.disabled ? '' : null">
+                                                        <i class="{{action.icon}}" aria-hidden="true"></i>
+                                                        <span>{{action.name}}</span>
+                                                    </button>
+                                                </mat-menu>
+                                                <mat-checkbox class="pad-left-sm" [(ngModel)]="row.checked" [checked]="row.checked" (change)="toggleSelect(row)" (click)="row.checked = !row.checked;toggleSelect(row)"></mat-checkbox>
+                                            </div>
+                                        </div>
+                                        <div *ngIf="!row.actions" fxLayout="row" fxLayoutAlign="end center">
+                                            <mat-checkbox class="pad-left-sm" [(ngModel)]="row.checked" [checked]="row.checked" (change)="toggleSelect(row)" (click)="row.checked = !row.checked;toggleSelect(row)"></mat-checkbox>
+                                        </div>
+                                    </div>
+                                </div>
+                            </div>
+                            <div class="mat-padding" *ngIf="!filteredData.length > 0" layout="row" layout-align="center center">
+                                <h3>No results to display.</h3>
+                            </div>
+                            <td-paging-bar #pagingBar [initialPage]="1" [pageSize]="pageSize" [total]="pageCount" (change)="page($event)">
+                                <span hide-xs>Row per page:</span> {{pagingBar.range}} <span hide-xs>of {{pagingBar.total}}</span>
+                            </td-paging-bar>
+                        </div>
+                    </mat-tab>
+                    <mat-tab>
+                        <ng-template mat-tab-label>Code</ng-template>
+                        <p>HTML:</p>
+                        <pre lang="html">
+                        <![CDATA[
+        <div layout="row" layout-align="space-between center" class="pad-top-md pad-bottom-sm pad-left-md pad-right-md">
+            <span class="table-title">
+            <span>Table title</span>
+            </span>
+            <div flex class="push-right-sm" fxLayout="row" fxLayoutAlign="end center">
+                <td-chips [items]="autoCompleteData" (add)="searchAdd($event)" (remove)="searchRemove($event)"></td-chips>
+                <button color="fds-primary" mat-raised-button [matMenuTriggerFor]="dataTableActionMenu">
+                    Actions<i class="fa 

<TRUNCATED>

[19/19] nifi-fds git commit: gh-pages update

Posted by sc...@apache.org.
gh-pages update


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/e7eda493
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/e7eda493
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/e7eda493

Branch: refs/heads/gh-pages
Commit: e7eda493c7b3330e55a457a8c0d580b843ccfc97
Parents: b2b1baa
Author: Scott Aslan <sc...@gmail.com>
Authored: Mon Apr 30 15:00:56 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Mon Apr 30 15:00:56 2018 -0400

----------------------------------------------------------------------
 index.html                      |    4 +-
 package-lock.json               | 3586 ++++------------------------------
 package.json                    |   66 +-
 webapp/css/fds-demo.min.css     |    3 +
 webapp/css/fds-demo.min.css.gz  |  Bin 0 -> 11590 bytes
 webapp/css/fds-demo.min.css.map |   64 +
 webapp/systemjs.config.js       |   54 +-
 7 files changed, 463 insertions(+), 3314 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/index.html
----------------------------------------------------------------------
diff --git a/index.html b/index.html
index fb66cad..e55dbb9 100644
--- a/index.html
+++ b/index.html
@@ -16,12 +16,12 @@
 <html>
 <head>
     <title>Apache NiFi Fluid Design System Demo</title>
-    <base href='/'>
+    <base href='/nifi-fds/'>
     <meta charset='UTF-8'>
     <meta name='viewport' content='width=device-width, initial-scale=1'>
     <meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
     <link rel="stylesheet" href="node_modules/@covalent/core/common/platform.css">
-    <link rel="stylesheet" href='platform/core/common/styles/css/fluid-design-system.min.css'/>
+    <link rel="stylesheet" href='node_modules/nifi-fds/platform/core/common/styles/css/fluid-design-system.min.css'/>
     <link rel="stylesheet" href='webapp/css/fds-demo.min.css'/>
     <link rel='stylesheet' href='node_modules/font-awesome/css/font-awesome.css'/>
 </head>


[04/19] nifi-fds git commit: update progress bar buffer color

Posted by sc...@apache.org.
update progress bar buffer color


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/4eee1d77
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/4eee1d77
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/4eee1d77

Branch: refs/heads/gh-pages
Commit: 4eee1d77635dd5cd3fe03eb77efa724935a0cd3d
Parents: afebff3
Author: Scott Aslan <sc...@gmail.com>
Authored: Fri Apr 13 15:37:33 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Fri Apr 13 15:37:33 2018 -0400

----------------------------------------------------------------------
 .gitignore                                      |   6 ++++++
 platform/core/common/styles/_progress-bar.scss  |  20 +++++++++++++++++++
 .../styles/css/fluid-design-system.min.css      |   2 +-
 .../styles/css/fluid-design-system.min.css.gz   | Bin 3198 -> 3220 bytes
 .../styles/css/fluid-design-system.min.css.map  |   3 ++-
 .../core/common/styles/fluid-design-system.scss |   1 +
 6 files changed, 30 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index ffbb696..1b63b48 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,9 @@ coverage/
 npm-debug.log*
 webapp/
 package-lock.json
+
+# Intellij
+.idea/
+*.iml
+*.iws
+*~

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/platform/core/common/styles/_progress-bar.scss
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/_progress-bar.scss b/platform/core/common/styles/_progress-bar.scss
new file mode 100644
index 0000000..4ec81d6
--- /dev/null
+++ b/platform/core/common/styles/_progress-bar.scss
@@ -0,0 +1,20 @@
+/*
+* Licensed to the Apache Software Foundation (ASF) under one or more
+* contributor license agreements.  See the NOTICE file distributed with
+* this work for additional information regarding copyright ownership.
+* The ASF licenses this file to You under the Apache License, Version 2.0
+* (the "License"); you may not use this file except in compliance with
+* the License.  You may obtain a copy of the License at
+*
+*     http://www.apache.org/licenses/LICENSE-2.0
+*
+* Unless required by applicable law or agreed to in writing, software
+* distributed under the License is distributed on an "AS IS" BASIS,
+* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+* See the License for the specific language governing permissions and
+* limitations under the License.
+*/
+
+body[fds] .mat-progress-bar-buffer {
+    background-color: $grey4;
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/platform/core/common/styles/css/fluid-design-system.min.css
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css b/platform/core/common/styles/css/fluid-design-system.min.css
index 4f12b1d..09d81be 100644
--- a/platform/core/common/styles/css/fluid-design-system.min.css
+++ b/platform/core/common/styles/css/fluid-design-system.min.css
@@ -1,3 +1,3 @@
-@font-face{font-family:'Roboto';font-style:normal;font-weight:300;src:local("Roboto Light"),local("Roboto-Light"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Light.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:300;src:local("Roboto LightItalic"),local("Roboto-LightItalic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:normal;src:local("Roboto Regular"),local("Roboto-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local("Roboto Medium"),local("Roboto-Medium"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Medium.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:bold;src:local("Roboto Bo
 ld"),local("Roboto-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Bold.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:normal;src:local("Roboto Italic"),local("Roboto-Italic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-RegularItalic.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:normal;src:local("RobotoSlab Regular"),local("RobotoSlab-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:bold;src:local("RobotoSlab Bold"),local("RobotoSlab-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Bold.ttf") format("truetype")}body,html{height:100%}body,button,input,label,select,td,textarea{font-family:"Roboto",sans-serif;font-size:14px}body{color:#333}strong{font-
 weight:bold}pre{overflow-x:auto}em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Roboto",sans-serif;font-weight:normal;font-style:normal;background:#FFFFFF}h1{color:#333}h2{color:#666}table{font-family:"Roboto",sans-serif;font-size:13px;color:#666}.camel-case{text-transform:capitalize}.header{font-family:"Roboto Medium",sans-serif;font-size:16px;color:#333;padding-bottom:10px}.help-icon{font-size:12px;color:#1491C1}.details-header{height:92px}.details-header-container{position:relative;top:22px;left:10px}.description{font-family:"Roboto Light",sans-serif;font-size:12px;color:#666}.description i{padding-right:5px}.label{font-family:"Roboto Medium",sans-serif;font-size:14px;color:#333;text-transform:uppercase}.units{font-family:"Roboto Light",sans-serif;font-size:14px;color:#333}.align-vertical{margin-top:auto;margin-bottom:auto}.align-horizontal{margin-left:auto;margin-right:auto}.fill-available-width{width:100%}.pointer{cursor:pointer}body[fds] .expansion-panel-filter-toggle-grou
 p{box-shadow:none !important}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle{height:75px;width:125px;border:1px solid #ccc}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:63px;text-align:center}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked .md-display-1{color:white}body[fds] .expansion-panel-filter-toggle-group .md-display-1{color:#6B8791}body[fds] .expansion-panel-filter-toggle-group div{line-height:normal}body[fds] .tab-toggle-group{box-shadow:none !important}body[fds] .tab-toggle-group .mat-button-toggle-label-content{border-bottom:2px solid #eee}body[fds] .tab-toggle-group .mat-button-toggle-checked{background:transparent}body[fds] .tab-toggle-group .mat-button-toggle-checked .mat-button-toggle-label-content{border-bottom:2px solid #6B8791;backgroun
 d:transparent}body[fds] .on-off-toggle-group{box-shadow:none !important}body[fds] .on-off-toggle-group .mat-button-toggle{height:20px;width:35px;border:1px solid #ccc}body[fds] .on-off-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:20px;text-align:center}body[fds] .on-off-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white;border:1px solid #6B8791}body[fds] .off-toggle.mat-button-toggle-checked{background-color:#ccc;color:#333;border:1px solid #ccc}body[fds] .mat-checkbox-inner-container{height:10px !important;width:10px !important}body[fds] .mat-checkbox-frame{height:10px;width:10px;border-color:#ddd}body[fds] .mat-checkbox-ripple{left:-7px;top:-7px;right:-7px;bottom:-7px}body[fds] .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,body[fds] .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#6B8791}body[fds] .mat-checkbox-inner-container:hover{background-color:#6B8791;border-r
 adius:2px}body[fds] .mat-checkbox-background{height:10px;width:10px}body[fds] .mat-pseudo-checkbox{height:10px !important;width:10px !important;border:1px solid #ddd}body[fds] .mat-pseudo-checkbox:hover{background-color:#6B8791;border:1px solid #6B8791}body[fds] .mat-pseudo-checkbox-checked::after{content:'\f00c';font-size:8px;font-family:fontawesome;margin-top:-9px;margin-left:-1px;border:none;transform:initial}body[fds] .mat-pseudo-checkbox-checked,body[fds] .mat-pseudo-checkbox-indeterminate{background-color:#6B8791;border:1px solid #6B8791;height:10px;width:10px}body[fds] .mat-checkbox-disabled{cursor:not-allowed}body[fds] .mat-radio-container{height:12px;width:12px}body[fds] .mat-radio-outer-circle{height:12px;width:12px;background-color:#FFFFFF;border:1px solid #ddd}body[fds] .mat-radio-outer-circle:hover{background-color:#6B8791;border-color:#6B8791}body[fds] .mat-radio-checked .mat-radio-outer-circle{border:1px solid #6B8791;background-color:#6B8791}body[fds] .mat-radio-butt
 on.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#6B8791}body[fds] .mat-radio-inner-circle{height:10px;width:10px;left:1px;top:1px;background-color:#FFFFFF}body[fds] .mat-radio-checked .mat-radio-inner-circle{background-color:#FFFFFF}body[fds] .mat-chip{border-radius:2px;font-size:10px;font-family:"Roboto",sans-serif;font-style:normal;font-weight:normal;padding:4px 12px 4px 12px}body[fds] .mat-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip{color:#666;height:24px;margin:22px 8px 0 0}body[fds] .mat-basic-chip.td-chip-after-pad{padding:4px 12px 4px 12px}body[fds] .mat-basic-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip .td-chip{font-size:10px;min-height:unset;line-height:20px;position:relative;top:-2px}body[fds] .td-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:65px}body[fds] .td-chip-disabled .td-chip{padding:0px 0px 0px 12px}body[fds] .mat-basic-chip mat-icon.td-chip-removal{f
 ont-size:15px;margin-bottom:7px}body[fds] .mat-dialog-container{padding:20px;width:400px}body[fds] .mat-tab-label{line-height:72px;text-transform:uppercase;color:#666}body[fds] .mat-tab-label:hover:not([disabled]){color:#333}body[fds] .mat-tab-label:focus:not([disabled]){background-color:#FFFFFF}body[fds] .mat-tab-label-active{color:#333}body[fds] .mat-tab-nav-bar,body[fds] .mat-tab-header{border-bottom:0px}body[fds] .mat-input-container{min-width:200px}body[fds] .mat-input-wrapper{margin:0;padding-bottom:0}body[fds] input.mat-input-element,body[fds] textarea.mat-input-element{border-radius:2px;color:#666;border:1px solid #CFD3D7;height:32px;padding:0px 10px;width:calc(100% - 26px)}body[fds] textarea.mat-input-element{padding:10px 10px}body[fds] input.mat-input-element[disabled],body[fds] textarea.mat-input-element[disabled]{background:#b2b8c1;color:#dbdee2;border:1px solid #b2b8c1}body[fds] .mat-input-subscript-wrapper{margin-top:18px;width:calc(100% - 23px)}body[fds] input.mat-inp
 ut-element:focus,body[fds] textarea.mat-input-element:focus{border-color:#6B8791}body[fds] .mat-input-underline{display:none}body[fds] .mat-input-placeholder{font-size:14px;color:#999;font-weight:300}body[fds] .mat-input-placeholder{top:29px;left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% - 44px)}body[fds] mat-input-container.mat-focused .mat-input-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .input-button{top:5px;left:-4px;border-left:none !important}body[fds] .input-button.mat-raised-button[disabled]{opacity:1}body[fds] td-chips .mat-input-placeholder-wrapper:
 :after{content:'\f0b0';display:inline-table;font-family:FontAwesome;float:right;margin:12px 10px 0px 0px;color:#999}body[fds] .mat-hint{color:#999}body[fds] .md-card-title{font-size:20px;color:#333;margin-bottom:0px}body[fds] md-card-title{padding-top:20px;padding-left:20px;padding-right:20px}body[fds] .md-card-subtitle{padding-left:20px;padding-right:20px;padding-top:10px;margin-bottom:0px}body[fds] .md-card-content{color:#666;padding:10px 20px 20px 20px;margin:0px}body[fds] .md-card .md-card-actions:last-child,body[fds] .md-card .md-card .md-card-actions:last-child{padding:0px 20px 20px 20px;margin:0px}body[fds] .fds-panel-menu-button{position:absolute;right:0px;z-index:2}body[fds] .link{color:#6B8791;font-size:14px;text-decoration:none;line-height:24px;cursor:pointer}body[fds] .link:hover{text-decoration:underline}body[fds] .link .disabled{color:#333;text-decoration:none}body[fds] .mat-sidenav-container{height:100%}.td-step-header span{display:none}body[fds] .mat-tooltip{backgrou
 nd:#666;opacity:.9;box-shadow:inset 0px 0px 3px 0px #1391c1}body[fds] .td-data-table-cell{font-size:13px;color:#666;padding:0 28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;line-height:30px}body[fds] .td-data-table-column{color:#999;font-weight:normal}body[fds] .td-data-table-row{height:34px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #fff;border-bottom:1px solid #eee}body[fds] .td-data-table-row.selected{background-color:#eee;border:1px solid #eee}body[fds] .td-data-table-row:hover{background-color:#F8F9F9;border:1px solid #B2C1C6}body[fds] .td-data-table-cell .mat-icon-button{color:#6B8791}body[fds] .td-data-table-cell .mat-icon-button:disabled{color:#808793;cursor:not-allowed}body[fds] .td-data-table-cell .mat-button,body[fds] .td-data-table-cell .mat-icon-button,body[fds] .td-data-table-cell .mat-raised-button{height:24px;width:24px;line-height:0}body[fds] .td-data-table-cell .mat-icon-button.badge{border-top-left-radiu
 s:0px;border-top-right-radius:0px}body[fds] .td-data-table-cell .mat-icon-button.badge[disabled]{opacity:.3}body[fds] .td-data-table-column{font-size:12px;color:#999;height:34px;line-height:34px;padding:0 28px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body[fds] .td-data-table-column .fa-caret-up,body[fds] .td-data-table-column .fa-caret-down{color:#6B8791;font-size:12px;margin-bottom:2px}body[fds] td-paging-bar{color:#999}body[fds] td-paging-bar mat-select .mat-select-value,body[fds] td-paging-bar mat-select .mat-select-arrow{color:#6B8791}body[fds] .table-title{font-size:20px;color:#333;min-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;margin-right:10px}body[fds] div .td-data-table{border-bottom:2px solid #ddd;border-right:1px transparent;border-left:1px transparent}.fds-dialog-title{margin-top:0;margin-bottom:20px}body[fds] snack-bar-container{background:#FFFFFF;padding:0;box-shadow:0px 0px 3px 0px #1391c1}fds-snackbar-title ma
 t-icon.mat-icon.mat-primary.material-icons{font-size:10px;height:10px;width:10px;line-height:10px;color:#999}.fds-coaster-message{font-size:12px}.fds-snackbar-title{font-size:14px}.fds-snackbar-title i{font-size:24px}.fds-coaster-icon{position:absolute;top:24px;left:15px}.coaster-close-icon{height:10px !important;width:10px !important;line-height:10px !important;right:10px;position:absolute !important;top:10px}.fds-snackbar-wrapper{border-radius:2px;border-width:1px;border-style:solid}
+@font-face{font-family:'Roboto';font-style:normal;font-weight:300;src:local("Roboto Light"),local("Roboto-Light"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Light.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:300;src:local("Roboto LightItalic"),local("Roboto-LightItalic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-LightItalic.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:normal;src:local("Roboto Regular"),local("Roboto-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:500;src:local("Roboto Medium"),local("Roboto-Medium"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Medium.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:normal;font-weight:bold;src:local("Roboto Bo
 ld"),local("Roboto-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-Bold.ttf") format("truetype")}@font-face{font-family:'Roboto';font-style:italic;font-weight:normal;src:local("Roboto Italic"),local("Roboto-Italic"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto/Roboto-RegularItalic.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:normal;src:local("RobotoSlab Regular"),local("RobotoSlab-Regular"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Regular.ttf") format("truetype")}@font-face{font-family:'Roboto Slab';font-style:normal;font-weight:bold;src:local("RobotoSlab Bold"),local("RobotoSlab-Bold"),url("../../../../../../../node_modules/roboto-fontface/fonts/Roboto-Slab/Roboto-Slab-Bold.ttf") format("truetype")}body,html{height:100%}body,button,input,label,select,td,textarea{font-family:"Roboto",sans-serif;font-size:14px}body{color:#333}strong{font-
 weight:bold}pre{overflow-x:auto}em{font-style:italic}h1,h2,h3,h4,h5,h6{font-family:"Roboto",sans-serif;font-weight:normal;font-style:normal;background:#FFFFFF}h1{color:#333}h2{color:#666}table{font-family:"Roboto",sans-serif;font-size:13px;color:#666}.camel-case{text-transform:capitalize}.header{font-family:"Roboto Medium",sans-serif;font-size:16px;color:#333;padding-bottom:10px}.help-icon{font-size:12px;color:#1491C1}.details-header{height:92px}.details-header-container{position:relative;top:22px;left:10px}.description{font-family:"Roboto Light",sans-serif;font-size:12px;color:#666}.description i{padding-right:5px}.label{font-family:"Roboto Medium",sans-serif;font-size:14px;color:#333;text-transform:uppercase}.units{font-family:"Roboto Light",sans-serif;font-size:14px;color:#333}.align-vertical{margin-top:auto;margin-bottom:auto}.align-horizontal{margin-left:auto;margin-right:auto}.fill-available-width{width:100%}.pointer{cursor:pointer}body[fds] .expansion-panel-filter-toggle-grou
 p{box-shadow:none !important}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle{height:75px;width:125px;border:1px solid #ccc}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:63px;text-align:center}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white}body[fds] .expansion-panel-filter-toggle-group .mat-button-toggle-checked .md-display-1{color:white}body[fds] .expansion-panel-filter-toggle-group .md-display-1{color:#6B8791}body[fds] .expansion-panel-filter-toggle-group div{line-height:normal}body[fds] .tab-toggle-group{box-shadow:none !important}body[fds] .tab-toggle-group .mat-button-toggle-label-content{border-bottom:2px solid #eee}body[fds] .tab-toggle-group .mat-button-toggle-checked{background:transparent}body[fds] .tab-toggle-group .mat-button-toggle-checked .mat-button-toggle-label-content{border-bottom:2px solid #6B8791;backgroun
 d:transparent}body[fds] .on-off-toggle-group{box-shadow:none !important}body[fds] .on-off-toggle-group .mat-button-toggle{height:20px;width:35px;border:1px solid #ccc}body[fds] .on-off-toggle-group .mat-button-toggle-label-content{height:100%;width:100%;padding:0;line-height:20px;text-align:center}body[fds] .on-off-toggle-group .mat-button-toggle-checked{background-color:#6B8791;color:white;border:1px solid #6B8791}body[fds] .off-toggle.mat-button-toggle-checked{background-color:#ccc;color:#333;border:1px solid #ccc}body[fds] .mat-checkbox-inner-container{height:10px !important;width:10px !important}body[fds] .mat-checkbox-frame{height:10px;width:10px;border-color:#ddd}body[fds] .mat-checkbox-ripple{left:-7px;top:-7px;right:-7px;bottom:-7px}body[fds] .mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,body[fds] .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#6B8791}body[fds] .mat-checkbox-inner-container:hover{background-color:#6B8791;border-r
 adius:2px}body[fds] .mat-checkbox-background{height:10px;width:10px}body[fds] .mat-pseudo-checkbox{height:10px !important;width:10px !important;border:1px solid #ddd}body[fds] .mat-pseudo-checkbox:hover{background-color:#6B8791;border:1px solid #6B8791}body[fds] .mat-pseudo-checkbox-checked::after{content:'\f00c';font-size:8px;font-family:fontawesome;margin-top:-9px;margin-left:-1px;border:none;transform:initial}body[fds] .mat-pseudo-checkbox-checked,body[fds] .mat-pseudo-checkbox-indeterminate{background-color:#6B8791;border:1px solid #6B8791;height:10px;width:10px}body[fds] .mat-checkbox-disabled{cursor:not-allowed}body[fds] .mat-radio-container{height:12px;width:12px}body[fds] .mat-radio-outer-circle{height:12px;width:12px;background-color:#FFFFFF;border:1px solid #ddd}body[fds] .mat-radio-outer-circle:hover{background-color:#6B8791;border-color:#6B8791}body[fds] .mat-radio-checked .mat-radio-outer-circle{border:1px solid #6B8791;background-color:#6B8791}body[fds] .mat-radio-butt
 on.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#6B8791}body[fds] .mat-radio-inner-circle{height:10px;width:10px;left:1px;top:1px;background-color:#FFFFFF}body[fds] .mat-radio-checked .mat-radio-inner-circle{background-color:#FFFFFF}body[fds] .mat-chip{border-radius:2px;font-size:10px;font-family:"Roboto",sans-serif;font-style:normal;font-weight:normal;padding:4px 12px 4px 12px}body[fds] .mat-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip{color:#666;height:24px;margin:22px 8px 0 0}body[fds] .mat-basic-chip.td-chip-after-pad{padding:4px 12px 4px 12px}body[fds] .mat-basic-chip i{margin-left:10px;float:right;margin-top:2px}body[fds] .mat-basic-chip .td-chip{font-size:10px;min-height:unset;line-height:20px;position:relative;top:-2px}body[fds] .td-chip span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:65px}body[fds] .td-chip-disabled .td-chip{padding:0px 0px 0px 12px}body[fds] .mat-basic-chip mat-icon.td-chip-removal{f
 ont-size:15px;margin-bottom:7px}body[fds] .mat-dialog-container{padding:20px;width:400px}body[fds] .mat-tab-label{line-height:72px;text-transform:uppercase;color:#666}body[fds] .mat-tab-label:hover:not([disabled]){color:#333}body[fds] .mat-tab-label:focus:not([disabled]){background-color:#FFFFFF}body[fds] .mat-tab-label-active{color:#333}body[fds] .mat-tab-nav-bar,body[fds] .mat-tab-header{border-bottom:0px}body[fds] .mat-input-container{min-width:200px}body[fds] .mat-input-wrapper{margin:0;padding-bottom:0}body[fds] input.mat-input-element,body[fds] textarea.mat-input-element{border-radius:2px;color:#666;border:1px solid #CFD3D7;height:32px;padding:0px 10px;width:calc(100% - 26px)}body[fds] textarea.mat-input-element{padding:10px 10px}body[fds] input.mat-input-element[disabled],body[fds] textarea.mat-input-element[disabled]{background:#b2b8c1;color:#dbdee2;border:1px solid #b2b8c1}body[fds] .mat-input-subscript-wrapper{margin-top:18px;width:calc(100% - 23px)}body[fds] input.mat-inp
 ut-element:focus,body[fds] textarea.mat-input-element:focus{border-color:#6B8791}body[fds] .mat-input-underline{display:none}body[fds] .mat-input-placeholder{font-size:14px;color:#999;font-weight:300}body[fds] .mat-input-placeholder{top:29px;left:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;width:calc(100% - 44px)}body[fds] mat-input-container.mat-focused .mat-input-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float.mat-form-field-should-float .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-placeholder-wrapper .mat-form-field-placeholder{transform:translateY(-26px) translateX(-10px) scale(0.75)}body[fds] .input-button{top:5px;left:-4px;border-left:none !important}body[fds] .input-button.mat-raised-button[disabled]{opacity:1}body[fds] td-chips .mat-input-placeholder-wrapper:
 :after{content:'\f0b0';display:inline-table;font-family:FontAwesome;float:right;margin:12px 10px 0px 0px;color:#999}body[fds] .mat-hint{color:#999}body[fds] .md-card-title{font-size:20px;color:#333;margin-bottom:0px}body[fds] md-card-title{padding-top:20px;padding-left:20px;padding-right:20px}body[fds] .md-card-subtitle{padding-left:20px;padding-right:20px;padding-top:10px;margin-bottom:0px}body[fds] .md-card-content{color:#666;padding:10px 20px 20px 20px;margin:0px}body[fds] .md-card .md-card-actions:last-child,body[fds] .md-card .md-card .md-card-actions:last-child{padding:0px 20px 20px 20px;margin:0px}body[fds] .fds-panel-menu-button{position:absolute;right:0px;z-index:2}body[fds] .mat-progress-bar-buffer{background-color:#ccc}body[fds] .link{color:#6B8791;font-size:14px;text-decoration:none;line-height:24px;cursor:pointer}body[fds] .link:hover{text-decoration:underline}body[fds] .link .disabled{color:#333;text-decoration:none}body[fds] .mat-sidenav-container{height:100%}.td-step
 -header span{display:none}body[fds] .mat-tooltip{background:#666;opacity:.9;box-shadow:inset 0px 0px 3px 0px #1391c1}body[fds] .td-data-table-cell{font-size:13px;color:#666;padding:0 28px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:100%;line-height:30px}body[fds] .td-data-table-column{color:#999;font-weight:normal}body[fds] .td-data-table-row{height:34px;border-top:1px solid #fff;border-left:1px solid #fff;border-right:1px solid #fff;border-bottom:1px solid #eee}body[fds] .td-data-table-row.selected{background-color:#eee;border:1px solid #eee}body[fds] .td-data-table-row:hover{background-color:#F8F9F9;border:1px solid #B2C1C6}body[fds] .td-data-table-cell .mat-icon-button{color:#6B8791}body[fds] .td-data-table-cell .mat-icon-button:disabled{color:#808793;cursor:not-allowed}body[fds] .td-data-table-cell .mat-button,body[fds] .td-data-table-cell .mat-icon-button,body[fds] .td-data-table-cell .mat-raised-button{height:24px;width:24px;line-height:0}body[fds] .td-dat
 a-table-cell .mat-icon-button.badge{border-top-left-radius:0px;border-top-right-radius:0px}body[fds] .td-data-table-cell .mat-icon-button.badge[disabled]{opacity:.3}body[fds] .td-data-table-column{font-size:12px;color:#999;height:34px;line-height:34px;padding:0 28px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}body[fds] .td-data-table-column .fa-caret-up,body[fds] .td-data-table-column .fa-caret-down{color:#6B8791;font-size:12px;margin-bottom:2px}body[fds] td-paging-bar{color:#999}body[fds] td-paging-bar mat-select .mat-select-value,body[fds] td-paging-bar mat-select .mat-select-arrow{color:#6B8791}body[fds] .table-title{font-size:20px;color:#333;min-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:50%;margin-right:10px}body[fds] div .td-data-table{border-bottom:2px solid #ddd;border-right:1px transparent;border-left:1px transparent}.fds-dialog-title{margin-top:0;margin-bottom:20px}body[fds] snack-bar-container{background:#FFFFFF;padding:0
 ;box-shadow:0px 0px 3px 0px #1391c1}fds-snackbar-title mat-icon.mat-icon.mat-primary.material-icons{font-size:10px;height:10px;width:10px;line-height:10px;color:#999}.fds-coaster-message{font-size:12px}.fds-snackbar-title{font-size:14px}.fds-snackbar-title i{font-size:24px}.fds-coaster-icon{position:absolute;top:24px;left:15px}.coaster-close-icon{height:10px !important;width:10px !important;line-height:10px !important;right:10px;position:absolute !important;top:10px}.fds-snackbar-wrapper{border-radius:2px;border-width:1px;border-style:solid}
 
 /*# sourceMappingURL=fluid-design-system.min.css.map */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/platform/core/common/styles/css/fluid-design-system.min.css.gz
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.gz b/platform/core/common/styles/css/fluid-design-system.min.css.gz
index 8a40d5a..b878c9b 100644
Binary files a/platform/core/common/styles/css/fluid-design-system.min.css.gz and b/platform/core/common/styles/css/fluid-design-system.min.css.gz differ

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/platform/core/common/styles/css/fluid-design-system.min.css.map
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/css/fluid-design-system.min.css.map b/platform/core/common/styles/css/fluid-design-system.min.css.map
index da4b770..a8f8911 100644
--- a/platform/core/common/styles/css/fluid-design-system.min.css.map
+++ b/platform/core/common/styles/css/fluid-design-system.min.css.map
@@ -14,6 +14,7 @@
 		"../_tabs.scss",
 		"../_inputs.scss",
 		"../_panels.scss",
+		"../_progress-bar.scss",
 		"../_links.scss",
 		"../_sideNav.scss",
 		"../_stepper.scss",
@@ -23,5 +24,5 @@
 		"../../../snackbars/coaster/_coaster.component.scss"
 	],
 	"names": [],
-	"mappings": "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"
+	"mappings": "AEiBA,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,GAAG,CAChB,GAAG,CAAE,qBAAqB,CAAE,qBAAqB,CAAE,sFAAsF,CAAC,kBAAkB,CAG9J,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,GAAG,CAChB,GAAG,CAAE,2BAA2B,CAAE,2BAA2B,CAAE,4FAA4F,CAAC,kBAAkB,CAGhL,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,GAAG,CAAE,uBAAuB,CAAE,uBAAuB,CAAE,wFAAwF,CAAC,kBAAkB,CAGpK,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,GAAG,CAChB,GAAG,CAAE,sBAAsB,CAAE,sBAAsB,CAAE,uFAAuF,CAAC,kBAAkB,CAGjK,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,IAAI,CACjB,GAAG,CAAE,oBAAoB,CAAE,oBAAoB,CAAE,qFAAqF,CAAC,kBAAkB,CAG3J,UAAU,CACR,WAAW,CAAE,QAAQ,CACrB,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,GAAG,CAAE,sBAAsB,CAAE,sBAAsB,CAAE,8FAA8F,CAAC,kBAAkB,CAGxK,UAAU,CACR,WAAW,CAAE,aAAa,CAC1B,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,GAAG,CAAE,2BAA2B,CAAE,2BAA2B,CAAE,kGAAkG,CAAC,kBAAkB,CAGtL,UAAU,CACR,WAAW,CAAE,aAAa,CAC1B,UAAU,CAAE,MAAM,CAClB,W
 AAW,CAAE,IAAI,CACjB,GAAG,CAAE,wBAAwB,CAAE,wBAAwB,CAAE,+FAA+F,CAAC,kBAAkB,CAG7K,AAAA,IAAI,CACJ,IAAI,AAAC,CACH,MAAM,CAAE,IAAI,CACb,AAED,AAAA,IAAI,CACJ,MAAM,CACN,KAAK,CACL,KAAK,CACL,MAAM,CACN,EAAE,CACF,QAAQ,AAAC,CACP,WAAW,CDlEC,QAAQ,CACtB,UAAU,CCkER,SAAS,CAAE,IAAI,CAChB,AAED,AAAA,IAAI,AAAC,CACH,KAAK,CD5DC,IAAO,CC6Dd,AAED,AAAA,MAAM,AAAC,CACL,WAAW,CAAE,IAAI,CAClB,AAED,AAAA,GAAG,AAAC,CACF,UAAU,CAAE,IAAI,CACjB,AAED,AAAA,EAAE,AAAC,CACD,UAAU,CAAE,MAAM,CACnB,AAED,AAAA,EAAE,CACF,EAAE,CACF,EAAE,CACF,EAAE,CACF,EAAE,CACF,EAAE,AAAC,CACD,WAAW,CD5FC,QAAQ,CACtB,UAAU,CC4FR,WAAW,CAAE,MAAM,CACnB,UAAU,CAAE,MAAM,CAClB,UAAU,CAAE,OAAO,CACpB,AAED,AAAA,EAAE,AAAC,CACD,KAAK,CDxFC,IAAO,CCyFd,AAED,AAAA,EAAE,AAAC,CACD,KAAK,CD3FC,IAAO,CC4Fd,AAED,AAAA,KAAK,AAAC,CACJ,WAAW,CD3GC,QAAQ,CACtB,UAAU,CC2GR,SAAS,CAAE,IAAI,CACf,KAAK,CDjGC,IAAO,CCkGd,AC9GD,AAAA,WAAW,AAAC,CACV,cAAc,CAAE,UAAU,CAC3B,AAED,AAAA,OAAO,AAAC,CACN,WAAW,CFDA,eAAe,CAC5B,UAAU,CECR,SAAS,CAAE,IAAI,CACf,KAAK,CFIC,IAAO,CEHb,cAAc,CAAE,IAAI,CACrB,AAED,AAAA,UAAU,
 AAAC,CACT,SAAS,CAAE,IAAI,CACf,KAAK,CFWC,OAAO,CEVd,AAED,AAAA,eAAe,AAAC,CACd,MAAM,CAAE,IAAI,CACb,AAED,AAAA,yBAAyB,AAAC,CACxB,QAAQ,CAAE,QAAQ,CAClB,GAAG,CAAE,IAAI,CACT,IAAI,CAAE,IAAI,CACX,AAED,AAAA,YAAY,AAAC,CACX,WAAW,CFrBD,cAAc,CAC1B,UAAU,CEqBR,SAAS,CAAE,IAAI,CACf,KAAK,CFjBC,IAAO,CEkBd,AAED,AAAA,YAAY,CAAC,CAAC,AAAC,CACb,aAAa,CAAE,GAAG,CACnB,AAED,AAAA,MAAM,AAAC,CACL,WAAW,CFjCA,eAAe,CAC5B,UAAU,CEiCR,SAAS,CAAE,IAAI,CACf,KAAK,CF5BC,IAAO,CE6Bb,cAAc,CAAE,SAAS,CAC1B,AAED,AAAA,MAAM,AAAC,CACL,WAAW,CFtCD,cAAc,CAC1B,UAAU,CEsCR,SAAS,CAAE,IAAI,CACf,KAAK,CFnCC,IAAO,CEoCd,AAED,AAAA,eAAe,AAAC,CACd,UAAU,CAAE,IAAI,CAChB,aAAa,CAAE,IAAI,CACpB,AAED,AAAA,iBAAiB,AAAC,CAChB,WAAW,CAAE,IAAI,CACjB,YAAY,CAAE,IAAI,CACnB,AAED,AAAA,qBAAqB,AAAC,CACpB,KAAK,CAAE,IAAI,CACZ,AAED,AAAA,QAAQ,AAAC,CACP,MAAM,CAAE,OAAO,CAChB,ACnED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,AAAC,CAC7C,UAAU,CAAE,eAAe,CAC5B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,kBAAkB,AAAC,CAChE,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,GAAG,
 CAAC,KAAK,CHSX,IAAO,CGRd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,gCAAgC,AAAC,CAC9E,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,CAAC,CACV,WAAW,CAAE,IAAI,CACjB,UAAU,CAAE,MAAM,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,0BAA0B,AAAC,CACxE,gBAAgB,CHwBL,OAAO,CGvBlB,KAAK,CAAE,KAAK,CACb,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,0BAA0B,CAAC,aAAa,AAAC,CACtF,KAAK,CAAE,KAAK,CACb,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,aAAa,AAAC,CAC3D,KAAK,CHeM,OAAO,CGdnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oCAAoC,CAAC,GAAG,AAAC,CACjD,WAAW,CAAE,MAAM,CACpB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,AAAC,CAC1B,UAAU,CAAE,eAAe,CAC5B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,CAAC,gCAAgC,AAAC,CAC3D,aAAa,CAAE,GAAG,CAAC,KAAK,CHvBlB,IAAO,CGwBd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,CAAC,0BAA0B,AAAC,CACrD,UAAU,CAAE,WAAW,CACxB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,CAAC,0BAA0B,CAAC,gCAAgC,AAAC,CACtF,aAAa,CAAE,GAAG,CAAC,KAAK,CHLb,OAAO,CGMlB,U
 AAU,CAAE,WAAW,CACxB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAC,CAC7B,UAAU,CAAE,eAAe,CAC5B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,CAAC,kBAAkB,AAAC,CAChD,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,GAAG,CAAC,KAAK,CH3CX,IAAO,CG4Cd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,CAAC,gCAAgC,AAAC,CAC9D,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,OAAO,CAAE,CAAC,CACV,WAAW,CAAE,IAAI,CACjB,UAAU,CAAE,MAAM,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,CAAC,0BAA0B,AAAC,CACxD,gBAAgB,CH5BL,OAAO,CG6BlB,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,GAAG,CAAC,KAAK,CH9BN,OAAO,CG+BnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,WAAW,AAAA,0BAA0B,AAAC,CAC9C,gBAAgB,CH7DV,IAAO,CG8Db,KAAK,CHjEC,IAAO,CGkEb,MAAM,CAAE,GAAG,CAAC,KAAK,CH/DX,IAAO,CGgEd,AC9ED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,6BAA6B,AAAC,CACtC,MAAM,CAAE,eAAe,CACvB,KAAK,CAAE,eAAe,CACvB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,AAAC,CAC5B,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,YAAY,CJSN,IAAO,CIRd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,o
 BAAoB,AAAC,CAC7B,IAAI,CAAE,IAAI,CACV,GAAG,CAAE,IAAI,CACT,KAAK,CAAE,IAAI,CACX,MAAM,CAAE,IAAI,CACb,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,2BAA2B,AAAA,WAAW,CAAC,wBAAwB,CACzE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,AAAA,WAAW,CAAC,wBAAwB,AAAC,CAClE,gBAAgB,CJqBL,OAAO,CIpBnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,6BAA6B,AAAA,MAAM,AAAC,CAC5C,gBAAgB,CJiBL,OAAO,CIhBlB,aAAa,CAAE,GAAG,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,wBAAwB,AAAC,CACjC,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACZ,AAID,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAC,CAC7B,MAAM,CAAE,eAAe,CACvB,KAAK,CAAE,eAAe,CACtB,MAAM,CAAE,GAAG,CAAC,KAAK,CJrBX,IAAO,CIsBd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAA,MAAM,AAAC,CACnC,gBAAgB,CJDL,OAAO,CIElB,MAAM,CAAE,GAAG,CAAC,KAAK,CJFN,OAAO,CIGnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,4BAA4B,AAAA,OAAO,AAAC,CAC5C,OAAO,CAAE,OAAO,CAChB,SAAS,CAAE,GAAG,CACd,WAAW,CAAE,WAAW,CACxB,UAAU,CAAE,IAAI,CAChB,WAAW,CAAE,IAAI,CACjB,MAAM,CAAE,IAAI,CACZ,SAAS,CAAE,OAAO,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,A
 AAA,EAAK,4BAA4B,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kCAAkC,AAAC,CACnF,gBAAgB,CJhBL,OAAO,CIiBlB,MAAM,CAAE,GAAG,CAAC,KAAK,CJjBN,OAAO,CIkBlB,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,sBAAsB,AAAC,CAC/B,MAAM,CAAE,WAAW,CACpB,ACjED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAC,CAC7B,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,uBAAuB,AAAC,CAChC,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,gBAAgB,CAAE,OAAO,CACzB,MAAM,CAAE,GAAG,CAAC,KAAK,CLQX,IAAO,CKPd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,uBAAuB,AAAA,MAAM,AAAC,CACtC,gBAAgB,CL4BL,OAAO,CK3BlB,YAAY,CL2BD,OAAO,CK1BnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,CAAC,uBAAuB,AAAC,CACnD,MAAM,CAAE,GAAG,CAAC,KAAK,CLuBN,OAAO,CKtBlB,gBAAgB,CLsBL,OAAO,CKrBnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,AAAA,WAAW,AAAA,kBAAkB,CAAC,uBAAuB,AAAC,CAC/E,YAAY,CLkBD,OAAO,CKjBnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,uBAAuB,AAAC,CAChC,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,IAAI,CAAE,GAAG
 ,CACT,GAAG,CAAE,GAAG,CACR,gBAAgB,CAAE,OAAO,CAC1B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,CAAC,uBAAuB,AAAC,CACnD,gBAAgB,CAAE,OAAO,CAC1B,ACpCD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,SAAS,AAAC,CAClB,aAAa,CAAE,GAAG,CAClB,SAAS,CAAE,IAAI,CACf,WAAW,CNHC,QAAQ,CACtB,UAAU,CMGR,UAAU,CAAE,MAAM,CAClB,WAAW,CAAE,MAAM,CACnB,OAAO,CAAE,iBAAiB,CAC3B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,SAAS,CAAC,CAAC,AAAC,CACpB,WAAW,CAAE,IAAI,CACjB,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,GAAG,CAChB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,AAAC,CACxB,KAAK,CNJC,IAAO,CMKb,MAAM,CAAE,IAAI,CACZ,MAAM,CAAE,YAAY,CACrB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,AAAA,kBAAkB,AAAC,CAC1C,OAAO,CAAE,iBAAiB,CAC3B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,CAAC,CAAC,AAAC,CAC1B,WAAW,CAAE,IAAI,CACjB,KAAK,CAAE,KAAK,CACZ,UAAU,CAAE,GAAG,CAChB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,CAAC,QAAQ,AAAC,CACjC,SAAS,CAAE,IAAI,CACf,UAAU,CAAE,KAAK,CACjB,WAAW,CAAE,IAAI,CACjB,QAAQ,CAAE,QAAQ,CAClB,GAAG,CAAE,IAAI,CACV,AAED,AAAA,IAAI,CAAA,AAAA,GAA
 C,AAAA,EAAK,QAAQ,CAAC,IAAI,AAAC,CACtB,WAAW,CAAE,MAAM,CACnB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CACvB,KAAK,CAAE,IAAI,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,CAAC,QAAQ,AAAC,CACnC,OAAO,CAAE,gBAAgB,CAC1B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,CAAC,QAAQ,AAAA,gBAAgB,AAAC,CACjD,SAAS,CAAE,IAAI,CACf,aAAa,CAAE,GAAG,CACnB,ACrDD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,AAAC,CAC9B,OAAO,CAAE,IAAI,CACb,KAAK,CAAE,KAAK,CACb,ACHD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,cAAc,AAAC,CACvB,WAAW,CAAE,IAAI,CACjB,cAAc,CAAE,SAAS,CACzB,KAAK,CRSC,IAAO,CQRd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,cAAc,AAAA,MAAM,AAAA,IAAK,EAAA,AAAA,QAAC,AAAA,EAAW,CAC7C,KAAK,CRIC,IAAO,CQHd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,cAAc,AAAA,MAAM,AAAA,IAAK,EAAA,AAAA,QAAC,AAAA,EAAW,CAC7C,gBAAgB,CAAE,OAAO,CAC1B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,AAAC,CAC9B,KAAK,CRJC,IAAO,CQKd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,gBAAgB,CAC1B,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,eAAe,AAAC,CACxB,aAAa,CAAE,GAAG,CACnB,ACrBD,AAAA,IAAI,
 CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAC,CAC7B,SAAS,CAAE,KAAK,CACjB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,AAAC,CAC3B,MAAM,CAAE,CAAC,CACT,cAAc,CAAE,CAAC,CAClB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,AAAA,kBAAkB,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,AAAA,kBAAkB,AAAC,CACtE,aAAa,CAAE,GAAG,CAClB,KAAK,CTCC,IAAO,CSAb,MAAM,CAAE,GAAG,CAAC,KAAK,CTMX,OAAO,CSLb,MAAM,CAAE,IAAI,CACZ,OAAO,CAAE,QAAQ,CACjB,KAAK,CAAE,iBAAiB,CACzB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,AAAA,kBAAkB,AAAC,CACnC,OAAO,CAAE,SAAS,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,AAAA,kBAAkB,CAAA,AAAA,QAAC,AAAA,EAAW,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,AAAA,kBAAkB,CAAA,AAAA,QAAC,AAAA,CAAU,CAC1F,UAAU,CTJJ,OAAO,CSKb,KAAK,CTJE,OAAO,CSKd,MAAM,CAAE,GAAG,CAAC,KAAK,CTNX,OAAO,CSOd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,4BAA4B,AAAC,CACrC,UAAU,CAAE,IAAI,CAChB,KAAK,CAAE,iBAAiB,CACzB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,AAAA,kBAAkB,AAAA,MAAM,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,AAAA,kBAAkB,AAAA,MAAM,AAAC,CACl
 F,YAAY,CTOD,OAAO,CSNnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,oBAAoB,AAAC,CAC7B,OAAO,CAAE,IAAI,CACd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,sBAAsB,AAAC,CAC/B,SAAS,CAAE,IAAI,CACf,KAAK,CT9BC,IAAO,CS+Bb,WAAW,CAAE,GAAG,CACjB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,sBAAsB,AAAC,CAC/B,GAAG,CAAE,IAAI,CACT,IAAI,CAAE,IAAI,CACV,WAAW,CAAE,MAAM,CACnB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CACvB,KAAK,CAAE,iBAAiB,CACzB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,AAAA,YAAY,CAAC,sBAAsB,AAAC,CAC/D,SAAS,CAAE,iBAAiB,CAAC,iBAAiB,CAAC,WAAW,CAC3D,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,yBAAyB,AAAA,4BAA4B,CAAC,2BAA2B,AAAC,CAC1F,SAAS,CAAE,iBAAiB,CAAC,iBAAiB,CAAC,WAAU,CAC1D,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,yBAAyB,CAAC,gCAAgC,AAAA,iBAAiB,CAAC,mCAAmC,CAAC,2BAA2B,AAAC,CACpJ,SAAS,CAAE,iBAAiB,CAAC,iBAAiB,CAAC,WAAU,CAC1D,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,AAAC,CACtB,GAAG,CAAE,GAAG,CACR,IAAI,CAAE,IAAI,CACV,WAAW,CAAE,eAAe,CAC7B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,AAAA,kBAAkB,CAAA,AAAA,QAAC
 ,AAAA,CAAU,CAClD,OAAO,CAAE,CAAC,CACX,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,CAAC,8BAA8B,AAAA,OAAO,AAAC,CACvD,OAAO,CAAE,OAAO,CAChB,OAAO,CAAE,YAAY,CACrB,WAAW,CAAE,WAAW,CACxB,KAAK,CAAE,KAAK,CACZ,MAAM,CAAE,iBAAiB,CACzB,KAAK,CTvEC,IAAO,CSwEd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,SAAS,AAAC,CAClB,KAAK,CT3EC,IAAO,CS4Ed,ACzFD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,cAAc,AAAC,CACvB,SAAS,CAAE,IAAI,CACf,KAAK,CVSC,IAAO,CURb,aAAa,CAAE,GAAG,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,AAAC,CACtB,WAAW,CAAE,IAAI,CACjB,YAAY,CAAE,IAAI,CAClB,aAAa,CAAE,IAAI,CACpB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,iBAAiB,AAAC,CAC1B,YAAY,CAAE,IAAI,CAClB,aAAa,CAAE,IAAI,CACnB,WAAW,CAAE,IAAI,CACjB,aAAa,CAAE,GAAG,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,gBAAgB,AAAC,CACzB,KAAK,CVRC,IAAO,CUSb,OAAO,CAAE,mBAAmB,CAC5B,MAAM,CAAE,GAAG,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,CAAC,gBAAgB,AAAA,WAAW,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,AAAA,WAAW,AAAC,CACtG,OAAO,CAAE,kBAAkB,CAC3B,MAA
 M,CAAE,GAAG,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,sBAAsB,AAAC,CAC/B,QAAQ,CAAE,QAAQ,CAClB,KAAK,CAAE,GAAG,CACV,OAAO,CAAE,CAAC,CACX,ACpCD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,wBAAwB,AAAC,CAC/B,gBAAgB,CXeZ,IAAO,CWdd,ACAD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,AAAC,CACd,KAAK,CZwCM,OAAO,CYvClB,SAAS,CAAE,IAAI,CACf,eAAe,CAAE,IAAI,CACrB,WAAW,CAAE,IAAI,CACjB,MAAM,CAAE,OAAO,CAChB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,AAAA,MAAM,AAAC,CACpB,eAAe,CAAE,SAAS,CAC3B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,KAAK,CAAC,SAAS,AAAC,CACxB,KAAK,CZFC,IAAO,CYGb,eAAe,CAAE,IAAI,CACtB,ACjBD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,sBAAsB,AAAC,CAC/B,MAAM,CAAE,IAAI,CACb,ACFD,AAAA,eAAe,CAAC,IAAI,AAAC,CACnB,OAAO,CAAE,IAAI,CACd,ACAD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,YAAY,AAAC,CACrB,UAAU,CfWJ,IAAO,CeVb,OAAO,CAAE,EAAE,CACX,UAAU,CAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,OAAqB,CACxD,ACJD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,AAAC,CAC5B,SAAS,CAAE,IAAI,CACf,KAAK,ChBUC,IAAO,CgBTb,OAAO,CAAE,MAAM,CACf,WA
 AW,CAAE,MAAM,CACnB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CACvB,MAAM,CAAE,IAAI,CACZ,WAAW,CAAE,IAAI,CAClB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,AAAC,CAC9B,KAAK,ChBCC,IAAO,CgBAb,WAAW,CAAE,MAAM,CACpB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,AAAC,CAC3B,MAAM,CAAE,IAAI,CACZ,UAAU,CAAE,cAAc,CAC1B,WAAW,CAAE,cAAc,CAC3B,YAAY,CAAE,cAAc,CAC5B,aAAa,CAAE,GAAG,CAAC,KAAK,ChBNlB,IAAO,CgBOd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,AAAA,SAAS,AAAC,CACpC,gBAAgB,ChBVV,IAAO,CgBWb,MAAM,CAAE,GAAG,CAAC,KAAK,ChBXX,IAAO,CgBYd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,kBAAkB,AAAA,MAAM,AAAC,CACjC,gBAAgB,ChBdV,OAAO,CgBeb,MAAM,CAAE,GAAG,CAAC,KAAK,ChBWN,OAAO,CgBVnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,gBAAgB,AAAC,CAC7C,KAAK,ChBMM,OAAO,CgBLnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,gBAAgB,AAAA,SAAS,AAAC,CACtD,KAAK,ChBhBE,OAAO,CgBiBd,MAAM,CAAE,WAAW,CACpB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,WAAW,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,gBAAgB,CAAE,IAAI,CA
 AA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,kBAAkB,AAAC,CAC1I,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,WAAW,CAAE,CAAC,CACf,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,gBAAgB,AAAA,MAAM,AAAC,CACnD,sBAAsB,CAAE,GAAG,CAC3B,uBAAuB,CAAE,GAAG,CAC7B,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,CAAC,gBAAgB,AAAA,MAAM,CAAA,AAAA,QAAC,AAAA,CAAU,CAC7D,OAAO,CAAE,EAAE,CACZ,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,AAAC,CAC9B,SAAS,CAAE,IAAI,CACf,KAAK,ChB/CC,IAAO,CgBgDb,MAAM,CAAE,IAAI,CACZ,WAAW,CAAE,IAAI,CACjB,OAAO,CAAE,MAAM,CACf,WAAW,CAAE,MAAM,CACnB,aAAa,CAAE,QAAQ,CACvB,QAAQ,CAAE,MAAM,CACjB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,CAAC,YAAY,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,qBAAqB,CAAC,cAAc,AAAC,CAC3F,KAAK,ChB7BM,OAAO,CgB8BlB,SAAS,CAAE,IAAI,CACf,aAAa,CAAE,GAAG,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,AAAC,CACtB,KAAK,ChB/DC,IAAO,CgBgEd,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,CAAC,UAAU,CAAC,iBAAiB,CAAE,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,aAAa,CAAC,UAAU,CAAC,iBAAiB,AAAC,CACzG,KAAK,C
 hBvCM,OAAO,CgBwCnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,YAAY,AAAC,CACrB,SAAS,CAAE,IAAI,CACf,KAAK,ChB1EC,IAAO,CgB2Eb,SAAS,CAAE,KAAK,CAChB,WAAW,CAAE,MAAM,CACnB,QAAQ,CAAE,MAAM,CAChB,aAAa,CAAE,QAAQ,CACvB,SAAS,CAAE,GAAG,CACd,YAAY,CAAE,IAAI,CACnB,AAED,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,GAAG,CAAC,cAAc,AAAC,CAC3B,aAAa,CAAE,GAAG,CAAC,KAAK,ChB9ElB,IAAO,CgB+Eb,YAAY,CAAE,eAAe,CAC7B,WAAW,CAAE,eAAe,CAC7B,ACpGD,AAAA,iBAAiB,AAAC,CAChB,UAAU,CAAE,CAAC,CACb,aAAa,CAAE,IAAI,CACpB,ACHD,AAAA,IAAI,CAAA,AAAA,GAAC,AAAA,EAAK,mBAAmB,AAAC,CAC5B,UAAU,CAAE,OAAO,CACnB,OAAO,CAAE,CAAC,CACV,UAAU,CAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,OAAqB,CAClD,AAED,AAAA,kBAAkB,CAAC,QAAQ,AAAA,SAAS,AAAA,YAAY,AAAA,eAAe,AAAC,CAC9D,SAAS,CAAE,IAAI,CACf,MAAM,CAAE,IAAI,CACZ,KAAK,CAAE,IAAI,CACX,WAAW,CAAE,IAAI,CACjB,KAAK,ClBIC,IAAO,CkBHd,AAED,AAAA,oBAAoB,AAAC,CACnB,SAAS,CAAE,IAAI,CAChB,AAED,AAAA,mBAAmB,AAAC,CAClB,SAAS,CAAE,IAAI,CAChB,AAED,AAAA,mBAAmB,CAAC,CAAC,AAAC,CACpB,SAAS,CAAE,IAAI,CAChB,AAED,AAAA,iBAAiB,AAAC,CAChB,QAAQ,CAAE,QAA
 Q,CAClB,GAAG,CAAE,IAAI,CACT,IAAI,CAAE,IAAI,CACX,AAED,AAAA,mBAAmB,AAAC,CAClB,MAAM,CAAE,eAAe,CACvB,KAAK,CAAE,eAAe,CACtB,WAAW,CAAE,eAAe,CAC5B,KAAK,CAAE,IAAI,CACX,QAAQ,CAAE,mBAAmB,CAC7B,GAAG,CAAE,IAAI,CACV,AAED,AAAA,qBAAqB,AAAC,CACpB,aAAa,CAAE,GAAG,CAClB,YAAY,CAAE,GAAG,CACjB,YAAY,CAAE,KAAK,CACpB"
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/4eee1d77/platform/core/common/styles/fluid-design-system.scss
----------------------------------------------------------------------
diff --git a/platform/core/common/styles/fluid-design-system.scss b/platform/core/common/styles/fluid-design-system.scss
index b04cb46..e28f801 100644
--- a/platform/core/common/styles/fluid-design-system.scss
+++ b/platform/core/common/styles/fluid-design-system.scss
@@ -26,6 +26,7 @@
 @import 'tabs';
 @import 'inputs';
 @import 'panels';
+@import 'progress-bar';
 @import 'links';
 @import 'sideNav';
 @import 'stepper';


[09/19] nifi-fds git commit: [NIFIREG-168] update pull request template

Posted by sc...@apache.org.
[NIFIREG-168] update pull request template


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/fd57eb43
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/fd57eb43
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/fd57eb43

Branch: refs/heads/gh-pages
Commit: fd57eb430b2ce6c4c0c96f73017f93d8caa919b9
Parents: ec42ec1
Author: Scott Aslan <sc...@gmail.com>
Authored: Wed Apr 25 09:30:51 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Wed Apr 25 09:30:51 2018 -0400

----------------------------------------------------------------------
 .github/PULL_REQUEST_TEMPLATE.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/fd57eb43/.github/PULL_REQUEST_TEMPLATE.md
----------------------------------------------------------------------
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 18da8ad..337e726 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -30,7 +30,7 @@ Please ensure that once the PR is submitted, you check travis-ci for build issue
 
 ### Reviewers, please perform the following in order to validate the changes:
 - [ ] Checkout the gh-pages branch.
-- [ ] Edit the package.json file in the root nifi-fds folder and update the nifi-fds package to point to the pull request at git+https://github.com/<user>/<repo>.git#<branch>.
+- [ ] Edit the package.json file in the root nifi-fds folder and update the nifi-fds package in the dependencies section to point to the pull request at git+https://github.com/user/repo.git#branch.
 - [ ] ‘npm install’ in the root nifi-fds folder.
 - [ ] ‘npm install’ in the node_modules/nifi-fds folder.
 - [ ] ‘npm run build’ in the node_modules/nifi-fds folder.


[06/19] nifi-fds git commit: [NIFIREG-168] upgrade to angular v5.2.0, angular-material v5.2.0, covalent v1.0.1

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/package-lock.json
----------------------------------------------------------------------
diff --git a/package-lock.json b/package-lock.json
deleted file mode 100644
index 973c80c..0000000
--- a/package-lock.json
+++ /dev/null
@@ -1,6031 +0,0 @@
-{
-  "name": "nifi-fds",
-  "version": "0.0.1",
-  "lockfileVersion": 1,
-  "requires": true,
-  "dependencies": {
-    "@angular/animations": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-4.4.6.tgz",
-      "integrity": "sha1-+mYYmaik44y3xYPHpcl85l1ZKjU=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/cdk": {
-      "version": "2.0.0-beta.12",
-      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.12.tgz",
-      "integrity": "sha1-OiQ8tiuT9OA5EgunD5ANyeI1Yi4=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/common": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/common/-/common-4.4.6.tgz",
-      "integrity": "sha1-S4FCByTggooOg5uVpV6xp+g5GPI=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/compiler": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.4.6.tgz",
-      "integrity": "sha1-LuH68lt1fh0SiXkHS+f65SmzvCA=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/core": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.4.6.tgz",
-      "integrity": "sha1-EwMf0Q3P5DiHVBmzjyESCVi8I1Q=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/flex-layout": {
-      "version": "2.0.0-beta.9",
-      "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.9.tgz",
-      "integrity": "sha1-PlT4mOgF0LFCbRXmE520FdBO518=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/forms": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.4.6.tgz",
-      "integrity": "sha1-/mSs5CQ1wbgPSQNLfEHOjK8UpEo=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/http": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.4.6.tgz",
-      "integrity": "sha1-CvaAxnEL3AJtlA4iXP0PalwAXQw=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/material": {
-      "version": "2.0.0-beta.12",
-      "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.12.tgz",
-      "integrity": "sha1-cbbQt7AhiR5dDjaIwdS9eMdFf1g=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/platform-browser": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.4.6.tgz",
-      "integrity": "sha1-qYOcVH4bZU+h0kqJeAyLpquNzOA=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/platform-browser-dynamic": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.4.6.tgz",
-      "integrity": "sha1-TT2aanvyzz3kBYphWuBZ7/ZB+jY=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@angular/router": {
-      "version": "4.4.6",
-      "resolved": "https://registry.npmjs.org/@angular/router/-/router-4.4.6.tgz",
-      "integrity": "sha1-D2rSmuD/jSyeo3m9MgRHIXt+yGY=",
-      "requires": {
-        "tslib": "1.9.0"
-      }
-    },
-    "@types/jasmine": {
-      "version": "2.8.6",
-      "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
-      "integrity": "sha512-clg9raJTY0EOo5pVZKX3ZlMjlYzVU73L71q5OV1jhE2Uezb7oF94jh4CvwrW6wInquQAdhOxJz5VDF2TLUGmmA==",
-      "dev": true
-    },
-    "@types/node": {
-      "version": "6.0.103",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.103.tgz",
-      "integrity": "sha512-EHU5B9OlENiGEziLiC2XjhjBoVTiX6s4JwZrMHkLQzrzOA0bfZKfcT3fZaalgujcrs2O97VgKaxqguwV+12UJQ==",
-      "dev": true
-    },
-    "@types/q": {
-      "version": "0.0.32",
-      "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
-      "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
-      "dev": true
-    },
-    "@types/selenium-webdriver": {
-      "version": "2.53.37",
-      "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.37.tgz",
-      "integrity": "sha1-NPdDwg5TrnEA7ekIcP3lVN8kR/g=",
-      "dev": true
-    },
-    "abbrev": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
-      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
-      "dev": true
-    },
-    "accepts": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
-      "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
-      "dev": true,
-      "requires": {
-        "mime-types": "2.1.18",
-        "negotiator": "0.6.1"
-      }
-    },
-    "adm-zip": {
-      "version": "0.4.7",
-      "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.7.tgz",
-      "integrity": "sha1-hgbCy/HEJs6MjsABdER/1Jtur8E=",
-      "dev": true
-    },
-    "after": {
-      "version": "0.8.2",
-      "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
-      "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
-      "dev": true
-    },
-    "agent-base": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz",
-      "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=",
-      "dev": true,
-      "requires": {
-        "extend": "3.0.1",
-        "semver": "5.0.3"
-      },
-      "dependencies": {
-        "semver": {
-          "version": "5.0.3",
-          "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz",
-          "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=",
-          "dev": true
-        }
-      }
-    },
-    "ajv": {
-      "version": "5.5.2",
-      "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
-      "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
-      "dev": true,
-      "requires": {
-        "co": "4.6.0",
-        "fast-deep-equal": "1.1.0",
-        "fast-json-stable-stringify": "2.0.0",
-        "json-schema-traverse": "0.3.1"
-      }
-    },
-    "align-text": {
-      "version": "0.1.4",
-      "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
-      "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
-      "dev": true,
-      "requires": {
-        "kind-of": "3.2.2",
-        "longest": "1.0.1",
-        "repeat-string": "1.6.1"
-      }
-    },
-    "amdefine": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
-      "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
-      "dev": true
-    },
-    "ansi-regex": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
-      "dev": true
-    },
-    "ansi-styles": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
-      "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
-      "dev": true
-    },
-    "anymatch": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
-      "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
-      "dev": true,
-      "requires": {
-        "micromatch": "2.3.11",
-        "normalize-path": "2.1.1"
-      }
-    },
-    "aproba": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
-      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
-      "dev": true
-    },
-    "archiver": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz",
-      "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=",
-      "dev": true,
-      "requires": {
-        "archiver-utils": "1.3.0",
-        "async": "2.6.0",
-        "buffer-crc32": "0.2.13",
-        "glob": "7.1.2",
-        "lodash": "4.17.5",
-        "readable-stream": "2.3.5",
-        "tar-stream": "1.5.5",
-        "walkdir": "0.0.11",
-        "zip-stream": "1.2.0"
-      },
-      "dependencies": {
-        "async": {
-          "version": "2.6.0",
-          "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
-          "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
-          "dev": true,
-          "requires": {
-            "lodash": "4.17.5"
-          }
-        },
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
-          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "archiver-utils": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz",
-      "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=",
-      "dev": true,
-      "requires": {
-        "glob": "7.1.2",
-        "graceful-fs": "4.1.11",
-        "lazystream": "1.0.0",
-        "lodash": "4.17.5",
-        "normalize-path": "2.1.1",
-        "readable-stream": "2.3.5"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
-          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "are-we-there-yet": {
-      "version": "1.1.4",
-      "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
-      "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
-      "dev": true,
-      "requires": {
-        "delegates": "1.0.0",
-        "readable-stream": "2.3.5"
-      }
-    },
-    "argparse": {
-      "version": "0.1.16",
-      "resolved": "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz",
-      "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=",
-      "dev": true,
-      "requires": {
-        "underscore": "1.7.0",
-        "underscore.string": "2.4.0"
-      },
-      "dependencies": {
-        "underscore.string": {
-          "version": "2.4.0",
-          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz",
-          "integrity": "sha1-jN2PusTi0uoefi6Al8QvRCKA+Fs=",
-          "dev": true
-        }
-      }
-    },
-    "arr-diff": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
-      "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
-      "dev": true,
-      "requires": {
-        "arr-flatten": "1.1.0"
-      }
-    },
-    "arr-flatten": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
-      "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
-      "dev": true
-    },
-    "array-differ": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
-      "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=",
-      "dev": true
-    },
-    "array-find-index": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
-      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
-      "dev": true
-    },
-    "array-slice": {
-      "version": "0.2.3",
-      "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
-      "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
-      "dev": true
-    },
-    "array-union": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
-      "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
-      "dev": true,
-      "requires": {
-        "array-uniq": "1.0.3"
-      }
-    },
-    "array-uniq": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
-      "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
-      "dev": true
-    },
-    "array-unique": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
-      "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
-      "dev": true
-    },
-    "arraybuffer.slice": {
-      "version": "0.0.6",
-      "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
-      "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=",
-      "dev": true
-    },
-    "arrify": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
-      "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
-      "dev": true
-    },
-    "asn1": {
-      "version": "0.2.3",
-      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
-      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
-      "dev": true
-    },
-    "assert-plus": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
-      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
-      "dev": true
-    },
-    "async": {
-      "version": "0.1.22",
-      "resolved": "https://registry.npmjs.org/async/-/async-0.1.22.tgz",
-      "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
-      "dev": true
-    },
-    "async-each": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
-      "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
-      "dev": true
-    },
-    "async-foreach": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
-      "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
-      "dev": true
-    },
-    "asynckit": {
-      "version": "0.4.0",
-      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
-      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
-      "dev": true
-    },
-    "aws-sign2": {
-      "version": "0.7.0",
-      "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
-      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
-      "dev": true
-    },
-    "aws4": {
-      "version": "1.6.0",
-      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
-      "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
-      "dev": true
-    },
-    "backo2": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
-      "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
-      "dev": true
-    },
-    "balanced-match": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
-      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
-      "dev": true
-    },
-    "base64-arraybuffer": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
-      "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
-      "dev": true
-    },
-    "base64id": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
-      "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
-      "dev": true
-    },
-    "bcrypt-pbkdf": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
-      "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "tweetnacl": "0.14.5"
-      }
-    },
-    "better-assert": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
-      "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
-      "dev": true,
-      "requires": {
-        "callsite": "1.0.0"
-      }
-    },
-    "binary-extensions": {
-      "version": "1.11.0",
-      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
-      "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
-      "dev": true
-    },
-    "bl": {
-      "version": "1.2.2",
-      "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
-      "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
-      "dev": true,
-      "requires": {
-        "readable-stream": "2.3.5",
-        "safe-buffer": "5.1.1"
-      }
-    },
-    "blob": {
-      "version": "0.0.4",
-      "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
-      "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=",
-      "dev": true
-    },
-    "block-stream": {
-      "version": "0.0.9",
-      "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
-      "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
-      "dev": true,
-      "requires": {
-        "inherits": "2.0.3"
-      }
-    },
-    "bluebird": {
-      "version": "3.5.1",
-      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
-      "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
-      "dev": true
-    },
-    "body-parser": {
-      "version": "1.18.2",
-      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
-      "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
-      "dev": true,
-      "requires": {
-        "bytes": "3.0.0",
-        "content-type": "1.0.4",
-        "debug": "2.6.9",
-        "depd": "1.1.2",
-        "http-errors": "1.6.2",
-        "iconv-lite": "0.4.19",
-        "on-finished": "2.3.0",
-        "qs": "6.5.1",
-        "raw-body": "2.3.2",
-        "type-is": "1.6.16"
-      },
-      "dependencies": {
-        "iconv-lite": {
-          "version": "0.4.19",
-          "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
-          "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
-          "dev": true
-        }
-      }
-    },
-    "boom": {
-      "version": "4.3.1",
-      "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
-      "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
-      "dev": true,
-      "requires": {
-        "hoek": "4.2.1"
-      }
-    },
-    "brace-expansion": {
-      "version": "1.1.11",
-      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
-      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
-      "dev": true,
-      "requires": {
-        "balanced-match": "1.0.0",
-        "concat-map": "0.0.1"
-      }
-    },
-    "braces": {
-      "version": "1.8.5",
-      "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
-      "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
-      "dev": true,
-      "requires": {
-        "expand-range": "1.8.2",
-        "preserve": "0.2.0",
-        "repeat-element": "1.1.2"
-      }
-    },
-    "buffer-crc32": {
-      "version": "0.2.13",
-      "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
-      "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
-      "dev": true
-    },
-    "builtin-modules": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
-      "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
-      "dev": true
-    },
-    "bytes": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
-      "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
-      "dev": true
-    },
-    "callsite": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
-      "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
-      "dev": true
-    },
-    "camelcase": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
-      "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
-      "dev": true
-    },
-    "camelcase-keys": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
-      "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
-      "dev": true,
-      "requires": {
-        "camelcase": "2.1.1",
-        "map-obj": "1.0.1"
-      }
-    },
-    "caseless": {
-      "version": "0.12.0",
-      "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
-      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
-      "dev": true
-    },
-    "center-align": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
-      "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "align-text": "0.1.4",
-        "lazy-cache": "1.0.4"
-      }
-    },
-    "chalk": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
-      "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
-      "dev": true,
-      "requires": {
-        "ansi-styles": "2.2.1",
-        "escape-string-regexp": "1.0.5",
-        "has-ansi": "2.0.0",
-        "strip-ansi": "3.0.1",
-        "supports-color": "2.0.0"
-      }
-    },
-    "chokidar": {
-      "version": "1.7.0",
-      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
-      "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
-      "dev": true,
-      "requires": {
-        "anymatch": "1.3.2",
-        "async-each": "1.0.1",
-        "fsevents": "1.1.3",
-        "glob-parent": "2.0.0",
-        "inherits": "2.0.3",
-        "is-binary-path": "1.0.1",
-        "is-glob": "2.0.1",
-        "path-is-absolute": "1.0.1",
-        "readdirp": "2.1.0"
-      }
-    },
-    "chownr": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
-      "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
-      "dev": true,
-      "optional": true
-    },
-    "cliui": {
-      "version": "3.2.0",
-      "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
-      "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
-      "dev": true,
-      "requires": {
-        "string-width": "1.0.2",
-        "strip-ansi": "3.0.1",
-        "wrap-ansi": "2.1.0"
-      }
-    },
-    "co": {
-      "version": "4.6.0",
-      "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
-      "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
-      "dev": true
-    },
-    "code-point-at": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
-      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
-      "dev": true
-    },
-    "coffee-script": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz",
-      "integrity": "sha1-FQ1rTLUiiUNp7+1qIQHCC8f0pPQ=",
-      "dev": true
-    },
-    "colors": {
-      "version": "0.6.2",
-      "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
-      "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
-      "dev": true
-    },
-    "combine-lists": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz",
-      "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
-      "dev": true,
-      "requires": {
-        "lodash": "4.17.5"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
-          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
-          "dev": true
-        }
-      }
-    },
-    "combined-stream": {
-      "version": "1.0.6",
-      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
-      "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
-      "dev": true,
-      "requires": {
-        "delayed-stream": "1.0.0"
-      }
-    },
-    "commander": {
-      "version": "2.15.1",
-      "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
-      "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==",
-      "dev": true
-    },
-    "component-bind": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
-      "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
-      "dev": true
-    },
-    "component-emitter": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
-      "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",
-      "dev": true
-    },
-    "component-inherit": {
-      "version": "0.0.3",
-      "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
-      "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
-      "dev": true
-    },
-    "compress-commons": {
-      "version": "1.2.2",
-      "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
-      "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
-      "dev": true,
-      "requires": {
-        "buffer-crc32": "0.2.13",
-        "crc32-stream": "2.0.0",
-        "normalize-path": "2.1.1",
-        "readable-stream": "2.3.5"
-      }
-    },
-    "concat-map": {
-      "version": "0.0.1",
-      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-      "dev": true
-    },
-    "connect": {
-      "version": "3.6.6",
-      "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
-      "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
-      "dev": true,
-      "requires": {
-        "debug": "2.6.9",
-        "finalhandler": "1.1.0",
-        "parseurl": "1.3.2",
-        "utils-merge": "1.0.1"
-      }
-    },
-    "console-control-strings": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
-      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
-      "dev": true
-    },
-    "content-type": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
-      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
-      "dev": true
-    },
-    "cookie": {
-      "version": "0.3.1",
-      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
-      "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
-      "dev": true
-    },
-    "core-js": {
-      "version": "2.5.4",
-      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.4.tgz",
-      "integrity": "sha1-8si/GB8qgLkvNgEhQpzmOi8K6uA=",
-      "dev": true
-    },
-    "core-util-is": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
-      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
-      "dev": true
-    },
-    "crc": {
-      "version": "3.5.0",
-      "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz",
-      "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=",
-      "dev": true
-    },
-    "crc32-stream": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
-      "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
-      "dev": true,
-      "requires": {
-        "crc": "3.5.0",
-        "readable-stream": "2.3.5"
-      }
-    },
-    "cross-spawn": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
-      "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
-      "dev": true,
-      "requires": {
-        "lru-cache": "4.1.2",
-        "which": "1.3.0"
-      },
-      "dependencies": {
-        "lru-cache": {
-          "version": "4.1.2",
-          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
-          "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==",
-          "dev": true,
-          "requires": {
-            "pseudomap": "1.0.2",
-            "yallist": "2.1.2"
-          }
-        }
-      }
-    },
-    "cryptiles": {
-      "version": "3.1.2",
-      "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
-      "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
-      "dev": true,
-      "requires": {
-        "boom": "5.2.0"
-      },
-      "dependencies": {
-        "boom": {
-          "version": "5.2.0",
-          "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
-          "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
-          "dev": true,
-          "requires": {
-            "hoek": "4.2.1"
-          }
-        }
-      }
-    },
-    "currently-unhandled": {
-      "version": "0.4.1",
-      "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
-      "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
-      "dev": true,
-      "requires": {
-        "array-find-index": "1.0.2"
-      }
-    },
-    "custom-event": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
-      "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
-      "dev": true
-    },
-    "dashdash": {
-      "version": "1.14.1",
-      "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
-      "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
-      "dev": true,
-      "requires": {
-        "assert-plus": "1.0.0"
-      }
-    },
-    "dateformat": {
-      "version": "1.0.2-1.2.3",
-      "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz",
-      "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
-      "dev": true
-    },
-    "debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
-      "requires": {
-        "ms": "2.0.0"
-      }
-    },
-    "decamelize": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
-      "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
-      "dev": true
-    },
-    "decompress-response": {
-      "version": "3.3.0",
-      "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
-      "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "mimic-response": "1.0.0"
-      }
-    },
-    "deep-extend": {
-      "version": "0.4.2",
-      "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
-      "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
-      "dev": true,
-      "optional": true
-    },
-    "deep-is": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-      "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
-      "dev": true
-    },
-    "del": {
-      "version": "2.2.2",
-      "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
-      "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
-      "dev": true,
-      "requires": {
-        "globby": "5.0.0",
-        "is-path-cwd": "1.0.0",
-        "is-path-in-cwd": "1.0.1",
-        "object-assign": "4.1.1",
-        "pify": "2.3.0",
-        "pinkie-promise": "2.0.1",
-        "rimraf": "2.6.2"
-      }
-    },
-    "delayed-stream": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
-      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
-      "dev": true
-    },
-    "delegates": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
-      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
-      "dev": true
-    },
-    "depd": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
-      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
-      "dev": true
-    },
-    "detect-libc": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-0.2.0.tgz",
-      "integrity": "sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U=",
-      "dev": true,
-      "optional": true
-    },
-    "di": {
-      "version": "0.0.1",
-      "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
-      "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
-      "dev": true
-    },
-    "dom-serialize": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
-      "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
-      "dev": true,
-      "requires": {
-        "custom-event": "1.0.1",
-        "ent": "2.2.0",
-        "extend": "3.0.1",
-        "void-elements": "2.0.1"
-      }
-    },
-    "each-async": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz",
-      "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=",
-      "dev": true,
-      "requires": {
-        "onetime": "1.1.0",
-        "set-immediate-shim": "1.0.1"
-      }
-    },
-    "ecc-jsbn": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
-      "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "jsbn": "0.1.1"
-      }
-    },
-    "ee-first": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
-      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
-      "dev": true
-    },
-    "encodeurl": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
-      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
-      "dev": true
-    },
-    "end-of-stream": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
-      "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
-      "dev": true,
-      "requires": {
-        "once": "1.4.0"
-      }
-    },
-    "engine.io": {
-      "version": "1.8.3",
-      "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",
-      "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=",
-      "dev": true,
-      "requires": {
-        "accepts": "1.3.3",
-        "base64id": "1.0.0",
-        "cookie": "0.3.1",
-        "debug": "2.3.3",
-        "engine.io-parser": "1.3.2",
-        "ws": "1.1.2"
-      },
-      "dependencies": {
-        "debug": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
-          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
-          "dev": true,
-          "requires": {
-            "ms": "0.7.2"
-          }
-        },
-        "ms": {
-          "version": "0.7.2",
-          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
-          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
-          "dev": true
-        }
-      }
-    },
-    "engine.io-client": {
-      "version": "1.8.3",
-      "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
-      "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
-      "dev": true,
-      "requires": {
-        "component-emitter": "1.2.1",
-        "component-inherit": "0.0.3",
-        "debug": "2.3.3",
-        "engine.io-parser": "1.3.2",
-        "has-cors": "1.1.0",
-        "indexof": "0.0.1",
-        "parsejson": "0.0.3",
-        "parseqs": "0.0.5",
-        "parseuri": "0.0.5",
-        "ws": "1.1.2",
-        "xmlhttprequest-ssl": "1.5.3",
-        "yeast": "0.1.2"
-      },
-      "dependencies": {
-        "component-emitter": {
-          "version": "1.2.1",
-          "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
-          "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
-          "dev": true
-        },
-        "debug": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
-          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
-          "dev": true,
-          "requires": {
-            "ms": "0.7.2"
-          }
-        },
-        "ms": {
-          "version": "0.7.2",
-          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
-          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
-          "dev": true
-        }
-      }
-    },
-    "engine.io-parser": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",
-      "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=",
-      "dev": true,
-      "requires": {
-        "after": "0.8.2",
-        "arraybuffer.slice": "0.0.6",
-        "base64-arraybuffer": "0.1.5",
-        "blob": "0.0.4",
-        "has-binary": "0.1.7",
-        "wtf-8": "1.0.0"
-      }
-    },
-    "ent": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
-      "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
-      "dev": true
-    },
-    "error-ex": {
-      "version": "1.3.1",
-      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
-      "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
-      "dev": true,
-      "requires": {
-        "is-arrayish": "0.2.1"
-      }
-    },
-    "escape-html": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
-      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
-      "dev": true
-    },
-    "escape-string-regexp": {
-      "version": "1.0.5",
-      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
-      "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
-      "dev": true
-    },
-    "escodegen": {
-      "version": "1.8.1",
-      "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz",
-      "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=",
-      "dev": true,
-      "requires": {
-        "esprima": "2.7.3",
-        "estraverse": "1.9.3",
-        "esutils": "2.0.2",
-        "optionator": "0.8.2",
-        "source-map": "0.2.0"
-      },
-      "dependencies": {
-        "esprima": {
-          "version": "2.7.3",
-          "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
-          "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
-          "dev": true
-        },
-        "source-map": {
-          "version": "0.2.0",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
-          "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "amdefine": "1.0.1"
-          }
-        }
-      }
-    },
-    "esprima": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
-      "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
-      "dev": true
-    },
-    "estraverse": {
-      "version": "1.9.3",
-      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
-      "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
-      "dev": true
-    },
-    "esutils": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
-      "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
-      "dev": true
-    },
-    "eventemitter2": {
-      "version": "0.4.14",
-      "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
-      "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
-      "dev": true
-    },
-    "eventemitter3": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz",
-      "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=",
-      "dev": true
-    },
-    "exit": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
-      "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
-      "dev": true
-    },
-    "expand-braces": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz",
-      "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=",
-      "dev": true,
-      "requires": {
-        "array-slice": "0.2.3",
-        "array-unique": "0.2.1",
-        "braces": "0.1.5"
-      },
-      "dependencies": {
-        "braces": {
-          "version": "0.1.5",
-          "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz",
-          "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=",
-          "dev": true,
-          "requires": {
-            "expand-range": "0.1.1"
-          }
-        },
-        "expand-range": {
-          "version": "0.1.1",
-          "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz",
-          "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=",
-          "dev": true,
-          "requires": {
-            "is-number": "0.1.1",
-            "repeat-string": "0.2.2"
-          }
-        },
-        "is-number": {
-          "version": "0.1.1",
-          "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz",
-          "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=",
-          "dev": true
-        },
-        "repeat-string": {
-          "version": "0.2.2",
-          "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz",
-          "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=",
-          "dev": true
-        }
-      }
-    },
-    "expand-brackets": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
-      "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
-      "dev": true,
-      "requires": {
-        "is-posix-bracket": "0.1.1"
-      }
-    },
-    "expand-range": {
-      "version": "1.8.2",
-      "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
-      "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
-      "dev": true,
-      "requires": {
-        "fill-range": "2.2.3"
-      }
-    },
-    "expand-template": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz",
-      "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==",
-      "dev": true,
-      "optional": true
-    },
-    "extend": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
-      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
-      "dev": true
-    },
-    "extglob": {
-      "version": "0.3.2",
-      "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
-      "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
-      "dev": true,
-      "requires": {
-        "is-extglob": "1.0.0"
-      }
-    },
-    "extsprintf": {
-      "version": "1.3.0",
-      "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
-      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
-      "dev": true
-    },
-    "fast-deep-equal": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
-      "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
-      "dev": true
-    },
-    "fast-json-stable-stringify": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
-      "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
-      "dev": true
-    },
-    "fast-levenshtein": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
-      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
-      "dev": true
-    },
-    "filename-regex": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
-      "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
-      "dev": true
-    },
-    "fill-range": {
-      "version": "2.2.3",
-      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
-      "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
-      "dev": true,
-      "requires": {
-        "is-number": "2.1.0",
-        "isobject": "2.1.0",
-        "randomatic": "1.1.7",
-        "repeat-element": "1.1.2",
-        "repeat-string": "1.6.1"
-      }
-    },
-    "finalhandler": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
-      "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
-      "dev": true,
-      "requires": {
-        "debug": "2.6.9",
-        "encodeurl": "1.0.2",
-        "escape-html": "1.0.3",
-        "on-finished": "2.3.0",
-        "parseurl": "1.3.2",
-        "statuses": "1.3.1",
-        "unpipe": "1.0.0"
-      },
-      "dependencies": {
-        "statuses": {
-          "version": "1.3.1",
-          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
-          "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
-          "dev": true
-        }
-      }
-    },
-    "find-up": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
-      "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
-      "dev": true,
-      "requires": {
-        "path-exists": "2.1.0",
-        "pinkie-promise": "2.0.1"
-      }
-    },
-    "findup-sync": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz",
-      "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=",
-      "dev": true,
-      "requires": {
-        "glob": "3.2.11",
-        "lodash": "2.4.2"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "2.4.2",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
-          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
-          "dev": true
-        }
-      }
-    },
-    "for-in": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
-      "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
-      "dev": true
-    },
-    "for-own": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
-      "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
-      "dev": true,
-      "requires": {
-        "for-in": "1.0.2"
-      }
-    },
-    "forever-agent": {
-      "version": "0.6.1",
-      "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
-      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
-      "dev": true
-    },
-    "form-data": {
-      "version": "2.3.2",
-      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
-      "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
-      "dev": true,
-      "requires": {
-        "asynckit": "0.4.0",
-        "combined-stream": "1.0.6",
-        "mime-types": "2.1.18"
-      }
-    },
-    "fs-access": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
-      "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
-      "dev": true,
-      "requires": {
-        "null-check": "1.0.0"
-      }
-    },
-    "fs.realpath": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
-      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
-      "dev": true
-    },
-    "fsevents": {
-      "version": "1.1.3",
-      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz",
-      "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "nan": "2.10.0",
-        "node-pre-gyp": "0.6.39"
-      },
-      "dependencies": {
-        "abbrev": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "ajv": {
-          "version": "4.11.8",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "co": "4.6.0",
-            "json-stable-stringify": "1.0.1"
-          }
-        },
-        "ansi-regex": {
-          "version": "2.1.1",
-          "bundled": true,
-          "dev": true
-        },
-        "aproba": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "are-we-there-yet": {
-          "version": "1.1.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "delegates": "1.0.0",
-            "readable-stream": "2.2.9"
-          }
-        },
-        "asn1": {
-          "version": "0.2.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "assert-plus": {
-          "version": "0.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "asynckit": {
-          "version": "0.4.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "aws-sign2": {
-          "version": "0.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "aws4": {
-          "version": "1.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "balanced-match": {
-          "version": "0.4.2",
-          "bundled": true,
-          "dev": true
-        },
-        "bcrypt-pbkdf": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "tweetnacl": "0.14.5"
-          }
-        },
-        "block-stream": {
-          "version": "0.0.9",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "inherits": "2.0.3"
-          }
-        },
-        "boom": {
-          "version": "2.10.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "hoek": "2.16.3"
-          }
-        },
-        "brace-expansion": {
-          "version": "1.1.7",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "balanced-match": "0.4.2",
-            "concat-map": "0.0.1"
-          }
-        },
-        "buffer-shims": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "caseless": {
-          "version": "0.12.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "co": {
-          "version": "4.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "code-point-at": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true
-        },
-        "combined-stream": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "delayed-stream": "1.0.0"
-          }
-        },
-        "concat-map": {
-          "version": "0.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "console-control-strings": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true
-        },
-        "core-util-is": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "cryptiles": {
-          "version": "2.0.5",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "boom": "2.10.1"
-          }
-        },
-        "dashdash": {
-          "version": "1.14.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "1.0.0"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "debug": {
-          "version": "2.6.8",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ms": "2.0.0"
-          }
-        },
-        "deep-extend": {
-          "version": "0.4.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "delayed-stream": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "delegates": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "detect-libc": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "ecc-jsbn": {
-          "version": "0.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsbn": "0.1.1"
-          }
-        },
-        "extend": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "extsprintf": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "forever-agent": {
-          "version": "0.6.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "form-data": {
-          "version": "2.1.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "asynckit": "0.4.0",
-            "combined-stream": "1.0.5",
-            "mime-types": "2.1.15"
-          }
-        },
-        "fs.realpath": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "fstream": {
-          "version": "1.0.11",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "graceful-fs": "4.1.11",
-            "inherits": "2.0.3",
-            "mkdirp": "0.5.1",
-            "rimraf": "2.6.1"
-          }
-        },
-        "fstream-ignore": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "fstream": "1.0.11",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4"
-          }
-        },
-        "gauge": {
-          "version": "2.7.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "aproba": "1.1.1",
-            "console-control-strings": "1.1.0",
-            "has-unicode": "2.0.1",
-            "object-assign": "4.1.1",
-            "signal-exit": "3.0.2",
-            "string-width": "1.0.2",
-            "strip-ansi": "3.0.1",
-            "wide-align": "1.1.2"
-          }
-        },
-        "getpass": {
-          "version": "0.1.7",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "1.0.0"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "glob": {
-          "version": "7.1.2",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "graceful-fs": {
-          "version": "4.1.11",
-          "bundled": true,
-          "dev": true
-        },
-        "har-schema": {
-          "version": "1.0.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "har-validator": {
-          "version": "4.2.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ajv": "4.11.8",
-            "har-schema": "1.0.5"
-          }
-        },
-        "has-unicode": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "hawk": {
-          "version": "3.1.3",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "boom": "2.10.1",
-            "cryptiles": "2.0.5",
-            "hoek": "2.16.3",
-            "sntp": "1.0.9"
-          }
-        },
-        "hoek": {
-          "version": "2.16.3",
-          "bundled": true,
-          "dev": true
-        },
-        "http-signature": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "0.2.0",
-            "jsprim": "1.4.0",
-            "sshpk": "1.13.0"
-          }
-        },
-        "inflight": {
-          "version": "1.0.6",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "once": "1.4.0",
-            "wrappy": "1.0.2"
-          }
-        },
-        "inherits": {
-          "version": "2.0.3",
-          "bundled": true,
-          "dev": true
-        },
-        "ini": {
-          "version": "1.3.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "is-fullwidth-code-point": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "number-is-nan": "1.0.1"
-          }
-        },
-        "is-typedarray": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "isarray": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true
-        },
-        "isstream": {
-          "version": "0.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "jodid25519": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsbn": "0.1.1"
-          }
-        },
-        "jsbn": {
-          "version": "0.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "json-schema": {
-          "version": "0.2.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "json-stable-stringify": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "jsonify": "0.0.0"
-          }
-        },
-        "json-stringify-safe": {
-          "version": "5.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "jsonify": {
-          "version": "0.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "jsprim": {
-          "version": "1.4.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "assert-plus": "1.0.0",
-            "extsprintf": "1.0.2",
-            "json-schema": "0.2.3",
-            "verror": "1.3.6"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "mime-db": {
-          "version": "1.27.0",
-          "bundled": true,
-          "dev": true
-        },
-        "mime-types": {
-          "version": "2.1.15",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "mime-db": "1.27.0"
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.7"
-          }
-        },
-        "minimist": {
-          "version": "0.0.8",
-          "bundled": true,
-          "dev": true
-        },
-        "mkdirp": {
-          "version": "0.5.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "minimist": "0.0.8"
-          }
-        },
-        "ms": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "node-pre-gyp": {
-          "version": "0.6.39",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "detect-libc": "1.0.2",
-            "hawk": "3.1.3",
-            "mkdirp": "0.5.1",
-            "nopt": "4.0.1",
-            "npmlog": "4.1.0",
-            "rc": "1.2.1",
-            "request": "2.81.0",
-            "rimraf": "2.6.1",
-            "semver": "5.3.0",
-            "tar": "2.2.1",
-            "tar-pack": "3.4.0"
-          }
-        },
-        "nopt": {
-          "version": "4.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "abbrev": "1.1.0",
-            "osenv": "0.1.4"
-          }
-        },
-        "npmlog": {
-          "version": "4.1.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "are-we-there-yet": "1.1.4",
-            "console-control-strings": "1.1.0",
-            "gauge": "2.7.4",
-            "set-blocking": "2.0.0"
-          }
-        },
-        "number-is-nan": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "oauth-sign": {
-          "version": "0.8.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "object-assign": {
-          "version": "4.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "once": {
-          "version": "1.4.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "wrappy": "1.0.2"
-          }
-        },
-        "os-homedir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "os-tmpdir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "osenv": {
-          "version": "0.1.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "os-homedir": "1.0.2",
-            "os-tmpdir": "1.0.2"
-          }
-        },
-        "path-is-absolute": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "performance-now": {
-          "version": "0.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "process-nextick-args": {
-          "version": "1.0.7",
-          "bundled": true,
-          "dev": true
-        },
-        "punycode": {
-          "version": "1.4.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "qs": {
-          "version": "6.4.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "rc": {
-          "version": "1.2.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "deep-extend": "0.4.2",
-            "ini": "1.3.4",
-            "minimist": "1.2.0",
-            "strip-json-comments": "2.0.1"
-          },
-          "dependencies": {
-            "minimist": {
-              "version": "1.2.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "readable-stream": {
-          "version": "2.2.9",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "buffer-shims": "1.0.0",
-            "core-util-is": "1.0.2",
-            "inherits": "2.0.3",
-            "isarray": "1.0.0",
-            "process-nextick-args": "1.0.7",
-            "string_decoder": "1.0.1",
-            "util-deprecate": "1.0.2"
-          }
-        },
-        "request": {
-          "version": "2.81.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "aws-sign2": "0.6.0",
-            "aws4": "1.6.0",
-            "caseless": "0.12.0",
-            "combined-stream": "1.0.5",
-            "extend": "3.0.1",
-            "forever-agent": "0.6.1",
-            "form-data": "2.1.4",
-            "har-validator": "4.2.1",
-            "hawk": "3.1.3",
-            "http-signature": "1.1.1",
-            "is-typedarray": "1.0.0",
-            "isstream": "0.1.2",
-            "json-stringify-safe": "5.0.1",
-            "mime-types": "2.1.15",
-            "oauth-sign": "0.8.2",
-            "performance-now": "0.2.0",
-            "qs": "6.4.0",
-            "safe-buffer": "5.0.1",
-            "stringstream": "0.0.5",
-            "tough-cookie": "2.3.2",
-            "tunnel-agent": "0.6.0",
-            "uuid": "3.0.1"
-          }
-        },
-        "rimraf": {
-          "version": "2.6.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "glob": "7.1.2"
-          }
-        },
-        "safe-buffer": {
-          "version": "5.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "semver": {
-          "version": "5.3.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "set-blocking": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "signal-exit": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "sntp": {
-          "version": "1.0.9",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "hoek": "2.16.3"
-          }
-        },
-        "sshpk": {
-          "version": "1.13.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "asn1": "0.2.3",
-            "assert-plus": "1.0.0",
-            "bcrypt-pbkdf": "1.0.1",
-            "dashdash": "1.14.1",
-            "ecc-jsbn": "0.1.1",
-            "getpass": "0.1.7",
-            "jodid25519": "1.0.2",
-            "jsbn": "0.1.1",
-            "tweetnacl": "0.14.5"
-          },
-          "dependencies": {
-            "assert-plus": {
-              "version": "1.0.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "string-width": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "code-point-at": "1.1.0",
-            "is-fullwidth-code-point": "1.0.0",
-            "strip-ansi": "3.0.1"
-          }
-        },
-        "string_decoder": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "safe-buffer": "5.0.1"
-          }
-        },
-        "stringstream": {
-          "version": "0.0.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "strip-ansi": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "ansi-regex": "2.1.1"
-          }
-        },
-        "strip-json-comments": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "tar": {
-          "version": "2.2.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "block-stream": "0.0.9",
-            "fstream": "1.0.11",
-            "inherits": "2.0.3"
-          }
-        },
-        "tar-pack": {
-          "version": "3.4.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "debug": "2.6.8",
-            "fstream": "1.0.11",
-            "fstream-ignore": "1.0.5",
-            "once": "1.4.0",
-            "readable-stream": "2.2.9",
-            "rimraf": "2.6.1",
-            "tar": "2.2.1",
-            "uid-number": "0.0.6"
-          }
-        },
-        "tough-cookie": {
-          "version": "2.3.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "punycode": "1.4.1"
-          }
-        },
-        "tunnel-agent": {
-          "version": "0.6.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "safe-buffer": "5.0.1"
-          }
-        },
-        "tweetnacl": {
-          "version": "0.14.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "uid-number": {
-          "version": "0.0.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "util-deprecate": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "uuid": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "verror": {
-          "version": "1.3.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "extsprintf": "1.0.2"
-          }
-        },
-        "wide-align": {
-          "version": "1.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "string-width": "1.0.2"
-          }
-        },
-        "wrappy": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        }
-      }
-    },
-    "fstream": {
-      "version": "1.0.11",
-      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
-      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
-      "dev": true,
-      "requires": {
-        "graceful-fs": "4.1.11",
-        "inherits": "2.0.3",
-        "mkdirp": "0.5.1",
-        "rimraf": "2.6.2"
-      }
-    },
-    "gauge": {
-      "version": "2.7.4",
-      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
-      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
-      "dev": true,
-      "requires": {
-        "aproba": "1.2.0",
-        "console-control-strings": "1.1.0",
-        "has-unicode": "2.0.1",
-        "object-assign": "4.1.1",
-        "signal-exit": "3.0.2",
-        "string-width": "1.0.2",
-        "strip-ansi": "3.0.1",
-        "wide-align": "1.1.2"
-      }
-    },
-    "gaze": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
-      "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
-      "dev": true,
-      "requires": {
-        "globule": "1.2.0"
-      }
-    },
-    "generate-function": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
-      "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
-      "dev": true
-    },
-    "generate-object-property": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
-      "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
-      "dev": true,
-      "requires": {
-        "is-property": "1.0.2"
-      }
-    },
-    "get-caller-file": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
-      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
-      "dev": true
-    },
-    "get-stdin": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-      "dev": true
-    },
-    "getobject": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
-      "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
-      "dev": true
-    },
-    "getpass": {
-      "version": "0.1.7",
-      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
-      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
-      "dev": true,
-      "requires": {
-        "assert-plus": "1.0.0"
-      }
-    },
-    "github-from-package": {
-      "version": "0.0.0",
-      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
-      "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=",
-      "dev": true,
-      "optional": true
-    },
-    "glob": {
-      "version": "3.2.11",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
-      "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
-      "dev": true,
-      "requires": {
-        "inherits": "2.0.3",
-        "minimatch": "0.3.0"
-      }
-    },
-    "glob-base": {
-      "version": "0.3.0",
-      "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
-      "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
-      "dev": true,
-      "requires": {
-        "glob-parent": "2.0.0",
-        "is-glob": "2.0.1"
-      }
-    },
-    "glob-parent": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
-      "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
-      "dev": true,
-      "requires": {
-        "is-glob": "2.0.1"
-      }
-    },
-    "globby": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
-      "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
-      "dev": true,
-      "requires": {
-        "array-union": "1.0.2",
-        "arrify": "1.0.1",
-        "glob": "7.1.2",
-        "object-assign": "4.1.1",
-        "pify": "2.3.0",
-        "pinkie-promise": "2.0.1"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "globule": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
-      "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
-      "dev": true,
-      "requires": {
-        "glob": "7.1.2",
-        "lodash": "4.17.5",
-        "minimatch": "3.0.4"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
-          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "graceful-fs": {
-      "version": "4.1.11",
-      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
-      "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
-      "dev": true
-    },
-    "grunt": {
-      "version": "0.4.5",
-      "resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
-      "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=",
-      "dev": true,
-      "requires": {
-        "async": "0.1.22",
-        "coffee-script": "1.3.3",
-        "colors": "0.6.2",
-        "dateformat": "1.0.2-1.2.3",
-        "eventemitter2": "0.4.14",
-        "exit": "0.1.2",
-        "findup-sync": "0.1.3",
-        "getobject": "0.1.0",
-        "glob": "3.1.21",
-        "grunt-legacy-log": "0.1.3",
-        "grunt-legacy-util": "0.2.0",
-        "hooker": "0.2.3",
-        "iconv-lite": "0.2.11",
-        "js-yaml": "2.0.5",
-        "lodash": "0.9.2",
-        "minimatch": "0.2.14",
-        "nopt": "1.0.10",
-        "rimraf": "2.2.8",
-        "underscore.string": "2.2.1",
-        "which": "1.0.9"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "3.1.21",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
-          "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
-          "dev": true,
-          "requires": {
-            "graceful-fs": "1.2.3",
-            "inherits": "1.0.2",
-            "minimatch": "0.2.14"
-          }
-        },
-        "graceful-fs": {
-          "version": "1.2.3",
-          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
-          "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
-          "dev": true
-        },
-        "inherits": {
-          "version": "1.0.2",
-          "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
-          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "0.2.14",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
-          "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
-          "dev": true,
-          "requires": {
-            "lru-cache": "2.7.3",
-            "sigmund": "1.0.1"
-          }
-        },
-        "nopt": {
-          "version": "1.0.10",
-          "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
-          "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
-          "dev": true,
-          "requires": {
-            "abbrev": "1.1.1"
-          }
-        },
-        "rimraf": {
-          "version": "2.2.8",
-          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
-          "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
-          "dev": true
-        },
-        "which": {
-          "version": "1.0.9",
-          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
-          "dev": true
-        }
-      }
-    },
-    "grunt-bump": {
-      "version": "0.8.0",
-      "resolved": "https://registry.npmjs.org/grunt-bump/-/grunt-bump-0.8.0.tgz",
-      "integrity": "sha1-0//gzzzws44JYHt4U49CpTHq/lU=",
-      "dev": true,
-      "requires": {
-        "semver": "5.5.0"
-      }
-    },
-    "grunt-cli": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz",
-      "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
-      "dev": true,
-      "requires": {
-        "findup-sync": "0.3.0",
-        "grunt-known-options": "1.1.0",
-        "nopt": "3.0.6",
-        "resolve": "1.1.7"
-      },
-      "dependencies": {
-        "findup-sync": {
-          "version": "0.3.0",
-          "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz",
-          "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
-          "dev": true,
-          "requires": {
-            "glob": "5.0.15"
-          }
-        },
-        "glob": {
-          "version": "5.0.15",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
-          "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
-          "dev": true,
-          "requires": {
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "grunt-contrib-compress": {
-      "version": "1.4.3",
-      "resolved": "https://registry.npmjs.org/grunt-contrib-compress/-/grunt-contrib-compress-1.4.3.tgz",
-      "integrity": "sha1-Ac7/ucY39S5wgfRjdQmD0KOw+nM=",
-      "dev": true,
-      "requires": {
-        "archiver": "1.3.0",
-        "chalk": "1.1.3",
-        "iltorb": "1.3.10",
-        "lodash": "4.17.5",
-        "pretty-bytes": "4.0.2",
-        "stream-buffers": "2.2.0"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "4.17.5",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
-          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
-          "dev": true
-        }
-      }
-    },
-    "grunt-known-options": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.0.tgz",
-      "integrity": "sha1-pCdO6zL6dl2lp6OxcSYXzjsUQUk=",
-      "dev": true
-    },
-    "grunt-legacy-log": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz",
-      "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=",
-      "dev": true,
-      "requires": {
-        "colors": "0.6.2",
-        "grunt-legacy-log-utils": "0.1.1",
-        "hooker": "0.2.3",
-        "lodash": "2.4.2",
-        "underscore.string": "2.3.3"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "2.4.2",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
-          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
-          "dev": true
-        },
-        "underscore.string": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
-          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
-          "dev": true
-        }
-      }
-    },
-    "grunt-legacy-log-utils": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz",
-      "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=",
-      "dev": true,
-      "requires": {
-        "colors": "0.6.2",
-        "lodash": "2.4.2",
-        "underscore.string": "2.3.3"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "2.4.2",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
-          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
-          "dev": true
-        },
-        "underscore.string": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
-          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
-          "dev": true
-        }
-      }
-    },
-    "grunt-legacy-util": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz",
-      "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=",
-      "dev": true,
-      "requires": {
-        "async": "0.1.22",
-        "exit": "0.1.2",
-        "getobject": "0.1.0",
-        "hooker": "0.2.3",
-        "lodash": "0.9.2",
-        "underscore.string": "2.2.1",
-        "which": "1.0.9"
-      },
-      "dependencies": {
-        "which": {
-          "version": "1.0.9",
-          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
-          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
-          "dev": true
-        }
-      }
-    },

<TRUNCATED>

[11/19] nifi-fds git commit: [NIFIREG-168] add package-lock.json, update version number to indicate current version, update pr template to simplify reviewer process

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/544c0e4a/package-lock.json
----------------------------------------------------------------------
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..4a44e34
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,5757 @@
+{
+  "name": "nifi-fds",
+  "version": "0.0.0",
+  "lockfileVersion": 1,
+  "requires": true,
+  "dependencies": {
+    "@angular/animations": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.2.0.tgz",
+      "integrity": "sha512-JLR42YHiJppO4ruAkFxgbzghUDtHkXHkKPM8udd2qyt16T7e1OX7EEOrrmldUu59CC56tZnJ/32p4SrYmxyBSA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/cdk": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-5.2.0.tgz",
+      "integrity": "sha1-Q2j2dJ6RXNzHXTJa4z/bP4WogQg=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/common": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.0.tgz",
+      "integrity": "sha512-yMFn2isC7/XOs56/2Kzzbb1AASHiwipAPOVFtKe7TdZQClO8fJXwCnk326rzr615+CG0eSBNQWeiFGyWN2riBA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/compiler": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.0.tgz",
+      "integrity": "sha512-RfYa4ESgjGX0T0ob/Xz00IF7nd2xZkoyRy6oKgL82q42uzB3xZUDMrFNgeGxAUs3H22IkL46/5SSPOMOTMZ0NA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/core": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.0.tgz",
+      "integrity": "sha512-s2ne45DguNUubhC1YgybGECC4Tyx3G4EZCntUiRMDWWkmKXSK+6dgHMesyDo8R5Oat8VfN4Anf8l3JHS1He8kg==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/flex-layout": {
+      "version": "5.0.0-beta.14",
+      "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-5.0.0-beta.14.tgz",
+      "integrity": "sha512-/fsOqXFUKdCmzzZx0bZ0HCYwcV+BSbVuIgOhaCrZKHj2rqiWKKPgj1ErU3HMT68bBBGag0u0skTdLGtrBorRIA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/forms": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.2.0.tgz",
+      "integrity": "sha512-g1/SF9lY0ZwzJ0w4NXbFsTGGEuUdgtaZny8DmkaqtmA7idby3FW398X0tv25KQfVYKtL+p9Jp1Y8EI0CvrIsvw==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/http": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.0.tgz",
+      "integrity": "sha512-V5Cl24dP3rCXTTQvDc0TIKoWqBRAa0DWAQbtr7iuDAt5a1vPGdKz5K1sEiiV6ziwX6gzjiwHjUvL+B+WbIUrQA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/material": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/material/-/material-5.2.0.tgz",
+      "integrity": "sha1-hZnjFJ1ISH4+kulB+p3FUXbjoM8=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/platform-browser": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.0.tgz",
+      "integrity": "sha512-c6cR15MfopPwGZ097HdRuAi9+R9BhA3bRRFpP2HmrSSB/BW4ZNovUYwB2QUMSYbd9s0lYTtnavqGm6DKcyF2QA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/platform-browser-dynamic": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz",
+      "integrity": "sha512-xG1eNoi8sm4Jcly2y98r5mqYVe3XV8sUJCtOhvGBYtvt4dKEQ5tOns6fWQ0nUbl6Vv3Y0xgGUS1JCtfut3DuaQ==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/router": {
+      "version": "5.2.0",
+      "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.2.0.tgz",
+      "integrity": "sha512-VXDXtp2A1GQEUEhXg0ZzqHdTUERLgDSo3/Mmpzt+dgLMKlXDSCykcm4gINwE5VQLGD1zQvDFCCRv3seGRNfrqA==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@covalent/core": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/@covalent/core/-/core-1.0.0.tgz",
+      "integrity": "sha512-qUGL6CtyHNa3ttKGrvuQY0lJyQR9Dxp04vP0vrXmYrKapVbfYZ82qwJ2+PrX1EcWAQ6b/B2giFe0Q83ePin04g==",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@types/jasmine": {
+      "version": "2.8.6",
+      "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
+      "integrity": "sha512-clg9raJTY0EOo5pVZKX3ZlMjlYzVU73L71q5OV1jhE2Uezb7oF94jh4CvwrW6wInquQAdhOxJz5VDF2TLUGmmA==",
+      "dev": true
+    },
+    "@types/node": {
+      "version": "6.0.106",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.106.tgz",
+      "integrity": "sha512-U4Zv5fx7letrisRv6HgSSPSY00FZM4NMIkilt+IAExvQLuNa6jYVwCKcnSs2NqTN4+KDl9PskvcCiMce9iePCA==",
+      "dev": true
+    },
+    "@types/q": {
+      "version": "0.0.32",
+      "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
+      "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
+      "dev": true
+    },
+    "@types/selenium-webdriver": {
+      "version": "2.53.37",
+      "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.37.tgz",
+      "integrity": "sha1-NPdDwg5TrnEA7ekIcP3lVN8kR/g=",
+      "dev": true
+    },
+    "abbrev": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
+      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
+      "dev": true
+    },
+    "accepts": {
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
+      "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
+      "dev": true,
+      "requires": {
+        "mime-types": "2.1.18",
+        "negotiator": "0.6.1"
+      }
+    },
+    "adm-zip": {
+      "version": "0.4.7",
+      "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.7.tgz",
+      "integrity": "sha1-hgbCy/HEJs6MjsABdER/1Jtur8E=",
+      "dev": true
+    },
+    "after": {
+      "version": "0.8.2",
+      "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
+      "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
+      "dev": true
+    },
+    "agent-base": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz",
+      "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=",
+      "dev": true,
+      "requires": {
+        "extend": "3.0.1",
+        "semver": "5.0.3"
+      },
+      "dependencies": {
+        "semver": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz",
+          "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=",
+          "dev": true
+        }
+      }
+    },
+    "ajv": {
+      "version": "5.5.2",
+      "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
+      "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
+      "dev": true,
+      "requires": {
+        "co": "4.6.0",
+        "fast-deep-equal": "1.1.0",
+        "fast-json-stable-stringify": "2.0.0",
+        "json-schema-traverse": "0.3.1"
+      }
+    },
+    "align-text": {
+      "version": "0.1.4",
+      "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
+      "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
+      "dev": true,
+      "requires": {
+        "kind-of": "3.2.2",
+        "longest": "1.0.1",
+        "repeat-string": "1.6.1"
+      }
+    },
+    "amdefine": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
+      "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
+      "dev": true
+    },
+    "ansi-regex": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+      "dev": true
+    },
+    "ansi-styles": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+      "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+      "dev": true
+    },
+    "anymatch": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
+      "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
+      "dev": true,
+      "requires": {
+        "micromatch": "2.3.11",
+        "normalize-path": "2.1.1"
+      }
+    },
+    "aproba": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
+      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
+      "dev": true
+    },
+    "archiver": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz",
+      "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=",
+      "dev": true,
+      "requires": {
+        "archiver-utils": "1.3.0",
+        "async": "2.6.0",
+        "buffer-crc32": "0.2.13",
+        "glob": "7.1.2",
+        "lodash": "4.17.10",
+        "readable-stream": "2.3.6",
+        "tar-stream": "1.5.5",
+        "walkdir": "0.0.11",
+        "zip-stream": "1.2.0"
+      },
+      "dependencies": {
+        "async": {
+          "version": "2.6.0",
+          "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
+          "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
+          "dev": true,
+          "requires": {
+            "lodash": "4.17.10"
+          }
+        },
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "archiver-utils": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz",
+      "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=",
+      "dev": true,
+      "requires": {
+        "glob": "7.1.2",
+        "graceful-fs": "4.1.11",
+        "lazystream": "1.0.0",
+        "lodash": "4.17.10",
+        "normalize-path": "2.1.1",
+        "readable-stream": "2.3.6"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        },
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "are-we-there-yet": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
+      "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
+      "dev": true,
+      "requires": {
+        "delegates": "1.0.0",
+        "readable-stream": "2.3.6"
+      }
+    },
+    "argparse": {
+      "version": "0.1.16",
+      "resolved": "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz",
+      "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=",
+      "dev": true,
+      "requires": {
+        "underscore": "1.7.0",
+        "underscore.string": "2.4.0"
+      },
+      "dependencies": {
+        "underscore.string": {
+          "version": "2.4.0",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz",
+          "integrity": "sha1-jN2PusTi0uoefi6Al8QvRCKA+Fs=",
+          "dev": true
+        }
+      }
+    },
+    "arr-diff": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+      "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+      "dev": true,
+      "requires": {
+        "arr-flatten": "1.1.0"
+      }
+    },
+    "arr-flatten": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+      "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+      "dev": true
+    },
+    "array-differ": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
+      "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=",
+      "dev": true
+    },
+    "array-find-index": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+      "dev": true
+    },
+    "array-slice": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
+      "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
+      "dev": true
+    },
+    "array-union": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
+      "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
+      "dev": true,
+      "requires": {
+        "array-uniq": "1.0.3"
+      }
+    },
+    "array-uniq": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
+      "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
+      "dev": true
+    },
+    "array-unique": {
+      "version": "0.2.1",
+      "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+      "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+      "dev": true
+    },
+    "arraybuffer.slice": {
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
+      "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=",
+      "dev": true
+    },
+    "arrify": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
+      "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
+      "dev": true
+    },
+    "asn1": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
+      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
+      "dev": true
+    },
+    "assert-plus": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+      "dev": true
+    },
+    "async": {
+      "version": "0.1.22",
+      "resolved": "https://registry.npmjs.org/async/-/async-0.1.22.tgz",
+      "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
+      "dev": true
+    },
+    "async-each": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
+      "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
+      "dev": true
+    },
+    "async-foreach": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
+      "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
+      "dev": true
+    },
+    "asynckit": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
+      "dev": true
+    },
+    "aws-sign2": {
+      "version": "0.7.0",
+      "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
+      "dev": true
+    },
+    "aws4": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz",
+      "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
+      "dev": true
+    },
+    "backo2": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
+      "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
+      "dev": true
+    },
+    "balanced-match": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
+      "dev": true
+    },
+    "base64-arraybuffer": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
+      "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
+      "dev": true
+    },
+    "base64id": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
+      "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
+      "dev": true
+    },
+    "bcrypt-pbkdf": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
+      "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "tweetnacl": "0.14.5"
+      }
+    },
+    "better-assert": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
+      "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
+      "dev": true,
+      "requires": {
+        "callsite": "1.0.0"
+      }
+    },
+    "binary-extensions": {
+      "version": "1.11.0",
+      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
+      "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
+      "dev": true
+    },
+    "bl": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
+      "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
+      "dev": true,
+      "requires": {
+        "readable-stream": "2.3.6",
+        "safe-buffer": "5.1.1"
+      }
+    },
+    "blob": {
+      "version": "0.0.4",
+      "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
+      "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=",
+      "dev": true
+    },
+    "block-stream": {
+      "version": "0.0.9",
+      "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
+      "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
+      "dev": true,
+      "requires": {
+        "inherits": "2.0.3"
+      }
+    },
+    "bluebird": {
+      "version": "3.5.1",
+      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
+      "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
+      "dev": true
+    },
+    "body-parser": {
+      "version": "1.18.2",
+      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
+      "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
+      "dev": true,
+      "requires": {
+        "bytes": "3.0.0",
+        "content-type": "1.0.4",
+        "debug": "2.6.9",
+        "depd": "1.1.2",
+        "http-errors": "1.6.3",
+        "iconv-lite": "0.4.19",
+        "on-finished": "2.3.0",
+        "qs": "6.5.1",
+        "raw-body": "2.3.2",
+        "type-is": "1.6.16"
+      },
+      "dependencies": {
+        "iconv-lite": {
+          "version": "0.4.19",
+          "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
+          "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
+          "dev": true
+        }
+      }
+    },
+    "boom": {
+      "version": "4.3.1",
+      "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
+      "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
+      "dev": true,
+      "requires": {
+        "hoek": "4.2.1"
+      }
+    },
+    "brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "requires": {
+        "balanced-match": "1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "braces": {
+      "version": "1.8.5",
+      "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+      "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+      "dev": true,
+      "requires": {
+        "expand-range": "1.8.2",
+        "preserve": "0.2.0",
+        "repeat-element": "1.1.2"
+      }
+    },
+    "buffer-crc32": {
+      "version": "0.2.13",
+      "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+      "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
+      "dev": true
+    },
+    "builtin-modules": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
+      "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
+      "dev": true
+    },
+    "bytes": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+      "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
+      "dev": true
+    },
+    "callsite": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
+      "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
+      "dev": true
+    },
+    "camelcase": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+      "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+      "dev": true
+    },
+    "camelcase-keys": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+      "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+      "dev": true,
+      "requires": {
+        "camelcase": "2.1.1",
+        "map-obj": "1.0.1"
+      }
+    },
+    "caseless": {
+      "version": "0.12.0",
+      "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
+      "dev": true
+    },
+    "center-align": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
+      "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "align-text": "0.1.4",
+        "lazy-cache": "1.0.4"
+      }
+    },
+    "chalk": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+      "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+      "dev": true,
+      "requires": {
+        "ansi-styles": "2.2.1",
+        "escape-string-regexp": "1.0.5",
+        "has-ansi": "2.0.0",
+        "strip-ansi": "3.0.1",
+        "supports-color": "2.0.0"
+      }
+    },
+    "chokidar": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
+      "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
+      "dev": true,
+      "requires": {
+        "anymatch": "1.3.2",
+        "async-each": "1.0.1",
+        "fsevents": "1.2.2",
+        "glob-parent": "2.0.0",
+        "inherits": "2.0.3",
+        "is-binary-path": "1.0.1",
+        "is-glob": "2.0.1",
+        "path-is-absolute": "1.0.1",
+        "readdirp": "2.1.0"
+      }
+    },
+    "chownr": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
+      "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
+      "dev": true,
+      "optional": true
+    },
+    "cliui": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
+      "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
+      "dev": true,
+      "requires": {
+        "string-width": "1.0.2",
+        "strip-ansi": "3.0.1",
+        "wrap-ansi": "2.1.0"
+      }
+    },
+    "co": {
+      "version": "4.6.0",
+      "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
+      "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
+      "dev": true
+    },
+    "code-point-at": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
+      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
+      "dev": true
+    },
+    "coffee-script": {
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz",
+      "integrity": "sha1-FQ1rTLUiiUNp7+1qIQHCC8f0pPQ=",
+      "dev": true
+    },
+    "colors": {
+      "version": "0.6.2",
+      "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
+      "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
+      "dev": true
+    },
+    "combine-lists": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz",
+      "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
+      "dev": true,
+      "requires": {
+        "lodash": "4.17.10"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+          "dev": true
+        }
+      }
+    },
+    "combined-stream": {
+      "version": "1.0.6",
+      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
+      "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
+      "dev": true,
+      "requires": {
+        "delayed-stream": "1.0.0"
+      }
+    },
+    "commander": {
+      "version": "2.15.1",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
+      "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==",
+      "dev": true
+    },
+    "component-bind": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
+      "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
+      "dev": true
+    },
+    "component-emitter": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
+      "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",
+      "dev": true
+    },
+    "component-inherit": {
+      "version": "0.0.3",
+      "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
+      "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
+      "dev": true
+    },
+    "compress-commons": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
+      "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
+      "dev": true,
+      "requires": {
+        "buffer-crc32": "0.2.13",
+        "crc32-stream": "2.0.0",
+        "normalize-path": "2.1.1",
+        "readable-stream": "2.3.6"
+      }
+    },
+    "concat-map": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+      "dev": true
+    },
+    "connect": {
+      "version": "3.6.6",
+      "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
+      "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
+      "dev": true,
+      "requires": {
+        "debug": "2.6.9",
+        "finalhandler": "1.1.0",
+        "parseurl": "1.3.2",
+        "utils-merge": "1.0.1"
+      }
+    },
+    "console-control-strings": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
+      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
+      "dev": true
+    },
+    "content-type": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
+      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+      "dev": true
+    },
+    "cookie": {
+      "version": "0.3.1",
+      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
+      "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
+      "dev": true
+    },
+    "core-js": {
+      "version": "2.5.5",
+      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.5.tgz",
+      "integrity": "sha1-sU3ek2xkDAV5prUMq8wTLdYSfjs=",
+      "dev": true
+    },
+    "core-util-is": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+      "dev": true
+    },
+    "crc": {
+      "version": "3.5.0",
+      "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz",
+      "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=",
+      "dev": true
+    },
+    "crc32-stream": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
+      "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
+      "dev": true,
+      "requires": {
+        "crc": "3.5.0",
+        "readable-stream": "2.3.6"
+      }
+    },
+    "cross-spawn": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
+      "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
+      "dev": true,
+      "requires": {
+        "lru-cache": "4.1.2",
+        "which": "1.3.0"
+      },
+      "dependencies": {
+        "lru-cache": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
+          "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==",
+          "dev": true,
+          "requires": {
+            "pseudomap": "1.0.2",
+            "yallist": "2.1.2"
+          }
+        },
+        "which": {
+          "version": "1.3.0",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.3.0.tgz",
+          "integrity": "sha512-xcJpopdamTuY5duC/KnTTNBraPK54YwpenP4lzxU8H91GudWpFv38u0CKjclE1Wi2EH2EDz5LRcHcKbCIzqGyg==",
+          "dev": true,
+          "requires": {
+            "isexe": "2.0.0"
+          }
+        }
+      }
+    },
+    "cryptiles": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
+      "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
+      "dev": true,
+      "requires": {
+        "boom": "5.2.0"
+      },
+      "dependencies": {
+        "boom": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
+          "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
+          "dev": true,
+          "requires": {
+            "hoek": "4.2.1"
+          }
+        }
+      }
+    },
+    "currently-unhandled": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+      "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+      "dev": true,
+      "requires": {
+        "array-find-index": "1.0.2"
+      }
+    },
+    "custom-event": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
+      "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
+      "dev": true
+    },
+    "dashdash": {
+      "version": "1.14.1",
+      "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+      "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+      "dev": true,
+      "requires": {
+        "assert-plus": "1.0.0"
+      }
+    },
+    "dateformat": {
+      "version": "1.0.2-1.2.3",
+      "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz",
+      "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
+      "dev": true
+    },
+    "debug": {
+      "version": "2.6.9",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+      "dev": true,
+      "requires": {
+        "ms": "2.0.0"
+      }
+    },
+    "decamelize": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+      "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+      "dev": true
+    },
+    "decompress-response": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
+      "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "mimic-response": "1.0.0"
+      }
+    },
+    "deep-extend": {
+      "version": "0.4.2",
+      "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
+      "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
+      "dev": true,
+      "optional": true
+    },
+    "deep-is": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
+      "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
+      "dev": true
+    },
+    "del": {
+      "version": "2.2.2",
+      "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
+      "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
+      "dev": true,
+      "requires": {
+        "globby": "5.0.0",
+        "is-path-cwd": "1.0.0",
+        "is-path-in-cwd": "1.0.1",
+        "object-assign": "4.1.1",
+        "pify": "2.3.0",
+        "pinkie-promise": "2.0.1",
+        "rimraf": "2.2.8"
+      }
+    },
+    "delayed-stream": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
+      "dev": true
+    },
+    "delegates": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
+      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
+      "dev": true
+    },
+    "depd": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+      "dev": true
+    },
+    "detect-libc": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-0.2.0.tgz",
+      "integrity": "sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U=",
+      "dev": true,
+      "optional": true
+    },
+    "di": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
+      "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
+      "dev": true
+    },
+    "dom-serialize": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
+      "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
+      "dev": true,
+      "requires": {
+        "custom-event": "1.0.1",
+        "ent": "2.2.0",
+        "extend": "3.0.1",
+        "void-elements": "2.0.1"
+      }
+    },
+    "each-async": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz",
+      "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=",
+      "dev": true,
+      "requires": {
+        "onetime": "1.1.0",
+        "set-immediate-shim": "1.0.1"
+      }
+    },
+    "ecc-jsbn": {
+      "version": "0.1.1",
+      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
+      "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "jsbn": "0.1.1"
+      }
+    },
+    "ee-first": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
+      "dev": true
+    },
+    "encodeurl": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
+      "dev": true
+    },
+    "end-of-stream": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
+      "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
+      "dev": true,
+      "requires": {
+        "once": "1.4.0"
+      }
+    },
+    "engine.io": {
+      "version": "1.8.3",
+      "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",
+      "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=",
+      "dev": true,
+      "requires": {
+        "accepts": "1.3.3",
+        "base64id": "1.0.0",
+        "cookie": "0.3.1",
+        "debug": "2.3.3",
+        "engine.io-parser": "1.3.2",
+        "ws": "1.1.2"
+      },
+      "dependencies": {
+        "debug": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
+          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
+          "dev": true,
+          "requires": {
+            "ms": "0.7.2"
+          }
+        },
+        "ms": {
+          "version": "0.7.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
+          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
+          "dev": true
+        }
+      }
+    },
+    "engine.io-client": {
+      "version": "1.8.3",
+      "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
+      "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
+      "dev": true,
+      "requires": {
+        "component-emitter": "1.2.1",
+        "component-inherit": "0.0.3",
+        "debug": "2.3.3",
+        "engine.io-parser": "1.3.2",
+        "has-cors": "1.1.0",
+        "indexof": "0.0.1",
+        "parsejson": "0.0.3",
+        "parseqs": "0.0.5",
+        "parseuri": "0.0.5",
+        "ws": "1.1.2",
+        "xmlhttprequest-ssl": "1.5.3",
+        "yeast": "0.1.2"
+      },
+      "dependencies": {
+        "component-emitter": {
+          "version": "1.2.1",
+          "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+          "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
+          "dev": true
+        },
+        "debug": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
+          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
+          "dev": true,
+          "requires": {
+            "ms": "0.7.2"
+          }
+        },
+        "ms": {
+          "version": "0.7.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
+          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
+          "dev": true
+        }
+      }
+    },
+    "engine.io-parser": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",
+      "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=",
+      "dev": true,
+      "requires": {
+        "after": "0.8.2",
+        "arraybuffer.slice": "0.0.6",
+        "base64-arraybuffer": "0.1.5",
+        "blob": "0.0.4",
+        "has-binary": "0.1.7",
+        "wtf-8": "1.0.0"
+      }
+    },
+    "ent": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
+      "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
+      "dev": true
+    },
+    "error-ex": {
+      "version": "1.3.1",
+      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
+      "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
+      "dev": true,
+      "requires": {
+        "is-arrayish": "0.2.1"
+      }
+    },
+    "escape-html": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
+      "dev": true
+    },
+    "escape-string-regexp": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+      "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+      "dev": true
+    },
+    "escodegen": {
+      "version": "1.8.1",
+      "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz",
+      "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=",
+      "dev": true,
+      "requires": {
+        "esprima": "2.7.3",
+        "estraverse": "1.9.3",
+        "esutils": "2.0.2",
+        "optionator": "0.8.2",
+        "source-map": "0.2.0"
+      },
+      "dependencies": {
+        "esprima": {
+          "version": "2.7.3",
+          "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
+          "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
+          "dev": true
+        },
+        "source-map": {
+          "version": "0.2.0",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
+          "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "amdefine": "1.0.1"
+          }
+        }
+      }
+    },
+    "esprima": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
+      "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
+      "dev": true
+    },
+    "estraverse": {
+      "version": "1.9.3",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
+      "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
+      "dev": true
+    },
+    "esutils": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
+      "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
+      "dev": true
+    },
+    "eventemitter2": {
+      "version": "0.4.14",
+      "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
+      "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
+      "dev": true
+    },
+    "eventemitter3": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.0.1.tgz",
+      "integrity": "sha512-QOCPu979MMWX9XNlfRZoin+Wm+bK1SP7vv3NGUniYwuSJK/+cPA10blMaeRgzg31RvoSFk6FsCDVa4vNryBTGA==",
+      "dev": true
+    },
+    "exit": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+      "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
+      "dev": true
+    },
+    "expand-braces": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz",
+      "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=",
+      "dev": true,
+      "requires": {
+        "array-slice": "0.2.3",
+        "array-unique": "0.2.1",
+        "braces": "0.1.5"
+      },
+      "dependencies": {
+        "braces": {
+          "version": "0.1.5",
+          "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz",
+          "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=",
+          "dev": true,
+          "requires": {
+            "expand-range": "0.1.1"
+          }
+        },
+        "expand-range": {
+          "version": "0.1.1",
+          "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz",
+          "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=",
+          "dev": true,
+          "requires": {
+            "is-number": "0.1.1",
+            "repeat-string": "0.2.2"
+          }
+        },
+        "is-number": {
+          "version": "0.1.1",
+          "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz",
+          "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=",
+          "dev": true
+        },
+        "repeat-string": {
+          "version": "0.2.2",
+          "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz",
+          "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=",
+          "dev": true
+        }
+      }
+    },
+    "expand-brackets": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+      "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+      "dev": true,
+      "requires": {
+        "is-posix-bracket": "0.1.1"
+      }
+    },
+    "expand-range": {
+      "version": "1.8.2",
+      "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
+      "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
+      "dev": true,
+      "requires": {
+        "fill-range": "2.2.3"
+      }
+    },
+    "expand-template": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz",
+      "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==",
+      "dev": true,
+      "optional": true
+    },
+    "extend": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
+      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
+      "dev": true
+    },
+    "extglob": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+      "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+      "dev": true,
+      "requires": {
+        "is-extglob": "1.0.0"
+      }
+    },
+    "extsprintf": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
+      "dev": true
+    },
+    "fast-deep-equal": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+      "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
+      "dev": true
+    },
+    "fast-json-stable-stringify": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
+      "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
+      "dev": true
+    },
+    "fast-levenshtein": {
+      "version": "2.0.6",
+      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
+      "dev": true
+    },
+    "filename-regex": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
+      "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
+      "dev": true
+    },
+    "fill-range": {
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
+      "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
+      "dev": true,
+      "requires": {
+        "is-number": "2.1.0",
+        "isobject": "2.1.0",
+        "randomatic": "1.1.7",
+        "repeat-element": "1.1.2",
+        "repeat-string": "1.6.1"
+      }
+    },
+    "finalhandler": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
+      "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
+      "dev": true,
+      "requires": {
+        "debug": "2.6.9",
+        "encodeurl": "1.0.2",
+        "escape-html": "1.0.3",
+        "on-finished": "2.3.0",
+        "parseurl": "1.3.2",
+        "statuses": "1.3.1",
+        "unpipe": "1.0.0"
+      },
+      "dependencies": {
+        "statuses": {
+          "version": "1.3.1",
+          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
+          "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
+          "dev": true
+        }
+      }
+    },
+    "find-up": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+      "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+      "dev": true,
+      "requires": {
+        "path-exists": "2.1.0",
+        "pinkie-promise": "2.0.1"
+      }
+    },
+    "findup-sync": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz",
+      "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=",
+      "dev": true,
+      "requires": {
+        "glob": "3.2.11",
+        "lodash": "2.4.2"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "3.2.11",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
+          "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
+          "dev": true,
+          "requires": {
+            "inherits": "2.0.3",
+            "minimatch": "0.3.0"
+          }
+        },
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "0.3.0",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.3.0.tgz",
+          "integrity": "sha1-J12O2qxPG7MyZHIInnlJyDlGmd0=",
+          "dev": true,
+          "requires": {
+            "lru-cache": "2.7.3",
+            "sigmund": "1.0.1"
+          }
+        }
+      }
+    },
+    "follow-redirects": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.4.1.tgz",
+      "integrity": "sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==",
+      "dev": true,
+      "requires": {
+        "debug": "3.1.0"
+      },
+      "dependencies": {
+        "debug": {
+          "version": "3.1.0",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
+          "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
+          "dev": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        }
+      }
+    },
+    "for-in": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+      "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
+      "dev": true
+    },
+    "for-own": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
+      "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
+      "dev": true,
+      "requires": {
+        "for-in": "1.0.2"
+      }
+    },
+    "forever-agent": {
+      "version": "0.6.1",
+      "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
+      "dev": true
+    },
+    "form-data": {
+      "version": "2.3.2",
+      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
+      "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
+      "dev": true,
+      "requires": {
+        "asynckit": "0.4.0",
+        "combined-stream": "1.0.6",
+        "mime-types": "2.1.18"
+      }
+    },
+    "fs-access": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
+      "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
+      "dev": true,
+      "requires": {
+        "null-check": "1.0.0"
+      }
+    },
+    "fs.realpath": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+      "dev": true
+    },
+    "fsevents": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.2.tgz",
+      "integrity": "sha512-iownA+hC4uHFp+7gwP/y5SzaiUo7m2vpa0dhpzw8YuKtiZsz7cIXsFbXpLEeBM6WuCQyw1MH4RRe6XI8GFUctQ==",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "nan": "2.10.0",
+        "node-pre-gyp": "0.9.1"
+      },
+      "dependencies": {
+        "abbrev": {
+          "version": "1.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "ansi-regex": {
+          "version": "2.1.1",
+          "bundled": true,
+          "dev": true
+        },
+        "aproba": {
+          "version": "1.2.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "are-we-there-yet": {
+          "version": "1.1.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "delegates": "1.0.0",
+            "readable-stream": "2.3.6"
+          }
+        },
+        "balanced-match": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true
+        },
+        "brace-expansion": {
+          "version": "1.1.11",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "balanced-match": "1.0.0",
+            "concat-map": "0.0.1"
+          }
+        },
+        "chownr": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "code-point-at": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true
+        },
+        "concat-map": {
+          "version": "0.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "console-control-strings": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true
+        },
+        "core-util-is": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "debug": {
+          "version": "2.6.9",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "deep-extend": {
+          "version": "0.4.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "delegates": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "detect-libc": {
+          "version": "1.0.3",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "fs-minipass": {
+          "version": "1.2.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "minipass": "2.2.4"
+          }
+        },
+        "fs.realpath": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "gauge": {
+          "version": "2.7.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "aproba": "1.2.0",
+            "console-control-strings": "1.1.0",
+            "has-unicode": "2.0.1",
+            "object-assign": "4.1.1",
+            "signal-exit": "3.0.2",
+            "string-width": "1.0.2",
+            "strip-ansi": "3.0.1",
+            "wide-align": "1.1.2"
+          }
+        },
+        "glob": {
+          "version": "7.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "has-unicode": {
+          "version": "2.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "iconv-lite": {
+          "version": "0.4.21",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "safer-buffer": "2.1.2"
+          }
+        },
+        "ignore-walk": {
+          "version": "3.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "minimatch": "3.0.4"
+          }
+        },
+        "inflight": {
+          "version": "1.0.6",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "once": "1.4.0",
+            "wrappy": "1.0.2"
+          }
+        },
+        "inherits": {
+          "version": "2.0.3",
+          "bundled": true,
+          "dev": true
+        },
+        "ini": {
+          "version": "1.3.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "number-is-nan": "1.0.1"
+          }
+        },
+        "isarray": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        },
+        "minimist": {
+          "version": "0.0.8",
+          "bundled": true,
+          "dev": true
+        },
+        "minipass": {
+          "version": "2.2.4",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "safe-buffer": "5.1.1",
+            "yallist": "3.0.2"
+          }
+        },
+        "minizlib": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "minipass": "2.2.4"
+          }
+        },
+        "mkdirp": {
+          "version": "0.5.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "minimist": "0.0.8"
+          }
+        },
+        "ms": {
+          "version": "2.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "needle": {
+          "version": "2.2.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "debug": "2.6.9",
+            "iconv-lite": "0.4.21",
+            "sax": "1.2.4"
+          }
+        },
+        "node-pre-gyp": {
+          "version": "0.9.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "detect-libc": "1.0.3",
+            "mkdirp": "0.5.1",
+            "needle": "2.2.0",
+            "nopt": "4.0.1",
+            "npm-packlist": "1.1.10",
+            "npmlog": "4.1.2",
+            "rc": "1.2.6",
+            "rimraf": "2.6.2",
+            "semver": "5.5.0",
+            "tar": "4.4.1"
+          }
+        },
+        "nopt": {
+          "version": "4.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "abbrev": "1.1.1",
+            "osenv": "0.1.5"
+          }
+        },
+        "npm-bundled": {
+          "version": "1.0.3",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "npm-packlist": {
+          "version": "1.1.10",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ignore-walk": "3.0.1",
+            "npm-bundled": "1.0.3"
+          }
+        },
+        "npmlog": {
+          "version": "4.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "are-we-there-yet": "1.1.4",
+            "console-control-strings": "1.1.0",
+            "gauge": "2.7.4",
+            "set-blocking": "2.0.0"
+          }
+        },
+        "number-is-nan": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "object-assign": {
+          "version": "4.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "once": {
+          "version": "1.4.0",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "wrappy": "1.0.2"
+          }
+        },
+        "os-homedir": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "os-tmpdir": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "osenv": {
+          "version": "0.1.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "os-homedir": "1.0.2",
+            "os-tmpdir": "1.0.2"
+          }
+        },
+        "path-is-absolute": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "process-nextick-args": {
+          "version": "2.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "rc": {
+          "version": "1.2.6",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "deep-extend": "0.4.2",
+            "ini": "1.3.5",
+            "minimist": "1.2.0",
+            "strip-json-comments": "2.0.1"
+          },
+          "dependencies": {
+            "minimist": {
+              "version": "1.2.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "readable-stream": {
+          "version": "2.3.6",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "core-util-is": "1.0.2",
+            "inherits": "2.0.3",
+            "isarray": "1.0.0",
+            "process-nextick-args": "2.0.0",
+            "safe-buffer": "5.1.1",
+            "string_decoder": "1.1.1",
+            "util-deprecate": "1.0.2"
+          }
+        },
+        "rimraf": {
+          "version": "2.6.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "glob": "7.1.2"
+          }
+        },
+        "safe-buffer": {
+          "version": "5.1.1",
+          "bundled": true,
+          "dev": true
+        },
+        "safer-buffer": {
+          "version": "2.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "sax": {
+          "version": "1.2.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "semver": {
+          "version": "5.5.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "set-blocking": {
+          "version": "2.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "signal-exit": {
+          "version": "3.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "string-width": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "code-point-at": "1.1.0",
+            "is-fullwidth-code-point": "1.0.0",
+            "strip-ansi": "3.0.1"
+          }
+        },
+        "string_decoder": {
+          "version": "1.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "safe-buffer": "5.1.1"
+          }
+        },
+        "strip-ansi": {
+          "version": "3.0.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "ansi-regex": "2.1.1"
+          }
+        },
+        "strip-json-comments": {
+          "version": "2.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "tar": {
+          "version": "4.4.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "chownr": "1.0.1",
+            "fs-minipass": "1.2.5",
+            "minipass": "2.2.4",
+            "minizlib": "1.1.0",
+            "mkdirp": "0.5.1",
+            "safe-buffer": "5.1.1",
+            "yallist": "3.0.2"
+          }
+        },
+        "util-deprecate": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "wide-align": {
+          "version": "1.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "string-width": "1.0.2"
+          }
+        },
+        "wrappy": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true
+        },
+        "yallist": {
+          "version": "3.0.2",
+          "bundled": true,
+          "dev": true
+        }
+      }
+    },
+    "fstream": {
+      "version": "1.0.11",
+      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
+      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
+      "dev": true,
+      "requires": {
+        "graceful-fs": "4.1.11",
+        "inherits": "2.0.3",
+        "mkdirp": "0.5.1",
+        "rimraf": "2.2.8"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+          "dev": true
+        }
+      }
+    },
+    "gauge": {
+      "version": "2.7.4",
+      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
+      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
+      "dev": true,
+      "requires": {
+        "aproba": "1.2.0",
+        "console-control-strings": "1.1.0",
+        "has-unicode": "2.0.1",
+        "object-assign": "4.1.1",
+        "signal-exit": "3.0.2",
+        "string-width": "1.0.2",
+        "strip-ansi": "3.0.1",
+        "wide-align": "1.1.2"
+      }
+    },
+    "gaze": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
+      "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
+      "dev": true,
+      "requires": {
+        "globule": "1.2.0"
+      }
+    },
+    "generate-function": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
+      "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
+      "dev": true
+    },
+    "generate-object-property": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+      "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
+      "dev": true,
+      "requires": {
+        "is-property": "1.0.2"
+      }
+    },
+    "get-caller-file": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
+      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
+      "dev": true
+    },
+    "get-stdin": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+      "dev": true
+    },
+    "getobject": {
+      "version": "0.1.0",
+      "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
+      "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
+      "dev": true
+    },
+    "getpass": {
+      "version": "0.1.7",
+      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+      "dev": true,
+      "requires": {
+        "assert-plus": "1.0.0"
+      }
+    },
+    "github-from-package": {
+      "version": "0.0.0",
+      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
+      "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=",
+      "dev": true,
+      "optional": true
+    },
+    "glob": {
+      "version": "3.1.21",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
+      "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
+      "dev": true,
+      "requires": {
+        "graceful-fs": "1.2.3",
+        "inherits": "1.0.2",
+        "minimatch": "0.2.14"
+      },
+      "dependencies": {
+        "inherits": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
+          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
+          "dev": true
+        }
+      }
+    },
+    "glob-base": {
+      "version": "0.3.0",
+      "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
+      "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
+      "dev": true,
+      "requires": {
+        "glob-parent": "2.0.0",
+        "is-glob": "2.0.1"
+      }
+    },
+    "glob-parent": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
+      "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
+      "dev": true,
+      "requires": {
+        "is-glob": "2.0.1"
+      }
+    },
+    "globby": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
+      "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
+      "dev": true,
+      "requires": {
+        "array-union": "1.0.2",
+        "arrify": "1.0.1",
+        "glob": "7.1.2",
+        "object-assign": "4.1.1",
+        "pify": "2.3.0",
+        "pinkie-promise": "2.0.1"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "globule": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
+      "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
+      "dev": true,
+      "requires": {
+        "glob": "7.1.2",
+        "lodash": "4.17.10",
+        "minimatch": "3.0.4"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "graceful-fs": {
+      "version": "1.2.3",
+      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
+      "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
+      "dev": true
+    },
+    "grunt": {
+      "version": "0.4.5",
+      "resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
+      "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=",
+      "dev": true,
+      "requires": {
+        "async": "0.1.22",
+        "coffee-script": "1.3.3",
+        "colors": "0.6.2",
+        "dateformat": "1.0.2-1.2.3",
+        "eventemitter2": "0.4.14",
+        "exit": "0.1.2",
+        "findup-sync": "0.1.3",
+        "getobject": "0.1.0",
+        "glob": "3.1.21",
+        "grunt-legacy-log": "0.1.3",
+        "grunt-legacy-util": "0.2.0",
+        "hooker": "0.2.3",
+        "iconv-lite": "0.2.11",
+        "js-yaml": "2.0.5",
+        "lodash": "0.9.2",
+        "minimatch": "0.2.14",
+        "nopt": "1.0.10",
+        "rimraf": "2.2.8",
+        "underscore.string": "2.2.1",
+        "which": "1.0.9"
+      }
+    },
+    "grunt-bump": {
+      "version": "0.8.0",
+      "resolved": "https://registry.npmjs.org/grunt-bump/-/grunt-bump-0.8.0.tgz",
+      "integrity": "sha1-0//gzzzws44JYHt4U49CpTHq/lU=",
+      "dev": true,
+      "requires": {
+        "semver": "5.5.0"
+      }
+    },
+    "grunt-cli": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz",
+      "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
+      "dev": true,
+      "requires": {
+        "findup-sync": "0.3.0",
+        "grunt-known-options": "1.1.0",
+        "nopt": "3.0.6",
+        "resolve": "1.1.7"
+      },
+      "dependencies": {
+        "findup-sync": {
+          "version": "0.3.0",
+          "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz",
+          "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
+          "dev": true,
+          "requires": {
+            "glob": "5.0.15"
+          }
+        },
+        "glob": {
+          "version": "5.0.15",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
+          "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
+          "dev": true,
+          "requires": {
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        },
+        "nopt": {
+          "version": "3.0.6",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
+          "integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
+          "dev": true,
+          "requires": {
+            "abbrev": "1.1.1"
+          }
+        }
+      }
+    },
+    "grunt-contrib-compress": {
+      "version": "1.4.3",
+      "resolved": "https://registry.npmjs.org/grunt-contrib-compress/-/grunt-contrib-compress-1.4.3.tgz",
+      "integrity": "sha1-Ac7/ucY39S5wgfRjdQmD0KOw+nM=",
+      "dev": true,
+      "requires": {
+        "archiver": "1.3.0",
+        "chalk": "1.1.3",
+        "iltorb": "1.3.10",
+        "lodash": "4.17.10",
+        "pretty-bytes": "4.0.2",
+        "stream-buffers": "2.2.0"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
+          "dev": true
+        }
+      }
+    },
+    "grunt-known-options": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.0.tgz",
+      "integrity": "sha1-pCdO6zL6dl2lp6OxcSYXzjsUQUk=",
+      "dev": true
+    },
+    "grunt-legacy-log": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz",
+      "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=",
+      "dev": true,
+      "requires": {
+        "colors": "0.6.2",
+        "grunt-legacy-log-utils": "0.1.1",
+        "hooker": "0.2.3",
+        "lodash": "2.4.2",
+        "underscore.string": "2.3.3"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        },
+        "underscore.string": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
+          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
+          "dev": true
+        }
+      }
+    },
+    "grunt-legacy-log-utils": {
+      "version": "0.1.1",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz",
+      "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=",
+      "dev": true,
+      "requires": {
+        "colors": "0.6.2",
+        "lodash": "2.4.2",
+        "underscore.string": "2.3.3"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        },
+        "underscore.string": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
+          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
+          "dev": true
+        }
+      }
+    },
+    "grunt-legacy-util": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz",
+      "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=",
+      "dev": true,
+      "requires": {
+        "async": "0.1.22",
+        "exit": "0.1.2",
+        "getobject": "0.1.0",
+        "hooker": "0.2.3",
+        "lodash": "0.9.2",
+        "underscore.string": "2.2.1",
+        "which": "1.0.9"
+      }
+    },
+    "grunt-sass": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/grunt-sass/-/grunt-sass-2.0.0.tgz",
+      "integrity": "sha1-kHTPnXtFkuIPd4jKpye4+aoGtgo=",
+      "dev": true,
+      "requires": {
+        "each-async": "1.1.1",
+        "node-sass": "4.8.3",
+        "object-assign": "4.1.1"
+      }
+    },
+    "handlebars": {
+      "version": "4.0.11",
+      "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
+      "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
+      "dev": true,
+      "requires": {
+        "async": "1.5.2",
+        "optimist": "0.6.1",
+        "source-map": "0.4.4",
+        "uglify-js": "2.8.29"
+      },
+      "dependencies": {
+        "async": {
+          "version": "1.5.2",
+          "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
+          "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
+          "dev": true
+        }
+      }
+    },
+    "har-schema": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
+      "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
+      "dev": true
+    },
+    "har-validator": {
+      "version": "5.0.3",
+      "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
+      "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
+      "dev": true,
+      "requires": {
+        "ajv": "5.5.2",
+        "har-schema": "2.0.0"
+      }
+    },
+    "has-ansi": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
+      "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
+      "dev": true,
+      "requires": {
+        "ansi-regex": "2.1.1"
+      }
+    },
+    "has-binary": {
+      "version": "0.1.7",
+      "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz",
+      "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=",
+      "dev": true,
+      "requires": {
+        "isarray": "0.0.1"
+      },
+      "dependencies": {
+        "isarray": {
+          "version": "0.0.1",
+          "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+          "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
+          "dev": true
+        }
+      }
+    },
+    "has-cors": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
+      "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
+      "dev": true
+    },
+    "has-flag": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
+      "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
+      "dev": true
+    },
+    "has-unicode": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
+      "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
+      "dev": true
+    },
+    "hawk": {
+      "version": "6.0.2",
+      "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
+      "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
+      "dev": true,
+      "requires": {
+        "boom": "4.3.1",
+        "cryptiles": "3.1.2",
+        "hoek": "4.2.1",
+        "sntp": "2.1.0"
+      }
+    },
+    "hoek": {
+      "version": "4.2.1",
+      "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz",
+      "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==",
+      "dev": true
+    },
+    "hooker": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz",
+      "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=",
+      "dev": true
+    },
+    "hosted-git-info": {
+      "version": "2.6.0",
+      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.6.0.tgz",
+      "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==",
+      "dev": true
+    },
+    "http-errors": {
+      "version": "1.6.3",
+      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
+      "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
+      "dev": true,
+      "requires": {
+        "depd": "1.1.2",
+        "inherits": "2.0.3",
+        "setprototypeof": "1.1.0",
+        "statuses": "1.5.0"
+      }
+    },
+    "http-proxy": {
+      "version": "1.17.0",
+      "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz",
+      "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==",
+      "dev": true,
+      "requires": {
+        "eventemitter3": "3.0.1",
+        "follow-redirects": "1.4.1",
+        "requires-port": "1.0.0"
+      }
+    },
+    "http-signature": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
+      "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
+      "dev": true,
+      "requires": {
+        "assert-plus": "1.0.0",
+        "jsprim": "1.4.1",
+        "sshpk": "1.14.1"
+      }
+    },
+    "https-proxy-agent": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz",
+      "integrity": "sha1-NffabEjOTdv6JkiRrFk+5f+GceY=",
+      "dev": true,
+      "requires": {
+        "agent-base": "2.1.1",
+        "debug": "2.6.9",
+        "extend": "3.0.1"
+      }
+    },
+    "iconv-lite": {
+      "version": "0.2.11",
+      "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz",
+      "integrity": "sha1-HOYKOleGSiktEyH/RgnKS7llrcg=",
+      "dev": true
+    },
+    "iltorb": {
+      "version": "1.3.10",
+      "resolved": "https://registry.npmjs.org/iltorb/-/iltorb-1.3.10.tgz",
+      "integrity": "sha512-nyB4+ru1u8CQqQ6w7YjasboKN3NQTN8GH/V/eEssNRKhW6UbdxdWhB9fJ5EEdjJfezKY0qPrcwLyIcgjL8hHxA==",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "detect-libc": "0.2.0",
+        "nan": "2.10.0",
+        "node-gyp": "3.6.2",
+        "prebuild-install": "2.5.3"
+      }
+    },
+    "in-publish": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.0.tgz",
+      "integrity": "sha1-4g/146KvwmkDILbcVSaCqcf631E=",
+      "dev": true
+    },
+    "indent-string": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+      "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+      "dev": true,
+      "requires": {
+        "repeating": "2.0.1"
+      }
+    },
+    "indexof": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
+      "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
+      "dev": true
+    },
+    "inflight": {
+      "version": "1.0.6",
+      "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+      "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+      "dev": true,
+      "requires": {
+        "once": "1.4.0",
+        "wrappy": "1.0.2"
+      }
+    },
+    "inherits": {
+      "version": "2.0.3",
+      "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
+      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
+      "dev": true
+    },
+    "ini": {
+      "version": "1.3.5",
+      "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
+      "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
+      "dev": true
+    },
+    "invert-kv": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
+      "integrity": "sha1-EEqOSqym09jNFXqO+L+rLXo//bY=",
+      "dev": true
+    },
+    "is-arrayis

<TRUNCATED>

[18/19] nifi-fds git commit: gh-pages update

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/package-lock.json
----------------------------------------------------------------------
diff --git a/package-lock.json b/package-lock.json
index 4a44e34..c82e7bc 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,188 +1,122 @@
 {
-  "name": "nifi-fds",
+  "name": "nifi-fds-demo",
   "version": "0.0.0",
   "lockfileVersion": 1,
   "requires": true,
   "dependencies": {
     "@angular/animations": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-5.2.0.tgz",
-      "integrity": "sha512-JLR42YHiJppO4ruAkFxgbzghUDtHkXHkKPM8udd2qyt16T7e1OX7EEOrrmldUu59CC56tZnJ/32p4SrYmxyBSA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-4.4.6.tgz",
+      "integrity": "sha1-+mYYmaik44y3xYPHpcl85l1ZKjU=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/cdk": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-5.2.0.tgz",
-      "integrity": "sha1-Q2j2dJ6RXNzHXTJa4z/bP4WogQg=",
+      "version": "2.0.0-beta.12",
+      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.12.tgz",
+      "integrity": "sha1-OiQ8tiuT9OA5EgunD5ANyeI1Yi4=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/common": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/common/-/common-5.2.0.tgz",
-      "integrity": "sha512-yMFn2isC7/XOs56/2Kzzbb1AASHiwipAPOVFtKe7TdZQClO8fJXwCnk326rzr615+CG0eSBNQWeiFGyWN2riBA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/common/-/common-4.4.6.tgz",
+      "integrity": "sha1-S4FCByTggooOg5uVpV6xp+g5GPI=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/compiler": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-5.2.0.tgz",
-      "integrity": "sha512-RfYa4ESgjGX0T0ob/Xz00IF7nd2xZkoyRy6oKgL82q42uzB3xZUDMrFNgeGxAUs3H22IkL46/5SSPOMOTMZ0NA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.4.6.tgz",
+      "integrity": "sha1-LuH68lt1fh0SiXkHS+f65SmzvCA=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/core": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/core/-/core-5.2.0.tgz",
-      "integrity": "sha512-s2ne45DguNUubhC1YgybGECC4Tyx3G4EZCntUiRMDWWkmKXSK+6dgHMesyDo8R5Oat8VfN4Anf8l3JHS1He8kg==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.4.6.tgz",
+      "integrity": "sha1-EwMf0Q3P5DiHVBmzjyESCVi8I1Q=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/flex-layout": {
-      "version": "5.0.0-beta.14",
-      "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-5.0.0-beta.14.tgz",
-      "integrity": "sha512-/fsOqXFUKdCmzzZx0bZ0HCYwcV+BSbVuIgOhaCrZKHj2rqiWKKPgj1ErU3HMT68bBBGag0u0skTdLGtrBorRIA==",
+      "version": "2.0.0-beta.9",
+      "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.9.tgz",
+      "integrity": "sha1-PlT4mOgF0LFCbRXmE520FdBO518=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/forms": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-5.2.0.tgz",
-      "integrity": "sha512-g1/SF9lY0ZwzJ0w4NXbFsTGGEuUdgtaZny8DmkaqtmA7idby3FW398X0tv25KQfVYKtL+p9Jp1Y8EI0CvrIsvw==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.4.6.tgz",
+      "integrity": "sha1-/mSs5CQ1wbgPSQNLfEHOjK8UpEo=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/http": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/http/-/http-5.2.0.tgz",
-      "integrity": "sha512-V5Cl24dP3rCXTTQvDc0TIKoWqBRAa0DWAQbtr7iuDAt5a1vPGdKz5K1sEiiV6ziwX6gzjiwHjUvL+B+WbIUrQA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.4.6.tgz",
+      "integrity": "sha1-CvaAxnEL3AJtlA4iXP0PalwAXQw=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/material": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/material/-/material-5.2.0.tgz",
-      "integrity": "sha1-hZnjFJ1ISH4+kulB+p3FUXbjoM8=",
+      "version": "2.0.0-beta.12",
+      "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.12.tgz",
+      "integrity": "sha1-cbbQt7AhiR5dDjaIwdS9eMdFf1g=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/platform-browser": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-5.2.0.tgz",
-      "integrity": "sha512-c6cR15MfopPwGZ097HdRuAi9+R9BhA3bRRFpP2HmrSSB/BW4ZNovUYwB2QUMSYbd9s0lYTtnavqGm6DKcyF2QA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.4.6.tgz",
+      "integrity": "sha1-qYOcVH4bZU+h0kqJeAyLpquNzOA=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/platform-browser-dynamic": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-5.2.0.tgz",
-      "integrity": "sha512-xG1eNoi8sm4Jcly2y98r5mqYVe3XV8sUJCtOhvGBYtvt4dKEQ5tOns6fWQ0nUbl6Vv3Y0xgGUS1JCtfut3DuaQ==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.4.6.tgz",
+      "integrity": "sha1-TT2aanvyzz3kBYphWuBZ7/ZB+jY=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@angular/router": {
-      "version": "5.2.0",
-      "resolved": "https://registry.npmjs.org/@angular/router/-/router-5.2.0.tgz",
-      "integrity": "sha512-VXDXtp2A1GQEUEhXg0ZzqHdTUERLgDSo3/Mmpzt+dgLMKlXDSCykcm4gINwE5VQLGD1zQvDFCCRv3seGRNfrqA==",
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/router/-/router-4.4.6.tgz",
+      "integrity": "sha1-D2rSmuD/jSyeo3m9MgRHIXt+yGY=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
     "@covalent/core": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/@covalent/core/-/core-1.0.0.tgz",
-      "integrity": "sha512-qUGL6CtyHNa3ttKGrvuQY0lJyQR9Dxp04vP0vrXmYrKapVbfYZ82qwJ2+PrX1EcWAQ6b/B2giFe0Q83ePin04g==",
+      "version": "1.0.0-beta.8-1",
+      "resolved": "https://registry.npmjs.org/@covalent/core/-/core-1.0.0-beta.8-1.tgz",
+      "integrity": "sha1-GL8J+RLMAvOcHleCVcxCco2hBCY=",
       "requires": {
         "tslib": "1.9.0"
       }
     },
-    "@types/jasmine": {
-      "version": "2.8.6",
-      "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
-      "integrity": "sha512-clg9raJTY0EOo5pVZKX3ZlMjlYzVU73L71q5OV1jhE2Uezb7oF94jh4CvwrW6wInquQAdhOxJz5VDF2TLUGmmA==",
-      "dev": true
-    },
-    "@types/node": {
-      "version": "6.0.106",
-      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.106.tgz",
-      "integrity": "sha512-U4Zv5fx7letrisRv6HgSSPSY00FZM4NMIkilt+IAExvQLuNa6jYVwCKcnSs2NqTN4+KDl9PskvcCiMce9iePCA==",
-      "dev": true
-    },
-    "@types/q": {
-      "version": "0.0.32",
-      "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
-      "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
-      "dev": true
-    },
-    "@types/selenium-webdriver": {
-      "version": "2.53.37",
-      "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.37.tgz",
-      "integrity": "sha1-NPdDwg5TrnEA7ekIcP3lVN8kR/g=",
-      "dev": true
-    },
     "abbrev": {
       "version": "1.1.1",
       "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
-      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
-      "dev": true
-    },
-    "accepts": {
-      "version": "1.3.3",
-      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
-      "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
-      "dev": true,
-      "requires": {
-        "mime-types": "2.1.18",
-        "negotiator": "0.6.1"
-      }
-    },
-    "adm-zip": {
-      "version": "0.4.7",
-      "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.7.tgz",
-      "integrity": "sha1-hgbCy/HEJs6MjsABdER/1Jtur8E=",
-      "dev": true
-    },
-    "after": {
-      "version": "0.8.2",
-      "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
-      "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
-      "dev": true
-    },
-    "agent-base": {
-      "version": "2.1.1",
-      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz",
-      "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=",
-      "dev": true,
-      "requires": {
-        "extend": "3.0.1",
-        "semver": "5.0.3"
-      },
-      "dependencies": {
-        "semver": {
-          "version": "5.0.3",
-          "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz",
-          "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=",
-          "dev": true
-        }
-      }
+      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q=="
     },
     "ajv": {
       "version": "5.5.2",
       "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
       "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
-      "dev": true,
       "requires": {
         "co": "4.6.0",
         "fast-deep-equal": "1.1.0",
@@ -190,17 +124,6 @@
         "json-schema-traverse": "0.3.1"
       }
     },
-    "align-text": {
-      "version": "0.1.4",
-      "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
-      "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
-      "dev": true,
-      "requires": {
-        "kind-of": "3.2.2",
-        "longest": "1.0.1",
-        "repeat-string": "1.6.1"
-      }
-    },
     "amdefine": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
@@ -210,8 +133,7 @@
     "ansi-regex": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
-      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
-      "dev": true
+      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8="
     },
     "ansi-styles": {
       "version": "2.2.1",
@@ -219,21 +141,10 @@
       "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
       "dev": true
     },
-    "anymatch": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
-      "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
-      "dev": true,
-      "requires": {
-        "micromatch": "2.3.11",
-        "normalize-path": "2.1.1"
-      }
-    },
     "aproba": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
-      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
-      "dev": true
+      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw=="
     },
     "archiver": {
       "version": "1.3.0",
@@ -347,7 +258,6 @@
       "version": "1.1.4",
       "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
       "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
-      "dev": true,
       "requires": {
         "delegates": "1.0.0",
         "readable-stream": "2.3.6"
@@ -371,21 +281,6 @@
         }
       }
     },
-    "arr-diff": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
-      "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
-      "dev": true,
-      "requires": {
-        "arr-flatten": "1.1.0"
-      }
-    },
-    "arr-flatten": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
-      "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
-      "dev": true
-    },
     "array-differ": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
@@ -398,12 +293,6 @@
       "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
       "dev": true
     },
-    "array-slice": {
-      "version": "0.2.3",
-      "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
-      "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
-      "dev": true
-    },
     "array-union": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
@@ -419,18 +308,6 @@
       "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
       "dev": true
     },
-    "array-unique": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
-      "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
-      "dev": true
-    },
-    "arraybuffer.slice": {
-      "version": "0.0.6",
-      "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
-      "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=",
-      "dev": true
-    },
     "arrify": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
@@ -440,14 +317,12 @@
     "asn1": {
       "version": "0.2.3",
       "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
-      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
-      "dev": true
+      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y="
     },
     "assert-plus": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
-      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
-      "dev": true
+      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU="
     },
     "async": {
       "version": "0.1.22",
@@ -455,12 +330,6 @@
       "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
       "dev": true
     },
-    "async-each": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
-      "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
-      "dev": true
-    },
     "async-foreach": {
       "version": "0.1.3",
       "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
@@ -470,70 +339,32 @@
     "asynckit": {
       "version": "0.4.0",
       "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
-      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
-      "dev": true
+      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k="
     },
     "aws-sign2": {
       "version": "0.7.0",
       "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
-      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
-      "dev": true
+      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg="
     },
     "aws4": {
       "version": "1.7.0",
       "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.7.0.tgz",
-      "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w==",
-      "dev": true
-    },
-    "backo2": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
-      "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
-      "dev": true
+      "integrity": "sha512-32NDda82rhwD9/JBCCkB+MRYDp0oSvlo2IL6rQWA10PQi7tDUM3eqMSltXmY+Oyl/7N3P3qNtAlv7X0d9bI28w=="
     },
     "balanced-match": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
-      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
-      "dev": true
-    },
-    "base64-arraybuffer": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
-      "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
-      "dev": true
-    },
-    "base64id": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
-      "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
-      "dev": true
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c="
     },
     "bcrypt-pbkdf": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
       "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
-      "dev": true,
       "optional": true,
       "requires": {
         "tweetnacl": "0.14.5"
       }
     },
-    "better-assert": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
-      "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
-      "dev": true,
-      "requires": {
-        "callsite": "1.0.0"
-      }
-    },
-    "binary-extensions": {
-      "version": "1.11.0",
-      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
-      "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
-      "dev": true
-    },
     "bl": {
       "version": "1.2.2",
       "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
@@ -544,58 +375,18 @@
         "safe-buffer": "5.1.1"
       }
     },
-    "blob": {
-      "version": "0.0.4",
-      "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
-      "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=",
-      "dev": true
-    },
     "block-stream": {
       "version": "0.0.9",
       "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
       "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
-      "dev": true,
       "requires": {
         "inherits": "2.0.3"
       }
     },
-    "bluebird": {
-      "version": "3.5.1",
-      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
-      "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
-      "dev": true
-    },
-    "body-parser": {
-      "version": "1.18.2",
-      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
-      "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
-      "dev": true,
-      "requires": {
-        "bytes": "3.0.0",
-        "content-type": "1.0.4",
-        "debug": "2.6.9",
-        "depd": "1.1.2",
-        "http-errors": "1.6.3",
-        "iconv-lite": "0.4.19",
-        "on-finished": "2.3.0",
-        "qs": "6.5.1",
-        "raw-body": "2.3.2",
-        "type-is": "1.6.16"
-      },
-      "dependencies": {
-        "iconv-lite": {
-          "version": "0.4.19",
-          "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
-          "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
-          "dev": true
-        }
-      }
-    },
     "boom": {
       "version": "4.3.1",
       "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
       "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
-      "dev": true,
       "requires": {
         "hoek": "4.2.1"
       }
@@ -604,23 +395,11 @@
       "version": "1.1.11",
       "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
       "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
-      "dev": true,
       "requires": {
         "balanced-match": "1.0.0",
         "concat-map": "0.0.1"
       }
     },
-    "braces": {
-      "version": "1.8.5",
-      "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
-      "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
-      "dev": true,
-      "requires": {
-        "expand-range": "1.8.2",
-        "preserve": "0.2.0",
-        "repeat-element": "1.1.2"
-      }
-    },
     "buffer-crc32": {
       "version": "0.2.13",
       "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
@@ -633,18 +412,6 @@
       "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
       "dev": true
     },
-    "bytes": {
-      "version": "3.0.0",
-      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
-      "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
-      "dev": true
-    },
-    "callsite": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
-      "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
-      "dev": true
-    },
     "camelcase": {
       "version": "2.1.1",
       "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
@@ -664,19 +431,7 @@
     "caseless": {
       "version": "0.12.0",
       "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
-      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
-      "dev": true
-    },
-    "center-align": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
-      "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "align-text": "0.1.4",
-        "lazy-cache": "1.0.4"
-      }
+      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw="
     },
     "chalk": {
       "version": "1.1.3",
@@ -691,23 +446,6 @@
         "supports-color": "2.0.0"
       }
     },
-    "chokidar": {
-      "version": "1.7.0",
-      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
-      "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
-      "dev": true,
-      "requires": {
-        "anymatch": "1.3.2",
-        "async-each": "1.0.1",
-        "fsevents": "1.2.2",
-        "glob-parent": "2.0.0",
-        "inherits": "2.0.3",
-        "is-binary-path": "1.0.1",
-        "is-glob": "2.0.1",
-        "path-is-absolute": "1.0.1",
-        "readdirp": "2.1.0"
-      }
-    },
     "chownr": {
       "version": "1.0.1",
       "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
@@ -729,14 +467,12 @@
     "co": {
       "version": "4.6.0",
       "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
-      "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
-      "dev": true
+      "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ="
     },
     "code-point-at": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
-      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
-      "dev": true
+      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c="
     },
     "coffee-script": {
       "version": "1.3.3",
@@ -750,28 +486,10 @@
       "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
       "dev": true
     },
-    "combine-lists": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz",
-      "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
-      "dev": true,
-      "requires": {
-        "lodash": "4.17.10"
-      },
-      "dependencies": {
-        "lodash": {
-          "version": "4.17.10",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
-          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
-          "dev": true
-        }
-      }
-    },
     "combined-stream": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
       "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
-      "dev": true,
       "requires": {
         "delayed-stream": "1.0.0"
       }
@@ -782,24 +500,6 @@
       "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==",
       "dev": true
     },
-    "component-bind": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
-      "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
-      "dev": true
-    },
-    "component-emitter": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
-      "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",
-      "dev": true
-    },
-    "component-inherit": {
-      "version": "0.0.3",
-      "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
-      "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
-      "dev": true
-    },
     "compress-commons": {
       "version": "1.2.2",
       "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
@@ -815,50 +515,17 @@
     "concat-map": {
       "version": "0.0.1",
       "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
-      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
-      "dev": true
-    },
-    "connect": {
-      "version": "3.6.6",
-      "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
-      "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
-      "dev": true,
-      "requires": {
-        "debug": "2.6.9",
-        "finalhandler": "1.1.0",
-        "parseurl": "1.3.2",
-        "utils-merge": "1.0.1"
-      }
+      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s="
     },
     "console-control-strings": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
-      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
-      "dev": true
-    },
-    "content-type": {
-      "version": "1.0.4",
-      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
-      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
-      "dev": true
-    },
-    "cookie": {
-      "version": "0.3.1",
-      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
-      "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
-      "dev": true
-    },
-    "core-js": {
-      "version": "2.5.5",
-      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.5.tgz",
-      "integrity": "sha1-sU3ek2xkDAV5prUMq8wTLdYSfjs=",
-      "dev": true
+      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4="
     },
     "core-util-is": {
       "version": "1.0.2",
       "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
-      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
-      "dev": true
+      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac="
     },
     "crc": {
       "version": "3.5.0",
@@ -911,7 +578,6 @@
       "version": "3.1.2",
       "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
       "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
-      "dev": true,
       "requires": {
         "boom": "5.2.0"
       },
@@ -920,7 +586,6 @@
           "version": "5.2.0",
           "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
           "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
-          "dev": true,
           "requires": {
             "hoek": "4.2.1"
           }
@@ -936,17 +601,10 @@
         "array-find-index": "1.0.2"
       }
     },
-    "custom-event": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
-      "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
-      "dev": true
-    },
     "dashdash": {
       "version": "1.14.1",
       "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
       "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
-      "dev": true,
       "requires": {
         "assert-plus": "1.0.0"
       }
@@ -957,15 +615,6 @@
       "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
       "dev": true
     },
-    "debug": {
-      "version": "2.6.9",
-      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
-      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
-      "dev": true,
-      "requires": {
-        "ms": "2.0.0"
-      }
-    },
     "decamelize": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
@@ -989,69 +638,20 @@
       "dev": true,
       "optional": true
     },
-    "deep-is": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
-      "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
-      "dev": true
-    },
-    "del": {
-      "version": "2.2.2",
-      "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
-      "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
-      "dev": true,
-      "requires": {
-        "globby": "5.0.0",
-        "is-path-cwd": "1.0.0",
-        "is-path-in-cwd": "1.0.1",
-        "object-assign": "4.1.1",
-        "pify": "2.3.0",
-        "pinkie-promise": "2.0.1",
-        "rimraf": "2.2.8"
-      }
-    },
     "delayed-stream": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
-      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
-      "dev": true
+      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk="
     },
     "delegates": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
-      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
-      "dev": true
-    },
-    "depd": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
-      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
-      "dev": true
+      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o="
     },
     "detect-libc": {
-      "version": "0.2.0",
-      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-0.2.0.tgz",
-      "integrity": "sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U=",
-      "dev": true,
-      "optional": true
-    },
-    "di": {
-      "version": "0.0.1",
-      "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
-      "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
-      "dev": true
-    },
-    "dom-serialize": {
-      "version": "2.2.1",
-      "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
-      "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
-      "dev": true,
-      "requires": {
-        "custom-event": "1.0.1",
-        "ent": "2.2.0",
-        "extend": "3.0.1",
-        "void-elements": "2.0.1"
-      }
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
+      "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups="
     },
     "each-async": {
       "version": "1.1.1",
@@ -1067,24 +667,11 @@
       "version": "0.1.1",
       "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
       "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
-      "dev": true,
       "optional": true,
       "requires": {
         "jsbn": "0.1.1"
       }
     },
-    "ee-first": {
-      "version": "1.1.1",
-      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
-      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
-      "dev": true
-    },
-    "encodeurl": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
-      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
-      "dev": true
-    },
     "end-of-stream": {
       "version": "1.4.1",
       "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
@@ -1094,100 +681,6 @@
         "once": "1.4.0"
       }
     },
-    "engine.io": {
-      "version": "1.8.3",
-      "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",
-      "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=",
-      "dev": true,
-      "requires": {
-        "accepts": "1.3.3",
-        "base64id": "1.0.0",
-        "cookie": "0.3.1",
-        "debug": "2.3.3",
-        "engine.io-parser": "1.3.2",
-        "ws": "1.1.2"
-      },
-      "dependencies": {
-        "debug": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
-          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
-          "dev": true,
-          "requires": {
-            "ms": "0.7.2"
-          }
-        },
-        "ms": {
-          "version": "0.7.2",
-          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
-          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
-          "dev": true
-        }
-      }
-    },
-    "engine.io-client": {
-      "version": "1.8.3",
-      "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
-      "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
-      "dev": true,
-      "requires": {
-        "component-emitter": "1.2.1",
-        "component-inherit": "0.0.3",
-        "debug": "2.3.3",
-        "engine.io-parser": "1.3.2",
-        "has-cors": "1.1.0",
-        "indexof": "0.0.1",
-        "parsejson": "0.0.3",
-        "parseqs": "0.0.5",
-        "parseuri": "0.0.5",
-        "ws": "1.1.2",
-        "xmlhttprequest-ssl": "1.5.3",
-        "yeast": "0.1.2"
-      },
-      "dependencies": {
-        "component-emitter": {
-          "version": "1.2.1",
-          "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
-          "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
-          "dev": true
-        },
-        "debug": {
-          "version": "2.3.3",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
-          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
-          "dev": true,
-          "requires": {
-            "ms": "0.7.2"
-          }
-        },
-        "ms": {
-          "version": "0.7.2",
-          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
-          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
-          "dev": true
-        }
-      }
-    },
-    "engine.io-parser": {
-      "version": "1.3.2",
-      "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",
-      "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=",
-      "dev": true,
-      "requires": {
-        "after": "0.8.2",
-        "arraybuffer.slice": "0.0.6",
-        "base64-arraybuffer": "0.1.5",
-        "blob": "0.0.4",
-        "has-binary": "0.1.7",
-        "wtf-8": "1.0.0"
-      }
-    },
-    "ent": {
-      "version": "2.2.0",
-      "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
-      "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
-      "dev": true
-    },
     "error-ex": {
       "version": "1.3.1",
       "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
@@ -1197,147 +690,30 @@
         "is-arrayish": "0.2.1"
       }
     },
-    "escape-html": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
-      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
-      "dev": true
-    },
     "escape-string-regexp": {
       "version": "1.0.5",
       "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
       "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
       "dev": true
     },
-    "escodegen": {
-      "version": "1.8.1",
-      "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz",
-      "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=",
-      "dev": true,
-      "requires": {
-        "esprima": "2.7.3",
-        "estraverse": "1.9.3",
-        "esutils": "2.0.2",
-        "optionator": "0.8.2",
-        "source-map": "0.2.0"
-      },
-      "dependencies": {
-        "esprima": {
-          "version": "2.7.3",
-          "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
-          "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
-          "dev": true
-        },
-        "source-map": {
-          "version": "0.2.0",
-          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
-          "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "amdefine": "1.0.1"
-          }
-        }
-      }
-    },
     "esprima": {
       "version": "1.0.4",
       "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
       "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
       "dev": true
     },
-    "estraverse": {
-      "version": "1.9.3",
-      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
-      "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
-      "dev": true
-    },
-    "esutils": {
-      "version": "2.0.2",
-      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
-      "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
-      "dev": true
-    },
     "eventemitter2": {
       "version": "0.4.14",
       "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
       "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
       "dev": true
     },
-    "eventemitter3": {
-      "version": "3.0.1",
-      "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-3.0.1.tgz",
-      "integrity": "sha512-QOCPu979MMWX9XNlfRZoin+Wm+bK1SP7vv3NGUniYwuSJK/+cPA10blMaeRgzg31RvoSFk6FsCDVa4vNryBTGA==",
-      "dev": true
-    },
     "exit": {
       "version": "0.1.2",
       "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
       "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
       "dev": true
     },
-    "expand-braces": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz",
-      "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=",
-      "dev": true,
-      "requires": {
-        "array-slice": "0.2.3",
-        "array-unique": "0.2.1",
-        "braces": "0.1.5"
-      },
-      "dependencies": {
-        "braces": {
-          "version": "0.1.5",
-          "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz",
-          "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=",
-          "dev": true,
-          "requires": {
-            "expand-range": "0.1.1"
-          }
-        },
-        "expand-range": {
-          "version": "0.1.1",
-          "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz",
-          "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=",
-          "dev": true,
-          "requires": {
-            "is-number": "0.1.1",
-            "repeat-string": "0.2.2"
-          }
-        },
-        "is-number": {
-          "version": "0.1.1",
-          "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz",
-          "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=",
-          "dev": true
-        },
-        "repeat-string": {
-          "version": "0.2.2",
-          "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz",
-          "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=",
-          "dev": true
-        }
-      }
-    },
-    "expand-brackets": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
-      "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
-      "dev": true,
-      "requires": {
-        "is-posix-bracket": "0.1.1"
-      }
-    },
-    "expand-range": {
-      "version": "1.8.2",
-      "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
-      "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
-      "dev": true,
-      "requires": {
-        "fill-range": "2.2.3"
-      }
-    },
     "expand-template": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz",
@@ -1348,83 +724,22 @@
     "extend": {
       "version": "3.0.1",
       "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
-      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
-      "dev": true
-    },
-    "extglob": {
-      "version": "0.3.2",
-      "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
-      "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
-      "dev": true,
-      "requires": {
-        "is-extglob": "1.0.0"
-      }
+      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ="
     },
     "extsprintf": {
       "version": "1.3.0",
       "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
-      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
-      "dev": true
+      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU="
     },
     "fast-deep-equal": {
       "version": "1.1.0",
       "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
-      "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
-      "dev": true
+      "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ="
     },
     "fast-json-stable-stringify": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
-      "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
-      "dev": true
-    },
-    "fast-levenshtein": {
-      "version": "2.0.6",
-      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
-      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
-      "dev": true
-    },
-    "filename-regex": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
-      "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
-      "dev": true
-    },
-    "fill-range": {
-      "version": "2.2.3",
-      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
-      "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
-      "dev": true,
-      "requires": {
-        "is-number": "2.1.0",
-        "isobject": "2.1.0",
-        "randomatic": "1.1.7",
-        "repeat-element": "1.1.2",
-        "repeat-string": "1.6.1"
-      }
-    },
-    "finalhandler": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
-      "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
-      "dev": true,
-      "requires": {
-        "debug": "2.6.9",
-        "encodeurl": "1.0.2",
-        "escape-html": "1.0.3",
-        "on-finished": "2.3.0",
-        "parseurl": "1.3.2",
-        "statuses": "1.3.1",
-        "unpipe": "1.0.0"
-      },
-      "dependencies": {
-        "statuses": {
-          "version": "1.3.1",
-          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
-          "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
-          "dev": true
-        }
-      }
+      "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I="
     },
     "find-up": {
       "version": "1.1.2",
@@ -1474,811 +789,178 @@
         }
       }
     },
-    "follow-redirects": {
-      "version": "1.4.1",
-      "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.4.1.tgz",
-      "integrity": "sha512-uxYePVPogtya1ktGnAAXOacnbIuRMB4dkvqeNz2qTtTQsuzSfbDolV+wMMKxAmCx0bLgAKLbBOkjItMbbkR1vg==",
-      "dev": true,
-      "requires": {
-        "debug": "3.1.0"
-      },
-      "dependencies": {
-        "debug": {
-          "version": "3.1.0",
-          "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz",
-          "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==",
-          "dev": true,
-          "requires": {
-            "ms": "2.0.0"
-          }
-        }
-      }
-    },
-    "for-in": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
-      "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
-      "dev": true
-    },
-    "for-own": {
-      "version": "0.1.5",
-      "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
-      "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
-      "dev": true,
-      "requires": {
-        "for-in": "1.0.2"
-      }
+    "font-awesome": {
+      "version": "4.7.0",
+      "resolved": "https://registry.npmjs.org/font-awesome/-/font-awesome-4.7.0.tgz",
+      "integrity": "sha1-j6jPBBGhoxr9B7BtKQK7n8gVoTM="
     },
     "forever-agent": {
       "version": "0.6.1",
       "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
-      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
-      "dev": true
+      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE="
     },
     "form-data": {
       "version": "2.3.2",
       "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
       "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
-      "dev": true,
       "requires": {
         "asynckit": "0.4.0",
         "combined-stream": "1.0.6",
         "mime-types": "2.1.18"
       }
     },
-    "fs-access": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
-      "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
+    "fs.realpath": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8="
+    },
+    "fstream": {
+      "version": "1.0.11",
+      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
+      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
+      "requires": {
+        "graceful-fs": "4.1.11",
+        "inherits": "2.0.3",
+        "mkdirp": "0.5.1",
+        "rimraf": "2.2.8"
+      },
+      "dependencies": {
+        "graceful-fs": {
+          "version": "4.1.11",
+          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
+          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
+        }
+      }
+    },
+    "gauge": {
+      "version": "2.7.4",
+      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
+      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
+      "requires": {
+        "aproba": "1.2.0",
+        "console-control-strings": "1.1.0",
+        "has-unicode": "2.0.1",
+        "object-assign": "4.1.1",
+        "signal-exit": "3.0.2",
+        "string-width": "1.0.2",
+        "strip-ansi": "3.0.1",
+        "wide-align": "1.1.2"
+      }
+    },
+    "gaze": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
+      "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
       "dev": true,
       "requires": {
-        "null-check": "1.0.0"
+        "globule": "1.2.0"
       }
     },
-    "fs.realpath": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
-      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+    "generate-function": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
+      "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
       "dev": true
     },
-    "fsevents": {
-      "version": "1.2.2",
-      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.2.tgz",
-      "integrity": "sha512-iownA+hC4uHFp+7gwP/y5SzaiUo7m2vpa0dhpzw8YuKtiZsz7cIXsFbXpLEeBM6WuCQyw1MH4RRe6XI8GFUctQ==",
+    "generate-object-property": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+      "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
       "dev": true,
-      "optional": true,
       "requires": {
-        "nan": "2.10.0",
-        "node-pre-gyp": "0.9.1"
+        "is-property": "1.0.2"
+      }
+    },
+    "get-caller-file": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
+      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
+      "dev": true
+    },
+    "get-stdin": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+      "dev": true
+    },
+    "getobject": {
+      "version": "0.1.0",
+      "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
+      "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
+      "dev": true
+    },
+    "getpass": {
+      "version": "0.1.7",
+      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+      "requires": {
+        "assert-plus": "1.0.0"
+      }
+    },
+    "github-from-package": {
+      "version": "0.0.0",
+      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
+      "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=",
+      "dev": true,
+      "optional": true
+    },
+    "glob": {
+      "version": "3.1.21",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
+      "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
+      "dev": true,
+      "requires": {
+        "graceful-fs": "1.2.3",
+        "inherits": "1.0.2",
+        "minimatch": "0.2.14"
       },
       "dependencies": {
-        "abbrev": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "ansi-regex": {
-          "version": "2.1.1",
-          "bundled": true,
-          "dev": true
-        },
-        "aproba": {
-          "version": "1.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "are-we-there-yet": {
-          "version": "1.1.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "delegates": "1.0.0",
-            "readable-stream": "2.3.6"
-          }
-        },
-        "balanced-match": {
-          "version": "1.0.0",
-          "bundled": true,
+        "inherits": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
+          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
           "dev": true
-        },
-        "brace-expansion": {
-          "version": "1.1.11",
-          "bundled": true,
+        }
+      }
+    },
+    "globule": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
+      "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
+      "dev": true,
+      "requires": {
+        "glob": "7.1.2",
+        "lodash": "4.17.10",
+        "minimatch": "3.0.4"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
           "dev": true,
           "requires": {
-            "balanced-match": "1.0.0",
-            "concat-map": "0.0.1"
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
           }
         },
-        "chownr": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "code-point-at": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true
-        },
-        "concat-map": {
-          "version": "0.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "console-control-strings": {
-          "version": "1.1.0",
-          "bundled": true,
+        "lodash": {
+          "version": "4.17.10",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
+          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
           "dev": true
         },
-        "core-util-is": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "debug": {
-          "version": "2.6.9",
-          "bundled": true,
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
           "dev": true,
-          "optional": true,
           "requires": {
-            "ms": "2.0.0"
-          }
-        },
-        "deep-extend": {
-          "version": "0.4.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "delegates": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "detect-libc": {
-          "version": "1.0.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "fs-minipass": {
-          "version": "1.2.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minipass": "2.2.4"
-          }
-        },
-        "fs.realpath": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "gauge": {
-          "version": "2.7.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "aproba": "1.2.0",
-            "console-control-strings": "1.1.0",
-            "has-unicode": "2.0.1",
-            "object-assign": "4.1.1",
-            "signal-exit": "3.0.2",
-            "string-width": "1.0.2",
-            "strip-ansi": "3.0.1",
-            "wide-align": "1.1.2"
-          }
-        },
-        "glob": {
-          "version": "7.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "has-unicode": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "iconv-lite": {
-          "version": "0.4.21",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "safer-buffer": "2.1.2"
-          }
-        },
-        "ignore-walk": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minimatch": "3.0.4"
-          }
-        },
-        "inflight": {
-          "version": "1.0.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "once": "1.4.0",
-            "wrappy": "1.0.2"
-          }
-        },
-        "inherits": {
-          "version": "2.0.3",
-          "bundled": true,
-          "dev": true
-        },
-        "ini": {
-          "version": "1.3.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "is-fullwidth-code-point": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "number-is-nan": "1.0.1"
-          }
-        },
-        "isarray": {
-          "version": "1.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        },
-        "minimist": {
-          "version": "0.0.8",
-          "bundled": true,
-          "dev": true
-        },
-        "minipass": {
-          "version": "2.2.4",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "safe-buffer": "5.1.1",
-            "yallist": "3.0.2"
-          }
-        },
-        "minizlib": {
-          "version": "1.1.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "minipass": "2.2.4"
-          }
-        },
-        "mkdirp": {
-          "version": "0.5.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "minimist": "0.0.8"
-          }
-        },
-        "ms": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "needle": {
-          "version": "2.2.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "debug": "2.6.9",
-            "iconv-lite": "0.4.21",
-            "sax": "1.2.4"
-          }
-        },
-        "node-pre-gyp": {
-          "version": "0.9.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "detect-libc": "1.0.3",
-            "mkdirp": "0.5.1",
-            "needle": "2.2.0",
-            "nopt": "4.0.1",
-            "npm-packlist": "1.1.10",
-            "npmlog": "4.1.2",
-            "rc": "1.2.6",
-            "rimraf": "2.6.2",
-            "semver": "5.5.0",
-            "tar": "4.4.1"
-          }
-        },
-        "nopt": {
-          "version": "4.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "abbrev": "1.1.1",
-            "osenv": "0.1.5"
-          }
-        },
-        "npm-bundled": {
-          "version": "1.0.3",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "npm-packlist": {
-          "version": "1.1.10",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ignore-walk": "3.0.1",
-            "npm-bundled": "1.0.3"
-          }
-        },
-        "npmlog": {
-          "version": "4.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "are-we-there-yet": "1.1.4",
-            "console-control-strings": "1.1.0",
-            "gauge": "2.7.4",
-            "set-blocking": "2.0.0"
-          }
-        },
-        "number-is-nan": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true
-        },
-        "object-assign": {
-          "version": "4.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "once": {
-          "version": "1.4.0",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "wrappy": "1.0.2"
-          }
-        },
-        "os-homedir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "os-tmpdir": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "osenv": {
-          "version": "0.1.5",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "os-homedir": "1.0.2",
-            "os-tmpdir": "1.0.2"
-          }
-        },
-        "path-is-absolute": {
-          "version": "1.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "process-nextick-args": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "rc": {
-          "version": "1.2.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "deep-extend": "0.4.2",
-            "ini": "1.3.5",
-            "minimist": "1.2.0",
-            "strip-json-comments": "2.0.1"
-          },
-          "dependencies": {
-            "minimist": {
-              "version": "1.2.0",
-              "bundled": true,
-              "dev": true,
-              "optional": true
-            }
-          }
-        },
-        "readable-stream": {
-          "version": "2.3.6",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "core-util-is": "1.0.2",
-            "inherits": "2.0.3",
-            "isarray": "1.0.0",
-            "process-nextick-args": "2.0.0",
-            "safe-buffer": "5.1.1",
-            "string_decoder": "1.1.1",
-            "util-deprecate": "1.0.2"
-          }
-        },
-        "rimraf": {
-          "version": "2.6.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "glob": "7.1.2"
-          }
-        },
-        "safe-buffer": {
-          "version": "5.1.1",
-          "bundled": true,
-          "dev": true
-        },
-        "safer-buffer": {
-          "version": "2.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "sax": {
-          "version": "1.2.4",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "semver": {
-          "version": "5.5.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "set-blocking": {
-          "version": "2.0.0",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "signal-exit": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "string-width": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "code-point-at": "1.1.0",
-            "is-fullwidth-code-point": "1.0.0",
-            "strip-ansi": "3.0.1"
-          }
-        },
-        "string_decoder": {
-          "version": "1.1.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "safe-buffer": "5.1.1"
-          }
-        },
-        "strip-ansi": {
-          "version": "3.0.1",
-          "bundled": true,
-          "dev": true,
-          "requires": {
-            "ansi-regex": "2.1.1"
-          }
-        },
-        "strip-json-comments": {
-          "version": "2.0.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "tar": {
-          "version": "4.4.1",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "chownr": "1.0.1",
-            "fs-minipass": "1.2.5",
-            "minipass": "2.2.4",
-            "minizlib": "1.1.0",
-            "mkdirp": "0.5.1",
-            "safe-buffer": "5.1.1",
-            "yallist": "3.0.2"
-          }
-        },
-        "util-deprecate": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true
-        },
-        "wide-align": {
-          "version": "1.1.2",
-          "bundled": true,
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "string-width": "1.0.2"
-          }
-        },
-        "wrappy": {
-          "version": "1.0.2",
-          "bundled": true,
-          "dev": true
-        },
-        "yallist": {
-          "version": "3.0.2",
-          "bundled": true,
-          "dev": true
-        }
-      }
-    },
-    "fstream": {
-      "version": "1.0.11",
-      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
-      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
-      "dev": true,
-      "requires": {
-        "graceful-fs": "4.1.11",
-        "inherits": "2.0.3",
-        "mkdirp": "0.5.1",
-        "rimraf": "2.2.8"
-      },
-      "dependencies": {
-        "graceful-fs": {
-          "version": "4.1.11",
-          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
-          "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
-          "dev": true
-        }
-      }
-    },
-    "gauge": {
-      "version": "2.7.4",
-      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
-      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
-      "dev": true,
-      "requires": {
-        "aproba": "1.2.0",
-        "console-control-strings": "1.1.0",
-        "has-unicode": "2.0.1",
-        "object-assign": "4.1.1",
-        "signal-exit": "3.0.2",
-        "string-width": "1.0.2",
-        "strip-ansi": "3.0.1",
-        "wide-align": "1.1.2"
-      }
-    },
-    "gaze": {
-      "version": "1.1.2",
-      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
-      "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
-      "dev": true,
-      "requires": {
-        "globule": "1.2.0"
-      }
-    },
-    "generate-function": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
-      "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
-      "dev": true
-    },
-    "generate-object-property": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
-      "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
-      "dev": true,
-      "requires": {
-        "is-property": "1.0.2"
-      }
-    },
-    "get-caller-file": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
-      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
-      "dev": true
-    },
-    "get-stdin": {
-      "version": "4.0.1",
-      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
-      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
-      "dev": true
-    },
-    "getobject": {
-      "version": "0.1.0",
-      "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
-      "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
-      "dev": true
-    },
-    "getpass": {
-      "version": "0.1.7",
-      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
-      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
-      "dev": true,
-      "requires": {
-        "assert-plus": "1.0.0"
-      }
-    },
-    "github-from-package": {
-      "version": "0.0.0",
-      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
-      "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=",
-      "dev": true,
-      "optional": true
-    },
-    "glob": {
-      "version": "3.1.21",
-      "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
-      "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
-      "dev": true,
-      "requires": {
-        "graceful-fs": "1.2.3",
-        "inherits": "1.0.2",
-        "minimatch": "0.2.14"
-      },
-      "dependencies": {
-        "inherits": {
-          "version": "1.0.2",
-          "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
-          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
-          "dev": true
-        }
-      }
-    },
-    "glob-base": {
-      "version": "0.3.0",
-      "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
-      "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
-      "dev": true,
-      "requires": {
-        "glob-parent": "2.0.0",
-        "is-glob": "2.0.1"
-      }
-    },
-    "glob-parent": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
-      "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
-      "dev": true,
-      "requires": {
-        "is-glob": "2.0.1"
-      }
-    },
-    "globby": {
-      "version": "5.0.0",
-      "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
-      "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
-      "dev": true,
-      "requires": {
-        "array-union": "1.0.2",
-        "arrify": "1.0.1",
-        "glob": "7.1.2",
-        "object-assign": "4.1.1",
-        "pify": "2.3.0",
-        "pinkie-promise": "2.0.1"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
-          }
-        }
-      }
-    },
-    "globule": {
-      "version": "1.2.0",
-      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
-      "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
-      "dev": true,
-      "requires": {
-        "glob": "7.1.2",
-        "lodash": "4.17.10",
-        "minimatch": "3.0.4"
-      },
-      "dependencies": {
-        "glob": {
-          "version": "7.1.2",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
-          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
-          "dev": true,
-          "requires": {
-            "fs.realpath": "1.0.0",
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "lodash": {
-          "version": "4.17.10",
-          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.10.tgz",
-          "integrity": "sha512-UejweD1pDoXu+AD825lWwp4ZGtSwgnpZxb3JDViD7StjQz+Nb/6l093lx4OQ0foGWNRoc19mWy7BzL+UAK2iVg==",
-          "dev": true
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true,
-          "requires": {
-            "brace-expansion": "1.1.11"
+            "brace-expansion": "1.1.11"
           }
         }
       }
@@ -2312,18 +994,9 @@
         "lodash": "0.9.2",
         "minimatch": "0.2.14",
         "nopt": "1.0.10",
-        "rimraf": "2.2.8",
-        "underscore.string": "2.2.1",
-        "which": "1.0.9"
-      }
-    },
-    "grunt-bump": {
-      "version": "0.8.0",
-      "resolved": "https://registry.npmjs.org/grunt-bump/-/grunt-bump-0.8.0.tgz",
-      "integrity": "sha1-0//gzzzws44JYHt4U49CpTHq/lU=",
-      "dev": true,
-      "requires": {
-        "semver": "5.5.0"
+        "rimraf": "2.2.8",
+        "underscore.string": "2.2.1",
+        "which": "1.0.9"
       }
     },
     "grunt-cli": {
@@ -2486,37 +1159,20 @@
         "object-assign": "4.1.1"
       }
     },
-    "handlebars": {
-      "version": "4.0.11",
-      "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.0.11.tgz",
-      "integrity": "sha1-Ywo13+ApS8KB7a5v/F0yn8eYLcw=",
-      "dev": true,
-      "requires": {
-        "async": "1.5.2",
-        "optimist": "0.6.1",
-        "source-map": "0.4.4",
-        "uglify-js": "2.8.29"
-      },
-      "dependencies": {
-        "async": {
-          "version": "1.5.2",
-          "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
-          "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
-          "dev": true
-        }
-      }
+    "hammerjs": {
+      "version": "2.0.8",
+      "resolved": "https://registry.npmjs.org/hammerjs/-/hammerjs-2.0.8.tgz",
+      "integrity": "sha1-BO93hiz/K7edMPdpIJWTAiK/YPE="
     },
     "har-schema": {
       "version": "2.0.0",
       "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
-      "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
-      "dev": true
+      "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI="
     },
     "har-validator": {
       "version": "5.0.3",
       "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.0.3.tgz",
       "integrity": "sha1-ukAsJmGU8VlW7xXg/PJCmT9qff0=",
-      "dev": true,
       "requires": {
         "ajv": "5.5.2",
         "har-schema": "2.0.0"
@@ -2531,46 +1187,15 @@
         "ansi-regex": "2.1.1"
       }
     },
-    "has-binary": {
-      "version": "0.1.7",
-      "resolved": "https://registry.npmjs.org/has-binary/-/has-binary-0.1.7.tgz",
-      "integrity": "sha1-aOYesWIQyVRaClzOBqhzkS/h5ow=",
-      "dev": true,
-      "requires": {
-        "isarray": "0.0.1"
-      },
-      "dependencies": {
-        "isarray": {
-          "version": "0.0.1",
-          "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
-          "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
-          "dev": true
-        }
-      }
-    },
-    "has-cors": {
-      "version": "1.1.0",
-      "resolved": "https://registry.npmjs.org/has-cors/-/has-cors-1.1.0.tgz",
-      "integrity": "sha1-XkdHk/fqmEPRu5nCPu9J/xJv/zk=",
-      "dev": true
-    },
-    "has-flag": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-1.0.0.tgz",
-      "integrity": "sha1-nZ55MWXOAXoA8AQYxD+UKnsdEfo=",
-      "dev": true
-    },
     "has-unicode": {
       "version": "2.0.1",
       "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
-      "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
-      "dev": true
+      "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk="
     },
     "hawk": {
       "version": "6.0.2",
       "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz",
       "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==",
-      "dev": true,
       "requires": {
         "boom": "4.3.1",
         "cryptiles": "3.1.2",
@@ -2581,8 +1206,7 @@
     "hoek": {
       "version": "4.2.1",
       "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz",
-      "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==",
-      "dev": true
+      "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA=="
     },
     "hooker": {
       "version": "0.2.3",
@@ -2596,51 +1220,16 @@
       "integrity": "sha512-lIbgIIQA3lz5XaB6vxakj6sDHADJiZadYEJB+FgA+C4nubM1NwcuvUr9EJPmnH1skZqpqUzWborWo8EIUi0Sdw==",
       "dev": true
     },
-    "http-errors": {
-      "version": "1.6.3",
-      "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
-      "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
-      "dev": true,
-      "requires": {
-        "depd": "1.1.2",
-        "inherits": "2.0.3",
-        "setprototypeof": "1.1.0",
-        "statuses": "1.5.0"
-      }
-    },
-    "http-proxy": {
-      "version": "1.17.0",
-      "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.17.0.tgz",
-      "integrity": "sha512-Taqn+3nNvYRfJ3bGvKfBSRwy1v6eePlm3oc/aWVxZp57DQr5Eq3xhKJi7Z4hZpS8PC3H4qI+Yly5EmFacGuA/g==",
-      "dev": true,
-      "requires": {
-        "eventemitter3": "3.0.1",
-        "follow-redirects": "1.4.1",
-        "requires-port": "1.0.0"
-      }
-    },
     "http-signature": {
       "version": "1.2.0",
       "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
       "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
-      "dev": true,
       "requires": {
         "assert-plus": "1.0.0",
         "jsprim": "1.4.1",
         "sshpk": "1.14.1"
       }
     },
-    "https-proxy-agent": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-1.0.0.tgz",
-      "integrity": "sha1-NffabEjOTdv6JkiRrFk+5f+GceY=",
-      "dev": true,
-      "requires": {
-        "agent-base": "2.1.1",
-        "debug": "2.6.9",
-        "extend": "3.0.1"
-      }
-    },
     "iconv-lite": {
       "version": "0.2.11",
       "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.2.11.tgz",
@@ -2654,7 +1243,6 @@
       "dev": true,
       "optional": true,
       "requires": {
-        "detect-libc": "0.2.0",
         "nan": "2.10.0",
         "node-gyp": "3.6.2",
         "prebuild-install": "2.5.3"
@@ -2675,17 +1263,10 @@
         "repeating": "2.0.1"
       }
     },
-    "indexof": {
-      "version": "0.0.1",
-      "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
-      "integrity": "sha1-gtwzbSMrkGIXnQWrMpOmYFn9Q10=",
-      "dev": true
-    },
     "inflight": {
       "version": "1.0.6",
       "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
       "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
-      "dev": true,
       "requires": {
         "once": "1.4.0",
         "wrappy": "1.0.2"
@@ -2694,14 +1275,14 @@
     "inherits": {
       "version": "2.0.3",
       "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
-      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
-      "dev": true
+      "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
     },
     "ini": {
       "version": "1.3.5",
       "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz",
       "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==",
-      "dev": true
+      "dev": true,
+      "optional": true
     },
     "invert-kv": {
       "version": "1.0.0",
@@ -2715,374 +1296,84 @@
       "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
       "dev": true
     },
-    "is-binary-path": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
-      "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
-      "dev": true,
-      "requires": {
-        "binary-extensions": "1.11.0"
-      }
-    },
-    "is-buffer": {
-      "version": "1.1.6",
-      "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
-      "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
-      "dev": true
-    },
     "is-builtin-module": {
       "version": "1.0.0",
       "resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-1.0.0.tgz",
       "integrity": "sha1-VAVy0096wxGfj3bDDLwbHgN6/74=",
-      "dev": true,
-      "requires": {
-        "builtin-modules": "1.1.1"
-      }
-    },
-    "is-dotfile": {
-      "version": "1.0.3",
-      "resolved": "https://registry.npmjs.org/is-dotfile/-/is-dotfile-1.0.3.tgz",
-      "integrity": "sha1-pqLzL/0t+wT1yiXs0Pa4PPeYoeE=",
-      "dev": true
-    },
-    "is-equal-shallow": {
-      "version": "0.1.3",
-      "resolved": "https://registry.npmjs.org/is-equal-shallow/-/is-equal-shallow-0.1.3.tgz",
-      "integrity": "sha1-IjgJj8Ih3gvPpdnqxMRdY4qhxTQ=",
-      "dev": true,
-      "requires": {
-        "is-primitive": "2.0.0"
-      }
-    },
-    "is-extendable": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
-      "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
-      "dev": true
-    },
-    "is-extglob": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-1.0.0.tgz",
-      "integrity": "sha1-rEaBd8SUNAWgkvyPKXYMb/xiBsA=",
-      "dev": true
-    },
-    "is-finite": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz",
-      "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=",
-      "dev": true,
-      "requires": {
-        "number-is-nan": "1.0.1"
-      }
-    },
-    "is-fullwidth-code-point": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
-      "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
-      "dev": true,
-      "requires": {
-        "number-is-nan": "1.0.1"
-      }
-    },
-    "is-glob": {
-      "version": "2.0.1",
-      "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-2.0.1.tgz",
-      "integrity": "sha1-0Jb5JqPe1WAPP9/ZEZjLCIjC2GM=",
-      "dev": true,
-      "requires": {
-        "is-extglob": "1.0.0"
-      }
-    },
-    "is-my-ip-valid": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
-      "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
-      "dev": true
-    },
-    "is-my-json-valid": {
-      "version": "2.17.2",
-      "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.17.2.tgz",
-      "integrity": "sha512-IBhBslgngMQN8DDSppmgDv7RNrlFotuuDsKcrCP3+HbFaVivIBU7u9oiiErw8sH4ynx3+gOGQ3q2otkgiSi6kg==",
-      "dev": true,
-      "requires": {
-        "generate-function": "2.0.0",
-        "generate-object-property": "1.2.0",
-        "is-my-ip-valid": "1.0.0",
-        "jsonpointer": "4.0.1",
-        "xtend": "4.0.1"
-      }
-    },
-    "is-number": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/is-number/-/is-number-2.1.0.tgz",
-      "integrity": "sha1-Afy7s5NGOlSPL0ZszhbezknbkI8=",
-      "dev": true,
-      "requires": {
-        "kind-of": "3.2.2"
-      }
-    },
-    "is-path-cwd": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
-      "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=",
-      "dev": true
-    },
-    "is-path-in-cwd": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
-      "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
-      "dev": true,
-      "requires": {
-        "is-path-inside": "1.0.1"
-      }
-    },
-    "is-path-inside": {
-      "version": "1.0.1",
-      "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
-      "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
-      "dev": true,
-      "requires": {
-        "path-is-inside": "1.0.2"
-      }
-    },
-    "is-posix-bracket": {
-      "version": "0.1.1",
-      "resolved": "https://registry.npmjs.org/is-posix-bracket/-/is-posix-bracket-0.1.1.tgz",
-      "integrity": "sha1-MzTceXdDaOkvAW5vvAqI9c1ua8Q=",
-      "dev": true
-    },
-    "is-primitive": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/is-primitive/-/is-primitive-2.0.0.tgz",
-      "integrity": "sha1-IHurkWOEmcB7Kt8kCkGochADRXU=",
-      "dev": true
-    },
-    "is-property": {
-      "version": "1.0.2",
-      "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
-      "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
-      "dev": true
-    },
-    "is-typedarray": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
-      "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
-      "dev": true
-    },
-    "is-utf8": {
-      "version": "0.2.1",
-      "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
-      "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
-      "dev": true
-    },
-    "isarray": {
-      "version": "1.0.0",
-      "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
-      "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
-      "dev": true
-    },
-    "isbinaryfile": {
-      "version": "3.0.2",
-      "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-3.0.2.tgz",
-      "integrity": "sha1-Sj6XTsDLqQBNP8bN5yCeppNopiE=",
-      "dev": true
-    },
-    "isexe": {
-      "version": "2.0.0",
-      "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
-      "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
-      "dev": true
-    },
-    "isobject": {
-      "version": "2.1.0",
-      "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
-      "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
-      "dev": true,
-      "requires": {
-        "isarray": "1.0.0"
-      }
-    },
-    "isstream": {
-      "version": "0.1.2",
-      "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
-      "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
-      "dev": true
-    },
-    "istanbul": {
-      "version": "0.4.5",
-      "resolved": "https://registry.npmjs.org/istanbul/-/istanbul-0.4.5.tgz",
-      "integrity": "sha1-ZcfXPUxNqE1POsMQuRj7C4Azczs=",
-      "dev": true,
-      "requires": {
-        "abbrev": "1.0.9",
-        "async": "1.5.2",
-        "escodegen": "1.8.1",
-        "esprima": "2.7.3",
-        "glob": "5.0.15",
-        "handlebars": "4.0.11",
-        "js-yaml": "3.11.0",
-        "mkdirp": "0.5.1",
-        "nopt": "3.0.6",
-        "once": "1.4.0",
-        "resolve": "1.1.7",
-        "supports-color": "3.2.3",
-        "which": "1.3.0",
-        "wordwrap": "1.0.0"
-      },
-      "dependencies": {
-        "abbrev": {
-          "version": "1.0.9",
-          "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.0.9.tgz",
-          "integrity": "sha1-kbR5JYinc4wl813W9jdSovh3YTU=",
-          "dev": true
-        },
-        "argparse": {
-          "version": "1.0.10",
-          "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
-          "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
-          "dev": true,
-          "requires": {
-            "sprintf-js": "1.0.3"
-          }
-        },
-        "async": {
-          "version": "1.5.2",
-          "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz",
-          "integrity": "sha1-7GphrlZIDAw8skHJVhjiCJL5Zyo=",
-          "dev": true
-        },
-        "esprima": {
-          "version": "2.7.3",
-          "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
-          "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
-          "dev": true
-        },
-        "glob": {
-          "version": "5.0.15",
-          "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
-          "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
-          "dev": true,
-          "requires": {
-            "inflight": "1.0.6",
-            "inherits": "2.0.3",
-            "minimatch": "3.0.4",
-            "once": "1.4.0",
-            "path-is-absolute": "1.0.1"
-          }
-        },
-        "js-yaml": {
-          "version": "3.11.0",
-          "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.11.0.tgz",
-          "integrity": "sha512-saJstZWv7oNeOyBh3+Dx1qWzhW0+e6/8eDzo7p5rDFqxntSztloLtuKu+Ejhtq82jsilwOIZYsCz+lIjthg1Hw==",
-          "dev": true,
-          "requires": {
-            "argparse": "1.0.10",
-            "esprima": "4.0.0"
-          },
-          "dependencies": {
-            "esprima": {
-              "version": "4.0.0",
-              "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.0.tgz",
-              "integrity": "sha512-oftTcaMu/EGrEIu904mWteKIv8vMuOgGYo7EhVJJN00R/EED9DCua/xxHRdYnKtcECzVg7xOWhflvJMnqcFZjw==",
-              "dev": true
-            }
-          }
-        },
-        "minimatch": {
-          "version": "3.0.4",
-          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
-          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
-          "dev": true

<TRUNCATED>

[15/19] nifi-fds git commit: [NIFIREG-168] include webapp in src to facilitate local build and review process

Posted by sc...@apache.org.
[NIFIREG-168] include webapp in src to facilitate local build and review process


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/b2b1baa3
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/b2b1baa3
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/b2b1baa3

Branch: refs/heads/gh-pages
Commit: b2b1baa31f6d39955d739eb5f3819d566653a097
Parents: 544c0e4
Author: Scott Aslan <sc...@gmail.com>
Authored: Mon Apr 30 14:56:43 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Mon Apr 30 14:56:43 2018 -0400

----------------------------------------------------------------------
 .github/PULL_REQUEST_TEMPLATE.md                |   12 +-
 .gitignore                                      |    4 +-
 Gruntfile.js                                    |   14 +
 README.md                                       |   40 +-
 gh-pages.index.html                             |   36 +
 gh-pages.package.json                           |   59 +
 gh-pages.systemjs.config.js                     |  132 +
 index.html                                      |   36 +
 karma.conf.js                                   |    3 +-
 package.json                                    |   13 +-
 platform/core/theming/_all-theme.scss           |    4 +-
 platform/systemjs-angular-loader.js             |   66 -
 platform/systemjs.spec.config.js                |   11 -
 scripts/clean-install                           |   21 +
 scripts/clean-install-skipTests                 |   18 +
 scripts/deploy-gh-pages                         |   21 +
 scripts/dev-install                             |   19 +
 scripts/dev-install-skipTests                   |   16 +
 .../dialogs/demo/fds-demo-dialog.html           |   18 +
 .../dialogs/demo/fds-demo-dialog.js             |   59 +
 .../fluid-design-system/fds-demo.html           | 2995 ++++++++++++++++++
 .../components/fluid-design-system/fds-demo.js  | 1066 +++++++
 webapp/fds-bootstrap.js                         |   53 +
 webapp/fds.animations.js                        |  133 +
 webapp/fds.html                                 |   34 +
 webapp/fds.js                                   |   74 +
 webapp/fds.module.js                            |   55 +
 webapp/fds.routes.js                            |   26 +
 webapp/services/fds.service.js                  |   52 +
 webapp/systemjs-angular-loader.js               |   66 +
 webapp/systemjs.config.extras.js                |   27 +
 webapp/systemjs.config.js                       |  142 +
 webapp/theming/_helperClasses.scss              |   78 +
 webapp/theming/_structureElements.scss          |   84 +
 webapp/theming/fds-demo.scss                    |   49 +
 35 files changed, 5415 insertions(+), 121 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/.github/PULL_REQUEST_TEMPLATE.md
----------------------------------------------------------------------
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index cb9093a..25f2d97 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -14,10 +14,9 @@ to ensure the following steps have been taken:
 - [ ] Is your initial contribution a single, squashed commit?
 
 ### For code changes:
-- [ ] Have you ensured that a full build is executed via npm build at the root nifi-fds folder?
-- [ ] Have you ensured that the full suite of tests is executed via npm test at the root nifi-fds folder?
 - [ ] Have you written or updated unit tests to verify your changes?
-- [ ] Have you written or updated the Apache NiFi Fluid Design System Demo application to demonstrate, provide examples of usage, and to verify your changes?
+- [ ] Have you ensured that a full build and that the full suite of unit tests is executed via npm run clean:install at the root nifi-fds folder?
+- [ ] Have you written or updated the Apache NiFi Fluid Design System demo application to demonstrate any new functionality, provide examples of usage, and to verify your changes via npm start at the nifi-fds/target folder?
 - [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)?
 - [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-fds?
 - [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-fds?
@@ -27,10 +26,3 @@ to ensure the following steps have been taken:
 
 ### Note:
 Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
-
-### Reviewers, please perform the following in order to validate the changes:
-- [ ] Checkout the gh-pages branch.
-- [ ] Open the package.json file in the root nifi-fds folder and in the dependencies property edit the nifi-fds module to point to the pull request under review by replacing the user name, repository name, and branch name to the appropriate values for the PR.
-     Ex. To point to the Apache NiFi FDS master branch replace the user, repository, and branch name in the string git+https://github.com/USER_NAME/REPO_NAME.git#PR_BRANCH_NAME to:
-            "nifi-fds": "git+https://github.com/apache/nifi-fds.git#master"
-- [ ] ‘npm start’ in the root nifi-fds folder and verify the UI/UX in a browser.

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index 297f275..a19bd7a 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,8 +1,6 @@
 node_modules/
-coverage/
-platform/core/common/styles/css/
+target/
 npm-debug.log*
-webapp/
 
 # Intellij
 .idea/

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/Gruntfile.js
----------------------------------------------------------------------
diff --git a/Gruntfile.js b/Gruntfile.js
index f4f8ae7..45b43f4 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -29,6 +29,11 @@ module.exports = function (grunt) {
                 files: [{
                     './platform/core/common/styles/css/fluid-design-system.min.css': ['./platform/core/common/styles/fluid-design-system.scss']
                 }]
+            },
+            minifyFdsDemo: {
+                files: [{
+                    './webapp/css/fds-demo.min.css': ['./webapp/theming/fds-demo.scss']
+                }]
             }
         },
         compress: {
@@ -42,6 +47,14 @@ module.exports = function (grunt) {
                     dest: './',
                     ext: '.min.css.gz'
                 }]
+            },
+            fdsDemoStyles: {
+                files: [{
+                    expand: true,
+                    src: ['./webapp/css/fds-demo.min.css'],
+                    dest: './',
+                    ext: '.min.css.gz'
+                }]
             }
         },
         bump: {
@@ -65,4 +78,5 @@ module.exports = function (grunt) {
         }
     });
     grunt.registerTask('compile-fds-styles', ['sass:minifyFds', 'compress:fdsStyles']);
+    grunt.registerTask('compile-fds-demo-styles', ['sass:minifyFdsDemo', 'compress:fdsDemoStyles']);
 };

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/README.md
----------------------------------------------------------------------
diff --git a/README.md b/README.md
index 5ac1f90..cdbce26 100644
--- a/README.md
+++ b/README.md
@@ -77,48 +77,32 @@ npm install
 Next run:
 
 ```bash
-npm run build
+npm run clean:install
 ```
 
-## Testing
-
-Developers can easily test this project using **npm**.
-
-```bash
-npm test
-```
-
-Or, during development:
+or to run without unit tests run:
 
 ```bash
-npm run test:dev
+npm run clean:install:skipTests
 ```
 
-## Release Managment
-
-For developers with permissions releasing a new version of the NiFi Fluid Design System is simple with [grunt bump](https://github.com/vojtajina/grunt-bump)
-
-## Running the demo locally
+## Developing
 
-For developers that would like to contribute to the demo please checkout the `gh-pages` branch:
+Developers can easily skip the re-instalation of node_modules and run unit tests in development mode using **npm**.
 
 ```bash
-git checkout gh-pages
+npm run dev:install
 ```
 
-Next, you will need to update the base url. To do this simply edit the index.html file on line 21:
+or to run without unit tests run:
 
 ```bash
-<base href='/fluid-design-system/'>
+npm run dev:install:skipTests
 ```
 
-should be:
-
-```bash
-<base href='/'>
-```
+## Running locally
 
-Finally, start the application:
+Once built you can start the application from the target directory via:
 
 ```bash
 npm start
@@ -126,3 +110,7 @@ npm start
 
 The demo application should now be availalbe at: [http://127.0.0.1:8080/](http://127.0.0.1:8080/).
 
+## Release Managment
+
+For developers with permissions releasing a new version of the NiFi Fluid Design System is simple with [grunt bump](https://github.com/vojtajina/grunt-bump)
+

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/gh-pages.index.html
----------------------------------------------------------------------
diff --git a/gh-pages.index.html b/gh-pages.index.html
new file mode 100644
index 0000000..e55dbb9
--- /dev/null
+++ b/gh-pages.index.html
@@ -0,0 +1,36 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the 'License'); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+      http://www.apache.org/licenses/LICENSE-2.0
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an 'AS IS' BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE html>
+<html>
+<head>
+    <title>Apache NiFi Fluid Design System Demo</title>
+    <base href='/nifi-fds/'>
+    <meta charset='UTF-8'>
+    <meta name='viewport' content='width=device-width, initial-scale=1'>
+    <meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
+    <link rel="stylesheet" href="node_modules/@covalent/core/common/platform.css">
+    <link rel="stylesheet" href='node_modules/nifi-fds/platform/core/common/styles/css/fluid-design-system.min.css'/>
+    <link rel="stylesheet" href='webapp/css/fds-demo.min.css'/>
+    <link rel='stylesheet' href='node_modules/font-awesome/css/font-awesome.css'/>
+</head>
+<body>
+<fds-app></fds-app>
+</body>
+<script src="node_modules/systemjs/dist/system.src.js"></script>
+<script src="webapp/systemjs.config.js?"></script>
+<script>
+  System.import('webapp/fds-bootstrap.js').catch(function(err) {console.error(err);});
+</script>
+</html>

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/gh-pages.package.json
----------------------------------------------------------------------
diff --git a/gh-pages.package.json b/gh-pages.package.json
new file mode 100644
index 0000000..58da069
--- /dev/null
+++ b/gh-pages.package.json
@@ -0,0 +1,59 @@
+{
+  "name": "nifi-fds-demo",
+  "version": "0.0.0",
+  "scripts": {
+    "start": "./node_modules/http-server/bin/http-server .",
+    "build:webapp": "./node_modules/grunt-cli/bin/grunt compile-fds-demo-styles",
+    "build:platform": "npm install && cd ./node_modules/nifi-fds && npm install && npm run build && rm -rf ./node_modules && rm -rf ./package-lock.json"
+  },
+  "description": "The Apache NiFi Fluid Design System demo provides users with an example web application that consumes the NgModule and allows users to interact with the UI/UX components.",
+  "keywords": [
+    "fluid design system",
+    "angular",
+    "material",
+    "material design",
+    "components",
+    "reusable",
+    "covalent"
+  ],
+  "repository": {
+    "type": "git",
+    "url": "https://github.com/apache/nifi-fds.git"
+  },
+  "bugs": {
+    "url": "https://github.com/apache/nifi-fds/issues"
+  },
+  "license": "Apache License, Version 2.0",
+  "dependencies": {
+    "@angular/animations": "4.4.6",
+    "@angular/cdk": "2.0.0-beta.12",
+    "@angular/common": "4.4.6",
+    "@angular/compiler": "4.4.6",
+    "@angular/core": "4.4.6",
+    "@angular/flex-layout": "2.0.0-beta.9",
+    "@angular/forms": "4.4.6",
+    "@angular/http": "4.4.6",
+    "@angular/material": "2.0.0-beta.12",
+    "@angular/platform-browser": "4.4.6",
+    "@angular/platform-browser-dynamic": "4.4.6",
+    "@angular/router": "4.4.6",
+    "@covalent/core": "1.0.0-beta.8-1",
+    "detect-libc": "1.0.3",
+    "font-awesome": "4.7.0",
+    "hammerjs": "2.0.8",
+    "jquery": "3.2.1",
+    "node-gyp": "3.6.2",
+    "roboto-fontface": "0.7.0",
+    "rxjs": "5.4.3",
+    "systemjs": "0.20.17",
+    "systemjs-plugin-text": "0.0.11",
+    "zone.js": "0.8.7"
+  },
+  "devDependencies": {
+    "grunt": "0.4.5",
+    "grunt-cli": "1.2.0",
+    "grunt-contrib-compress": "1.4.3",
+    "grunt-sass": "2.0.0",
+    "load-grunt-tasks": "3.5.2"
+  }
+}

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/gh-pages.systemjs.config.js
----------------------------------------------------------------------
diff --git a/gh-pages.systemjs.config.js b/gh-pages.systemjs.config.js
new file mode 100644
index 0000000..0fb5328
--- /dev/null
+++ b/gh-pages.systemjs.config.js
@@ -0,0 +1,132 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+(function (global) {
+    System.config({
+        paths: {
+            // paths serve as alias
+            'npm:': 'node_modules/'
+        },
+        // map tells the System loader where to look for things
+        map: {
+            'text': 'npm:systemjs-plugin-text/text.js',
+            'app': './webapp',
+
+            // jquery
+            'jquery': 'npm:jquery/dist/jquery.min.js',
+
+            // Angular
+            '@angular/core': 'npm:@angular/core/bundles/core.umd.js',
+            '@angular/common': 'npm:@angular/common/bundles/common.umd.js',
+            '@angular/common/http': 'npm:@angular/common/bundles/common-http.umd.js',
+            '@angular/common/http/testing': 'npm:@angular/common/bundles/common-http-testing.umd.js',
+            '@angular/platform-browser': 'npm:@angular/platform-browser/bundles/platform-browser.umd.js',
+            '@angular/platform-browser-dynamic': 'npm:@angular/platform-browser-dynamic/bundles/platform-browser-dynamic.umd.js',
+            '@angular/http': 'npm:@angular/http/bundles/http.umd.js',
+            '@angular/router': 'npm:@angular/router/bundles/router.umd.js',
+            '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
+            '@angular/flex-layout': 'npm:@angular/flex-layout/bundles/flex-layout.umd.js',
+            '@angular/material': 'npm:@angular/material/bundles/material.umd.js',
+            '@angular/platform-browser/animations': 'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js',
+            '@angular/cdk': 'npm:@angular/cdk/bundles/cdk.umd.js',
+            '@angular/cdk/a11y': 'npm:@angular/cdk/bundles/cdk-a11y.umd.js',
+            '@angular/cdk/accordion': 'npm:@angular/cdk/bundles/cdk-accordion.umd.js',
+            '@angular/cdk/layout': 'npm:@angular/cdk/bundles/cdk-layout.umd.js',
+            '@angular/cdk/collections': 'npm:@angular/cdk/bundles/cdk-collections.umd.js',
+            '@angular/cdk/observers': 'npm:@angular/cdk/bundles/cdk-observers.umd.js',
+            '@angular/cdk/overlay': 'npm:@angular/cdk/bundles/cdk-overlay.umd.js',
+            '@angular/cdk/platform': 'npm:@angular/cdk/bundles/cdk-platform.umd.js',
+            '@angular/cdk/portal': 'npm:@angular/cdk/bundles/cdk-portal.umd.js',
+            '@angular/cdk/keycodes': 'npm:@angular/cdk/bundles/cdk-keycodes.umd.js',
+            '@angular/cdk/bidi': 'npm:@angular/cdk/bundles/cdk-bidi.umd.js',
+            '@angular/cdk/coercion': 'npm:@angular/cdk/bundles/cdk-coercion.umd.js',
+            '@angular/cdk/table': 'npm:@angular/cdk/bundles/cdk-table.umd.js',
+            '@angular/cdk/rxjs': 'npm:@angular/cdk/bundles/cdk-rxjs.umd.js',
+            '@angular/cdk/scrolling': 'npm:@angular/cdk/bundles/cdk-scrolling.umd.js',
+            '@angular/cdk/stepper': 'npm:@angular/cdk/bundles/cdk-stepper.umd.js',
+            '@angular/animations': 'npm:@angular/animations/bundles/animations.umd.js',
+            '@angular/animations/browser': 'npm:@angular/animations/bundles/animations-browser.umd.js',
+            '@angular/compiler': 'npm:@angular/compiler/bundles/compiler.umd.js',
+
+            // needed to support gestures for angular material
+            'hammerjs': 'npm:hammerjs/hammer.min.js',
+
+            // Covalent
+            '@covalent/core': 'npm:@covalent/core/bundles/core.umd.min.js',
+
+            // other libraries
+            'rxjs': 'npm:rxjs',
+            'zone.js': 'npm:zone.js/dist/zone.js',
+            'core-js': 'npm:core-js/client/shim.min.js',
+            'superagent': 'npm:superagent/superagent.js',
+            'querystring': 'npm:querystring',
+            'tslib': 'npm:tslib/tslib.js',
+
+            // Fluid Design System
+            '@fluid-design-system/core': 'npm:nifi-fds/platform/core/fluid-design-system.module.js',
+            '@fluid-design-system/dialogs': 'npm:nifi-fds/platform/core/dialogs/fds-dialogs.module.js',
+            '@fluid-design-system/dialog-component': 'npm:nifi-fds/platform/core/dialogs/fds-dialog.component.js',
+            '@fluid-design-system/dialog-service': 'npm:nifi-fds/platform/core/dialogs/services/dialog.service.js',
+            '@fluid-design-system/confirm-dialog-component': 'npm:nifi-fds/platform/core/dialogs/confirm-dialog/confirm-dialog.component.js',
+            '@fluid-design-system/snackbars': 'npm:nifi-fds/platform/core/snackbars/fds-snackbars.module.js',
+            '@fluid-design-system/snackbar-component': 'npm:nifi-fds/platform/core/snackbars/fds-snackbar.component.js',
+            '@fluid-design-system/snackbar-service': 'npm:nifi-fds/platform/core/snackbars/services/snackbar.service.js',
+            '@fluid-design-system/coaster-component': 'npm:nifi-fds/platform/core/snackbars/coaster/coaster.component.js'
+        },
+        // packages tells the System loader how to load when no filename and/or no extension
+        packages: {
+            app: {
+                defaultExtension: 'js',
+                meta: {
+                    './*.js': {
+                        loader: 'webapp/systemjs-angular-loader.js'
+                    }
+                }
+            },
+            'webapp/systemjs-angular-loader.js': {
+                loader: false
+            },
+            'rxjs': {
+                defaultExtension: 'js'
+            },
+            'querystring': {
+                main: './index.js',
+                defaultExtension: 'js'
+            },
+            'moment': {
+                main: './moment.js',
+                defaultExtension: 'js'
+            },
+            'angular2-moment': {
+                main: './index.js',
+                defaultExtension: 'js'
+            }
+        }
+    });
+})(this);
+© 2018 GitHub, Inc.
+Terms
+Privacy
+Security
+Status
+Help
+Contact GitHub
+API
+Training
+Shop
+Blog
+About

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/index.html
----------------------------------------------------------------------
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..fb66cad
--- /dev/null
+++ b/index.html
@@ -0,0 +1,36 @@
+<!--
+ Licensed to the Apache Software Foundation (ASF) under one or more
+  contributor license agreements.  See the NOTICE file distributed with
+  this work for additional information regarding copyright ownership.
+  The ASF licenses this file to You under the Apache License, Version 2.0
+  (the 'License'); you may not use this file except in compliance with
+  the License.  You may obtain a copy of the License at
+      http://www.apache.org/licenses/LICENSE-2.0
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an 'AS IS' BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+-->
+<!DOCTYPE html>
+<html>
+<head>
+    <title>Apache NiFi Fluid Design System Demo</title>
+    <base href='/'>
+    <meta charset='UTF-8'>
+    <meta name='viewport' content='width=device-width, initial-scale=1'>
+    <meta http-equiv='Content-Type' content='text/html; charset=UTF-8'/>
+    <link rel="stylesheet" href="node_modules/@covalent/core/common/platform.css">
+    <link rel="stylesheet" href='platform/core/common/styles/css/fluid-design-system.min.css'/>
+    <link rel="stylesheet" href='webapp/css/fds-demo.min.css'/>
+    <link rel='stylesheet' href='node_modules/font-awesome/css/font-awesome.css'/>
+</head>
+<body>
+<fds-app></fds-app>
+</body>
+<script src="node_modules/systemjs/dist/system.src.js"></script>
+<script src="webapp/systemjs.config.js?"></script>
+<script>
+  System.import('webapp/fds-bootstrap.js').catch(function(err) {console.error(err);});
+</script>
+</html>

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/karma.conf.js
----------------------------------------------------------------------
diff --git a/karma.conf.js b/karma.conf.js
index 606aa3e..19f0125 100644
--- a/karma.conf.js
+++ b/karma.conf.js
@@ -91,8 +91,7 @@ module.exports = function (config) {
         // Proxied base paths for loading assets
         proxies: {
             // required for modules fetched by SystemJS
-            '/base/fds/node_modules/': '/base/node_modules/',
-            '/base/systemjs-angular-loader.js': '/base/platform/systemjs-angular-loader.js'
+            '/base/fds/node_modules/': '/base/node_modules/'
         },
 
         exclude: [],

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index 98f05ea..122d380 100644
--- a/package.json
+++ b/package.json
@@ -2,7 +2,14 @@
   "name": "nifi-fds",
   "version": "0.0.0",
   "scripts": {
-    "build": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
+    "start": "./node_modules/http-server/bin/http-server .",
+    "build:webapp": "./node_modules/grunt-cli/bin/grunt compile-fds-demo-styles",
+    "build:platform": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
+    "clean:install": "bash ./scripts/clean-install",
+    "clean:install:skipTests": "bash ./scripts/clean-install-skipTests",
+    "dev:install": "bash ./scripts/dev-install",
+    "dev:install:skipTests": "bash ./scripts/dev-install-skipTests",
+    "deploy:ghpages": "bash ./scripts/deploy-gh-pages",
     "test": "./node_modules/protractor/bin/webdriver-manager update --gecko false && karma start karma.conf.js --single-run",
     "test:dev": "./node_modules/protractor/bin/webdriver-manager update --gecko false && karma start karma.conf.js"
   },
@@ -44,6 +51,9 @@
     "@angular/platform-browser-dynamic": "5.2.0",
     "@angular/router": "5.2.0",
     "@covalent/core": "1.0.0",
+    "detect-libc": "1.0.3",
+    "font-awesome": "4.7.0",
+    "hammerjs": "2.0.8",
     "roboto-fontface": "0.7.0"
   },
   "devDependencies": {
@@ -52,6 +62,7 @@
     "grunt-cli": "1.2.0",
     "grunt-contrib-compress": "1.4.3",
     "grunt-sass": "2.0.0",
+    "http-server": "0.11.1",
     "jasmine-core": "2.8.0",
     "karma": "1.7.1",
     "karma-chrome-launcher": "2.2.0",

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/platform/core/theming/_all-theme.scss
----------------------------------------------------------------------
diff --git a/platform/core/theming/_all-theme.scss b/platform/core/theming/_all-theme.scss
index 66bd9f9..747ab8b 100644
--- a/platform/core/theming/_all-theme.scss
+++ b/platform/core/theming/_all-theme.scss
@@ -15,8 +15,8 @@
 * limitations under the License.
 */
 
-@import '../../../../@angular/material/theming';
-@import '../../../../@covalent/core/theming/all-theme';
+@import '../../../node_modules/@angular/material/theming';
+@import '../../../node_modules/@covalent/core/theming/all-theme';
 @import '../common/styles/buttons';
 @import '../common/styles/expansionPanels';
 @import '../common/styles/menus';

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/platform/systemjs-angular-loader.js
----------------------------------------------------------------------
diff --git a/platform/systemjs-angular-loader.js b/platform/systemjs-angular-loader.js
deleted file mode 100644
index 8e33bb5..0000000
--- a/platform/systemjs-angular-loader.js
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-var templateUrlRegex = /templateUrl\s*:(\s*['"`](.*?)['"`]\s*)/gm;
-var stylesRegex = /styleUrls *:(\s*\[[^\]]*?\])/g;
-var stringRegex = /(['`"])((?:[^\\]\\\1|.)*?)\1/g;
-
-module.exports.translate = function (load) {
-    if (load.source.indexOf('moduleId') != -1) return load;
-
-    var url = document.createElement('a');
-    url.href = load.address;
-
-    var basePathParts = url.pathname.split('/');
-
-    basePathParts.pop();
-    var basePath = basePathParts.join('/');
-
-    var baseHref = document.createElement('a');
-    baseHref.href = this.baseURL;
-    baseHref = baseHref.pathname;
-
-    if (!baseHref.startsWith('/base/')) { // it is not karma
-        basePath = basePath.replace(baseHref, '');
-    }
-
-    load.source = load.source
-        .replace(templateUrlRegex, function (match, quote, url) {
-            var resolvedUrl = url;
-
-            if (url.startsWith('.')) {
-                resolvedUrl = basePath + url.substr(1);
-            }
-
-            return 'templateUrl: "' + resolvedUrl + '"';
-        })
-        .replace(stylesRegex, function (match, relativeUrls) {
-            var urls = [];
-
-            while ((match = stringRegex.exec(relativeUrls)) !== null) {
-                if (match[2].startsWith('.')) {
-                    urls.push('"' + basePath + match[2].substr(1) + '"');
-                } else {
-                    urls.push('"' + match[2] + '"');
-                }
-            }
-
-            return "styleUrls: [" + urls.join(', ') + "]";
-        });
-
-    return load;
-};

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/platform/systemjs.spec.config.js
----------------------------------------------------------------------
diff --git a/platform/systemjs.spec.config.js b/platform/systemjs.spec.config.js
index 9a1281f..1f51a7a 100644
--- a/platform/systemjs.spec.config.js
+++ b/platform/systemjs.spec.config.js
@@ -107,17 +107,6 @@
         },
         // packages tells the System loader how to load when no filename and/or no extension
         packages: {
-            app: {
-                defaultExtension: 'js',
-                meta: {
-                    './*.js': {
-                        loader: 'fds/systemjs-angular-loader.js'
-                    }
-                }
-            },
-            'fds/systemjs-angular-loader.js': {
-                loader: false
-            },
             'rxjs': {
                 defaultExtension: 'js'
             }

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/scripts/clean-install
----------------------------------------------------------------------
diff --git a/scripts/clean-install b/scripts/clean-install
new file mode 100644
index 0000000..a453550
--- /dev/null
+++ b/scripts/clean-install
@@ -0,0 +1,21 @@
+#!/usr/bin/env bash
+set -e
+
+# build
+rm -rf ./target
+mkdir target
+cp -R ./webapp/ ./target/webapp
+cp -R ./platform/ ./target/platform
+cp package.json ./target/package.json
+cp index.html ./target/index.html
+cp karma.conf.js ./target/karma.conf.js
+cp karma-test-shim.js ./target/karma-test-shim.js
+cp Gruntfile.js ./target/Gruntfile.js
+cp gh-pages.* ./target/
+cd ./target
+npm install
+npm run build:webapp
+npm run build:platform
+
+# test
+npm test

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/scripts/clean-install-skipTests
----------------------------------------------------------------------
diff --git a/scripts/clean-install-skipTests b/scripts/clean-install-skipTests
new file mode 100644
index 0000000..c326d70
--- /dev/null
+++ b/scripts/clean-install-skipTests
@@ -0,0 +1,18 @@
+#!/usr/bin/env bash
+set -e
+
+# build
+rm -rf ./target
+mkdir target
+cp -R ./webapp/ ./target/webapp
+cp -R ./platform/ ./target/platform
+cp package.json ./target/package.json
+cp index.html ./target/index.html
+cp karma.conf.js ./target/karma.conf.js
+cp karma-test-shim.js ./target/karma-test-shim.js
+cp Gruntfile.js ./target/Gruntfile.js
+cp gh-pages.* ./target/
+cd ./target
+npm install
+npm run build:webapp
+npm run build:platform

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/scripts/deploy-gh-pages
----------------------------------------------------------------------
diff --git a/scripts/deploy-gh-pages b/scripts/deploy-gh-pages
new file mode 100644
index 0000000..13470d5
--- /dev/null
+++ b/scripts/deploy-gh-pages
@@ -0,0 +1,21 @@
+#!/bin/bash
+npm run clean:install
+echo 'Build Complete'
+git branch -f gh-pages
+git checkout gh-pages
+echo 'Created and Checked out gh-pages branch'
+
+rm -rf ./node_modules/
+cp ./target/gh-pages.package.json ./package.json
+npm install
+mkdir ./node_modules/nifi-fds
+cp -R ./target/platform/ ./node_modules/nifi-fds/platform
+cp -R ./target/webapp/ ./webapp
+cp ./target/gh-pages.index.html ./index.html
+cp ./target/gh-pages.systemjs.config.js ./webapp/systemjs.config.js
+echo 'Tracking files'
+git add -A .
+echo 'Commiting files'
+git commit -a -m 'gh-pages update'
+echo 'Pushing files into gh-pages branch'
+git push apache gh-pages --force

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/scripts/dev-install
----------------------------------------------------------------------
diff --git a/scripts/dev-install b/scripts/dev-install
new file mode 100644
index 0000000..27ae97e
--- /dev/null
+++ b/scripts/dev-install
@@ -0,0 +1,19 @@
+#!/usr/bin/env bash
+set -e
+
+# build
+cp -R ./webapp/ ./target/webapp
+cp -R ./platform/ ./target/platform
+cp package.json ./target/package.json
+cp index.html ./target/index.html
+cp karma.conf.js ./target/karma.conf.js
+cp karma-test-shim.js ./target/karma-test-shim.js
+cp Gruntfile.js ./target/Gruntfile.js
+cp gh-pages.* ./target/
+cd ./target
+npm install
+npm run build:webapp
+npm run build:platform
+
+# test
+npm run test:dev

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/scripts/dev-install-skipTests
----------------------------------------------------------------------
diff --git a/scripts/dev-install-skipTests b/scripts/dev-install-skipTests
new file mode 100644
index 0000000..774750f
--- /dev/null
+++ b/scripts/dev-install-skipTests
@@ -0,0 +1,16 @@
+#!/usr/bin/env bash
+set -e
+
+# build
+cp -R ./webapp/ ./target/webapp
+cp -R ./platform/ ./target/platform
+cp package.json ./target/package.json
+cp index.html ./target/index.html
+cp karma.conf.js ./target/karma.conf.js
+cp karma-test-shim.js ./target/karma-test-shim.js
+cp Gruntfile.js ./target/Gruntfile.js
+cp gh-pages.* ./target/
+cd ./target
+npm install
+npm run build:webapp
+npm run build:platform

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.html
----------------------------------------------------------------------
diff --git a/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.html b/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.html
new file mode 100644
index 0000000..c283684
--- /dev/null
+++ b/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.html
@@ -0,0 +1,18 @@
+<!--
+Licensed to the Apache Software Foundation (ASF) under one or more
+contributor license agreements.  See the NOTICE file distributed with
+this work for additional information regarding copyright ownership.
+The ASF licenses this file to You under the Apache License, Version 2.0
+(the "License"); you may not use this file except in compliance with
+the License.  You may obtain a copy of the License at
+
+http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+-->
+
+<div>Hello Dialog!</div>

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/b2b1baa3/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js
----------------------------------------------------------------------
diff --git a/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js b/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js
new file mode 100644
index 0000000..d3ead2b
--- /dev/null
+++ b/webapp/components/fluid-design-system/dialogs/demo/fds-demo-dialog.js
@@ -0,0 +1,59 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+var ngMaterial = require('@angular/material');
+var ngCore = require('@angular/core');
+
+/**
+ * NfRegistryEditBucketPolicy constructor.
+ *
+ * @param nfRegistryApi         The api service.
+ * @param nfRegistryService     The nf-registry.service module.
+ * @param activatedRoute        The angular route module.
+ * @param matDialogRef          The angular material dialog ref.
+ * @param data                  The data passed into this component.
+ * @constructor
+ */
+function FdsDemoDialog(matDialogRef, data) {
+    // Services
+    this.dialogRef = matDialogRef;
+    this.data = data;
+};
+
+FdsDemoDialog.prototype = {
+    constructor: FdsDemoDialog,
+
+    /**
+     * Cancel creation of a new policy and close dialog.
+     */
+    cancel: function () {
+        this.dialogRef.close();
+    }
+};
+
+FdsDemoDialog.annotations = [
+    new ngCore.Component({
+        template: require('./fds-demo-dialog.html!text')
+    })
+];
+
+FdsDemoDialog.parameters = [
+    ngMaterial.MatDialogRef,
+    ngMaterial.MAT_DIALOG_DATA
+];
+
+module.exports = FdsDemoDialog;


[03/19] nifi-fds git commit: update disabled td-chip style

Posted by sc...@apache.org.
update disabled td-chip style


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/afebff35
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/afebff35
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/afebff35

Branch: refs/heads/gh-pages
Commit: afebff3531e8c7f51bf41b215a24601104fa106d
Parents: 3567be3
Author: Scott Aslan <sc...@gmail.com>
Authored: Wed Mar 28 16:37:13 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Wed Mar 28 16:37:13 2018 -0400

----------------------------------------------------------------------
 .gitignore                                      |    1 +
 package-lock.json                               | 6031 ++++++++++++++++++
 platform/core/common/styles/_chips.scss         |    4 +
 .../styles/css/fluid-design-system.min.css      |    2 +-
 .../styles/css/fluid-design-system.min.css.gz   |  Bin 3176 -> 3198 bytes
 .../styles/css/fluid-design-system.min.css.map  |    2 +-
 6 files changed, 6038 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index f39ae71..ffbb696 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,3 +2,4 @@ node_modules/
 coverage/
 npm-debug.log*
 webapp/
+package-lock.json


[08/19] nifi-fds git commit: [NIFIREG-168] remove package-lock file from .gitignore and remove author info

Posted by sc...@apache.org.
[NIFIREG-168] remove package-lock file from .gitignore and remove author info


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/ec42ec1f
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/ec42ec1f
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/ec42ec1f

Branch: refs/heads/gh-pages
Commit: ec42ec1f04aaf56ff6232940452257b41f4bae2b
Parents: bfce34f
Author: Scott Aslan <sc...@gmail.com>
Authored: Tue Apr 24 15:25:36 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Tue Apr 24 15:25:36 2018 -0400

----------------------------------------------------------------------
 .gitignore   | 1 -
 package.json | 4 ----
 2 files changed, 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/ec42ec1f/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index dc100b8..297f275 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,7 +3,6 @@ coverage/
 platform/core/common/styles/css/
 npm-debug.log*
 webapp/
-package-lock.json
 
 # Intellij
 .idea/

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/ec42ec1f/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index e435153..8cdb70d 100644
--- a/package.json
+++ b/package.json
@@ -25,10 +25,6 @@
     "url": "https://github.com/apache/nifi-fds/issues"
   },
   "license": "Apache License, Version 2.0",
-  "author": "Scott Aslan",
-  "contributors": [
-    "Scott Aslan <sc...@gmail.com>"
-  ],
   "dependencies": {
     "jquery": "3.2.1",
     "rxjs": "5.5.6",


[02/19] nifi-fds git commit: update disabled td-chip style

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/afebff35/package-lock.json
----------------------------------------------------------------------
diff --git a/package-lock.json b/package-lock.json
new file mode 100644
index 0000000..973c80c
--- /dev/null
+++ b/package-lock.json
@@ -0,0 +1,6031 @@
+{
+  "name": "nifi-fds",
+  "version": "0.0.1",
+  "lockfileVersion": 1,
+  "requires": true,
+  "dependencies": {
+    "@angular/animations": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-4.4.6.tgz",
+      "integrity": "sha1-+mYYmaik44y3xYPHpcl85l1ZKjU=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/cdk": {
+      "version": "2.0.0-beta.12",
+      "resolved": "https://registry.npmjs.org/@angular/cdk/-/cdk-2.0.0-beta.12.tgz",
+      "integrity": "sha1-OiQ8tiuT9OA5EgunD5ANyeI1Yi4=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/common": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/common/-/common-4.4.6.tgz",
+      "integrity": "sha1-S4FCByTggooOg5uVpV6xp+g5GPI=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/compiler": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-4.4.6.tgz",
+      "integrity": "sha1-LuH68lt1fh0SiXkHS+f65SmzvCA=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/core": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/core/-/core-4.4.6.tgz",
+      "integrity": "sha1-EwMf0Q3P5DiHVBmzjyESCVi8I1Q=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/flex-layout": {
+      "version": "2.0.0-beta.9",
+      "resolved": "https://registry.npmjs.org/@angular/flex-layout/-/flex-layout-2.0.0-beta.9.tgz",
+      "integrity": "sha1-PlT4mOgF0LFCbRXmE520FdBO518=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/forms": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-4.4.6.tgz",
+      "integrity": "sha1-/mSs5CQ1wbgPSQNLfEHOjK8UpEo=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/http": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/http/-/http-4.4.6.tgz",
+      "integrity": "sha1-CvaAxnEL3AJtlA4iXP0PalwAXQw=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/material": {
+      "version": "2.0.0-beta.12",
+      "resolved": "https://registry.npmjs.org/@angular/material/-/material-2.0.0-beta.12.tgz",
+      "integrity": "sha1-cbbQt7AhiR5dDjaIwdS9eMdFf1g=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/platform-browser": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-4.4.6.tgz",
+      "integrity": "sha1-qYOcVH4bZU+h0kqJeAyLpquNzOA=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/platform-browser-dynamic": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-4.4.6.tgz",
+      "integrity": "sha1-TT2aanvyzz3kBYphWuBZ7/ZB+jY=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@angular/router": {
+      "version": "4.4.6",
+      "resolved": "https://registry.npmjs.org/@angular/router/-/router-4.4.6.tgz",
+      "integrity": "sha1-D2rSmuD/jSyeo3m9MgRHIXt+yGY=",
+      "requires": {
+        "tslib": "1.9.0"
+      }
+    },
+    "@types/jasmine": {
+      "version": "2.8.6",
+      "resolved": "https://registry.npmjs.org/@types/jasmine/-/jasmine-2.8.6.tgz",
+      "integrity": "sha512-clg9raJTY0EOo5pVZKX3ZlMjlYzVU73L71q5OV1jhE2Uezb7oF94jh4CvwrW6wInquQAdhOxJz5VDF2TLUGmmA==",
+      "dev": true
+    },
+    "@types/node": {
+      "version": "6.0.103",
+      "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.103.tgz",
+      "integrity": "sha512-EHU5B9OlENiGEziLiC2XjhjBoVTiX6s4JwZrMHkLQzrzOA0bfZKfcT3fZaalgujcrs2O97VgKaxqguwV+12UJQ==",
+      "dev": true
+    },
+    "@types/q": {
+      "version": "0.0.32",
+      "resolved": "https://registry.npmjs.org/@types/q/-/q-0.0.32.tgz",
+      "integrity": "sha1-vShOV8hPEyXacCur/IKlMoGQwMU=",
+      "dev": true
+    },
+    "@types/selenium-webdriver": {
+      "version": "2.53.37",
+      "resolved": "https://registry.npmjs.org/@types/selenium-webdriver/-/selenium-webdriver-2.53.37.tgz",
+      "integrity": "sha1-NPdDwg5TrnEA7ekIcP3lVN8kR/g=",
+      "dev": true
+    },
+    "abbrev": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
+      "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
+      "dev": true
+    },
+    "accepts": {
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.3.tgz",
+      "integrity": "sha1-w8p0NJOGSMPg2cHjKN1otiLChMo=",
+      "dev": true,
+      "requires": {
+        "mime-types": "2.1.18",
+        "negotiator": "0.6.1"
+      }
+    },
+    "adm-zip": {
+      "version": "0.4.7",
+      "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.4.7.tgz",
+      "integrity": "sha1-hgbCy/HEJs6MjsABdER/1Jtur8E=",
+      "dev": true
+    },
+    "after": {
+      "version": "0.8.2",
+      "resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
+      "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
+      "dev": true
+    },
+    "agent-base": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-2.1.1.tgz",
+      "integrity": "sha1-1t4Q1a9hMtW9aSQn1G/FOFOQlMc=",
+      "dev": true,
+      "requires": {
+        "extend": "3.0.1",
+        "semver": "5.0.3"
+      },
+      "dependencies": {
+        "semver": {
+          "version": "5.0.3",
+          "resolved": "https://registry.npmjs.org/semver/-/semver-5.0.3.tgz",
+          "integrity": "sha1-d0Zt5YnNXTyV8TiqeLxWmjy10no=",
+          "dev": true
+        }
+      }
+    },
+    "ajv": {
+      "version": "5.5.2",
+      "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz",
+      "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=",
+      "dev": true,
+      "requires": {
+        "co": "4.6.0",
+        "fast-deep-equal": "1.1.0",
+        "fast-json-stable-stringify": "2.0.0",
+        "json-schema-traverse": "0.3.1"
+      }
+    },
+    "align-text": {
+      "version": "0.1.4",
+      "resolved": "https://registry.npmjs.org/align-text/-/align-text-0.1.4.tgz",
+      "integrity": "sha1-DNkKVhCT810KmSVsIrcGlDP60Rc=",
+      "dev": true,
+      "requires": {
+        "kind-of": "3.2.2",
+        "longest": "1.0.1",
+        "repeat-string": "1.6.1"
+      }
+    },
+    "amdefine": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
+      "integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
+      "dev": true
+    },
+    "ansi-regex": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+      "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
+      "dev": true
+    },
+    "ansi-styles": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
+      "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
+      "dev": true
+    },
+    "anymatch": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-1.3.2.tgz",
+      "integrity": "sha512-0XNayC8lTHQ2OI8aljNCN3sSx6hsr/1+rlcDAotXJR7C1oZZHCNsfpbKwMjRA3Uqb5tF1Rae2oloTr4xpq+WjA==",
+      "dev": true,
+      "requires": {
+        "micromatch": "2.3.11",
+        "normalize-path": "2.1.1"
+      }
+    },
+    "aproba": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
+      "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
+      "dev": true
+    },
+    "archiver": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/archiver/-/archiver-1.3.0.tgz",
+      "integrity": "sha1-TyGU1tj5nfP1MeaIHxTxXVX6ryI=",
+      "dev": true,
+      "requires": {
+        "archiver-utils": "1.3.0",
+        "async": "2.6.0",
+        "buffer-crc32": "0.2.13",
+        "glob": "7.1.2",
+        "lodash": "4.17.5",
+        "readable-stream": "2.3.5",
+        "tar-stream": "1.5.5",
+        "walkdir": "0.0.11",
+        "zip-stream": "1.2.0"
+      },
+      "dependencies": {
+        "async": {
+          "version": "2.6.0",
+          "resolved": "https://registry.npmjs.org/async/-/async-2.6.0.tgz",
+          "integrity": "sha512-xAfGg1/NTLBBKlHFmnd7PlmUW9KhVQIUuSrYem9xzFUZy13ScvtyGGejaae9iAVRiRq9+Cx7DPFaAAhCpyxyPw==",
+          "dev": true,
+          "requires": {
+            "lodash": "4.17.5"
+          }
+        },
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "lodash": {
+          "version": "4.17.5",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "archiver-utils": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/archiver-utils/-/archiver-utils-1.3.0.tgz",
+      "integrity": "sha1-5QtMCccL89aA4y/xt5lOn52JUXQ=",
+      "dev": true,
+      "requires": {
+        "glob": "7.1.2",
+        "graceful-fs": "4.1.11",
+        "lazystream": "1.0.0",
+        "lodash": "4.17.5",
+        "normalize-path": "2.1.1",
+        "readable-stream": "2.3.5"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "lodash": {
+          "version": "4.17.5",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "are-we-there-yet": {
+      "version": "1.1.4",
+      "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.4.tgz",
+      "integrity": "sha1-u13KOCu5TwXhUZQ3PRb9O6HKEQ0=",
+      "dev": true,
+      "requires": {
+        "delegates": "1.0.0",
+        "readable-stream": "2.3.5"
+      }
+    },
+    "argparse": {
+      "version": "0.1.16",
+      "resolved": "https://registry.npmjs.org/argparse/-/argparse-0.1.16.tgz",
+      "integrity": "sha1-z9AeD7uj1srtBJ+9dY1A9lGW9Xw=",
+      "dev": true,
+      "requires": {
+        "underscore": "1.7.0",
+        "underscore.string": "2.4.0"
+      },
+      "dependencies": {
+        "underscore.string": {
+          "version": "2.4.0",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.4.0.tgz",
+          "integrity": "sha1-jN2PusTi0uoefi6Al8QvRCKA+Fs=",
+          "dev": true
+        }
+      }
+    },
+    "arr-diff": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-2.0.0.tgz",
+      "integrity": "sha1-jzuCf5Vai9ZpaX5KQlasPOrjVs8=",
+      "dev": true,
+      "requires": {
+        "arr-flatten": "1.1.0"
+      }
+    },
+    "arr-flatten": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
+      "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+      "dev": true
+    },
+    "array-differ": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
+      "integrity": "sha1-7/UuN1gknTO+QCuLuOVkuytdQDE=",
+      "dev": true
+    },
+    "array-find-index": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+      "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+      "dev": true
+    },
+    "array-slice": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
+      "integrity": "sha1-3Tz7gO15c6dRF82sabC5nshhhvU=",
+      "dev": true
+    },
+    "array-union": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
+      "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
+      "dev": true,
+      "requires": {
+        "array-uniq": "1.0.3"
+      }
+    },
+    "array-uniq": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
+      "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
+      "dev": true
+    },
+    "array-unique": {
+      "version": "0.2.1",
+      "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.2.1.tgz",
+      "integrity": "sha1-odl8yvy8JiXMcPrc6zalDFiwGlM=",
+      "dev": true
+    },
+    "arraybuffer.slice": {
+      "version": "0.0.6",
+      "resolved": "https://registry.npmjs.org/arraybuffer.slice/-/arraybuffer.slice-0.0.6.tgz",
+      "integrity": "sha1-8zshWfBTKj8xB6JywMz70a0peco=",
+      "dev": true
+    },
+    "arrify": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
+      "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
+      "dev": true
+    },
+    "asn1": {
+      "version": "0.2.3",
+      "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.3.tgz",
+      "integrity": "sha1-2sh4dxPJlmhJ/IGAd36+nB3fO4Y=",
+      "dev": true
+    },
+    "assert-plus": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+      "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
+      "dev": true
+    },
+    "async": {
+      "version": "0.1.22",
+      "resolved": "https://registry.npmjs.org/async/-/async-0.1.22.tgz",
+      "integrity": "sha1-D8GqoIig4+8Ovi2IMbqw3PiEUGE=",
+      "dev": true
+    },
+    "async-each": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.1.tgz",
+      "integrity": "sha1-GdOGodntxufByF04iu28xW0zYC0=",
+      "dev": true
+    },
+    "async-foreach": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
+      "integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
+      "dev": true
+    },
+    "asynckit": {
+      "version": "0.4.0",
+      "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+      "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
+      "dev": true
+    },
+    "aws-sign2": {
+      "version": "0.7.0",
+      "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
+      "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
+      "dev": true
+    },
+    "aws4": {
+      "version": "1.6.0",
+      "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.6.0.tgz",
+      "integrity": "sha1-g+9cqGCysy5KDe7e6MdxudtXRx4=",
+      "dev": true
+    },
+    "backo2": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/backo2/-/backo2-1.0.2.tgz",
+      "integrity": "sha1-MasayLEpNjRj41s+u2n038+6eUc=",
+      "dev": true
+    },
+    "balanced-match": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
+      "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
+      "dev": true
+    },
+    "base64-arraybuffer": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.1.5.tgz",
+      "integrity": "sha1-c5JncZI7Whl0etZmqlzUv5xunOg=",
+      "dev": true
+    },
+    "base64id": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/base64id/-/base64id-1.0.0.tgz",
+      "integrity": "sha1-R2iMuZu2gE8OBtPnY7HDLlfY5rY=",
+      "dev": true
+    },
+    "bcrypt-pbkdf": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.1.tgz",
+      "integrity": "sha1-Y7xdy2EzG5K8Bf1SiVPDNGKgb40=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "tweetnacl": "0.14.5"
+      }
+    },
+    "better-assert": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/better-assert/-/better-assert-1.0.2.tgz",
+      "integrity": "sha1-QIZrnhueC1W0gYlDEeaPr/rrxSI=",
+      "dev": true,
+      "requires": {
+        "callsite": "1.0.0"
+      }
+    },
+    "binary-extensions": {
+      "version": "1.11.0",
+      "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.11.0.tgz",
+      "integrity": "sha1-RqoXUftqL5PuXmibsQh9SxTGwgU=",
+      "dev": true
+    },
+    "bl": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.2.tgz",
+      "integrity": "sha512-e8tQYnZodmebYDWGH7KMRvtzKXaJHx3BbilrgZCfvyLUYdKpK1t5PSPmpkny/SgiTSCnjfLW7v5rlONXVFkQEA==",
+      "dev": true,
+      "requires": {
+        "readable-stream": "2.3.5",
+        "safe-buffer": "5.1.1"
+      }
+    },
+    "blob": {
+      "version": "0.0.4",
+      "resolved": "https://registry.npmjs.org/blob/-/blob-0.0.4.tgz",
+      "integrity": "sha1-vPEwUspURj8w+fx+lbmkdjCpSSE=",
+      "dev": true
+    },
+    "block-stream": {
+      "version": "0.0.9",
+      "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
+      "integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
+      "dev": true,
+      "requires": {
+        "inherits": "2.0.3"
+      }
+    },
+    "bluebird": {
+      "version": "3.5.1",
+      "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz",
+      "integrity": "sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==",
+      "dev": true
+    },
+    "body-parser": {
+      "version": "1.18.2",
+      "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.18.2.tgz",
+      "integrity": "sha1-h2eKGdhLR9hZuDGZvVm84iKxBFQ=",
+      "dev": true,
+      "requires": {
+        "bytes": "3.0.0",
+        "content-type": "1.0.4",
+        "debug": "2.6.9",
+        "depd": "1.1.2",
+        "http-errors": "1.6.2",
+        "iconv-lite": "0.4.19",
+        "on-finished": "2.3.0",
+        "qs": "6.5.1",
+        "raw-body": "2.3.2",
+        "type-is": "1.6.16"
+      },
+      "dependencies": {
+        "iconv-lite": {
+          "version": "0.4.19",
+          "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.19.tgz",
+          "integrity": "sha512-oTZqweIP51xaGPI4uPa56/Pri/480R+mo7SeU+YETByQNhDG55ycFyNLIgta9vXhILrxXDmF7ZGhqZIcuN0gJQ==",
+          "dev": true
+        }
+      }
+    },
+    "boom": {
+      "version": "4.3.1",
+      "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz",
+      "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=",
+      "dev": true,
+      "requires": {
+        "hoek": "4.2.1"
+      }
+    },
+    "brace-expansion": {
+      "version": "1.1.11",
+      "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+      "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+      "dev": true,
+      "requires": {
+        "balanced-match": "1.0.0",
+        "concat-map": "0.0.1"
+      }
+    },
+    "braces": {
+      "version": "1.8.5",
+      "resolved": "https://registry.npmjs.org/braces/-/braces-1.8.5.tgz",
+      "integrity": "sha1-uneWLhLf+WnWt2cR6RS3N4V79qc=",
+      "dev": true,
+      "requires": {
+        "expand-range": "1.8.2",
+        "preserve": "0.2.0",
+        "repeat-element": "1.1.2"
+      }
+    },
+    "buffer-crc32": {
+      "version": "0.2.13",
+      "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+      "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
+      "dev": true
+    },
+    "builtin-modules": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/builtin-modules/-/builtin-modules-1.1.1.tgz",
+      "integrity": "sha1-Jw8HbFpywC9bZaR9+Uxf46J4iS8=",
+      "dev": true
+    },
+    "bytes": {
+      "version": "3.0.0",
+      "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
+      "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
+      "dev": true
+    },
+    "callsite": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
+      "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
+      "dev": true
+    },
+    "camelcase": {
+      "version": "2.1.1",
+      "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+      "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+      "dev": true
+    },
+    "camelcase-keys": {
+      "version": "2.1.0",
+      "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+      "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+      "dev": true,
+      "requires": {
+        "camelcase": "2.1.1",
+        "map-obj": "1.0.1"
+      }
+    },
+    "caseless": {
+      "version": "0.12.0",
+      "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
+      "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
+      "dev": true
+    },
+    "center-align": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/center-align/-/center-align-0.1.3.tgz",
+      "integrity": "sha1-qg0yYptu6XIgBBHL1EYckHvCt60=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "align-text": "0.1.4",
+        "lazy-cache": "1.0.4"
+      }
+    },
+    "chalk": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
+      "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
+      "dev": true,
+      "requires": {
+        "ansi-styles": "2.2.1",
+        "escape-string-regexp": "1.0.5",
+        "has-ansi": "2.0.0",
+        "strip-ansi": "3.0.1",
+        "supports-color": "2.0.0"
+      }
+    },
+    "chokidar": {
+      "version": "1.7.0",
+      "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-1.7.0.tgz",
+      "integrity": "sha1-eY5ol3gVHIB2tLNg5e3SjNortGg=",
+      "dev": true,
+      "requires": {
+        "anymatch": "1.3.2",
+        "async-each": "1.0.1",
+        "fsevents": "1.1.3",
+        "glob-parent": "2.0.0",
+        "inherits": "2.0.3",
+        "is-binary-path": "1.0.1",
+        "is-glob": "2.0.1",
+        "path-is-absolute": "1.0.1",
+        "readdirp": "2.1.0"
+      }
+    },
+    "chownr": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.0.1.tgz",
+      "integrity": "sha1-4qdQQqlVGQi+vSW4Uj1fl2nXkYE=",
+      "dev": true,
+      "optional": true
+    },
+    "cliui": {
+      "version": "3.2.0",
+      "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
+      "integrity": "sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0=",
+      "dev": true,
+      "requires": {
+        "string-width": "1.0.2",
+        "strip-ansi": "3.0.1",
+        "wrap-ansi": "2.1.0"
+      }
+    },
+    "co": {
+      "version": "4.6.0",
+      "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
+      "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
+      "dev": true
+    },
+    "code-point-at": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
+      "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
+      "dev": true
+    },
+    "coffee-script": {
+      "version": "1.3.3",
+      "resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.3.3.tgz",
+      "integrity": "sha1-FQ1rTLUiiUNp7+1qIQHCC8f0pPQ=",
+      "dev": true
+    },
+    "colors": {
+      "version": "0.6.2",
+      "resolved": "https://registry.npmjs.org/colors/-/colors-0.6.2.tgz",
+      "integrity": "sha1-JCP+ZnisDF2uiFLl0OW+CMmXq8w=",
+      "dev": true
+    },
+    "combine-lists": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/combine-lists/-/combine-lists-1.0.1.tgz",
+      "integrity": "sha1-RYwH4J4NkA/Ci3Cj/sLazR0st/Y=",
+      "dev": true,
+      "requires": {
+        "lodash": "4.17.5"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "4.17.5",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "dev": true
+        }
+      }
+    },
+    "combined-stream": {
+      "version": "1.0.6",
+      "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz",
+      "integrity": "sha1-cj599ugBrFYTETp+RFqbactjKBg=",
+      "dev": true,
+      "requires": {
+        "delayed-stream": "1.0.0"
+      }
+    },
+    "commander": {
+      "version": "2.15.1",
+      "resolved": "https://registry.npmjs.org/commander/-/commander-2.15.1.tgz",
+      "integrity": "sha512-VlfT9F3V0v+jr4yxPc5gg9s62/fIVWsd2Bk2iD435um1NlGMYdVCq+MjcXnhYq2icNOizHr1kK+5TI6H0Hy0ag==",
+      "dev": true
+    },
+    "component-bind": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
+      "integrity": "sha1-AMYIq33Nk4l8AAllGx06jh5zu9E=",
+      "dev": true
+    },
+    "component-emitter": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.1.2.tgz",
+      "integrity": "sha1-KWWU8nU9qmOZbSrwjRWpURbJrsM=",
+      "dev": true
+    },
+    "component-inherit": {
+      "version": "0.0.3",
+      "resolved": "https://registry.npmjs.org/component-inherit/-/component-inherit-0.0.3.tgz",
+      "integrity": "sha1-ZF/ErfWLcrZJ1crmUTVhnbJv8UM=",
+      "dev": true
+    },
+    "compress-commons": {
+      "version": "1.2.2",
+      "resolved": "https://registry.npmjs.org/compress-commons/-/compress-commons-1.2.2.tgz",
+      "integrity": "sha1-UkqfEJA/OoEzibAiXSfEi7dRiQ8=",
+      "dev": true,
+      "requires": {
+        "buffer-crc32": "0.2.13",
+        "crc32-stream": "2.0.0",
+        "normalize-path": "2.1.1",
+        "readable-stream": "2.3.5"
+      }
+    },
+    "concat-map": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+      "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+      "dev": true
+    },
+    "connect": {
+      "version": "3.6.6",
+      "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz",
+      "integrity": "sha1-Ce/2xVr3I24TcTWnJXSFi2eG9SQ=",
+      "dev": true,
+      "requires": {
+        "debug": "2.6.9",
+        "finalhandler": "1.1.0",
+        "parseurl": "1.3.2",
+        "utils-merge": "1.0.1"
+      }
+    },
+    "console-control-strings": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
+      "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
+      "dev": true
+    },
+    "content-type": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
+      "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
+      "dev": true
+    },
+    "cookie": {
+      "version": "0.3.1",
+      "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.3.1.tgz",
+      "integrity": "sha1-5+Ch+e9DtMi6klxcWpboBtFoc7s=",
+      "dev": true
+    },
+    "core-js": {
+      "version": "2.5.4",
+      "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.5.4.tgz",
+      "integrity": "sha1-8si/GB8qgLkvNgEhQpzmOi8K6uA=",
+      "dev": true
+    },
+    "core-util-is": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
+      "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+      "dev": true
+    },
+    "crc": {
+      "version": "3.5.0",
+      "resolved": "https://registry.npmjs.org/crc/-/crc-3.5.0.tgz",
+      "integrity": "sha1-mLi6fUiWZbo5efWbITgTdBAaGWQ=",
+      "dev": true
+    },
+    "crc32-stream": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/crc32-stream/-/crc32-stream-2.0.0.tgz",
+      "integrity": "sha1-483TtN8xaN10494/u8t7KX/pCPQ=",
+      "dev": true,
+      "requires": {
+        "crc": "3.5.0",
+        "readable-stream": "2.3.5"
+      }
+    },
+    "cross-spawn": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
+      "integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
+      "dev": true,
+      "requires": {
+        "lru-cache": "4.1.2",
+        "which": "1.3.0"
+      },
+      "dependencies": {
+        "lru-cache": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.2.tgz",
+          "integrity": "sha512-wgeVXhrDwAWnIF/yZARsFnMBtdFXOg1b8RIrhilp+0iDYN4mdQcNZElDZ0e4B64BhaxeQ5zN7PMyvu7we1kPeQ==",
+          "dev": true,
+          "requires": {
+            "pseudomap": "1.0.2",
+            "yallist": "2.1.2"
+          }
+        }
+      }
+    },
+    "cryptiles": {
+      "version": "3.1.2",
+      "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz",
+      "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=",
+      "dev": true,
+      "requires": {
+        "boom": "5.2.0"
+      },
+      "dependencies": {
+        "boom": {
+          "version": "5.2.0",
+          "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz",
+          "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==",
+          "dev": true,
+          "requires": {
+            "hoek": "4.2.1"
+          }
+        }
+      }
+    },
+    "currently-unhandled": {
+      "version": "0.4.1",
+      "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+      "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+      "dev": true,
+      "requires": {
+        "array-find-index": "1.0.2"
+      }
+    },
+    "custom-event": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/custom-event/-/custom-event-1.0.1.tgz",
+      "integrity": "sha1-XQKkaFCt8bSjF5RqOSj8y1v9BCU=",
+      "dev": true
+    },
+    "dashdash": {
+      "version": "1.14.1",
+      "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
+      "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
+      "dev": true,
+      "requires": {
+        "assert-plus": "1.0.0"
+      }
+    },
+    "dateformat": {
+      "version": "1.0.2-1.2.3",
+      "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.2-1.2.3.tgz",
+      "integrity": "sha1-sCIMAt6YYXQztyhRz0fePfLNvuk=",
+      "dev": true
+    },
+    "debug": {
+      "version": "2.6.9",
+      "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+      "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+      "dev": true,
+      "requires": {
+        "ms": "2.0.0"
+      }
+    },
+    "decamelize": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+      "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+      "dev": true
+    },
+    "decompress-response": {
+      "version": "3.3.0",
+      "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz",
+      "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "mimic-response": "1.0.0"
+      }
+    },
+    "deep-extend": {
+      "version": "0.4.2",
+      "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.4.2.tgz",
+      "integrity": "sha1-SLaZwn4zS/ifEIkr5DL25MfTSn8=",
+      "dev": true,
+      "optional": true
+    },
+    "deep-is": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
+      "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
+      "dev": true
+    },
+    "del": {
+      "version": "2.2.2",
+      "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
+      "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
+      "dev": true,
+      "requires": {
+        "globby": "5.0.0",
+        "is-path-cwd": "1.0.0",
+        "is-path-in-cwd": "1.0.1",
+        "object-assign": "4.1.1",
+        "pify": "2.3.0",
+        "pinkie-promise": "2.0.1",
+        "rimraf": "2.6.2"
+      }
+    },
+    "delayed-stream": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+      "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
+      "dev": true
+    },
+    "delegates": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
+      "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
+      "dev": true
+    },
+    "depd": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
+      "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
+      "dev": true
+    },
+    "detect-libc": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-0.2.0.tgz",
+      "integrity": "sha1-R/31ZzSKF+wl/L8LnkRjSKdvn7U=",
+      "dev": true,
+      "optional": true
+    },
+    "di": {
+      "version": "0.0.1",
+      "resolved": "https://registry.npmjs.org/di/-/di-0.0.1.tgz",
+      "integrity": "sha1-gGZJMmzqp8qjMG112YXqJ0i6kTw=",
+      "dev": true
+    },
+    "dom-serialize": {
+      "version": "2.2.1",
+      "resolved": "https://registry.npmjs.org/dom-serialize/-/dom-serialize-2.2.1.tgz",
+      "integrity": "sha1-ViromZ9Evl6jB29UGdzVnrQ6yVs=",
+      "dev": true,
+      "requires": {
+        "custom-event": "1.0.1",
+        "ent": "2.2.0",
+        "extend": "3.0.1",
+        "void-elements": "2.0.1"
+      }
+    },
+    "each-async": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/each-async/-/each-async-1.1.1.tgz",
+      "integrity": "sha1-3uUim98KtrogEqOV4bhpq/iBNHM=",
+      "dev": true,
+      "requires": {
+        "onetime": "1.1.0",
+        "set-immediate-shim": "1.0.1"
+      }
+    },
+    "ecc-jsbn": {
+      "version": "0.1.1",
+      "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.1.tgz",
+      "integrity": "sha1-D8c6ntXw1Tw4GTOYUj735UN3dQU=",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "jsbn": "0.1.1"
+      }
+    },
+    "ee-first": {
+      "version": "1.1.1",
+      "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+      "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
+      "dev": true
+    },
+    "encodeurl": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+      "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
+      "dev": true
+    },
+    "end-of-stream": {
+      "version": "1.4.1",
+      "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.1.tgz",
+      "integrity": "sha512-1MkrZNvWTKCaigbn+W15elq2BB/L22nqrSY5DKlo3X6+vclJm8Bb5djXJBmEX6fS3+zCh/F4VBK5Z2KxJt4s2Q==",
+      "dev": true,
+      "requires": {
+        "once": "1.4.0"
+      }
+    },
+    "engine.io": {
+      "version": "1.8.3",
+      "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-1.8.3.tgz",
+      "integrity": "sha1-jef5eJXSDTm4X4ju7nd7K9QrE9Q=",
+      "dev": true,
+      "requires": {
+        "accepts": "1.3.3",
+        "base64id": "1.0.0",
+        "cookie": "0.3.1",
+        "debug": "2.3.3",
+        "engine.io-parser": "1.3.2",
+        "ws": "1.1.2"
+      },
+      "dependencies": {
+        "debug": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
+          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
+          "dev": true,
+          "requires": {
+            "ms": "0.7.2"
+          }
+        },
+        "ms": {
+          "version": "0.7.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
+          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
+          "dev": true
+        }
+      }
+    },
+    "engine.io-client": {
+      "version": "1.8.3",
+      "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-1.8.3.tgz",
+      "integrity": "sha1-F5jtk0USRkU9TG9jXXogH+lA1as=",
+      "dev": true,
+      "requires": {
+        "component-emitter": "1.2.1",
+        "component-inherit": "0.0.3",
+        "debug": "2.3.3",
+        "engine.io-parser": "1.3.2",
+        "has-cors": "1.1.0",
+        "indexof": "0.0.1",
+        "parsejson": "0.0.3",
+        "parseqs": "0.0.5",
+        "parseuri": "0.0.5",
+        "ws": "1.1.2",
+        "xmlhttprequest-ssl": "1.5.3",
+        "yeast": "0.1.2"
+      },
+      "dependencies": {
+        "component-emitter": {
+          "version": "1.2.1",
+          "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.2.1.tgz",
+          "integrity": "sha1-E3kY1teCg/ffemt8WmPhQOaUJeY=",
+          "dev": true
+        },
+        "debug": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/debug/-/debug-2.3.3.tgz",
+          "integrity": "sha1-QMRT5n5uE8kB3ewxeviYbNqe/4w=",
+          "dev": true,
+          "requires": {
+            "ms": "0.7.2"
+          }
+        },
+        "ms": {
+          "version": "0.7.2",
+          "resolved": "https://registry.npmjs.org/ms/-/ms-0.7.2.tgz",
+          "integrity": "sha1-riXPJRKziFodldfwN4aNhDESR2U=",
+          "dev": true
+        }
+      }
+    },
+    "engine.io-parser": {
+      "version": "1.3.2",
+      "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-1.3.2.tgz",
+      "integrity": "sha1-k3sHnwAH0Ik+xW1GyyILjLQ1Igo=",
+      "dev": true,
+      "requires": {
+        "after": "0.8.2",
+        "arraybuffer.slice": "0.0.6",
+        "base64-arraybuffer": "0.1.5",
+        "blob": "0.0.4",
+        "has-binary": "0.1.7",
+        "wtf-8": "1.0.0"
+      }
+    },
+    "ent": {
+      "version": "2.2.0",
+      "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
+      "integrity": "sha1-6WQhkyWiHQX0RGai9obtbOX13R0=",
+      "dev": true
+    },
+    "error-ex": {
+      "version": "1.3.1",
+      "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.1.tgz",
+      "integrity": "sha1-+FWobOYa3E6GIcPNoh56dhLDqNw=",
+      "dev": true,
+      "requires": {
+        "is-arrayish": "0.2.1"
+      }
+    },
+    "escape-html": {
+      "version": "1.0.3",
+      "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+      "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
+      "dev": true
+    },
+    "escape-string-regexp": {
+      "version": "1.0.5",
+      "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+      "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+      "dev": true
+    },
+    "escodegen": {
+      "version": "1.8.1",
+      "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-1.8.1.tgz",
+      "integrity": "sha1-WltTr0aTEQvrsIZ6o0MN07cKEBg=",
+      "dev": true,
+      "requires": {
+        "esprima": "2.7.3",
+        "estraverse": "1.9.3",
+        "esutils": "2.0.2",
+        "optionator": "0.8.2",
+        "source-map": "0.2.0"
+      },
+      "dependencies": {
+        "esprima": {
+          "version": "2.7.3",
+          "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz",
+          "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=",
+          "dev": true
+        },
+        "source-map": {
+          "version": "0.2.0",
+          "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.2.0.tgz",
+          "integrity": "sha1-2rc/vPwrqBm03gO9b26qSBZLP50=",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "amdefine": "1.0.1"
+          }
+        }
+      }
+    },
+    "esprima": {
+      "version": "1.0.4",
+      "resolved": "https://registry.npmjs.org/esprima/-/esprima-1.0.4.tgz",
+      "integrity": "sha1-n1V+CPw7TSbs6d00+Pv0drYlha0=",
+      "dev": true
+    },
+    "estraverse": {
+      "version": "1.9.3",
+      "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-1.9.3.tgz",
+      "integrity": "sha1-r2fy3JIlgkFZUJJgkaQAXSnJu0Q=",
+      "dev": true
+    },
+    "esutils": {
+      "version": "2.0.2",
+      "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
+      "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
+      "dev": true
+    },
+    "eventemitter2": {
+      "version": "0.4.14",
+      "resolved": "https://registry.npmjs.org/eventemitter2/-/eventemitter2-0.4.14.tgz",
+      "integrity": "sha1-j2G3XN4BKy6esoTUVFWDtWQ7Yas=",
+      "dev": true
+    },
+    "eventemitter3": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-1.2.0.tgz",
+      "integrity": "sha1-HIaZHYFq0eUEdQ5zh0Ik7PO+xQg=",
+      "dev": true
+    },
+    "exit": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
+      "integrity": "sha1-BjJjj42HfMghB9MKD/8aF8uhzQw=",
+      "dev": true
+    },
+    "expand-braces": {
+      "version": "0.1.2",
+      "resolved": "https://registry.npmjs.org/expand-braces/-/expand-braces-0.1.2.tgz",
+      "integrity": "sha1-SIsdHSRRyz06axks/AMPRMWFX+o=",
+      "dev": true,
+      "requires": {
+        "array-slice": "0.2.3",
+        "array-unique": "0.2.1",
+        "braces": "0.1.5"
+      },
+      "dependencies": {
+        "braces": {
+          "version": "0.1.5",
+          "resolved": "https://registry.npmjs.org/braces/-/braces-0.1.5.tgz",
+          "integrity": "sha1-wIVxEIUpHYt1/ddOqw+FlygHEeY=",
+          "dev": true,
+          "requires": {
+            "expand-range": "0.1.1"
+          }
+        },
+        "expand-range": {
+          "version": "0.1.1",
+          "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-0.1.1.tgz",
+          "integrity": "sha1-TLjtoJk8pW+k9B/ELzy7TMrf8EQ=",
+          "dev": true,
+          "requires": {
+            "is-number": "0.1.1",
+            "repeat-string": "0.2.2"
+          }
+        },
+        "is-number": {
+          "version": "0.1.1",
+          "resolved": "https://registry.npmjs.org/is-number/-/is-number-0.1.1.tgz",
+          "integrity": "sha1-aaevEWlj1HIG7JvZtIoUIW8eOAY=",
+          "dev": true
+        },
+        "repeat-string": {
+          "version": "0.2.2",
+          "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-0.2.2.tgz",
+          "integrity": "sha1-x6jTI2BoNiBZp+RlH8aITosftK4=",
+          "dev": true
+        }
+      }
+    },
+    "expand-brackets": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-0.1.5.tgz",
+      "integrity": "sha1-3wcoTjQqgHzXM6xa9yQR5YHRF3s=",
+      "dev": true,
+      "requires": {
+        "is-posix-bracket": "0.1.1"
+      }
+    },
+    "expand-range": {
+      "version": "1.8.2",
+      "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz",
+      "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=",
+      "dev": true,
+      "requires": {
+        "fill-range": "2.2.3"
+      }
+    },
+    "expand-template": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-1.1.0.tgz",
+      "integrity": "sha512-kkjwkMqj0h4w/sb32ERCDxCQkREMCAgS39DscDnSwDsbxnwwM1BTZySdC3Bn1lhY7vL08n9GoO/fVTynjDgRyQ==",
+      "dev": true,
+      "optional": true
+    },
+    "extend": {
+      "version": "3.0.1",
+      "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.1.tgz",
+      "integrity": "sha1-p1Xqe8Gt/MWjHOfnYtuq3F5jZEQ=",
+      "dev": true
+    },
+    "extglob": {
+      "version": "0.3.2",
+      "resolved": "https://registry.npmjs.org/extglob/-/extglob-0.3.2.tgz",
+      "integrity": "sha1-Lhj/PS9JqydlzskCPwEdqo2DSaE=",
+      "dev": true,
+      "requires": {
+        "is-extglob": "1.0.0"
+      }
+    },
+    "extsprintf": {
+      "version": "1.3.0",
+      "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
+      "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
+      "dev": true
+    },
+    "fast-deep-equal": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz",
+      "integrity": "sha1-wFNHeBfIa1HaqFPIHgWbcz0CNhQ=",
+      "dev": true
+    },
+    "fast-json-stable-stringify": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz",
+      "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=",
+      "dev": true
+    },
+    "fast-levenshtein": {
+      "version": "2.0.6",
+      "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+      "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
+      "dev": true
+    },
+    "filename-regex": {
+      "version": "2.0.1",
+      "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
+      "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=",
+      "dev": true
+    },
+    "fill-range": {
+      "version": "2.2.3",
+      "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz",
+      "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=",
+      "dev": true,
+      "requires": {
+        "is-number": "2.1.0",
+        "isobject": "2.1.0",
+        "randomatic": "1.1.7",
+        "repeat-element": "1.1.2",
+        "repeat-string": "1.6.1"
+      }
+    },
+    "finalhandler": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz",
+      "integrity": "sha1-zgtoVbRYU+eRsvzGgARtiCU91/U=",
+      "dev": true,
+      "requires": {
+        "debug": "2.6.9",
+        "encodeurl": "1.0.2",
+        "escape-html": "1.0.3",
+        "on-finished": "2.3.0",
+        "parseurl": "1.3.2",
+        "statuses": "1.3.1",
+        "unpipe": "1.0.0"
+      },
+      "dependencies": {
+        "statuses": {
+          "version": "1.3.1",
+          "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz",
+          "integrity": "sha1-+vUbnrdKrvOzrPStX2Gr8ky3uT4=",
+          "dev": true
+        }
+      }
+    },
+    "find-up": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+      "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+      "dev": true,
+      "requires": {
+        "path-exists": "2.1.0",
+        "pinkie-promise": "2.0.1"
+      }
+    },
+    "findup-sync": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.1.3.tgz",
+      "integrity": "sha1-fz56l7gjksZTvwZYm9hRkOk8NoM=",
+      "dev": true,
+      "requires": {
+        "glob": "3.2.11",
+        "lodash": "2.4.2"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        }
+      }
+    },
+    "for-in": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
+      "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
+      "dev": true
+    },
+    "for-own": {
+      "version": "0.1.5",
+      "resolved": "https://registry.npmjs.org/for-own/-/for-own-0.1.5.tgz",
+      "integrity": "sha1-UmXGgaTylNq78XyVCbZ2OqhFEM4=",
+      "dev": true,
+      "requires": {
+        "for-in": "1.0.2"
+      }
+    },
+    "forever-agent": {
+      "version": "0.6.1",
+      "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
+      "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
+      "dev": true
+    },
+    "form-data": {
+      "version": "2.3.2",
+      "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.2.tgz",
+      "integrity": "sha1-SXBJi+YEwgwAXU9cI67NIda0kJk=",
+      "dev": true,
+      "requires": {
+        "asynckit": "0.4.0",
+        "combined-stream": "1.0.6",
+        "mime-types": "2.1.18"
+      }
+    },
+    "fs-access": {
+      "version": "1.0.1",
+      "resolved": "https://registry.npmjs.org/fs-access/-/fs-access-1.0.1.tgz",
+      "integrity": "sha1-1qh/JiJxzv6+wwxVNAf7mV2od3o=",
+      "dev": true,
+      "requires": {
+        "null-check": "1.0.0"
+      }
+    },
+    "fs.realpath": {
+      "version": "1.0.0",
+      "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+      "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+      "dev": true
+    },
+    "fsevents": {
+      "version": "1.1.3",
+      "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.1.3.tgz",
+      "integrity": "sha512-WIr7iDkdmdbxu/Gh6eKEZJL6KPE74/5MEsf2whTOFNxbIoIixogroLdKYqB6FDav4Wavh/lZdzzd3b2KxIXC5Q==",
+      "dev": true,
+      "optional": true,
+      "requires": {
+        "nan": "2.10.0",
+        "node-pre-gyp": "0.6.39"
+      },
+      "dependencies": {
+        "abbrev": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "ajv": {
+          "version": "4.11.8",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "co": "4.6.0",
+            "json-stable-stringify": "1.0.1"
+          }
+        },
+        "ansi-regex": {
+          "version": "2.1.1",
+          "bundled": true,
+          "dev": true
+        },
+        "aproba": {
+          "version": "1.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "are-we-there-yet": {
+          "version": "1.1.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "delegates": "1.0.0",
+            "readable-stream": "2.2.9"
+          }
+        },
+        "asn1": {
+          "version": "0.2.3",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "assert-plus": {
+          "version": "0.2.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "asynckit": {
+          "version": "0.4.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "aws-sign2": {
+          "version": "0.6.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "aws4": {
+          "version": "1.6.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "balanced-match": {
+          "version": "0.4.2",
+          "bundled": true,
+          "dev": true
+        },
+        "bcrypt-pbkdf": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "tweetnacl": "0.14.5"
+          }
+        },
+        "block-stream": {
+          "version": "0.0.9",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "inherits": "2.0.3"
+          }
+        },
+        "boom": {
+          "version": "2.10.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "hoek": "2.16.3"
+          }
+        },
+        "brace-expansion": {
+          "version": "1.1.7",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "balanced-match": "0.4.2",
+            "concat-map": "0.0.1"
+          }
+        },
+        "buffer-shims": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true
+        },
+        "caseless": {
+          "version": "0.12.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "co": {
+          "version": "4.6.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "code-point-at": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true
+        },
+        "combined-stream": {
+          "version": "1.0.5",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "delayed-stream": "1.0.0"
+          }
+        },
+        "concat-map": {
+          "version": "0.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "console-control-strings": {
+          "version": "1.1.0",
+          "bundled": true,
+          "dev": true
+        },
+        "core-util-is": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true
+        },
+        "cryptiles": {
+          "version": "2.0.5",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "boom": "2.10.1"
+          }
+        },
+        "dashdash": {
+          "version": "1.14.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "assert-plus": "1.0.0"
+          },
+          "dependencies": {
+            "assert-plus": {
+              "version": "1.0.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "debug": {
+          "version": "2.6.8",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ms": "2.0.0"
+          }
+        },
+        "deep-extend": {
+          "version": "0.4.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "delayed-stream": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true
+        },
+        "delegates": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "detect-libc": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "ecc-jsbn": {
+          "version": "0.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "jsbn": "0.1.1"
+          }
+        },
+        "extend": {
+          "version": "3.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "extsprintf": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true
+        },
+        "forever-agent": {
+          "version": "0.6.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "form-data": {
+          "version": "2.1.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "asynckit": "0.4.0",
+            "combined-stream": "1.0.5",
+            "mime-types": "2.1.15"
+          }
+        },
+        "fs.realpath": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true
+        },
+        "fstream": {
+          "version": "1.0.11",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "graceful-fs": "4.1.11",
+            "inherits": "2.0.3",
+            "mkdirp": "0.5.1",
+            "rimraf": "2.6.1"
+          }
+        },
+        "fstream-ignore": {
+          "version": "1.0.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "fstream": "1.0.11",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4"
+          }
+        },
+        "gauge": {
+          "version": "2.7.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "aproba": "1.1.1",
+            "console-control-strings": "1.1.0",
+            "has-unicode": "2.0.1",
+            "object-assign": "4.1.1",
+            "signal-exit": "3.0.2",
+            "string-width": "1.0.2",
+            "strip-ansi": "3.0.1",
+            "wide-align": "1.1.2"
+          }
+        },
+        "getpass": {
+          "version": "0.1.7",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "assert-plus": "1.0.0"
+          },
+          "dependencies": {
+            "assert-plus": {
+              "version": "1.0.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "glob": {
+          "version": "7.1.2",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "graceful-fs": {
+          "version": "4.1.11",
+          "bundled": true,
+          "dev": true
+        },
+        "har-schema": {
+          "version": "1.0.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "har-validator": {
+          "version": "4.2.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ajv": "4.11.8",
+            "har-schema": "1.0.5"
+          }
+        },
+        "has-unicode": {
+          "version": "2.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "hawk": {
+          "version": "3.1.3",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "boom": "2.10.1",
+            "cryptiles": "2.0.5",
+            "hoek": "2.16.3",
+            "sntp": "1.0.9"
+          }
+        },
+        "hoek": {
+          "version": "2.16.3",
+          "bundled": true,
+          "dev": true
+        },
+        "http-signature": {
+          "version": "1.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "assert-plus": "0.2.0",
+            "jsprim": "1.4.0",
+            "sshpk": "1.13.0"
+          }
+        },
+        "inflight": {
+          "version": "1.0.6",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "once": "1.4.0",
+            "wrappy": "1.0.2"
+          }
+        },
+        "inherits": {
+          "version": "2.0.3",
+          "bundled": true,
+          "dev": true
+        },
+        "ini": {
+          "version": "1.3.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "is-fullwidth-code-point": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "number-is-nan": "1.0.1"
+          }
+        },
+        "is-typedarray": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "isarray": {
+          "version": "1.0.0",
+          "bundled": true,
+          "dev": true
+        },
+        "isstream": {
+          "version": "0.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "jodid25519": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "jsbn": "0.1.1"
+          }
+        },
+        "jsbn": {
+          "version": "0.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "json-schema": {
+          "version": "0.2.3",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "json-stable-stringify": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "jsonify": "0.0.0"
+          }
+        },
+        "json-stringify-safe": {
+          "version": "5.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "jsonify": {
+          "version": "0.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "jsprim": {
+          "version": "1.4.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "assert-plus": "1.0.0",
+            "extsprintf": "1.0.2",
+            "json-schema": "0.2.3",
+            "verror": "1.3.6"
+          },
+          "dependencies": {
+            "assert-plus": {
+              "version": "1.0.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "mime-db": {
+          "version": "1.27.0",
+          "bundled": true,
+          "dev": true
+        },
+        "mime-types": {
+          "version": "2.1.15",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "mime-db": "1.27.0"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.7"
+          }
+        },
+        "minimist": {
+          "version": "0.0.8",
+          "bundled": true,
+          "dev": true
+        },
+        "mkdirp": {
+          "version": "0.5.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "minimist": "0.0.8"
+          }
+        },
+        "ms": {
+          "version": "2.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "node-pre-gyp": {
+          "version": "0.6.39",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "detect-libc": "1.0.2",
+            "hawk": "3.1.3",
+            "mkdirp": "0.5.1",
+            "nopt": "4.0.1",
+            "npmlog": "4.1.0",
+            "rc": "1.2.1",
+            "request": "2.81.0",
+            "rimraf": "2.6.1",
+            "semver": "5.3.0",
+            "tar": "2.2.1",
+            "tar-pack": "3.4.0"
+          }
+        },
+        "nopt": {
+          "version": "4.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "abbrev": "1.1.0",
+            "osenv": "0.1.4"
+          }
+        },
+        "npmlog": {
+          "version": "4.1.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "are-we-there-yet": "1.1.4",
+            "console-control-strings": "1.1.0",
+            "gauge": "2.7.4",
+            "set-blocking": "2.0.0"
+          }
+        },
+        "number-is-nan": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "oauth-sign": {
+          "version": "0.8.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "object-assign": {
+          "version": "4.1.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "once": {
+          "version": "1.4.0",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "wrappy": "1.0.2"
+          }
+        },
+        "os-homedir": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "os-tmpdir": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "osenv": {
+          "version": "0.1.4",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "os-homedir": "1.0.2",
+            "os-tmpdir": "1.0.2"
+          }
+        },
+        "path-is-absolute": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "performance-now": {
+          "version": "0.2.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "process-nextick-args": {
+          "version": "1.0.7",
+          "bundled": true,
+          "dev": true
+        },
+        "punycode": {
+          "version": "1.4.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "qs": {
+          "version": "6.4.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "rc": {
+          "version": "1.2.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "deep-extend": "0.4.2",
+            "ini": "1.3.4",
+            "minimist": "1.2.0",
+            "strip-json-comments": "2.0.1"
+          },
+          "dependencies": {
+            "minimist": {
+              "version": "1.2.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "readable-stream": {
+          "version": "2.2.9",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "buffer-shims": "1.0.0",
+            "core-util-is": "1.0.2",
+            "inherits": "2.0.3",
+            "isarray": "1.0.0",
+            "process-nextick-args": "1.0.7",
+            "string_decoder": "1.0.1",
+            "util-deprecate": "1.0.2"
+          }
+        },
+        "request": {
+          "version": "2.81.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "aws-sign2": "0.6.0",
+            "aws4": "1.6.0",
+            "caseless": "0.12.0",
+            "combined-stream": "1.0.5",
+            "extend": "3.0.1",
+            "forever-agent": "0.6.1",
+            "form-data": "2.1.4",
+            "har-validator": "4.2.1",
+            "hawk": "3.1.3",
+            "http-signature": "1.1.1",
+            "is-typedarray": "1.0.0",
+            "isstream": "0.1.2",
+            "json-stringify-safe": "5.0.1",
+            "mime-types": "2.1.15",
+            "oauth-sign": "0.8.2",
+            "performance-now": "0.2.0",
+            "qs": "6.4.0",
+            "safe-buffer": "5.0.1",
+            "stringstream": "0.0.5",
+            "tough-cookie": "2.3.2",
+            "tunnel-agent": "0.6.0",
+            "uuid": "3.0.1"
+          }
+        },
+        "rimraf": {
+          "version": "2.6.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "glob": "7.1.2"
+          }
+        },
+        "safe-buffer": {
+          "version": "5.0.1",
+          "bundled": true,
+          "dev": true
+        },
+        "semver": {
+          "version": "5.3.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "set-blocking": {
+          "version": "2.0.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "signal-exit": {
+          "version": "3.0.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "sntp": {
+          "version": "1.0.9",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "hoek": "2.16.3"
+          }
+        },
+        "sshpk": {
+          "version": "1.13.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "asn1": "0.2.3",
+            "assert-plus": "1.0.0",
+            "bcrypt-pbkdf": "1.0.1",
+            "dashdash": "1.14.1",
+            "ecc-jsbn": "0.1.1",
+            "getpass": "0.1.7",
+            "jodid25519": "1.0.2",
+            "jsbn": "0.1.1",
+            "tweetnacl": "0.14.5"
+          },
+          "dependencies": {
+            "assert-plus": {
+              "version": "1.0.0",
+              "bundled": true,
+              "dev": true,
+              "optional": true
+            }
+          }
+        },
+        "string-width": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "code-point-at": "1.1.0",
+            "is-fullwidth-code-point": "1.0.0",
+            "strip-ansi": "3.0.1"
+          }
+        },
+        "string_decoder": {
+          "version": "1.0.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "safe-buffer": "5.0.1"
+          }
+        },
+        "stringstream": {
+          "version": "0.0.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "strip-ansi": {
+          "version": "3.0.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "ansi-regex": "2.1.1"
+          }
+        },
+        "strip-json-comments": {
+          "version": "2.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "tar": {
+          "version": "2.2.1",
+          "bundled": true,
+          "dev": true,
+          "requires": {
+            "block-stream": "0.0.9",
+            "fstream": "1.0.11",
+            "inherits": "2.0.3"
+          }
+        },
+        "tar-pack": {
+          "version": "3.4.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "debug": "2.6.8",
+            "fstream": "1.0.11",
+            "fstream-ignore": "1.0.5",
+            "once": "1.4.0",
+            "readable-stream": "2.2.9",
+            "rimraf": "2.6.1",
+            "tar": "2.2.1",
+            "uid-number": "0.0.6"
+          }
+        },
+        "tough-cookie": {
+          "version": "2.3.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "punycode": "1.4.1"
+          }
+        },
+        "tunnel-agent": {
+          "version": "0.6.0",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "safe-buffer": "5.0.1"
+          }
+        },
+        "tweetnacl": {
+          "version": "0.14.5",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "uid-number": {
+          "version": "0.0.6",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "util-deprecate": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true
+        },
+        "uuid": {
+          "version": "3.0.1",
+          "bundled": true,
+          "dev": true,
+          "optional": true
+        },
+        "verror": {
+          "version": "1.3.6",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "extsprintf": "1.0.2"
+          }
+        },
+        "wide-align": {
+          "version": "1.1.2",
+          "bundled": true,
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "string-width": "1.0.2"
+          }
+        },
+        "wrappy": {
+          "version": "1.0.2",
+          "bundled": true,
+          "dev": true
+        }
+      }
+    },
+    "fstream": {
+      "version": "1.0.11",
+      "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.11.tgz",
+      "integrity": "sha1-XB+x8RdHcRTwYyoOtLcbPLD9MXE=",
+      "dev": true,
+      "requires": {
+        "graceful-fs": "4.1.11",
+        "inherits": "2.0.3",
+        "mkdirp": "0.5.1",
+        "rimraf": "2.6.2"
+      }
+    },
+    "gauge": {
+      "version": "2.7.4",
+      "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
+      "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
+      "dev": true,
+      "requires": {
+        "aproba": "1.2.0",
+        "console-control-strings": "1.1.0",
+        "has-unicode": "2.0.1",
+        "object-assign": "4.1.1",
+        "signal-exit": "3.0.2",
+        "string-width": "1.0.2",
+        "strip-ansi": "3.0.1",
+        "wide-align": "1.1.2"
+      }
+    },
+    "gaze": {
+      "version": "1.1.2",
+      "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.2.tgz",
+      "integrity": "sha1-hHIkZ3rbiHDWeSV+0ziP22HkAQU=",
+      "dev": true,
+      "requires": {
+        "globule": "1.2.0"
+      }
+    },
+    "generate-function": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.0.0.tgz",
+      "integrity": "sha1-aFj+fAlpt9TpCTM3ZHrHn2DfvnQ=",
+      "dev": true
+    },
+    "generate-object-property": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
+      "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
+      "dev": true,
+      "requires": {
+        "is-property": "1.0.2"
+      }
+    },
+    "get-caller-file": {
+      "version": "1.0.2",
+      "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.2.tgz",
+      "integrity": "sha1-9wLmMSfn4jHBYKgMFVSstw1QR+U=",
+      "dev": true
+    },
+    "get-stdin": {
+      "version": "4.0.1",
+      "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+      "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+      "dev": true
+    },
+    "getobject": {
+      "version": "0.1.0",
+      "resolved": "https://registry.npmjs.org/getobject/-/getobject-0.1.0.tgz",
+      "integrity": "sha1-BHpEl4n6Fg0Bj1SG7ZEyC27HiFw=",
+      "dev": true
+    },
+    "getpass": {
+      "version": "0.1.7",
+      "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
+      "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
+      "dev": true,
+      "requires": {
+        "assert-plus": "1.0.0"
+      }
+    },
+    "github-from-package": {
+      "version": "0.0.0",
+      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
+      "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=",
+      "dev": true,
+      "optional": true
+    },
+    "glob": {
+      "version": "3.2.11",
+      "resolved": "https://registry.npmjs.org/glob/-/glob-3.2.11.tgz",
+      "integrity": "sha1-Spc/Y1uRkPcV0QmH1cAP0oFevj0=",
+      "dev": true,
+      "requires": {
+        "inherits": "2.0.3",
+        "minimatch": "0.3.0"
+      }
+    },
+    "glob-base": {
+      "version": "0.3.0",
+      "resolved": "https://registry.npmjs.org/glob-base/-/glob-base-0.3.0.tgz",
+      "integrity": "sha1-27Fk9iIbHAscz4Kuoyi0l98Oo8Q=",
+      "dev": true,
+      "requires": {
+        "glob-parent": "2.0.0",
+        "is-glob": "2.0.1"
+      }
+    },
+    "glob-parent": {
+      "version": "2.0.0",
+      "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-2.0.0.tgz",
+      "integrity": "sha1-gTg9ctsFT8zPUzbaqQLxgvbtuyg=",
+      "dev": true,
+      "requires": {
+        "is-glob": "2.0.1"
+      }
+    },
+    "globby": {
+      "version": "5.0.0",
+      "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
+      "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
+      "dev": true,
+      "requires": {
+        "array-union": "1.0.2",
+        "arrify": "1.0.1",
+        "glob": "7.1.2",
+        "object-assign": "4.1.1",
+        "pify": "2.3.0",
+        "pinkie-promise": "2.0.1"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "globule": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/globule/-/globule-1.2.0.tgz",
+      "integrity": "sha1-HcScaCLdnoovoAuiopUAboZkvQk=",
+      "dev": true,
+      "requires": {
+        "glob": "7.1.2",
+        "lodash": "4.17.5",
+        "minimatch": "3.0.4"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "7.1.2",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.2.tgz",
+          "integrity": "sha512-MJTUg1kjuLeQCJ+ccE4Vpa6kKVXkPYJ2mOCQyUuKLcLQsdrMCpBPUi8qVE6+YuaJkozeA9NusTAw3hLr8Xe5EQ==",
+          "dev": true,
+          "requires": {
+            "fs.realpath": "1.0.0",
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "lodash": {
+          "version": "4.17.5",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "graceful-fs": {
+      "version": "4.1.11",
+      "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
+      "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
+      "dev": true
+    },
+    "grunt": {
+      "version": "0.4.5",
+      "resolved": "https://registry.npmjs.org/grunt/-/grunt-0.4.5.tgz",
+      "integrity": "sha1-VpN81RlDJK3/bSB2MYMqnWuk5/A=",
+      "dev": true,
+      "requires": {
+        "async": "0.1.22",
+        "coffee-script": "1.3.3",
+        "colors": "0.6.2",
+        "dateformat": "1.0.2-1.2.3",
+        "eventemitter2": "0.4.14",
+        "exit": "0.1.2",
+        "findup-sync": "0.1.3",
+        "getobject": "0.1.0",
+        "glob": "3.1.21",
+        "grunt-legacy-log": "0.1.3",
+        "grunt-legacy-util": "0.2.0",
+        "hooker": "0.2.3",
+        "iconv-lite": "0.2.11",
+        "js-yaml": "2.0.5",
+        "lodash": "0.9.2",
+        "minimatch": "0.2.14",
+        "nopt": "1.0.10",
+        "rimraf": "2.2.8",
+        "underscore.string": "2.2.1",
+        "which": "1.0.9"
+      },
+      "dependencies": {
+        "glob": {
+          "version": "3.1.21",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-3.1.21.tgz",
+          "integrity": "sha1-0p4KBV3qUTj00H7UDomC6DwgZs0=",
+          "dev": true,
+          "requires": {
+            "graceful-fs": "1.2.3",
+            "inherits": "1.0.2",
+            "minimatch": "0.2.14"
+          }
+        },
+        "graceful-fs": {
+          "version": "1.2.3",
+          "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-1.2.3.tgz",
+          "integrity": "sha1-FaSAaldUfLLS2/J/QuiajDRRs2Q=",
+          "dev": true
+        },
+        "inherits": {
+          "version": "1.0.2",
+          "resolved": "https://registry.npmjs.org/inherits/-/inherits-1.0.2.tgz",
+          "integrity": "sha1-ykMJ2t7mtUzAuNJH6NfHoJdb3Js=",
+          "dev": true
+        },
+        "minimatch": {
+          "version": "0.2.14",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-0.2.14.tgz",
+          "integrity": "sha1-x054BXT2PG+aCQ6Q775u9TpqdWo=",
+          "dev": true,
+          "requires": {
+            "lru-cache": "2.7.3",
+            "sigmund": "1.0.1"
+          }
+        },
+        "nopt": {
+          "version": "1.0.10",
+          "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz",
+          "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=",
+          "dev": true,
+          "requires": {
+            "abbrev": "1.1.1"
+          }
+        },
+        "rimraf": {
+          "version": "2.2.8",
+          "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
+          "integrity": "sha1-5Dm+Kq7jJzIZUnMPmaiSnk/FBYI=",
+          "dev": true
+        },
+        "which": {
+          "version": "1.0.9",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
+          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
+          "dev": true
+        }
+      }
+    },
+    "grunt-bump": {
+      "version": "0.8.0",
+      "resolved": "https://registry.npmjs.org/grunt-bump/-/grunt-bump-0.8.0.tgz",
+      "integrity": "sha1-0//gzzzws44JYHt4U49CpTHq/lU=",
+      "dev": true,
+      "requires": {
+        "semver": "5.5.0"
+      }
+    },
+    "grunt-cli": {
+      "version": "1.2.0",
+      "resolved": "https://registry.npmjs.org/grunt-cli/-/grunt-cli-1.2.0.tgz",
+      "integrity": "sha1-VisRnrsGndtGSs4oRVAb6Xs1tqg=",
+      "dev": true,
+      "requires": {
+        "findup-sync": "0.3.0",
+        "grunt-known-options": "1.1.0",
+        "nopt": "3.0.6",
+        "resolve": "1.1.7"
+      },
+      "dependencies": {
+        "findup-sync": {
+          "version": "0.3.0",
+          "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-0.3.0.tgz",
+          "integrity": "sha1-N5MKpdgWt3fANEXhlmzGeQpMCxY=",
+          "dev": true,
+          "requires": {
+            "glob": "5.0.15"
+          }
+        },
+        "glob": {
+          "version": "5.0.15",
+          "resolved": "https://registry.npmjs.org/glob/-/glob-5.0.15.tgz",
+          "integrity": "sha1-G8k2ueAvSmA/zCIuz3Yz0wuLk7E=",
+          "dev": true,
+          "requires": {
+            "inflight": "1.0.6",
+            "inherits": "2.0.3",
+            "minimatch": "3.0.4",
+            "once": "1.4.0",
+            "path-is-absolute": "1.0.1"
+          }
+        },
+        "minimatch": {
+          "version": "3.0.4",
+          "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+          "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+          "dev": true,
+          "requires": {
+            "brace-expansion": "1.1.11"
+          }
+        }
+      }
+    },
+    "grunt-contrib-compress": {
+      "version": "1.4.3",
+      "resolved": "https://registry.npmjs.org/grunt-contrib-compress/-/grunt-contrib-compress-1.4.3.tgz",
+      "integrity": "sha1-Ac7/ucY39S5wgfRjdQmD0KOw+nM=",
+      "dev": true,
+      "requires": {
+        "archiver": "1.3.0",
+        "chalk": "1.1.3",
+        "iltorb": "1.3.10",
+        "lodash": "4.17.5",
+        "pretty-bytes": "4.0.2",
+        "stream-buffers": "2.2.0"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "4.17.5",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.5.tgz",
+          "integrity": "sha512-svL3uiZf1RwhH+cWrfZn3A4+U58wbP0tGVTLQPbjplZxZ8ROD9VLuNgsRniTlLe7OlSqR79RUehXgpBW/s0IQw==",
+          "dev": true
+        }
+      }
+    },
+    "grunt-known-options": {
+      "version": "1.1.0",
+      "resolved": "https://registry.npmjs.org/grunt-known-options/-/grunt-known-options-1.1.0.tgz",
+      "integrity": "sha1-pCdO6zL6dl2lp6OxcSYXzjsUQUk=",
+      "dev": true
+    },
+    "grunt-legacy-log": {
+      "version": "0.1.3",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-log/-/grunt-legacy-log-0.1.3.tgz",
+      "integrity": "sha1-7ClCboAwIa9ZAp+H0vnNczWgVTE=",
+      "dev": true,
+      "requires": {
+        "colors": "0.6.2",
+        "grunt-legacy-log-utils": "0.1.1",
+        "hooker": "0.2.3",
+        "lodash": "2.4.2",
+        "underscore.string": "2.3.3"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        },
+        "underscore.string": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
+          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
+          "dev": true
+        }
+      }
+    },
+    "grunt-legacy-log-utils": {
+      "version": "0.1.1",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-log-utils/-/grunt-legacy-log-utils-0.1.1.tgz",
+      "integrity": "sha1-wHBrndkGThFvNvI/5OawSGcsD34=",
+      "dev": true,
+      "requires": {
+        "colors": "0.6.2",
+        "lodash": "2.4.2",
+        "underscore.string": "2.3.3"
+      },
+      "dependencies": {
+        "lodash": {
+          "version": "2.4.2",
+          "resolved": "https://registry.npmjs.org/lodash/-/lodash-2.4.2.tgz",
+          "integrity": "sha1-+t2DS5aDBz2hebPq5tnA0VBT9z4=",
+          "dev": true
+        },
+        "underscore.string": {
+          "version": "2.3.3",
+          "resolved": "https://registry.npmjs.org/underscore.string/-/underscore.string-2.3.3.tgz",
+          "integrity": "sha1-ccCL9rQosRM/N+ePo6Icgvcymw0=",
+          "dev": true
+        }
+      }
+    },
+    "grunt-legacy-util": {
+      "version": "0.2.0",
+      "resolved": "https://registry.npmjs.org/grunt-legacy-util/-/grunt-legacy-util-0.2.0.tgz",
+      "integrity": "sha1-kzJIhNv343qf98Am3/RR2UqeVUs=",
+      "dev": true,
+      "requires": {
+        "async": "0.1.22",
+        "exit": "0.1.2",
+        "getobject": "0.1.0",
+        "hooker": "0.2.3",
+        "lodash": "0.9.2",
+        "underscore.string": "2.2.1",
+        "which": "1.0.9"
+      },
+      "dependencies": {
+        "which": {
+          "version": "1.0.9",
+          "resolved": "https://registry.npmjs.org/which/-/which-1.0.9.tgz",
+          "integrity": "sha1-RgwdoPgQED0DIam2M6+eV15kSG8=",
+          "dev": true
+        }
+      }
+    },
+  

<TRUNCATED>

[07/19] nifi-fds git commit: [NIFIREG-168] upgrade to angular v5.2.0, angular-material v5.2.0, covalent v1.0.1

Posted by sc...@apache.org.
[NIFIREG-168] upgrade to angular v5.2.0, angular-material v5.2.0, covalent v1.0.1


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/bfce34fe
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/bfce34fe
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/bfce34fe

Branch: refs/heads/gh-pages
Commit: bfce34fe54295b9f9a699002bc4ab90601bc4d44
Parents: 4eee1d7
Author: Scott Aslan <sc...@gmail.com>
Authored: Tue Apr 24 13:43:42 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Tue Apr 24 13:43:42 2018 -0400

----------------------------------------------------------------------
 .github/PULL_REQUEST_TEMPLATE.md                |   38 +
 .gitignore                                      |    1 +
 karma.conf.js                                   |    3 +-
 package-lock.json                               | 6031 ------------------
 package.json                                    |   31 +-
 platform/core/common/styles/_buttons.scss       |    4 +-
 platform/core/common/styles/_inputs.scss        |    4 +-
 .../styles/css/fluid-design-system.min.css      |    3 -
 .../styles/css/fluid-design-system.min.css.gz   |  Bin 3220 -> 0 bytes
 .../styles/css/fluid-design-system.min.css.map  |   28 -
 platform/core/dialogs/fds-dialog.component.js   |   47 +-
 .../core/dialogs/services/dialog.service.js     |   46 +-
 .../core/snackbars/fds-snackbar.component.js    |   47 +-
 .../core/snackbars/services/snackbar.service.js |   40 +-
 platform/systemjs.spec.config.js                |   30 +-
 15 files changed, 198 insertions(+), 6155 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/.github/PULL_REQUEST_TEMPLATE.md
----------------------------------------------------------------------
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
new file mode 100644
index 0000000..18da8ad
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -0,0 +1,38 @@
+Thank you for submitting a contribution to Apache NiFi Fluid Design System.
+
+In order to streamline the review of the contribution we ask you
+to ensure the following steps have been taken:
+
+### For all changes:
+- [ ] Is there a JIRA ticket associated with this PR? Is it referenced
+     in the commit message?
+
+- [ ] Does your PR title start with either NIFI-XXXX or NIFIREG-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.
+
+- [ ] Has your PR been rebased against the latest commit within the target branch (typically master)?
+
+- [ ] Is your initial contribution a single, squashed commit?
+
+### For code changes:
+- [ ] Have you ensured that a full build is executed via npm build at the root nifi-fds folder?
+- [ ] Have you ensured that the full suite of tests is executed via npm test at the root nifi-fds folder?
+- [ ] Have you written or updated unit tests to verify your changes?
+- [ ] Have you written or updated the Apache NiFi Fluid Design System Demo application to demonstrate, provide examples of usage, and to verify your changes?
+- [ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under [ASF 2.0](http://www.apache.org/legal/resolved.html#category-a)?
+- [ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-fds?
+- [ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-fds?
+
+### For documentation related changes:
+- [ ] Have you ensured that format looks appropriate for the output in which it is rendered?
+
+### Note:
+Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.
+
+### Reviewers, please perform the following in order to validate the changes:
+- [ ] Checkout the gh-pages branch.
+- [ ] Edit the package.json file in the root nifi-fds folder and update the nifi-fds package to point to the pull request at git+https://github.com/<user>/<repo>.git#<branch>.
+- [ ] ‘npm install’ in the root nifi-fds folder.
+- [ ] ‘npm install’ in the node_modules/nifi-fds folder.
+- [ ] ‘npm run build’ in the node_modules/nifi-fds folder.
+- [ ] Update the base href element in the index.html in the root nifi-fds folder to ‘/‘.
+- [ ] Start a local http-server via ‘npm start’ in the root nifi-fds folder and verify the UI/UX in a browser.

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/.gitignore
----------------------------------------------------------------------
diff --git a/.gitignore b/.gitignore
index 1b63b48..dc100b8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
 node_modules/
 coverage/
+platform/core/common/styles/css/
 npm-debug.log*
 webapp/
 package-lock.json

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/bfce34fe/karma.conf.js
----------------------------------------------------------------------
diff --git a/karma.conf.js b/karma.conf.js
index 4b0f692..606aa3e 100644
--- a/karma.conf.js
+++ b/karma.conf.js
@@ -92,8 +92,7 @@ module.exports = function (config) {
         proxies: {
             // required for modules fetched by SystemJS
             '/base/fds/node_modules/': '/base/node_modules/',
-            '/base/systemjs-angular-loader.js': '/base/platform/systemjs-angular-loader.js',
-            '/base/fds/': '/base/platform/'
+            '/base/systemjs-angular-loader.js': '/base/platform/systemjs-angular-loader.js'
         },
 
         exclude: [],


[12/19] nifi-fds git commit: [NIFIREG-168] add package-lock.json, update version number to indicate current version, update pr template to simplify reviewer process

Posted by sc...@apache.org.
[NIFIREG-168] add package-lock.json, update version number to indicate current version, update pr template to simplify reviewer process


Project: http://git-wip-us.apache.org/repos/asf/nifi-fds/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi-fds/commit/544c0e4a
Tree: http://git-wip-us.apache.org/repos/asf/nifi-fds/tree/544c0e4a
Diff: http://git-wip-us.apache.org/repos/asf/nifi-fds/diff/544c0e4a

Branch: refs/heads/gh-pages
Commit: 544c0e4a192d9a421bea3c3aeec40591e6cf17a8
Parents: fd57eb4
Author: Scott Aslan <sc...@gmail.com>
Authored: Wed Apr 25 15:49:47 2018 -0400
Committer: Scott Aslan <sc...@gmail.com>
Committed: Wed Apr 25 15:49:47 2018 -0400

----------------------------------------------------------------------
 .github/PULL_REQUEST_TEMPLATE.md |   10 +-
 package-lock.json                | 5757 +++++++++++++++++++++++++++++++++
 package.json                     |    2 +-
 3 files changed, 5762 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/544c0e4a/.github/PULL_REQUEST_TEMPLATE.md
----------------------------------------------------------------------
diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md
index 337e726..cb9093a 100644
--- a/.github/PULL_REQUEST_TEMPLATE.md
+++ b/.github/PULL_REQUEST_TEMPLATE.md
@@ -30,9 +30,7 @@ Please ensure that once the PR is submitted, you check travis-ci for build issue
 
 ### Reviewers, please perform the following in order to validate the changes:
 - [ ] Checkout the gh-pages branch.
-- [ ] Edit the package.json file in the root nifi-fds folder and update the nifi-fds package in the dependencies section to point to the pull request at git+https://github.com/user/repo.git#branch.
-- [ ] ‘npm install’ in the root nifi-fds folder.
-- [ ] ‘npm install’ in the node_modules/nifi-fds folder.
-- [ ] ‘npm run build’ in the node_modules/nifi-fds folder.
-- [ ] Update the base href element in the index.html in the root nifi-fds folder to ‘/‘.
-- [ ] Start a local http-server via ‘npm start’ in the root nifi-fds folder and verify the UI/UX in a browser.
+- [ ] Open the package.json file in the root nifi-fds folder and in the dependencies property edit the nifi-fds module to point to the pull request under review by replacing the user name, repository name, and branch name to the appropriate values for the PR.
+     Ex. To point to the Apache NiFi FDS master branch replace the user, repository, and branch name in the string git+https://github.com/USER_NAME/REPO_NAME.git#PR_BRANCH_NAME to:
+            "nifi-fds": "git+https://github.com/apache/nifi-fds.git#master"
+- [ ] ‘npm start’ in the root nifi-fds folder and verify the UI/UX in a browser.


[16/19] nifi-fds git commit: gh-pages update

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/webapp/css/fds-demo.min.css.map
----------------------------------------------------------------------
diff --git a/webapp/css/fds-demo.min.css.map b/webapp/css/fds-demo.min.css.map
new file mode 100644
index 0000000..01437c0
--- /dev/null
+++ b/webapp/css/fds-demo.min.css.map
@@ -0,0 +1,64 @@
+{
+	"version": 3,
+	"file": "fds-demo.min.css",
+	"sources": [
+		"../theming/fds-demo.scss",
+		"../../platform/core/common/styles/_globalVars.scss",
+		"../../platform/core/theming/_all-theme.scss",
+		"../../node_modules/@angular/material/_theming.scss",
+		"../../node_modules/@covalent/core/theming/_all-theme.scss",
+		"../../node_modules/@covalent/core/common/_common-theme.scss",
+		"../../node_modules/@covalent/core/common/styles/_theme-functions.scss",
+		"../../node_modules/@covalent/core/chips/_chips-theme.scss",
+		"../../node_modules/@covalent/core/common/styles/_typography-functions.scss",
+		"../../node_modules/@covalent/core/data-table/_data-table-theme.scss",
+		"../../node_modules/@covalent/core/layout/_layout-theme.scss",
+		"../../node_modules/@covalent/core/common/styles/_elevation.scss",
+		"../../node_modules/@covalent/core/common/styles/_variables.scss",
+		"../../node_modules/@covalent/core/steps/_steps-theme.scss",
+		"../../node_modules/@covalent/core/expansion-panel/_expansion-panel-theme.scss",
+		"../../node_modules/@covalent/core/file/_file-theme.scss",
+		"../../node_modules/@covalent/core/loading/_loading-theme.scss",
+		"../../node_modules/@covalent/core/dialogs/_dialog-theme.scss",
+		"../../node_modules/@covalent/core/json-formatter/_json-formatter-theme.scss",
+		"../../node_modules/@covalent/core/paging/_paging-bar-theme.scss",
+		"../../node_modules/@covalent/core/notifications/_notification-count-theme.scss",
+		"../../node_modules/@covalent/core/message/_message-theme.scss",
+		"../../node_modules/@covalent/core/common/styles/_styles.scss",
+		"../../node_modules/@covalent/core/common/styles/font/_font.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_core.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_button.scss",
+		"../../node_modules/@covalent/core/common/styles/_rtl.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_card.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_content.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_divider.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_icons.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_list.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_sidenav.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_structure.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_toolbar.scss",
+		"../../node_modules/@covalent/core/common/styles/core/_whiteframe.scss",
+		"../../node_modules/@covalent/core/common/styles/_typography.scss",
+		"../../node_modules/@covalent/core/common/styles/_layout.scss",
+		"../../node_modules/@covalent/core/common/styles/colors/_colors.scss",
+		"../../node_modules/@covalent/core/common/styles/colors/_colors-dark.scss",
+		"../../node_modules/@covalent/core/common/styles/_palette-dark.scss",
+		"../../node_modules/@covalent/core/common/styles/colors/_colors-light.scss",
+		"../../node_modules/@covalent/core/common/styles/_palette-light.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_utilities.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_general.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_pad.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_pull.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_push.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_size.scss",
+		"../../node_modules/@covalent/core/common/styles/utilities/_text.scss",
+		"../../node_modules/@covalent/core/typography/_all-typography.scss",
+		"../../platform/core/common/styles/_buttons.scss",
+		"../../platform/core/common/styles/_expansionPanels.scss",
+		"../../platform/core/common/styles/_menus.scss",
+		"../theming/_structureElements.scss",
+		"../theming/_helperClasses.scss"
+	],
+	"names": [],
+	"mappings": "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"
+}
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/webapp/systemjs.config.js
----------------------------------------------------------------------
diff --git a/webapp/systemjs.config.js b/webapp/systemjs.config.js
index 24857de..0fb5328 100644
--- a/webapp/systemjs.config.js
+++ b/webapp/systemjs.config.js
@@ -40,27 +40,7 @@
             '@angular/router': 'npm:@angular/router/bundles/router.umd.js',
             '@angular/forms': 'npm:@angular/forms/bundles/forms.umd.js',
             '@angular/flex-layout': 'npm:@angular/flex-layout/bundles/flex-layout.umd.js',
-            '@angular/flex-layout/core': 'npm:@angular/flex-layout/bundles/flex-layout-core.umd.js',
-            '@angular/flex-layout/extended': 'npm:@angular/flex-layout/bundles/flex-layout-extended.umd.js',
-            '@angular/flex-layout/flex': 'npm:@angular/flex-layout/bundles/flex-layout-flex.umd.js',
             '@angular/material': 'npm:@angular/material/bundles/material.umd.js',
-            '@angular/material/core': 'npm:@angular/material/bundles/material-core.umd.js',
-            '@angular/material/card': 'npm:@angular/material/bundles/material-card.umd.js',
-            '@angular/material/divider': 'npm:@angular/material/bundles/material-divider.umd.js',
-            '@angular/material/progress-bar': 'npm:@angular/material/bundles/material-progress-bar.umd.js',
-            '@angular/material/progress-spinner': 'npm:@angular/material/bundles/material-progress-spinner.umd.js',
-            '@angular/material/chips': 'npm:@angular/material/bundles/material-chips.umd.js',
-            '@angular/material/input': 'npm:@angular/material/bundles/material-input.umd.js',
-            '@angular/material/icon': 'npm:@angular/material/bundles/material-icon.umd.js',
-            '@angular/material/button': 'npm:@angular/material/bundles/material-button.umd.js',
-            '@angular/material/checkbox': 'npm:@angular/material/bundles/material-checkbox.umd.js',
-            '@angular/material/tooltip': 'npm:@angular/material/bundles/material-tooltip.umd.js',
-            '@angular/material/dialog': 'npm:@angular/material/bundles/material-dialog.umd.js',
-            '@angular/material/sidenav': 'npm:@angular/material/bundles/material-sidenav.umd.js',
-            '@angular/material/menu': 'npm:@angular/material/bundles/material-menu.umd.js',
-            '@angular/material/form-field': 'npm:@angular/material/bundles/material-form-field.umd.js',
-            '@angular/material/toolbar': 'npm:@angular/material/bundles/material-toolbar.umd.js',
-            '@angular/material/autocomplete': 'npm:@angular/material/bundles/material-autocomplete.umd.js',
             '@angular/platform-browser/animations': 'npm:@angular/platform-browser/bundles/platform-browser-animations.umd.js',
             '@angular/cdk': 'npm:@angular/cdk/bundles/cdk.umd.js',
             '@angular/cdk/a11y': 'npm:@angular/cdk/bundles/cdk-a11y.umd.js',
@@ -86,8 +66,7 @@
             'hammerjs': 'npm:hammerjs/hammer.min.js',
 
             // Covalent
-            '@covalent/core': 'npm:@covalent/core/bundles/covalent-core.umd.min.js',
-            '@covalent/core/common': 'npm:@covalent/core/bundles/covalent-core-common.umd.min.js',
+            '@covalent/core': 'npm:@covalent/core/bundles/core.umd.min.js',
 
             // other libraries
             'rxjs': 'npm:rxjs',
@@ -98,16 +77,15 @@
             'tslib': 'npm:tslib/tslib.js',
 
             // Fluid Design System
-            '@fluid-design-system/core': 'platform/core/fluid-design-system.module.js',
-            '@fluid-design-system/dialogs': 'platform/core/dialogs/fds-dialogs.module.js',
-            '@fluid-design-system/dialog-component': 'platform/core/dialogs/fds-dialog.component.js',
-            '@fluid-design-system/dialog-service': 'platform/core/dialogs/services/dialog.service.js',
-            '@fluid-design-system/confirm-dialog-component': 'platform/core/dialogs/confirm-dialog/confirm-dialog.component.js',
-            '@fluid-design-system/snackbars': 'platform/core/snackbars/fds-snackbars.module.js',
-            '@fluid-design-system/snackbar-component': 'platform/core/snackbars/fds-snackbar.component.js',
-            '@fluid-design-system/snackbar-service': 'platform/core/snackbars/services/snackbar.service.js',
-            '@fluid-design-system/coaster-component': 'platform/core/snackbars/coaster/coaster.component.js',
-            '@fluid-design-system/common/storage-service': 'platform/core/common/services/fds-storage.service.js'
+            '@fluid-design-system/core': 'npm:nifi-fds/platform/core/fluid-design-system.module.js',
+            '@fluid-design-system/dialogs': 'npm:nifi-fds/platform/core/dialogs/fds-dialogs.module.js',
+            '@fluid-design-system/dialog-component': 'npm:nifi-fds/platform/core/dialogs/fds-dialog.component.js',
+            '@fluid-design-system/dialog-service': 'npm:nifi-fds/platform/core/dialogs/services/dialog.service.js',
+            '@fluid-design-system/confirm-dialog-component': 'npm:nifi-fds/platform/core/dialogs/confirm-dialog/confirm-dialog.component.js',
+            '@fluid-design-system/snackbars': 'npm:nifi-fds/platform/core/snackbars/fds-snackbars.module.js',
+            '@fluid-design-system/snackbar-component': 'npm:nifi-fds/platform/core/snackbars/fds-snackbar.component.js',
+            '@fluid-design-system/snackbar-service': 'npm:nifi-fds/platform/core/snackbars/services/snackbar.service.js',
+            '@fluid-design-system/coaster-component': 'npm:nifi-fds/platform/core/snackbars/coaster/coaster.component.js'
         },
         // packages tells the System loader how to load when no filename and/or no extension
         packages: {
@@ -140,3 +118,15 @@
         }
     });
 })(this);
+© 2018 GitHub, Inc.
+Terms
+Privacy
+Security
+Status
+Help
+Contact GitHub
+API
+Training
+Shop
+Blog
+About


[17/19] nifi-fds git commit: gh-pages update

Posted by sc...@apache.org.
http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/package.json
----------------------------------------------------------------------
diff --git a/package.json b/package.json
index 122d380..58da069 100644
--- a/package.json
+++ b/package.json
@@ -1,20 +1,12 @@
 {
-  "name": "nifi-fds",
+  "name": "nifi-fds-demo",
   "version": "0.0.0",
   "scripts": {
     "start": "./node_modules/http-server/bin/http-server .",
     "build:webapp": "./node_modules/grunt-cli/bin/grunt compile-fds-demo-styles",
-    "build:platform": "./node_modules/grunt-cli/bin/grunt compile-fds-styles",
-    "clean:install": "bash ./scripts/clean-install",
-    "clean:install:skipTests": "bash ./scripts/clean-install-skipTests",
-    "dev:install": "bash ./scripts/dev-install",
-    "dev:install:skipTests": "bash ./scripts/dev-install-skipTests",
-    "deploy:ghpages": "bash ./scripts/deploy-gh-pages",
-    "test": "./node_modules/protractor/bin/webdriver-manager update --gecko false && karma start karma.conf.js --single-run",
-    "test:dev": "./node_modules/protractor/bin/webdriver-manager update --gecko false && karma start karma.conf.js"
+    "build:platform": "npm install && cd ./node_modules/nifi-fds && npm install && npm run build && rm -rf ./node_modules && rm -rf ./package-lock.json"
   },
-  "description": "The Apache NiFi Fluid Design System module is an atomic reusable platform providing consistent set of UI/UX components for open source friendly web applications to consume.",
-  "module": "./platform/core/fluid-design-system.module.js",
+  "description": "The Apache NiFi Fluid Design System demo provides users with an example web application that consumes the NgModule and allows users to interact with the UI/UX components.",
   "keywords": [
     "fluid design system",
     "angular",
@@ -33,45 +25,35 @@
   },
   "license": "Apache License, Version 2.0",
   "dependencies": {
-    "jquery": "3.2.1",
-    "rxjs": "5.5.6",
-    "systemjs": "0.20.17",
-    "systemjs-plugin-text": "0.0.11",
-    "zone.js": "0.8.17",
-    "@angular/animations": "5.2.0",
-    "@angular/cdk": "5.2.0",
-    "@angular/common": "5.2.0",
-    "@angular/compiler": "5.2.0",
-    "@angular/core": "5.2.0",
-    "@angular/flex-layout": "5.0.0-beta.14",
-    "@angular/forms": "5.2.0",
-    "@angular/http": "5.2.0",
-    "@angular/material": "5.2.0",
-    "@angular/platform-browser": "5.2.0",
-    "@angular/platform-browser-dynamic": "5.2.0",
-    "@angular/router": "5.2.0",
-    "@covalent/core": "1.0.0",
+    "@angular/animations": "4.4.6",
+    "@angular/cdk": "2.0.0-beta.12",
+    "@angular/common": "4.4.6",
+    "@angular/compiler": "4.4.6",
+    "@angular/core": "4.4.6",
+    "@angular/flex-layout": "2.0.0-beta.9",
+    "@angular/forms": "4.4.6",
+    "@angular/http": "4.4.6",
+    "@angular/material": "2.0.0-beta.12",
+    "@angular/platform-browser": "4.4.6",
+    "@angular/platform-browser-dynamic": "4.4.6",
+    "@angular/router": "4.4.6",
+    "@covalent/core": "1.0.0-beta.8-1",
     "detect-libc": "1.0.3",
     "font-awesome": "4.7.0",
     "hammerjs": "2.0.8",
-    "roboto-fontface": "0.7.0"
+    "jquery": "3.2.1",
+    "node-gyp": "3.6.2",
+    "roboto-fontface": "0.7.0",
+    "rxjs": "5.4.3",
+    "systemjs": "0.20.17",
+    "systemjs-plugin-text": "0.0.11",
+    "zone.js": "0.8.7"
   },
   "devDependencies": {
     "grunt": "0.4.5",
-    "grunt-bump": "0.8.0",
     "grunt-cli": "1.2.0",
     "grunt-contrib-compress": "1.4.3",
     "grunt-sass": "2.0.0",
-    "http-server": "0.11.1",
-    "jasmine-core": "2.8.0",
-    "karma": "1.7.1",
-    "karma-chrome-launcher": "2.2.0",
-    "karma-cli": "1.0.1",
-    "karma-coverage": "1.1.1",
-    "karma-jasmine": "1.1.1",
-    "karma-jasmine-html-reporter": "0.2.2",
-    "karma-spec-reporter": "0.0.31",
-    "load-grunt-tasks": "3.5.2",
-    "protractor": "4.0.14"
+    "load-grunt-tasks": "3.5.2"
   }
 }

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/webapp/css/fds-demo.min.css
----------------------------------------------------------------------
diff --git a/webapp/css/fds-demo.min.css b/webapp/css/fds-demo.min.css
new file mode 100644
index 0000000..4e1166e
--- /dev/null
+++ b/webapp/css/fds-demo.min.css
@@ -0,0 +1,3 @@
+@-moz-document url-prefix(){[layout-fill]{margin:0;width:100%;min-height:100%;height:100%}}body{background:#EEEFF0;background-size:40%}#fds-app-container{margin:0;width:100%;height:100%}#fds-toolbar{min-width:1045px;background-color:#FFFFFF;position:absolute;z-index:1000;background:#2C3E44}#fds-toolbar .mat-icon-button{color:#eee;font-size:20px;margin:0}#fds-toolbar .mat-select-value-text,#fds-toolbar .mat-select-arrow{color:white}#fds-toolbar span,#fds-toolbar .link{color:#eee;font-weight:lighter}#fds-perspectives-container{position:absolute;top:64px;left:0px;right:0px;bottom:0px;min-height:370px;min-width:1045px;overflow:auto;background:#EEEFF0;background-size:40%}#loading-spinner{position:absolute;top:calc(50% - 50px);left:calc(50% - 50px);z-index:2}mat-sidenav{width:40%;min-width:418px}.sidenav-content{position:absolute;bottom:60px;top:80px;right:0px;left:0px;overflow:auto}.fa-rotate-45{-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-t
 ransform:rotate(45deg);transform:rotate(45deg)}.capitalize{text-transform:capitalize}.uppercase{text-transform:uppercase}.ellipsis{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block !important}.info{color:#1291c1}.authorized{color:#D14A50}.suspended{color:#429929}.nonconfigurable{background:#b2b8c1}.selected-nonconfigurable{background:repeating-linear-gradient(-45deg, #eee, #eee 10px, #fff 10px, #fff 20px) !important}.fds-button-container{position:absolute;bottom:0px;height:64px;left:0px;right:0px;border-top:1px solid #ccc}.fds-button-container .done-button{float:right;margin-right:15px;margin-top:15px}.td-expansion-content{background:#F8F9F9}.mat-elevation-z0{box-shadow:0px 0px 0px 0px rgba(0,0,0,0.2),0px 0px 0px 0px rgba(0,0,0,0.14),0px 0px 0px 0px rgba(0,0,0,0.12)}.mat-elevation-z1{box-shadow:0px 2px 1px -1px rgba(0,0,0,0.2),0px 1px 1px 0px rgba(0,0,0,0.14),0px 1px 3px 0px rgba(0,0,0,0.12)}.mat-elevation-z2{box-shadow:0px 3px 1px -2px rgba(0,0,0,0.2),0px 2px 
 2px 0px rgba(0,0,0,0.14),0px 1px 5px 0px rgba(0,0,0,0.12)}.mat-elevation-z3{box-shadow:0px 3px 3px -2px rgba(0,0,0,0.2),0px 3px 4px 0px rgba(0,0,0,0.14),0px 1px 8px 0px rgba(0,0,0,0.12)}.mat-elevation-z4{box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12)}.mat-elevation-z5{box-shadow:0px 3px 5px -1px rgba(0,0,0,0.2),0px 5px 8px 0px rgba(0,0,0,0.14),0px 1px 14px 0px rgba(0,0,0,0.12)}.mat-elevation-z6{box-shadow:0px 3px 5px -1px rgba(0,0,0,0.2),0px 6px 10px 0px rgba(0,0,0,0.14),0px 1px 18px 0px rgba(0,0,0,0.12)}.mat-elevation-z7{box-shadow:0px 4px 5px -2px rgba(0,0,0,0.2),0px 7px 10px 1px rgba(0,0,0,0.14),0px 2px 16px 1px rgba(0,0,0,0.12)}.mat-elevation-z8{box-shadow:0px 5px 5px -3px rgba(0,0,0,0.2),0px 8px 10px 1px rgba(0,0,0,0.14),0px 3px 14px 2px rgba(0,0,0,0.12)}.mat-elevation-z9{box-shadow:0px 5px 6px -3px rgba(0,0,0,0.2),0px 9px 12px 1px rgba(0,0,0,0.14),0px 3px 16px 2px rgba(0,0,0,0.12)}.mat-elevation-z10{box-shadow:0px
  6px 6px -3px rgba(0,0,0,0.2),0px 10px 14px 1px rgba(0,0,0,0.14),0px 4px 18px 3px rgba(0,0,0,0.12)}.mat-elevation-z11{box-shadow:0px 6px 7px -4px rgba(0,0,0,0.2),0px 11px 15px 1px rgba(0,0,0,0.14),0px 4px 20px 3px rgba(0,0,0,0.12)}.mat-elevation-z12{box-shadow:0px 7px 8px -4px rgba(0,0,0,0.2),0px 12px 17px 2px rgba(0,0,0,0.14),0px 5px 22px 4px rgba(0,0,0,0.12)}.mat-elevation-z13{box-shadow:0px 7px 8px -4px rgba(0,0,0,0.2),0px 13px 19px 2px rgba(0,0,0,0.14),0px 5px 24px 4px rgba(0,0,0,0.12)}.mat-elevation-z14{box-shadow:0px 7px 9px -4px rgba(0,0,0,0.2),0px 14px 21px 2px rgba(0,0,0,0.14),0px 5px 26px 4px rgba(0,0,0,0.12)}.mat-elevation-z15{box-shadow:0px 8px 9px -5px rgba(0,0,0,0.2),0px 15px 22px 2px rgba(0,0,0,0.14),0px 6px 28px 5px rgba(0,0,0,0.12)}.mat-elevation-z16{box-shadow:0px 8px 10px -5px rgba(0,0,0,0.2),0px 16px 24px 2px rgba(0,0,0,0.14),0px 6px 30px 5px rgba(0,0,0,0.12)}.mat-elevation-z17{box-shadow:0px 8px 11px -5px rgba(0,0,0,0.2),0px 17px 26px 2px rgba(0,0,0,0.14),0px 6p
 x 32px 5px rgba(0,0,0,0.12)}.mat-elevation-z18{box-shadow:0px 9px 11px -5px rgba(0,0,0,0.2),0px 18px 28px 2px rgba(0,0,0,0.14),0px 7px 34px 6px rgba(0,0,0,0.12)}.mat-elevation-z19{box-shadow:0px 9px 12px -6px rgba(0,0,0,0.2),0px 19px 29px 2px rgba(0,0,0,0.14),0px 7px 36px 6px rgba(0,0,0,0.12)}.mat-elevation-z20{box-shadow:0px 10px 13px -6px rgba(0,0,0,0.2),0px 20px 31px 3px rgba(0,0,0,0.14),0px 8px 38px 7px rgba(0,0,0,0.12)}.mat-elevation-z21{box-shadow:0px 10px 13px -6px rgba(0,0,0,0.2),0px 21px 33px 3px rgba(0,0,0,0.14),0px 8px 40px 7px rgba(0,0,0,0.12)}.mat-elevation-z22{box-shadow:0px 10px 14px -6px rgba(0,0,0,0.2),0px 22px 35px 3px rgba(0,0,0,0.14),0px 8px 42px 7px rgba(0,0,0,0.12)}.mat-elevation-z23{box-shadow:0px 11px 14px -7px rgba(0,0,0,0.2),0px 23px 36px 3px rgba(0,0,0,0.14),0px 9px 44px 8px rgba(0,0,0,0.12)}.mat-elevation-z24{box-shadow:0px 11px 15px -7px rgba(0,0,0,0.2),0px 24px 38px 3px rgba(0,0,0,0.14),0px 9px 46px 8px rgba(0,0,0,0.12)}.mat-h1,.mat-headline,.mat-typogr
 aphy h1{font:400 24px/32px Roboto, "Helvetica Neue", sans-serif;margin:0 0 16px}.mat-h2,.mat-title,.mat-typography h2{font:500 20px/32px Roboto, "Helvetica Neue", sans-serif;margin:0 0 16px}.mat-h3,.mat-subheading-2,.mat-typography h3{font:400 16px/28px Roboto, "Helvetica Neue", sans-serif;margin:0 0 16px}.mat-h4,.mat-subheading-1,.mat-typography h4{font:400 15px/24px Roboto, "Helvetica Neue", sans-serif;margin:0 0 16px}.mat-h5,.mat-typography h5{font:400 11.62px/20px Roboto, "Helvetica Neue", sans-serif;margin:0 0 12px}.mat-h6,.mat-typography h6{font:400 9.38px/20px Roboto, "Helvetica Neue", sans-serif;margin:0 0 12px}.mat-body-strong,.mat-body-2{font:500 14px/24px Roboto, "Helvetica Neue", sans-serif}.mat-body,.mat-body-1,.mat-typography{font:400 14px/20px Roboto, "Helvetica Neue", sans-serif}.mat-body p,.mat-body-1 p,.mat-typography p{margin:0 0 12px}.mat-small,.mat-caption{font:400 12px/20px Roboto, "Helvetica Neue", sans-serif}.mat-display-4,.mat-typography .mat-display-4{font:
 300 112px/112px Roboto, "Helvetica Neue", sans-serif;margin:0 0 56px;letter-spacing:-0.05em}.mat-display-3,.mat-typography .mat-display-3{font:400 56px/56px Roboto, "Helvetica Neue", sans-serif;margin:0 0 64px;letter-spacing:-0.02em}.mat-display-2,.mat-typography .mat-display-2{font:400 45px/48px Roboto, "Helvetica Neue", sans-serif;margin:0 0 64px;letter-spacing:-0.005em}.mat-display-1,.mat-typography .mat-display-1{font:400 34px/40px Roboto, "Helvetica Neue", sans-serif;margin:0 0 64px}.mat-button,.mat-raised-button,.mat-icon-button,.mat-stroked-button,.mat-flat-button,.mat-fab,.mat-mini-fab{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:500}.mat-button-toggle{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-card{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-card-title{font-size:24px;font-weight:400}.mat-card-subtitle,.mat-card-content,.mat-card-header .mat-card-title{font-size:14px}.mat-checkbox{font-family:Roboto, "Helvetica Neue", sans-
 serif}.mat-checkbox-layout .mat-checkbox-label{line-height:24px}.mat-chip{font-size:13px;line-height:18px}.mat-chip .mat-chip-remove.mat-icon{font-size:18px}.mat-table{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-header-cell{font-size:12px;font-weight:500}.mat-cell{font-size:14px}.mat-calendar{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-calendar-body{font-size:13px}.mat-calendar-body-label,.mat-calendar-period-button{font-size:14px;font-weight:500}.mat-calendar-table-header th{font-size:11px;font-weight:400}.mat-dialog-title{font:500 20px/32px Roboto, "Helvetica Neue", sans-serif}.mat-expansion-panel-header{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:15px;font-weight:400}.mat-expansion-panel-content{font:400 14px/20px Roboto, "Helvetica Neue", sans-serif}.mat-form-field{font-size:inherit;font-weight:400;line-height:1.125;font-family:Roboto, "Helvetica Neue", sans-serif}.mat-form-field-wrapper{padding-bottom:1.25em}.mat-form-field-prefix .mat-icon,.m
 at-form-field-suffix .mat-icon{font-size:150%;line-height:1.125}.mat-form-field-prefix .mat-icon-button,.mat-form-field-suffix .mat-icon-button{height:1.5em;width:1.5em}.mat-form-field-prefix .mat-icon-button .mat-icon,.mat-form-field-suffix .mat-icon-button .mat-icon{height:1.125em;line-height:1.125}.mat-form-field-infix{padding:.4375em 0;border-top:.84375em solid transparent}.mat-form-field-can-float.mat-form-field-should-float .mat-form-field-label,.mat-form-field-can-float .mat-input-server:focus+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(0.001px);-ms-transform:translateY(-1.28125em) scale(.75);width:133.333333333%}.mat-form-field-can-float .mat-form-field-autofill-control:-webkit-autofill+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(0.00101px);-ms-transform:translateY(-1.28124em) scale(.75);width:133.333343333%}.mat-
 form-field-can-float .mat-input-server[label]:not(:label-shown)+.mat-form-field-label-wrapper .mat-form-field-label{transform:translateY(-1.28125em) scale(.75) perspective(100px) translateZ(0.00102px);-ms-transform:translateY(-1.28123em) scale(.75);width:133.333353333%}.mat-form-field-label-wrapper{top:-.84375em;padding-top:.84375em}.mat-form-field-label{top:1.28125em}.mat-form-field-underline{bottom:1.25em}.mat-form-field-subscript-wrapper{font-size:75%;margin-top:.5416666667em;top:calc(100% - 1.6666666667em)}.mat-grid-tile-header,.mat-grid-tile-footer{font-size:14px}.mat-grid-tile-header .mat-line,.mat-grid-tile-footer .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-grid-tile-header .mat-line:nth-child(n+2),.mat-grid-tile-footer .mat-line:nth-child(n+2){font-size:12px}input.mat-input-element{margin-top:-.0625em}.mat-menu-item{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:16px;font-weight:400}.mat-paginator,.
 mat-paginator-page-size .mat-select-trigger{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px}.mat-radio-button{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-select{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-select-trigger{height:1.125em}.mat-slide-toggle-content{font:400 14px/20px Roboto, "Helvetica Neue", sans-serif}.mat-slider-thumb-label-text{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px;font-weight:500}.mat-stepper-vertical,.mat-stepper-horizontal{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-step-label{font-size:14px;font-weight:400}.mat-step-label-selected{font-size:14px;font-weight:500}.mat-tab-group{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-tab-label,.mat-tab-link{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:500}.mat-toolbar,.mat-toolbar h1,.mat-toolbar h2,.mat-toolbar h3,.mat-toolbar h4,.mat-toolbar h5,.mat-toolbar h6{font:500 20px/32px Roboto, "Helvetica Neue", sans-serif
 ;margin:0}.mat-tooltip{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:10px;padding-top:6px;padding-bottom:6px}.mat-tooltip-handset{font-size:14px;padding-top:9px;padding-bottom:9px}.mat-list-item{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-list-option{font-family:Roboto, "Helvetica Neue", sans-serif}.mat-list .mat-list-item,.mat-nav-list .mat-list-item,.mat-selection-list .mat-list-item{font-size:16px}.mat-list .mat-list-item .mat-line,.mat-nav-list .mat-list-item .mat-line,.mat-selection-list .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list .mat-list-item .mat-line:nth-child(n+2),.mat-nav-list .mat-list-item .mat-line:nth-child(n+2),.mat-selection-list .mat-list-item .mat-line:nth-child(n+2){font-size:14px}.mat-list .mat-list-option,.mat-nav-list .mat-list-option,.mat-selection-list .mat-list-option{font-size:16px}.mat-list .mat-list-option .mat-line,.mat-nav-list .mat-list-option 
 .mat-line,.mat-selection-list .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list .mat-list-option .mat-line:nth-child(n+2),.mat-nav-list .mat-list-option .mat-line:nth-child(n+2),.mat-selection-list .mat-list-option .mat-line:nth-child(n+2){font-size:14px}.mat-list .mat-subheader,.mat-nav-list .mat-subheader,.mat-selection-list .mat-subheader{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:500}.mat-list[dense] .mat-list-item,.mat-nav-list[dense] .mat-list-item,.mat-selection-list[dense] .mat-list-item{font-size:12px}.mat-list[dense] .mat-list-item .mat-line,.mat-nav-list[dense] .mat-list-item .mat-line,.mat-selection-list[dense] .mat-list-item .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list[dense] .mat-list-item .mat-line:nth-child(n+2),.mat-nav-list[dense] .mat-list-item .mat-line:nth-child(n+2),.mat-selection-
 list[dense] .mat-list-item .mat-line:nth-child(n+2){font-size:12px}.mat-list[dense] .mat-list-option,.mat-nav-list[dense] .mat-list-option,.mat-selection-list[dense] .mat-list-option{font-size:12px}.mat-list[dense] .mat-list-option .mat-line,.mat-nav-list[dense] .mat-list-option .mat-line,.mat-selection-list[dense] .mat-list-option .mat-line{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;box-sizing:border-box}.mat-list[dense] .mat-list-option .mat-line:nth-child(n+2),.mat-nav-list[dense] .mat-list-option .mat-line:nth-child(n+2),.mat-selection-list[dense] .mat-list-option .mat-line:nth-child(n+2){font-size:12px}.mat-list[dense] .mat-subheader,.mat-nav-list[dense] .mat-subheader,.mat-selection-list[dense] .mat-subheader{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px;font-weight:500}.mat-option{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:16px}.mat-optgroup-label{font:500 14px/24px Roboto, "Helvetica Neue", sans-serif}.mat-simple
 -snackbar{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px}.mat-simple-snackbar-action{line-height:1;font-family:inherit;font-size:inherit;font-weight:500}.mat-ripple{overflow:hidden}@media screen and (-ms-high-contrast: active){.mat-ripple{display:none}}.mat-ripple.mat-ripple-unbounded{overflow:visible}.mat-ripple-element{position:absolute;border-radius:50%;pointer-events:none;transition:opacity,transform 0ms cubic-bezier(0, 0, 0.2, 1);transform:scale(0)}.cdk-visually-hidden{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;outline:0;-webkit-appearance:none;-moz-appearance:none}.cdk-overlay-container,.cdk-global-overlay-wrapper{pointer-events:none;top:0;left:0;height:100%;width:100%}.cdk-overlay-container{position:fixed;z-index:1000}.cdk-global-overlay-wrapper{display:flex;position:absolute;z-index:1000}.cdk-overlay-pane{position:absolute;pointer-events:auto;box-sizing:border-box;z-index:1000}.cdk-overlay-backdro
 p{position:absolute;top:0;bottom:0;left:0;right:0;z-index:1000;pointer-events:auto;-webkit-tap-highlight-color:transparent;transition:opacity 400ms cubic-bezier(0.25, 0.8, 0.25, 1);opacity:0}.cdk-overlay-backdrop.cdk-overlay-backdrop-showing{opacity:1}.cdk-overlay-dark-backdrop{background:rgba(0,0,0,0.288)}.cdk-overlay-transparent-backdrop,.cdk-overlay-transparent-backdrop.cdk-overlay-backdrop-showing{opacity:0}.cdk-global-scrollblock{position:fixed;width:100%;overflow-y:scroll}.mat-ripple-element{background-color:rgba(0,0,0,0.1)}.mat-option{color:rgba(0,0,0,0.87)}.mat-option:hover:not(.mat-option-disabled),.mat-option:focus:not(.mat-option-disabled){background:rgba(0,0,0,0.04)}.mat-primary .mat-option.mat-selected:not(.mat-option-disabled){color:#9e737d}.mat-accent .mat-option.mat-selected:not(.mat-option-disabled){color:#d0dbe0}.mat-warn .mat-option.mat-selected:not(.mat-option-disabled){color:#ef6162}.mat-option.mat-selected:not(.mat-option-multiple):not(.mat-option-disabled){bac
 kground:rgba(0,0,0,0.04)}.mat-option.mat-active{background:rgba(0,0,0,0.04);color:rgba(0,0,0,0.87)}.mat-option.mat-option-disabled{color:rgba(0,0,0,0.38)}.mat-optgroup-label{color:rgba(0,0,0,0.54)}.mat-optgroup-disabled .mat-optgroup-label{color:rgba(0,0,0,0.38)}.mat-pseudo-checkbox{color:rgba(0,0,0,0.54)}.mat-pseudo-checkbox::after{color:#fafafa}.mat-pseudo-checkbox-checked,.mat-pseudo-checkbox-indeterminate,.mat-accent .mat-pseudo-checkbox-checked,.mat-accent .mat-pseudo-checkbox-indeterminate{background:#d0dbe0}.mat-primary .mat-pseudo-checkbox-checked,.mat-primary .mat-pseudo-checkbox-indeterminate{background:#9e737d}.mat-warn .mat-pseudo-checkbox-checked,.mat-warn .mat-pseudo-checkbox-indeterminate{background:#ef6162}.mat-pseudo-checkbox-checked.mat-pseudo-checkbox-disabled,.mat-pseudo-checkbox-indeterminate.mat-pseudo-checkbox-disabled{background:#b0b0b0}.mat-app-background{background-color:#fafafa;color:rgba(0,0,0,0.87)}.mat-theme-loaded-marker{display:none}.mat-autocomplete-
 panel{background:#fff;color:rgba(0,0,0,0.87)}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover){background:#fff}.mat-autocomplete-panel .mat-option.mat-selected:not(.mat-active):not(:hover):not(.mat-option-disabled){color:rgba(0,0,0,0.87)}.mat-button,.mat-icon-button,.mat-stroked-button{background:transparent}.mat-button.mat-primary .mat-button-focus-overlay,.mat-icon-button.mat-primary .mat-button-focus-overlay,.mat-stroked-button.mat-primary .mat-button-focus-overlay{background-color:rgba(158,115,125,0.12)}.mat-button.mat-accent .mat-button-focus-overlay,.mat-icon-button.mat-accent .mat-button-focus-overlay,.mat-stroked-button.mat-accent .mat-button-focus-overlay{background-color:rgba(208,219,224,0.12)}.mat-button.mat-warn .mat-button-focus-overlay,.mat-icon-button.mat-warn .mat-button-focus-overlay,.mat-stroked-button.mat-warn .mat-button-focus-overlay{background-color:rgba(239,97,98,0.12)}.mat-button[disabled] .mat-button-focus-overlay,.mat-icon-button
 [disabled] .mat-button-focus-overlay,.mat-stroked-button[disabled] .mat-button-focus-overlay{background-color:transparent}.mat-button.mat-primary,.mat-icon-button.mat-primary,.mat-stroked-button.mat-primary{color:#9e737d}.mat-button.mat-accent,.mat-icon-button.mat-accent,.mat-stroked-button.mat-accent{color:#d0dbe0}.mat-button.mat-warn,.mat-icon-button.mat-warn,.mat-stroked-button.mat-warn{color:#ef6162}.mat-button.mat-primary[disabled],.mat-button.mat-accent[disabled],.mat-button.mat-warn[disabled],.mat-button[disabled][disabled],.mat-icon-button.mat-primary[disabled],.mat-icon-button.mat-accent[disabled],.mat-icon-button.mat-warn[disabled],.mat-icon-button[disabled][disabled],.mat-stroked-button.mat-primary[disabled],.mat-stroked-button.mat-accent[disabled],.mat-stroked-button.mat-warn[disabled],.mat-stroked-button[disabled][disabled]{color:rgba(0,0,0,0.26)}.mat-raised-button,.mat-fab,.mat-mini-fab{color:rgba(0,0,0,0.87);background-color:#fff}.mat-raised-button.mat-primary,.mat-fa
 b.mat-primary,.mat-mini-fab.mat-primary{color:rgba(255,255,255,0.87)}.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{color:rgba(255,255,255,0.87)}.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{color:rgba(255,255,255,0.87)}.mat-raised-button.mat-primary[disabled],.mat-raised-button.mat-accent[disabled],.mat-raised-button.mat-warn[disabled],.mat-raised-button[disabled][disabled],.mat-fab.mat-primary[disabled],.mat-fab.mat-accent[disabled],.mat-fab.mat-warn[disabled],.mat-fab[disabled][disabled],.mat-mini-fab.mat-primary[disabled],.mat-mini-fab.mat-accent[disabled],.mat-mini-fab.mat-warn[disabled],.mat-mini-fab[disabled][disabled]{color:rgba(0,0,0,0.26)}.mat-raised-button.mat-primary,.mat-fab.mat-primary,.mat-mini-fab.mat-primary{background-color:#9e737d}.mat-raised-button.mat-accent,.mat-fab.mat-accent,.mat-mini-fab.mat-accent{background-color:#d0dbe0}.mat-raised-button.mat-warn,.mat-fab.mat-warn,.mat-mini-fab.mat-warn{background-color:
 #ef6162}.mat-raised-button.mat-primary[disabled],.mat-raised-button.mat-accent[disabled],.mat-raised-button.mat-warn[disabled],.mat-raised-button[disabled][disabled],.mat-fab.mat-primary[disabled],.mat-fab.mat-accent[disabled],.mat-fab.mat-warn[disabled],.mat-fab[disabled][disabled],.mat-mini-fab.mat-primary[disabled],.mat-mini-fab.mat-accent[disabled],.mat-mini-fab.mat-warn[disabled],.mat-mini-fab[disabled][disabled]{background-color:rgba(0,0,0,0.12)}.mat-raised-button.mat-primary .mat-ripple-element,.mat-fab.mat-primary .mat-ripple-element,.mat-mini-fab.mat-primary .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-raised-button.mat-accent .mat-ripple-element,.mat-fab.mat-accent .mat-ripple-element,.mat-mini-fab.mat-accent .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-raised-button.mat-warn .mat-ripple-element,.mat-fab.mat-warn .mat-ripple-element,.mat-mini-fab.mat-warn .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-button.mat-primar
 y .mat-ripple-element{background-color:rgba(158,115,125,0.1)}.mat-button.mat-accent .mat-ripple-element{background-color:rgba(208,219,224,0.1)}.mat-button.mat-warn .mat-ripple-element{background-color:rgba(239,97,98,0.1)}.mat-flat-button{color:rgba(0,0,0,0.87);background-color:#fff}.mat-flat-button.mat-primary{color:rgba(255,255,255,0.87)}.mat-flat-button.mat-accent{color:rgba(255,255,255,0.87)}.mat-flat-button.mat-warn{color:rgba(255,255,255,0.87)}.mat-flat-button.mat-primary[disabled],.mat-flat-button.mat-accent[disabled],.mat-flat-button.mat-warn[disabled],.mat-flat-button[disabled][disabled]{color:rgba(0,0,0,0.26)}.mat-flat-button.mat-primary{background-color:#9e737d}.mat-flat-button.mat-accent{background-color:#d0dbe0}.mat-flat-button.mat-warn{background-color:#ef6162}.mat-flat-button.mat-primary[disabled],.mat-flat-button.mat-accent[disabled],.mat-flat-button.mat-warn[disabled],.mat-flat-button[disabled][disabled]{background-color:rgba(0,0,0,0.12)}.mat-flat-button.mat-primary 
 .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-flat-button.mat-accent .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-flat-button.mat-warn .mat-ripple-element{background-color:rgba(255,255,255,0.2)}.mat-icon-button.mat-primary .mat-ripple-element{background-color:rgba(158,115,125,0.2)}.mat-icon-button.mat-accent .mat-ripple-element{background-color:rgba(208,219,224,0.2)}.mat-icon-button.mat-warn .mat-ripple-element{background-color:rgba(239,97,98,0.2)}.mat-button-toggle{color:rgba(0,0,0,0.38)}.mat-button-toggle.cdk-focused .mat-button-toggle-focus-overlay{background-color:rgba(0,0,0,0.12)}.mat-button-toggle-checked{background-color:#e0e0e0;color:rgba(0,0,0,0.54)}.mat-button-toggle-disabled{background-color:#eee;color:rgba(0,0,0,0.26)}.mat-button-toggle-disabled.mat-button-toggle-checked{background-color:#bdbdbd}.mat-card{background:#fff;color:rgba(0,0,0,0.87)}.mat-card-subtitle{color:rgba(0,0,0,0.54)}.mat-checkbox-frame{border-color:rgba(0,0,0,0.54)}
 .mat-checkbox-checkmark{fill:#fafafa}.mat-checkbox-checkmark-path{stroke:#fafafa !important}.mat-checkbox-mixedmark{background-color:#fafafa}.mat-checkbox-indeterminate.mat-primary .mat-checkbox-background,.mat-checkbox-checked.mat-primary .mat-checkbox-background{background-color:#9e737d}.mat-checkbox-indeterminate.mat-accent .mat-checkbox-background,.mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#d0dbe0}.mat-checkbox-indeterminate.mat-warn .mat-checkbox-background,.mat-checkbox-checked.mat-warn .mat-checkbox-background{background-color:#ef6162}.mat-checkbox-disabled.mat-checkbox-checked .mat-checkbox-background,.mat-checkbox-disabled.mat-checkbox-indeterminate .mat-checkbox-background{background-color:#b0b0b0}.mat-checkbox-disabled:not(.mat-checkbox-checked) .mat-checkbox-frame{border-color:#b0b0b0}.mat-checkbox-disabled .mat-checkbox-label{color:#b0b0b0}.mat-checkbox:not(.mat-checkbox-disabled).mat-primary .mat-checkbox-ripple .mat-ripple-element{backg
 round-color:rgba(158,115,125,0.26)}.mat-checkbox:not(.mat-checkbox-disabled).mat-accent .mat-checkbox-ripple .mat-ripple-element{background-color:rgba(208,219,224,0.26)}.mat-checkbox:not(.mat-checkbox-disabled).mat-warn .mat-checkbox-ripple .mat-ripple-element{background-color:rgba(239,97,98,0.26)}.mat-chip:not(.mat-basic-chip){background-color:#e0e0e0;color:rgba(0,0,0,0.87)}.mat-chip:not(.mat-basic-chip) .mat-chip-remove{color:rgba(0,0,0,0.87);opacity:0.4}.mat-chip:not(.mat-basic-chip) .mat-chip-remove:hover{opacity:0.54}.mat-chip.mat-chip-selected.mat-primary{background-color:#9e737d;color:rgba(255,255,255,0.87)}.mat-chip.mat-chip-selected.mat-primary .mat-chip-remove{color:rgba(255,255,255,0.87);opacity:0.4}.mat-chip.mat-chip-selected.mat-primary .mat-chip-remove:hover{opacity:0.54}.mat-chip.mat-chip-selected.mat-warn{background-color:#ef6162;color:rgba(255,255,255,0.87)}.mat-chip.mat-chip-selected.mat-warn .mat-chip-remove{color:rgba(255,255,255,0.87);opacity:0.4}.mat-chip.mat-c
 hip-selected.mat-warn .mat-chip-remove:hover{opacity:0.54}.mat-chip.mat-chip-selected.mat-accent{background-color:#d0dbe0;color:rgba(255,255,255,0.87)}.mat-chip.mat-chip-selected.mat-accent .mat-chip-remove{color:rgba(255,255,255,0.87);opacity:0.4}.mat-chip.mat-chip-selected.mat-accent .mat-chip-remove:hover{opacity:0.54}.mat-table{background:#fff}.mat-row,.mat-header-row{border-bottom-color:rgba(0,0,0,0.12)}.mat-header-cell{color:rgba(0,0,0,0.54)}.mat-cell{color:rgba(0,0,0,0.87)}.mat-datepicker-content{background-color:#fff;color:rgba(0,0,0,0.87)}.mat-calendar-arrow{border-top-color:rgba(0,0,0,0.54)}.mat-calendar-next-button,.mat-calendar-previous-button{color:rgba(0,0,0,0.54)}.mat-calendar-table-header{color:rgba(0,0,0,0.38)}.mat-calendar-table-header-divider::after{background:rgba(0,0,0,0.12)}.mat-calendar-body-label{color:rgba(0,0,0,0.54)}.mat-calendar-body-cell-content{color:rgba(0,0,0,0.87);border-color:transparent}.mat-calendar-body-disabled>.mat-calendar-body-cell-content:no
 t(.mat-calendar-body-selected){color:rgba(0,0,0,0.38)}:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-keyboard-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected),.cdk-program-focused .mat-calendar-body-active>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){background-color:rgba(0,0,0,0.04)}.mat-calendar-body-selected{background-color:#9e737d;color:rgba(255,255,255,0.87)}.mat-calendar-body-disabled>.mat-calendar-body-selected{background-color:rgba(158,115,125,0.4)}.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,0.38)}.mat-calendar-body-today.mat-calendar-body-selected{box-shadow:inset 0 0 0 1px rgba(255,255,255,0.87)}.mat-calendar-body-disabled>.mat-calendar-body-today:not(.mat-calendar-body-selected){border-color:rgba(0,0,0,0.18)}.mat-datepicker-toggle-active{color:#9e737d}.mat-dialog-container{background:#fff;color:rgba(0,0
 ,0,0.87)}.mat-divider{border-top-color:rgba(0,0,0,0.12)}.mat-divider-vertical{border-right-color:rgba(0,0,0,0.12)}.mat-expansion-panel{background:#fff;color:rgba(0,0,0,0.87)}.mat-action-row{border-top-color:rgba(0,0,0,0.12)}.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled='true']).cdk-keyboard-focused,.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled='true']).cdk-program-focused,.mat-expansion-panel:not(.mat-expanded) .mat-expansion-panel-header:not([aria-disabled='true']):hover{background:rgba(0,0,0,0.04)}.mat-expansion-panel-header-title{color:rgba(0,0,0,0.87)}.mat-expansion-panel-header-description,.mat-expansion-indicator::after{color:rgba(0,0,0,0.54)}.mat-expansion-panel-header[aria-disabled='true']{color:rgba(0,0,0,0.26)}.mat-expansion-panel-header[aria-disabled='true'] .mat-expansion-panel-header-title,.mat-expansion-panel-header[aria-disabled='true'] .mat-expansion-panel-header-description{color:inher
 it}.mat-form-field-label{color:rgba(0,0,0,0.54)}.mat-hint{color:rgba(0,0,0,0.54)}.mat-focused .mat-form-field-label{color:#9e737d}.mat-focused .mat-form-field-label.mat-accent{color:#d0dbe0}.mat-focused .mat-form-field-label.mat-warn{color:#ef6162}.mat-focused .mat-form-field-required-marker{color:#d0dbe0}.mat-form-field-underline{background-color:rgba(0,0,0,0.42)}.mat-form-field-disabled .mat-form-field-underline{background-image:linear-gradient(to right, rgba(0,0,0,0.42) 0%, rgba(0,0,0,0.42) 33%, transparent 0%);background-size:4px 1px;background-repeat:repeat-x}.mat-form-field-ripple{background-color:#9e737d}.mat-form-field-ripple.mat-accent{background-color:#d0dbe0}.mat-form-field-ripple.mat-warn{background-color:#ef6162}.mat-form-field-invalid .mat-form-field-label{color:#ef6162}.mat-form-field-invalid .mat-form-field-label.mat-accent,.mat-form-field-invalid .mat-form-field-label .mat-form-field-required-marker{color:#ef6162}.mat-form-field-invalid .mat-form-field-ripple{backgr
 ound-color:#ef6162}.mat-error{color:#ef6162}.mat-icon.mat-primary{color:#9e737d}.mat-icon.mat-accent{color:#d0dbe0}.mat-icon.mat-warn{color:#ef6162}.mat-input-element:disabled{color:rgba(0,0,0,0.38)}.mat-input-element{caret-color:#9e737d}.mat-input-element::placeholder{color:rgba(0,0,0,0.42)}.mat-input-element::-moz-placeholder{color:rgba(0,0,0,0.42)}.mat-input-element::-webkit-input-placeholder{color:rgba(0,0,0,0.42)}.mat-input-element:-ms-input-placeholder{color:rgba(0,0,0,0.42)}.mat-accent .mat-input-element{caret-color:#d0dbe0}.mat-warn .mat-input-element,.mat-form-field-invalid .mat-input-element{caret-color:#ef6162}.mat-list .mat-list-item,.mat-nav-list .mat-list-item,.mat-selection-list .mat-list-item{color:rgba(0,0,0,0.87)}.mat-list .mat-list-option,.mat-nav-list .mat-list-option,.mat-selection-list .mat-list-option{color:rgba(0,0,0,0.87)}.mat-list .mat-subheader,.mat-nav-list .mat-subheader,.mat-selection-list .mat-subheader{color:rgba(0,0,0,0.54)}.mat-list-item-disabled{ba
 ckground-color:#eee}.mat-nav-list .mat-list-item{outline:none}.mat-nav-list .mat-list-item:hover,.mat-nav-list .mat-list-item.mat-list-item-focus{background:rgba(0,0,0,0.04)}.mat-list-option{outline:none}.mat-list-option:hover,.mat-list-option.mat-list-item-focus{background:rgba(0,0,0,0.04)}.mat-menu-panel{background:#fff}.mat-menu-item{background:transparent;color:rgba(0,0,0,0.87)}.mat-menu-item[disabled]{color:rgba(0,0,0,0.38)}.mat-menu-item .mat-icon:not([color]),.mat-menu-item-submenu-trigger::after{color:rgba(0,0,0,0.54)}.mat-menu-item:hover:not([disabled]),.mat-menu-item.cdk-program-focused:not([disabled]),.mat-menu-item.cdk-keyboard-focused:not([disabled]),.mat-menu-item-highlighted:not([disabled]){background:rgba(0,0,0,0.04)}.mat-paginator{background:#fff}.mat-paginator,.mat-paginator-page-size .mat-select-trigger{color:rgba(0,0,0,0.54)}.mat-paginator-decrement,.mat-paginator-increment{border-top:2px solid rgba(0,0,0,0.54);border-right:2px solid rgba(0,0,0,0.54)}.mat-paginat
 or-first,.mat-paginator-last{border-top:2px solid rgba(0,0,0,0.54)}.mat-icon-button[disabled] .mat-paginator-decrement,.mat-icon-button[disabled] .mat-paginator-increment,.mat-icon-button[disabled] .mat-paginator-first,.mat-icon-button[disabled] .mat-paginator-last{border-color:rgba(0,0,0,0.38)}.mat-progress-bar-background{fill:#915d69}.mat-progress-bar-buffer{background-color:#915d69}.mat-progress-bar-fill::after{background-color:#9e737d}.mat-progress-bar.mat-accent .mat-progress-bar-background{fill:#ccc}.mat-progress-bar.mat-accent .mat-progress-bar-buffer{background-color:#ccc}.mat-progress-bar.mat-accent .mat-progress-bar-fill::after{background-color:#d0dbe0}.mat-progress-bar.mat-warn .mat-progress-bar-background{fill:#d14a50}.mat-progress-bar.mat-warn .mat-progress-bar-buffer{background-color:#d14a50}.mat-progress-bar.mat-warn .mat-progress-bar-fill::after{background-color:#ef6162}.mat-progress-spinner circle,.mat-spinner circle{stroke:#9e737d}.mat-progress-spinner.mat-accent c
 ircle,.mat-spinner.mat-accent circle{stroke:#d0dbe0}.mat-progress-spinner.mat-warn circle,.mat-spinner.mat-warn circle{stroke:#ef6162}.mat-radio-outer-circle{border-color:rgba(0,0,0,0.54)}.mat-radio-disabled .mat-radio-outer-circle{border-color:rgba(0,0,0,0.38)}.mat-radio-disabled .mat-radio-ripple .mat-ripple-element,.mat-radio-disabled .mat-radio-inner-circle{background-color:rgba(0,0,0,0.38)}.mat-radio-disabled .mat-radio-label-content{color:rgba(0,0,0,0.38)}.mat-radio-button.mat-primary.mat-radio-checked .mat-radio-outer-circle{border-color:#9e737d}.mat-radio-button.mat-primary .mat-radio-inner-circle{background-color:#9e737d}.mat-radio-button.mat-primary .mat-radio-ripple .mat-ripple-element{background-color:rgba(158,115,125,0.26)}.mat-radio-button.mat-accent.mat-radio-checked .mat-radio-outer-circle{border-color:#d0dbe0}.mat-radio-button.mat-accent .mat-radio-inner-circle{background-color:#d0dbe0}.mat-radio-button.mat-accent .mat-radio-ripple .mat-ripple-element{background-col
 or:rgba(208,219,224,0.26)}.mat-radio-button.mat-warn.mat-radio-checked .mat-radio-outer-circle{border-color:#ef6162}.mat-radio-button.mat-warn .mat-radio-inner-circle{background-color:#ef6162}.mat-radio-button.mat-warn .mat-radio-ripple .mat-ripple-element{background-color:rgba(239,97,98,0.26)}.mat-select-content,.mat-select-panel-done-animating{background:#fff}.mat-select-value{color:rgba(0,0,0,0.87)}.mat-select-placeholder{color:rgba(0,0,0,0.42)}.mat-select-disabled .mat-select-value{color:rgba(0,0,0,0.38)}.mat-select-arrow{color:rgba(0,0,0,0.54)}.mat-select-panel .mat-option.mat-selected:not(.mat-option-multiple){background:rgba(0,0,0,0.12)}.mat-form-field.mat-focused.mat-primary .mat-select-arrow{color:#9e737d}.mat-form-field.mat-focused.mat-accent .mat-select-arrow{color:#d0dbe0}.mat-form-field.mat-focused.mat-warn .mat-select-arrow{color:#ef6162}.mat-form-field .mat-select.mat-select-invalid .mat-select-arrow{color:#ef6162}.mat-form-field .mat-select.mat-select-disabled .mat-s
 elect-arrow{color:rgba(0,0,0,0.38)}.mat-drawer-container{background-color:#fafafa;color:rgba(0,0,0,0.87)}.mat-drawer{background-color:#fff;color:rgba(0,0,0,0.87)}.mat-drawer.mat-drawer-push{background-color:#fff}.mat-drawer-backdrop.mat-drawer-shown{background-color:rgba(0,0,0,0.6)}.mat-slide-toggle.mat-checked:not(.mat-disabled) .mat-slide-toggle-thumb{background-color:#d0dbe0}.mat-slide-toggle.mat-checked:not(.mat-disabled) .mat-slide-toggle-bar{background-color:rgba(208,219,224,0.5)}.mat-slide-toggle:not(.mat-checked) .mat-ripple-element{background-color:rgba(0,0,0,0.06)}.mat-slide-toggle .mat-ripple-element{background-color:rgba(208,219,224,0.12)}.mat-slide-toggle.mat-primary.mat-checked:not(.mat-disabled) .mat-slide-toggle-thumb{background-color:#9e737d}.mat-slide-toggle.mat-primary.mat-checked:not(.mat-disabled) .mat-slide-toggle-bar{background-color:rgba(158,115,125,0.5)}.mat-slide-toggle.mat-primary:not(.mat-checked) .mat-ripple-element{background-color:rgba(0,0,0,0.06)}.mat
 -slide-toggle.mat-primary .mat-ripple-element{background-color:rgba(158,115,125,0.12)}.mat-slide-toggle.mat-warn.mat-checked:not(.mat-disabled) .mat-slide-toggle-thumb{background-color:#ef6162}.mat-slide-toggle.mat-warn.mat-checked:not(.mat-disabled) .mat-slide-toggle-bar{background-color:rgba(239,97,98,0.5)}.mat-slide-toggle.mat-warn:not(.mat-checked) .mat-ripple-element{background-color:rgba(0,0,0,0.06)}.mat-slide-toggle.mat-warn .mat-ripple-element{background-color:rgba(239,97,98,0.12)}.mat-disabled .mat-slide-toggle-thumb{background-color:#bdbdbd}.mat-disabled .mat-slide-toggle-bar{background-color:rgba(0,0,0,0.1)}.mat-slide-toggle-thumb{background-color:#fafafa}.mat-slide-toggle-bar{background-color:rgba(0,0,0,0.38)}.mat-slider-track-background{background-color:rgba(0,0,0,0.26)}.mat-primary .mat-slider-track-fill,.mat-primary .mat-slider-thumb,.mat-primary .mat-slider-thumb-label{background-color:#9e737d}.mat-primary .mat-slider-thumb-label-text{color:rgba(255,255,255,0.87)}.ma
 t-accent .mat-slider-track-fill,.mat-accent .mat-slider-thumb,.mat-accent .mat-slider-thumb-label{background-color:#d0dbe0}.mat-accent .mat-slider-thumb-label-text{color:rgba(255,255,255,0.87)}.mat-warn .mat-slider-track-fill,.mat-warn .mat-slider-thumb,.mat-warn .mat-slider-thumb-label{background-color:#ef6162}.mat-warn .mat-slider-thumb-label-text{color:rgba(255,255,255,0.87)}.mat-slider-focus-ring{background-color:rgba(208,219,224,0.2)}.mat-slider:hover .mat-slider-track-background,.cdk-focused .mat-slider-track-background{background-color:rgba(0,0,0,0.38)}.mat-slider-disabled .mat-slider-track-background,.mat-slider-disabled .mat-slider-track-fill,.mat-slider-disabled .mat-slider-thumb{background-color:rgba(0,0,0,0.26)}.mat-slider-disabled:hover .mat-slider-track-background{background-color:rgba(0,0,0,0.26)}.mat-slider-min-value .mat-slider-focus-ring{background-color:rgba(0,0,0,0.12)}.mat-slider-min-value.mat-slider-thumb-label-showing .mat-slider-thumb,.mat-slider-min-value.ma
 t-slider-thumb-label-showing .mat-slider-thumb-label{background-color:rgba(0,0,0,0.87)}.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb,.mat-slider-min-value.mat-slider-thumb-label-showing.cdk-focused .mat-slider-thumb-label{background-color:rgba(0,0,0,0.26)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing) .mat-slider-thumb{border-color:rgba(0,0,0,0.26);background-color:transparent}.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused .mat-slider-thumb{border-color:rgba(0,0,0,0.38)}.mat-slider-min-value:not(.mat-slider-thumb-label-showing):hover.mat-slider-disabled .mat-slider-thumb,.mat-slider-min-value:not(.mat-slider-thumb-label-showing).cdk-focused.mat-slider-disabled .mat-slider-thumb{border-color:rgba(0,0,0,0.26)}.mat-slider-has-ticks .mat-slider-wrapper::after{border-color:rgba(0,0,0,0.7)}.mat-slider-horizontal .mat-slider-ticks{backg
 round-image:repeating-linear-gradient(to right, rgba(0,0,0,0.7), rgba(0,0,0,0.7) 2px, transparent 0, transparent);background-image:-moz-repeating-linear-gradient(0.0001deg, rgba(0,0,0,0.7), rgba(0,0,0,0.7) 2px, transparent 0, transparent)}.mat-slider-vertical .mat-slider-ticks{background-image:repeating-linear-gradient(to bottom, rgba(0,0,0,0.7), rgba(0,0,0,0.7) 2px, transparent 0, transparent)}.mat-step-header.cdk-keyboard-focused,.mat-step-header.cdk-program-focused,.mat-step-header:hover{background-color:rgba(0,0,0,0.04)}.mat-step-header .mat-step-label,.mat-step-header .mat-step-optional{color:rgba(0,0,0,0.38)}.mat-step-header .mat-step-icon{background-color:#9e737d;color:rgba(255,255,255,0.87)}.mat-step-header .mat-step-icon-not-touched{background-color:rgba(0,0,0,0.38);color:rgba(255,255,255,0.87)}.mat-step-header .mat-step-label.mat-step-label-active{color:rgba(0,0,0,0.87)}.mat-stepper-horizontal,.mat-stepper-vertical{background-color:#fff}.mat-stepper-vertical-line::before{b
 order-left-color:rgba(0,0,0,0.12)}.mat-stepper-horizontal-line{border-top-color:rgba(0,0,0,0.12)}.mat-tab-nav-bar,.mat-tab-header{border-bottom:1px solid rgba(0,0,0,0.12)}.mat-tab-group-inverted-header .mat-tab-nav-bar,.mat-tab-group-inverted-header .mat-tab-header{border-top:1px solid rgba(0,0,0,0.12);border-bottom:none}.mat-tab-label,.mat-tab-link{color:rgba(0,0,0,0.87)}.mat-tab-label.mat-tab-disabled,.mat-tab-link.mat-tab-disabled{color:rgba(0,0,0,0.38)}.mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,0.87)}.mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(0,0,0,0.38)}.mat-tab-group[class*='mat-background-'] .mat-tab-header,.mat-tab-nav-bar[class*='mat-background-']{border-bottom:none;border-top:none}.mat-tab-group.mat-primary .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-group.mat-primary .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-primary .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-
 primary .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(145,93,105,0.3)}.mat-tab-group.mat-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary .mat-ink-bar{background-color:#9e737d}.mat-tab-group.mat-primary.mat-background-primary .mat-ink-bar,.mat-tab-nav-bar.mat-primary.mat-background-primary .mat-ink-bar{background-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-accent .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-group.mat-accent .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-accent .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-accent .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(204,204,204,0.3)}.mat-tab-group.mat-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent .mat-ink-bar{background-color:#d0dbe0}.mat-tab-group.mat-accent.mat-background-accent .mat-ink-bar,.mat-tab-nav-bar.mat-accent.mat-background-accent .mat-ink-bar{background-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-warn .mat-tab-label:not(
 .mat-tab-disabled):focus,.mat-tab-group.mat-warn .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-warn .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-warn .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(209,74,80,0.3)}.mat-tab-group.mat-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn .mat-ink-bar{background-color:#ef6162}.mat-tab-group.mat-warn.mat-background-warn .mat-ink-bar,.mat-tab-nav-bar.mat-warn.mat-background-warn .mat-ink-bar{background-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-primary .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-group.mat-background-primary .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-primary .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-primary .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(145,93,105,0.3)}.mat-tab-group.mat-background-primary .mat-tab-header,.mat-tab-group.mat-background-primary .mat-tab-lin
 ks,.mat-tab-nav-bar.mat-background-primary .mat-tab-header,.mat-tab-nav-bar.mat-background-primary .mat-tab-links{background-color:#9e737d}.mat-tab-group.mat-background-primary .mat-tab-label,.mat-tab-group.mat-background-primary .mat-tab-link,.mat-tab-nav-bar.mat-background-primary .mat-tab-label,.mat-tab-nav-bar.mat-background-primary .mat-tab-link{color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-primary .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-primary .mat-tab-link.mat-tab-disabled{color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-primary .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav
 -bar.mat-background-primary .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-primary .mat-ripple-element,.mat-tab-nav-bar.mat-background-primary .mat-ripple-element{background-color:rgba(255,255,255,0.12)}.mat-tab-group.mat-background-accent .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-group.mat-background-accent .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-accent .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-accent .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(204,204,204,0.3)}.mat-tab-group.mat-background-accent .mat-tab-header,.mat-tab-group.mat-background-accent .mat-tab-links,.mat-tab-nav-bar.mat-background-accent .mat-tab-header,.mat-tab-nav-bar.mat-background-accent .mat-tab-links{background-color:#d0dbe0}.mat-tab-group.mat-background-accent .mat-tab-label,.mat-tab-group.mat-background-accent .mat-tab-lin
 k,.mat-tab-nav-bar.mat-background-accent .mat-tab-label,.mat-tab-nav-bar.mat-background-accent .mat-tab-link{color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-accent .mat-tab-link.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-accent .mat-tab-link.mat-tab-disabled{color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-accent .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-accent .mat-ripple-element,.mat-tab-nav-bar.mat-background-accent .mat-ripple-element{ba
 ckground-color:rgba(255,255,255,0.12)}.mat-tab-group.mat-background-warn .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-group.mat-background-warn .mat-tab-link:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-warn .mat-tab-label:not(.mat-tab-disabled):focus,.mat-tab-nav-bar.mat-background-warn .mat-tab-link:not(.mat-tab-disabled):focus{background-color:rgba(209,74,80,0.3)}.mat-tab-group.mat-background-warn .mat-tab-header,.mat-tab-group.mat-background-warn .mat-tab-links,.mat-tab-nav-bar.mat-background-warn .mat-tab-header,.mat-tab-nav-bar.mat-background-warn .mat-tab-links{background-color:#ef6162}.mat-tab-group.mat-background-warn .mat-tab-label,.mat-tab-group.mat-background-warn .mat-tab-link,.mat-tab-nav-bar.mat-background-warn .mat-tab-label,.mat-tab-nav-bar.mat-background-warn .mat-tab-link{color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-group.mat-background-warn .mat-tab-link.mat-tab-disabled,.mat-tab-
 nav-bar.mat-background-warn .mat-tab-label.mat-tab-disabled,.mat-tab-nav-bar.mat-background-warn .mat-tab-link.mat-tab-disabled{color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.87)}.mat-tab-group.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron,.mat-tab-nav-bar.mat-background-warn .mat-tab-header-pagination-disabled .mat-tab-header-pagination-chevron{border-color:rgba(255,255,255,0.4)}.mat-tab-group.mat-background-warn .mat-ripple-element,.mat-tab-nav-bar.mat-background-warn .mat-ripple-element{background-color:rgba(255,255,255,0.12)}.mat-toolbar{background:#f5f5f5;color:rgba(0,0,0,0.87)}.mat-toolbar.mat-primary{background:#9e737d;color:rgba(255,255,255,0.87)}.mat-toolbar.mat-accent{background:#d0dbe0;color:rgba(255,255,255,0.87)}.mat-toolbar.mat-warn{background:#ef6162;color:rgba(255,255,25
 5,0.87)}.mat-tooltip{background:rgba(97,97,97,0.9)}.mat-snack-bar-container{background:#323232;color:#fff}.mat-simple-snackbar-action{color:#d0dbe0}body{font-family:Roboto, "Helvetica Neue", sans-serif}.td-chip-content{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px}.td-data-table-cell{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:400;line-height:20px}.td-data-table-column{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px;font-weight:600}.td-dialog-title{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:20px;font-weight:500}.td-dialog-message{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:16px;font-weight:400;line-height:28px}.td-expansion-label{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:16px;font-weight:400}.td-expansion-sublabel{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:400}.td-key{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px}.td-mes
 sage-label{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:600;line-height:24px}.td-message-sublabel{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px}.td-paging-bar{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:12px}.td-step-label{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:500}.td-step-sublabel{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;line-height:20px}td-navigation-drawer .td-navigation-drawer-title{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:16px}td-navigation-drawer .td-navigation-drawer-name{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:500;line-height:20px}td-navigation-drawer .td-navigation-drawer-menu-toggle{font-family:Roboto, "Helvetica Neue", sans-serif;font-size:14px;font-weight:400;line-height:24px}mat-list-item mat-icon,.mat-list-item-content mat-icon{color:rgba(0,0,0,0.54)}mat-list-item mat-icon[matListAvatar],.mat-
 list-item-content mat-icon[matListAvatar]{background-color:rgba(0,0,0,0.04)}.mat-list-text p{color:rgba(0,0,0,0.38)}.mat-drawer-container{background-color:#e0e0e0}[mat-icon-button].td-layout-menu-button{margin-left:0}::ng-deep [dir='rtl'] [mat-icon-button].td-layout-menu-button{margin-right:0;margin-left:6px}td-layout-nav mat-toolbar,td-layout-nav-list mat-toolbar,td-layout-manage-list mat-toolbar,td-layout-card-over mat-toolbar,td-navigation-drawer mat-toolbar,td-layout mat-toolbar{box-shadow:0px 2px 1px -1px rgba(0,0,0,0.2),0px 1px 1px 0px rgba(0,0,0,0.14),0px 1px 3px 0px rgba(0,0,0,0.12);z-index:1}.mat-drawer-side.td-layout-sidenav{box-shadow:0px 3px 1px -2px rgba(0,0,0,0.2),0px 2px 2px 0px rgba(0,0,0,0.14),0px 1px 5px 0px rgba(0,0,0,0.12)}.td-layout-footer{background:#f5f5f5;color:rgba(0,0,0,0.87);box-shadow:0px 3px 1px -2px rgba(0,0,0,0.2),0px 2px 2px 0px rgba(0,0,0,0.14),0px 1px 5px 0px rgba(0,0,0,0.12)}.td-layout-footer.mat-primary{background:#9e737d}.td-layout-footer.mat-pri
 mary,.td-layout-footer.mat-primary mat-icon{color:rgba(255,255,255,0.87)}.td-layout-footer.mat-accent{background:#d0dbe0}.td-layout-footer.mat-accent,.td-layout-footer.mat-accent mat-icon{color:rgba(255,255,255,0.87)}.td-layout-footer.mat-warn{background:#ef6162}.td-layout-footer.mat-warn,.td-layout-footer.mat-warn mat-icon{color:rgba(255,255,255,0.87)}td-steps .td-steps-header{box-shadow:0px 2px 1px -1px rgba(0,0,0,0.2),0px 1px 1px 0px rgba(0,0,0,0.14),0px 1px 3px 0px rgba(0,0,0,0.12)}td-steps .td-step-content,td-steps .td-step-summary,td-steps .td-step-actions{margin:16px}td-steps .td-horizontal-line{border-bottom-color:rgba(0,0,0,0.12)}td-steps .td-vertical-line{border-left-color:rgba(0,0,0,0.12)}td-steps .td-step-header:focus:not(.mat-disabled),td-steps .td-step-header:hover:not(.mat-disabled){background:rgba(0,0,0,0.04)}td-steps .td-step-header .td-step-label-wrapper .td-step-sublabel{color:rgba(0,0,0,0.54)}td-steps .td-step-header .td-step-label-wrapper.mat-inactive,td-steps .
 td-step-header .td-step-label-wrapper.mat-inactive *{color:rgba(0,0,0,0.38)}td-steps .td-step-header .td-step-label-wrapper.mat-warn,td-steps .td-step-header .td-step-label-wrapper.mat-warn *{color:#ef6162}td-steps .td-step-header .mat-complete{color:#d0dbe0}td-steps .td-circle{color:#fff}td-steps .td-circle.mat-active{background-color:#d0dbe0}td-steps .td-circle.mat-inactive{background-color:rgba(0,0,0,0.38)}td-steps .td-circle mat-icon{fill:rgba(0,0,0,0.87)}td-steps .td-triangle{color:#ef6162}td-steps .td-edit-icon{color:rgba(0,0,0,0.54)}.td-expansion-panel-group .td-expansion-panel{transition:120ms ease-in}.td-expansion-panel-group .td-expansion-panel:not(:last-of-type).td-expanded{margin-bottom:16px}.td-expansion-panel-group .td-expansion-panel:not(:first-of-type).td-expanded{margin-top:16px}.td-expansion-panel{box-shadow:0px 2px 1px -1px rgba(0,0,0,0.2),0px 1px 1px 0px rgba(0,0,0,0.14),0px 1px 3px 0px rgba(0,0,0,0.12);background-color:#fff}.td-expansion-panel .td-expansion-pane
 l-header:focus:not(.mat-disabled),.td-expansion-panel .td-expansion-panel-header:hover:not(.mat-disabled){background:rgba(0,0,0,0.04)}.td-expansion-panel .td-expansion-panel-header .td-expansion-panel-header-content mat-icon.td-expand-icon{color:rgba(0,0,0,0.54)}.td-expansion-panel .td-expansion-panel-header .td-expansion-panel-header-content.mat-disabled,.td-expansion-panel .td-expansion-panel-header .td-expansion-panel-header-content.mat-disabled *{color:rgba(0,0,0,0.38)}.td-expansion-panel mat-icon.td-expand-icon{color:rgba(0,0,0,0.54)}.td-expansion-panel .td-expansion-label,.td-expansion-panel .td-expansion-label *,.td-expansion-panel .td-expansion-sublabel,.td-expansion-panel .td-expansion-sublabel *{vertical-align:middle}.td-expansion-panel .td-expansion-sublabel{color:rgba(0,0,0,0.54)}td-chips .mat-basic-chip{background:#e0e0e0;color:rgba(0,0,0,0.87)}td-chips .mat-basic-chip:focus:not(.td-chip-disabled) mat-icon:hover{color:rgba(0,0,0,0.54)}td-chips .mat-basic-chip:focus:not(
 .td-chip-disabled).mat-primary{background:#9e737d}td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-primary,td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-primary mat-icon{color:rgba(255,255,255,0.87)}td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-accent{background:#d0dbe0}td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-accent,td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-accent mat-icon{color:rgba(255,255,255,0.87)}td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-warn{background:#ef6162}td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-warn,td-chips .mat-basic-chip:focus:not(.td-chip-disabled).mat-warn mat-icon{color:rgba(255,255,255,0.87)}td-chips .mat-basic-chip mat-icon.td-chip-removal{color:rgba(0,0,0,0.38)}td-chips .mat-basic-chip mat-icon.td-chip-removal:hover{color:rgba(0,0,0,0.54)}td-chips.mat-primary .mat-form-field-underline .mat-form-field-ripple{background-color:#9e737d}td-chips.mat-accent .mat-form-fi
 eld-underline .mat-form-field-ripple{background-color:#d0dbe0}td-chips.mat-warn .mat-form-field-underline .mat-form-field-ripple{background-color:#ef6162}td-file-upload .td-file-upload-cancel mat-icon{background-color:#fafafa}td-file-input .drop-zone{transition:background 400ms cubic-bezier(0.25, 0.8, 0.25, 1),box-shadow 280ms cubic-bezier(0.4, 0, 0.2, 1);box-shadow:0px 5px 5px -3px rgba(0,0,0,0.2),0px 8px 10px 1px rgba(0,0,0,0.14),0px 3px 14px 2px rgba(0,0,0,0.12)}.td-dialog-message{color:rgba(0,0,0,0.54)}.td-json-formatter-wrapper .function::after,.td-json-formatter-wrapper .date::after,.td-json-formatter-wrapper .td-object-name::after,.td-json-formatter-wrapper .td-array-length::after{content:'\200E'}.td-json-formatter-wrapper .td-key.td-key-node:focus,.td-json-formatter-wrapper .td-key.td-key-node:hover{background-color:rgba(0,0,0,0.04)}.td-json-formatter-wrapper .td-key.td-key-node .td-node-icon{color:rgba(0,0,0,0.54)}.td-json-formatter-wrapper .key{color:#9e737d}.td-json-forma
 tter-wrapper .value .string{color:#ef6162}.td-json-formatter-wrapper .value .number{color:#d0dbe0}.td-json-formatter-wrapper .value .boolean{color:#d0dbe0}.td-json-formatter-wrapper .value .null,.td-json-formatter-wrapper .value .undefined{color:rgba(0,0,0,0.38)}.td-json-formatter-wrapper .value .function{color:#9e737d}.td-json-formatter-wrapper .value .date{color:rgba(0,0,0,0.87)}td-paging-bar,td-paging-bar mat-select .mat-select-value{color:rgba(0,0,0,0.54)}.td-loading-wrapper.td-overlay .td-loading{background:rgba(255,255,255,0.8)}.td-data-table-scrollable{border-top:1px solid rgba(0,0,0,0.12)}table[td-data-table] .td-data-table-column-row,table[td-data-table] .td-data-table-row{border-bottom-color:rgba(0,0,0,0.12)}table[td-data-table] .mat-checkbox-cell,table[td-data-table] .mat-checkbox-column{color:rgba(0,0,0,0.54)}table[td-data-table] .mat-checkbox-cell mat-pseudo-checkbox.mat-pseudo-checkbox-checked,table[td-data-table] .mat-checkbox-column mat-pseudo-checkbox.mat-pseudo-che
 ckbox-checked{background-color:#d0dbe0}table[td-data-table] .td-data-table-cell mat-form-field .mat-form-field-underline{display:none}table[td-data-table] .td-data-table-column{color:rgba(0,0,0,0.54)}table[td-data-table] .td-data-table-column *{vertical-align:middle}table[td-data-table] .td-data-table-column mat-icon.td-data-table-sort-icon{color:rgba(0,0,0,0.38)}table[td-data-table] .td-data-table-column.mat-active,table[td-data-table] .td-data-table-column.mat-active mat-icon{color:#000}table[td-data-table].mat-selectable tbody>tr.td-data-table-row.td-selected{background-color:#f5f5f5}table[td-data-table].mat-selectable tbody>tr.td-data-table-row:focus{background-color:rgba(0,0,0,0.04)}table[td-data-table].mat-clickable tbody>tr.td-data-table-row:hover{background-color:rgba(0,0,0,0.04)}.mat-selected-title{background-color:rgba(208,219,224,0.12);color:#d0dbe0}.td-notification-count{box-shadow:0px 2px 1px -1px rgba(0,0,0,0.2),0px 1px 1px 0px rgba(0,0,0,0.14),0px 1px 3px 0px rgba(0,0
 ,0,0.12)}.td-notification-count.mat-warn{background-color:#ef6162;color:rgba(255,255,255,0.87)}.td-notification-count.mat-primary{background-color:#9e737d;color:rgba(255,255,255,0.87)}.td-notification-count.mat-accent{background-color:#d0dbe0;color:rgba(255,255,255,0.87)}.td-message.mat-primary{color:#9e737d;background-color:rgba(158,115,125,0.15)}.td-message.mat-accent{color:#d0dbe0;background-color:rgba(208,219,224,0.15)}.td-message.mat-warn{color:#ef6162;background-color:rgba(239,97,98,0.15)}body[fds] .mat-raised-button{height:34px;font-family:"Roboto",sans-serif;font-weight:lighter;font-size:14px;text-transform:uppercase;line-height:normal;box-shadow:0px 0px 0px 0px rgba(0,0,0,0.2),0px 0px 0px 0px rgba(0,0,0,0.14),0px 0px 0px 0px rgba(0,0,0,0.12)}body[fds] .mat-raised-button.cdk-focused:focus{box-shadow:0px 0px 2px 0px #1391c1}body[fds] .mat-raised-button[disabled]{opacity:.6;cursor:not-allowed}body[fds] .mat-button-toggle-disabled .mat-button-toggle-label-content{cursor:not-all
 owed}body[fds] .mat-button-focus-overlay{background-color:transparent}body[fds] .mat-raised-button.mat-fds-primary{border:1px solid #9E737D;background-color:#9E737D;color:#fff}body[fds] .mat-raised-button.mat-fds-primary:hover{background-color:#915D69;color:#fff}body[fds] .mat-raised-button.mat-fds-primary.mat-button-focus{color:#fff;background-color:#9E737D}body[fds] .mat-raised-button.mat-fds-primary[disabled]{color:#D1E8D1;background-color:#9E737D;color:#D1E8D1}body[fds] .mat-raised-button.mat-fds-secondary{color:#915D69;border:1px solid #9E737D}body[fds] .mat-raised-button.mat-fds-secondary:hover:not([disabled]){color:#fff;background-color:#915D69;border:1px solid #915D69}body[fds] .mat-raised-button.mat-fds-secondary.mat-button-focus{color:#915D69;background-color:#fff;border:1px solid #9E737D}body[fds] .mat-raised-button.mat-fds-secondary[disabled]{color:#D1E8D1;background-color:#9E737D}body[fds] .mat-raised-button.mat-fds-regular{color:#666;background-color:#fff;border:1px so
 lid #CFD3D7}body[fds] .mat-raised-button.mat-fds-regular:hover{color:#fff;background-color:#808793;border:1px solid #808793}body[fds] .mat-raised-button.mat-fds-regular.mat-button-focus{color:#333;background-color:#fff;border:1px solid #CFD3D7}body[fds] .mat-raised-button.mat-fds-regular[disabled]{color:#D1E8D1;background-color:#808793;border:1px solid #808793}body[fds] .mat-raised-button.mat-fds-warn{border:1px solid #EF6162;background-color:#EF6162;color:#fff}body[fds] .mat-raised-button.mat-fds-warn:hover{color:#fff;background-color:#D14A50;border:1px solid #EF6162}body[fds] .mat-raised-button.mat-fds-warn.mat-button-focus{color:#fff;background-color:#EF6162;border:1px solid #CFD3D7}body[fds] .mat-raised-button.mat-fds-warn[disabled]{color:#D1E8D1;background-color:#EF6162;border:1px solid #EF6162}body[fds] .mat-raised-button.mat-fds-critical{color:#fff;background-color:#E98A40;border:1px solid #E98A40}body[fds] .mat-raised-button.mat-fds-critical:hover{color:#fff;background-color
 :#D3702D;border:1px solid #D3702D}body[fds] .mat-raised-button.mat-fds-critical.mat-button-focus{color:#fff;background-color:#D3702D;border:1px solid #CFD3D7}body[fds] .mat-raised-button.mat-fds-critical[disabled]{color:#D1E8D1;background-color:#E98A40;border:1px solid #E98A40}.fds-primary-dropdown-button-menu .cdk-focused{color:#fff;background-color:#9E737D}body[fds] td-expansion-panel:not(:last-of-type) .td-expanded{margin-bottom:0px}body[fds] .td-expansion-panel-header-content{height:80px !important;padding:0px 30px !important;border-bottom:1px solid #ddd}body[fds] .td-expansion-content form{padding:15px 10px 20px 20px}body[fds] .md-subhead{font-size:18px;color:#999}body[fds] td-expansion-panel .td-expansion-panel-header .td-expansion-panel-header-content mat-icon.td-expand-icon{font-size:28px;color:#6B8791;font-weight:bold}body[fds] td-expansion-panel .td-expansion-panel-header:hover:not(.mat-disabled){background:#F3FAFF}body[fds] td-expansion-panel .td-expansion-panel-header:fo
 cus{background:#FFFFFF}body[fds] td-expansion-panel .td-expansion-panel-header:focus .td-expansion-panel-header-content{border-bottom:1px solid #9E737D}body[fds] .mat-menu-panel{border-radius:2px}body[fds] .mat-menu-item{font-size:14px;color:#333;min-width:200px;text-transform:none;height:24px;line-height:24px}body[fds] .regular-button-menu .mat-menu-item:hover{color:#ffffff;background-color:#808793}body[fds] .mat-menu-item[disabled]{color:rgba(0,0,0,0.38);background-color:#ffffff;cursor:not-allowed}body[fds] .mat-menu-item .mat-icon{font-size:14px}body[fds] .mat-menu-item .fa{font-size:14px;width:1em;height:1em}body[fds] .mat-menu-item[disabled] .mat-icon{color:rgba(0,0,0,0.38)}body[fds] .mat-menu-item[disabled] .fa{color:rgba(0,0,0,0.38)}body[fds] .mat-menu-item:hover:not([disabled]) .mat-icon{color:#ffffff}body[fds] .mat-menu-item:hover:not([disabled]) .fa{color:#ffffff}body[fds] .mat-menu-item:hover:not([disabled]),body[fds] .mat-menu-item:focus:not([disabled]){color:#ffffff;bac
 kground-color:#808793}body[fds] .fds-primary-dropdown-button-menu .mat-menu-item:hover:not([disabled]),body[fds] .fds-primary-dropdown-button-menu .mat-menu-item:focus:not([disabled]){color:#FFFFFF;background-color:#915D69}.mat-raised-button .mat-button-wrapper i{padding-left:10px}body[fds] .mat-option{font-size:14px;color:#333;text-transform:none;height:24px;line-height:24px}body[fds] .mat-autocomplete-panel.mat-autocomplete-panel-below{top:0}body[fds] .regular-button-menu .mat-option:hover{color:#ffffff;background-color:#808793}body[fds] .mat-option:hover:not([disabled]),body[fds] .mat-option:focus:not([disabled]){color:#ffffff;background-color:#808793}body[fds] .mat-select-underline{display:none}
+
+/*# sourceMappingURL=fds-demo.min.css.map */
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/nifi-fds/blob/e7eda493/webapp/css/fds-demo.min.css.gz
----------------------------------------------------------------------
diff --git a/webapp/css/fds-demo.min.css.gz b/webapp/css/fds-demo.min.css.gz
new file mode 100644
index 0000000..283e178
Binary files /dev/null and b/webapp/css/fds-demo.min.css.gz differ