commit
42fa44fbaf
17
Dockerfile
17
Dockerfile
|
@ -12,7 +12,7 @@ ADD . /webui-aria2
|
||||||
|
|
||||||
# gosu install latest
|
# gosu install latest
|
||||||
RUN GITHUB_REPO="https://github.com/tianon/gosu" \
|
RUN GITHUB_REPO="https://github.com/tianon/gosu" \
|
||||||
&& LATEST=`curl -s $GITHUB_REPO"/releases/latest" | grep -Eo "[0-9].[0-9]"` \
|
&& LATEST=`curl -s $GITHUB_REPO"/releases/latest" | grep -Eo "[0-9].[0-9]*"` \
|
||||||
&& curl -L $GITHUB_REPO"/releases/download/"$LATEST"/gosu-amd64" > /usr/local/bin/gosu \
|
&& curl -L $GITHUB_REPO"/releases/download/"$LATEST"/gosu-amd64" > /usr/local/bin/gosu \
|
||||||
&& chmod +x /usr/local/bin/gosu
|
&& chmod +x /usr/local/bin/gosu
|
||||||
|
|
||||||
|
@ -23,7 +23,16 @@ RUN GITHUB_REPO="https://github.com/mattn/goreman" \
|
||||||
&& tar -xvzf goreman.tar.gz && mv /goreman_linux_amd64/goreman /usr/local/bin/goreman && rm -R goreman*
|
&& tar -xvzf goreman.tar.gz && mv /goreman_linux_amd64/goreman /usr/local/bin/goreman && rm -R goreman*
|
||||||
|
|
||||||
# goreman setup
|
# goreman setup
|
||||||
RUN echo -e "web: gosu dummy /bin/busybox httpd -f -p 8080 -h /webui-aria2\nbackend: gosu dummy /usr/bin/aria2c --enable-rpc --rpc-listen-all --dir=/data" > Procfile
|
RUN echo "web: gosu dummy /bin/busybox httpd -f -p 8080 -h /webui-aria2\nbackend: gosu dummy /usr/bin/aria2c --enable-rpc --rpc-listen-all --dir=/data" > Procfile
|
||||||
|
|
||||||
EXPOSE 8080 6800
|
# aria2 downloads directory
|
||||||
CMD ["goreman", "start"]
|
VOLUME /data
|
||||||
|
|
||||||
|
# aria2 RPC port, map as-is or reconfigure webui
|
||||||
|
EXPOSE 6800/tcp
|
||||||
|
|
||||||
|
# webui static content web server, map wherever is convenient
|
||||||
|
EXPOSE 8080/tcp
|
||||||
|
|
||||||
|
CMD ["start"]
|
||||||
|
ENTRYPOINT ["/usr/local/bin/goreman"]
|
||||||
|
|
27
README.md
27
README.md
|
@ -35,6 +35,11 @@ Well, you need aria2. And a web browser (if that even counts!)
|
||||||
|
|
||||||
Docker support
|
Docker support
|
||||||
==============
|
==============
|
||||||
|
There is two Dockerfile in this project, one is a common Dockerfile, which can be use for **testing purpose**.<br>
|
||||||
|
The second is a **production ready** Dockerfile for raspberry and other ARM plateforms.
|
||||||
|
|
||||||
|
### For testing purpose
|
||||||
|
|
||||||
You can also try or use webui-aria2 in your LAN inside a Docker sandbox.
|
You can also try or use webui-aria2 in your LAN inside a Docker sandbox.
|
||||||
|
|
||||||
Build the image
|
Build the image
|
||||||
|
@ -51,6 +56,28 @@ sudo docker run -v /Downloads:/data -p 6800:6800 -p 9100:8080 --name="webui-aria
|
||||||
|
|
||||||
`/Downloads` is the directory in the host where you want to keep the downloaded files
|
`/Downloads` is the directory in the host where you want to keep the downloaded files
|
||||||
|
|
||||||
|
### Production ready (ARM platform)
|
||||||
|
|
||||||
|
This image contains both aria2 and webui-aria2.
|
||||||
|
|
||||||
|
Build it (may take several hours due to the aria2 compilation process. Don't panic and grap a coffee)
|
||||||
|
```
|
||||||
|
docker build -f rpi-Dockerfile -t yourname/webui-aria2 .
|
||||||
|
```
|
||||||
|
Prepare the host volume:
|
||||||
|
This image required few file to be mounted in the container's `/data` folder.
|
||||||
|
```
|
||||||
|
.aria2/session.txt (empty file)
|
||||||
|
.aria2/aria2.log (empty file)
|
||||||
|
.aria2/aria2.conf (aria2 configuration file, not webui-aria2 conf)
|
||||||
|
./downloads/ (where the downloaded files goes)
|
||||||
|
```
|
||||||
|
|
||||||
|
Run it
|
||||||
|
```
|
||||||
|
docker run --restart=always -d -v /home/<USER>/data/aria2:/data -p 6800:6800 -p 9100:8080 --name="webui-aria2" yourname/webui-aria2
|
||||||
|
```
|
||||||
|
|
||||||
Support
|
Support
|
||||||
=======
|
=======
|
||||||
For any support, feature request and bug report add an issue in the github project. [link](https://github.com/ziahamza/webui-aria2/issues)
|
For any support, feature request and bug report add an issue in the github project. [link](https://github.com/ziahamza/webui-aria2/issues)
|
||||||
|
|
6584
css/bootstrap.css
vendored
6584
css/bootstrap.css
vendored
File diff suppressed because it is too large
Load Diff
6
css/bootstrap.min.css
vendored
Normal file
6
css/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
|
@ -5,6 +5,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.download .title {
|
.download .title {
|
||||||
|
font-size: 1.2em;
|
||||||
padding: 5px 0;
|
padding: 5px 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -25,6 +26,7 @@
|
||||||
font-size: small;
|
font-size: small;
|
||||||
word-wrap: break-word;
|
word-wrap: break-word;
|
||||||
}
|
}
|
||||||
|
|
||||||
.active-download, .waiting-download, .stopped-download, .download {
|
.active-download, .waiting-download, .stopped-download, .download {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
@ -42,21 +44,36 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-graph {
|
.download-graph {
|
||||||
width: 40%;
|
margin: .5em 30px .5em 0;
|
||||||
margin-top: 1em;
|
|
||||||
margin-bottom: 1em;
|
|
||||||
margin-right: 30px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@media (min-width: 1200px) {
|
||||||
|
.download-graph {
|
||||||
|
width: 50%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (min-width: 767px) and (max-width: 1200px) {
|
||||||
|
.download-graph {
|
||||||
|
width: 60%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
.download-graph {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.large-graph {
|
.large-graph {
|
||||||
width: 66%;
|
width: 66%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.stats {
|
.stats {
|
||||||
margin-top: 0px;
|
margin: 0 auto;
|
||||||
margin-bottom: 0px;
|
|
||||||
margin-left: auto;
|
|
||||||
margin-right: auto;
|
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.stats li {
|
.stats li {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
margin-bottom: 2px;
|
margin-bottom: 2px;
|
||||||
|
@ -67,22 +84,21 @@
|
||||||
|
|
||||||
.download-item {
|
.download-item {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
padding-left: 6px;
|
padding: 0.5ex 6px 0.5ex;
|
||||||
padding-right: 6px;
|
|
||||||
padding-top: 0.3ex;
|
|
||||||
padding-bottom: 0.5ex;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-controls .btn-group {
|
.download-controls .btn-group {
|
||||||
float: right;
|
float: right;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-controls > .btn-group {
|
.download-controls > .btn-group {
|
||||||
margin-right: 5px;
|
margin: 5px 5px 5px 0;
|
||||||
margin-top: 5px;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-controls .btn-group .btn {
|
.download-controls .btn-group .btn {
|
||||||
height: 100%;
|
height: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-controls .btn-group .btn span {
|
.download-controls .btn-group .btn span {
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
color: gray;
|
color: gray;
|
||||||
|
@ -91,9 +107,11 @@
|
||||||
.download-detail h4 {
|
.download-detail h4 {
|
||||||
margin-left: 10px;
|
margin-left: 10px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-files {
|
.download-files {
|
||||||
margin: 0;
|
margin: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-files li {
|
.download-files li {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
padding: 0.8ex;
|
padding: 0.8ex;
|
||||||
|
@ -102,6 +120,7 @@
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-files a {
|
.download-files a {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
1801
css/font-awesome.css
vendored
1801
css/font-awesome.css
vendored
File diff suppressed because it is too large
Load Diff
4
css/font-awesome.min.css
vendored
4
css/font-awesome.min.css
vendored
File diff suppressed because one or more lines are too long
|
@ -4,12 +4,12 @@
|
||||||
|
|
||||||
.modal-advanced-title {
|
.modal-advanced-title {
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
margin-bottom: 0px;
|
margin-bottom: 0;
|
||||||
background-color: rgb(245, 245, 245);
|
background-color: rgb(245, 245, 245);
|
||||||
border: 1px solid rgba(0, 0, 0, 0.05);
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
||||||
border-bottom: 0px;
|
border-bottom: 0;
|
||||||
border-radius: 4px 4px 0px 0px;
|
border-radius: 4px 4px 0 0;
|
||||||
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.05);
|
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
padding: 5px 15px;
|
padding: 5px 15px;
|
||||||
}
|
}
|
||||||
|
@ -17,13 +17,13 @@
|
||||||
.modal-advanced-options {
|
.modal-advanced-options {
|
||||||
/*width: 100%;
|
/*width: 100%;
|
||||||
margin-bottom: 10px;*/
|
margin-bottom: 10px;*/
|
||||||
margin-top:0px;
|
margin-top: 0;
|
||||||
margin-bottom: 2px;
|
margin-bottom: 2px;
|
||||||
background-color: rgb(245, 245, 245);
|
background-color: rgb(245, 245, 245);
|
||||||
border: 1px solid rgba(0, 0, 0, 0.05);
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
||||||
border-top: 0px;
|
border-top: 0;
|
||||||
border-radius: 0px 0px 4px 4px;
|
border-radius: 0 0 4px 4px;
|
||||||
box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.05);
|
box-shadow: 0 1px 1px rgba(0, 0, 0, 0.05);
|
||||||
}
|
}
|
||||||
|
|
||||||
.modal-form-input-verylarge {
|
.modal-form-input-verylarge {
|
||||||
|
@ -33,3 +33,12 @@
|
||||||
.modal-form-input-number {
|
.modal-form-input-number {
|
||||||
width: 80px;
|
width: 80px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.selectFiles > div > .control-label {
|
||||||
|
font-weight: normal;
|
||||||
|
margin-left: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.selectFiles > div > .controls {
|
||||||
|
margin-left: 30px;
|
||||||
|
}
|
||||||
|
|
|
@ -24,6 +24,7 @@ input[type=checkbox], input[type=radio] {
|
||||||
.label-active, .badge-active, .progress-active .bar {
|
.label-active, .badge-active, .progress-active .bar {
|
||||||
background-color: #62C462;
|
background-color: #62C462;
|
||||||
}
|
}
|
||||||
|
|
||||||
.progress-success .bar {
|
.progress-success .bar {
|
||||||
background-color: #468847 !important;
|
background-color: #468847 !important;
|
||||||
}
|
}
|
||||||
|
@ -47,18 +48,13 @@ input[type=checkbox], input[type=radio] {
|
||||||
position: absolute;
|
position: absolute;
|
||||||
}
|
}
|
||||||
|
|
||||||
.download-graph {
|
#global-graph {
|
||||||
font-size: x-small;
|
width: 100%;
|
||||||
font-family: sans-serif;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
#download-graph {
|
@media (min-width: 767px) and (max-width: 992px) {
|
||||||
float: right;
|
#global-graph {
|
||||||
}
|
width: 80%;
|
||||||
@media (max-width: 767px) {
|
|
||||||
#download-graph {
|
|
||||||
float: none;
|
|
||||||
width: 100%;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -84,10 +80,11 @@ input[type=checkbox], input[type=radio] {
|
||||||
}
|
}
|
||||||
|
|
||||||
.main-navbar {
|
.main-navbar {
|
||||||
box-shadow: 0px 2px 2px 0px rgba(0,0,0,0.1);
|
box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
|
||||||
background-color: #00897B;
|
background-color: #00897B;
|
||||||
border-color: #00897B;
|
border-color: #00897B;
|
||||||
}
|
}
|
||||||
|
|
||||||
.main-navbar .navbar-brand {
|
.main-navbar .navbar-brand {
|
||||||
color: #fff;
|
color: #fff;
|
||||||
}
|
}
|
||||||
|
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Before Width: | Height: | Size: 306 KiB After Width: | Height: | Size: 434 KiB |
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Before Width: | Height: | Size: 8.6 KiB |
Binary file not shown.
Before Width: | Height: | Size: 12 KiB |
60
index.html
60
index.html
|
@ -11,7 +11,7 @@
|
||||||
|
|
||||||
<title ng-bind="$root.pageTitle">Aria2 WebUI</title>
|
<title ng-bind="$root.pageTitle">Aria2 WebUI</title>
|
||||||
|
|
||||||
<link rel="stylesheet" href="css/bootstrap.css">
|
<link rel="stylesheet" href="css/bootstrap.min.css">
|
||||||
<link rel="stylesheet" href="css/font-awesome.min.css">
|
<link rel="stylesheet" href="css/font-awesome.min.css">
|
||||||
<link rel="stylesheet" href="css/flag-icon.min.css">
|
<link rel="stylesheet" href="css/flag-icon.min.css">
|
||||||
|
|
||||||
|
@ -19,18 +19,16 @@
|
||||||
<link rel="stylesheet" href="css/download.css">
|
<link rel="stylesheet" href="css/download.css">
|
||||||
<link rel="stylesheet" href="css/modals.css">
|
<link rel="stylesheet" href="css/modals.css">
|
||||||
|
|
||||||
|
|
||||||
<!-- external javascript dependencies -->
|
<!-- external javascript dependencies -->
|
||||||
<script src="js/libs/jquery-2.1.3.js"></script>
|
<script src="js/libs/jquery-2.2.4.min.js"></script>
|
||||||
<script src="js/libs/lodash.js"></script>
|
<script src="js/libs/lodash-4.17.3.min.js"></script>
|
||||||
|
|
||||||
<script src="js/libs/angular.js"></script>
|
<script src="js/libs/angular.min.js"></script>
|
||||||
|
|
||||||
<script src="js/libs/angularui-bootstrap.js"></script>
|
<script src="js/libs/angularui-bootstrap-tpls.min.js"></script>
|
||||||
|
|
||||||
|
<script src="js/libs/jquery.flot.min.js"></script>
|
||||||
<script src="js/libs/jquery.flot.js"></script>
|
<script src="js/libs/jquery.flot.time.min.js"></script>
|
||||||
<script src="js/libs/jquery.flot.time.js"></script>
|
|
||||||
|
|
||||||
<!-- We do manual resize currently
|
<!-- We do manual resize currently
|
||||||
<script src="js/libs/jquery.flot.resize.js"></script>
|
<script src="js/libs/jquery.flot.resize.js"></script>
|
||||||
|
@ -65,26 +63,26 @@
|
||||||
<script src="js/services/rpc/rpc.js"></script>
|
<script src="js/services/rpc/rpc.js"></script>
|
||||||
<script src="js/services/rpc/helpers.js"></script>
|
<script src="js/services/rpc/helpers.js"></script>
|
||||||
|
|
||||||
|
|
||||||
<script src="js/ctrls/main.js"></script>
|
<script src="js/ctrls/main.js"></script>
|
||||||
<script src="js/ctrls/modal.js"></script>
|
<script src="js/ctrls/modal.js"></script>
|
||||||
<script src="js/ctrls/nav.js"></script>
|
<script src="js/ctrls/nav.js"></script>
|
||||||
<script src="js/ctrls/alert.js"></script>
|
<script src="js/ctrls/alert.js"></script>
|
||||||
<script src="js/ctrls/props.js"></script>
|
<script src="js/ctrls/props.js"></script>
|
||||||
|
|
||||||
|
|
||||||
<!-- translate -->
|
<!-- translate -->
|
||||||
<script src="js/libs/angular-translate.js"></script>
|
<script src="js/libs/angular-translate.min.js"></script>
|
||||||
<script src="js/translate/nl_NL.js"></script>
|
<script src="js/translate/nl_NL.js"></script>
|
||||||
<script src="js/translate/en_US.js"></script>
|
<script src="js/translate/en_US.js"></script>
|
||||||
<script src="js/translate/th_TH.js"></script>
|
<script src="js/translate/th_TH.js"></script>
|
||||||
<script src="js/translate/zh_CN.js"></script>
|
<script src="js/translate/zh_CN.js"></script>
|
||||||
|
<script src="js/translate/zh_TW.js"></script>
|
||||||
<script src="js/translate/pl_PL.js"></script>
|
<script src="js/translate/pl_PL.js"></script>
|
||||||
<script src="js/translate/fr_FR.js"></script>
|
<script src="js/translate/fr_FR.js"></script>
|
||||||
<script src="js/translate/de_DE.js"></script>
|
<script src="js/translate/de_DE.js"></script>
|
||||||
<script src="js/translate/es_ES.js"></script>
|
<script src="js/translate/es_ES.js"></script>
|
||||||
<script src="js/translate/ru_RU.js"></script>
|
<script src="js/translate/ru_RU.js"></script>
|
||||||
<script src="js/translate/it_IT.js"></script>
|
<script src="js/translate/it_IT.js"></script>
|
||||||
|
<script src="js/translate/tr_TR.js"></script>
|
||||||
</head>
|
</head>
|
||||||
<!-- }}} -->
|
<!-- }}} -->
|
||||||
|
|
||||||
|
@ -248,6 +246,11 @@
|
||||||
ng-click="changeLanguage('zh_CN')"
|
ng-click="changeLanguage('zh_CN')"
|
||||||
href="#"><span class="fa fa-fw flag-icon flag-icon-cn"> </span> 简体中文</a>
|
href="#"><span class="fa fa-fw flag-icon flag-icon-cn"> </span> 简体中文</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<a
|
||||||
|
ng-click="changeLanguage('zh_TW')"
|
||||||
|
href="#"><span class="fa fa-fw flag-icon flag-icon-tw"> </span> 繁體中文</a>
|
||||||
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<a
|
<a
|
||||||
ng-click="changeLanguage('pl_PL')"
|
ng-click="changeLanguage('pl_PL')"
|
||||||
|
@ -278,6 +281,11 @@
|
||||||
ng-click="changeLanguage('it_IT')"
|
ng-click="changeLanguage('it_IT')"
|
||||||
href="#"><span class="fa fa-fw flag-icon flag-icon-it"> </span> Italiano</a>
|
href="#"><span class="fa fa-fw flag-icon flag-icon-it"> </span> Italiano</a>
|
||||||
</li>
|
</li>
|
||||||
|
<li>
|
||||||
|
<a
|
||||||
|
ng-click="changeLanguage('tr_TR')"
|
||||||
|
href="#"><span class="fa fa-fw flag-icon flag-icon-tr"> </span> Turkish</a>
|
||||||
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
@ -312,6 +320,7 @@
|
||||||
<li class="nav-header" ng-show="totalAria2Downloads()">{{ 'Global Statistics' | translate }}</li>
|
<li class="nav-header" ng-show="totalAria2Downloads()">{{ 'Global Statistics' | translate }}</li>
|
||||||
<li>
|
<li>
|
||||||
<div
|
<div
|
||||||
|
id="global-graph"
|
||||||
yticks="3"
|
yticks="3"
|
||||||
xticks="1"
|
xticks="1"
|
||||||
dspeed="gstats.downloadSpeed"
|
dspeed="gstats.downloadSpeed"
|
||||||
|
@ -321,14 +330,15 @@
|
||||||
draw="true">
|
draw="true">
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
<li>
|
||||||
<span title="Upload Speed"><span class="fa fa-fw fa-arrow-circle-o-up"> </span>{{gstats.uploadSpeed | bspeed}}</span><br />
|
<span title="Upload Speed"><span class="fa fa-fw fa-arrow-circle-o-up"> </span>{{gstats.uploadSpeed | bspeed}}</span><br />
|
||||||
<span title="Download Speed"><span class="fa fa-fw fa-arrow-circle-o-down"> </span>{{gstats.downloadSpeed | bspeed}}</span>
|
<span title="Download Speed"><span class="fa fa-fw fa-arrow-circle-o-down"> </span>{{gstats.downloadSpeed | bspeed}}</span>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
<!-- }}} -->
|
<!-- }}} -->
|
||||||
|
|
||||||
<br />
|
<br />
|
||||||
|
|
||||||
|
|
||||||
<!-- {{{ download filters -->
|
<!-- {{{ download filters -->
|
||||||
<ul id="filters" class="clearfix nav nav-list" ng-show="enable.sidebar.filters">
|
<ul id="filters" class="clearfix nav nav-list" ng-show="enable.sidebar.filters">
|
||||||
<li class="nav-header">{{ 'Download Filters' | translate }}</li>
|
<li class="nav-header">{{ 'Download Filters' | translate }}</li>
|
||||||
|
@ -382,7 +392,7 @@
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<p>
|
<p>
|
||||||
{{ 'Displaying' | translate }} <strong>{{totalDownloads}}</strong> {{ 'of' | translate }} <em>{{totalAria2Downloads()}}</em> {{ 'downloads' | translate }}
|
{{ 'Displaying' | translate }} <strong>{{totalDownloads}}</strong> {{ 'of' | translate }} <em>{{totalAria2Downloads()}} </em> {{ 'downloads' | translate }}
|
||||||
</p>
|
</p>
|
||||||
<p>
|
<p>
|
||||||
<button ng-click="toggleStateFilters()" class="btn btn-default btn-xs">{{ 'Toggle' | translate }}</button>
|
<button ng-click="toggleStateFilters()" class="btn btn-default btn-xs">{{ 'Toggle' | translate }}</button>
|
||||||
|
@ -430,7 +440,7 @@
|
||||||
ng-repeat="download in getDownloads()"
|
ng-repeat="download in getDownloads()"
|
||||||
class="row-fluid download" data-gid="{{download.gid}}"
|
class="row-fluid download" data-gid="{{download.gid}}"
|
||||||
ng-click="toggleCollapsed(download)">
|
ng-click="toggleCollapsed(download)">
|
||||||
<div class="download-name download-item download-controls">
|
<div class="download-name download-item download-controls clearfix">
|
||||||
<!-- {{{ download control buttons -->
|
<!-- {{{ download control buttons -->
|
||||||
<div class="btn-group" role="group" ng-click="$event.stopPropagation()">
|
<div class="btn-group" role="group" ng-click="$event.stopPropagation()">
|
||||||
<button
|
<button
|
||||||
|
@ -526,7 +536,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="active">
|
<ul class="stats pull-left" ng-switch-when="active">
|
||||||
<!-- {{{ active download statistics -->
|
<!-- {{{ active download statistics -->
|
||||||
<li class="label label-active hidden-phone hidden-tablet">
|
<li class="label label-active hidden-phone hidden-tablet">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{ 'Active' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
||||||
|
@ -559,7 +569,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="verifing">
|
<ul class="stats pull-left" ng-switch-when="verifing">
|
||||||
<!-- {{{ active download statistics -->
|
<!-- {{{ active download statistics -->
|
||||||
<li class="label label-warning hidden-phone hidden-tablet">
|
<li class="label label-warning hidden-phone hidden-tablet">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{ 'Verifing' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
||||||
|
@ -592,7 +602,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="verifyPending">
|
<ul class="stats pull-left" ng-switch-when="verifyPending">
|
||||||
<!-- {{{ active download statistics -->
|
<!-- {{{ active download statistics -->
|
||||||
<li class="label label-warning hidden-phone hidden-tablet">
|
<li class="label label-warning hidden-phone hidden-tablet">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-play"> </span> {{ 'Verify Pending' | translate}}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
<li class="label label-default" ng-class="{'label-active': download.downloadSpeed > 2048, 'label-warning': download.downloadSpeed <= 2048}">
|
||||||
|
@ -625,7 +635,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="paused">
|
<ul class="stats pull-left" ng-switch-when="paused">
|
||||||
<!-- {{{ paused download statistics -->
|
<!-- {{{ paused download statistics -->
|
||||||
<li class="label label-info">
|
<li class="label label-info">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-pause"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-pause"> </span> {{ 'Paused' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-info">
|
<li class="label label-info">
|
||||||
|
@ -646,7 +656,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="waiting">
|
<ul class="stats pull-left" ng-switch-when="waiting">
|
||||||
<!-- {{{ paused download statistics -->
|
<!-- {{{ paused download statistics -->
|
||||||
<li class="label label-default">
|
<li class="label label-default">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-caret-right"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-caret-right"> </span> {{ 'Waiting' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-default">
|
<li class="label label-default">
|
||||||
|
@ -668,7 +678,7 @@
|
||||||
<!-- {{{ complete download statistics -->
|
<!-- {{{ complete download statistics -->
|
||||||
|
|
||||||
<li class="label label-success">
|
<li class="label label-success">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-check-square-o"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-check-square-o"> </span> {{ 'Complete' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-success">
|
<li class="label label-success">
|
||||||
|
@ -685,7 +695,7 @@
|
||||||
<ul class="stats pull-left" ng-switch-when="removed">
|
<ul class="stats pull-left" ng-switch-when="removed">
|
||||||
<!-- {{{ removed download statistics -->
|
<!-- {{{ removed download statistics -->
|
||||||
<li class="label label-warning">
|
<li class="label label-warning">
|
||||||
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-times"> </span> {{download.status}}</span>
|
<span title="{{ 'Download status' | translate }}"><span class="fa fa-fw fa-times"> </span> {{ 'Removed' | translate }}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
<li class="label label-warning">
|
<li class="label label-warning">
|
||||||
|
@ -1002,7 +1012,7 @@ http://ex1.com/f2.mp4 http://ex2.com/f2.mp4 --out=file2.mp4
|
||||||
|
|
||||||
<form class="form-horizontal modal-body">
|
<form class="form-horizontal modal-body">
|
||||||
<fieldset>
|
<fieldset>
|
||||||
<div class="form-group">
|
<div class="form-group selectFiles">
|
||||||
<div ng-repeat="file in selectFiles.files">
|
<div ng-repeat="file in selectFiles.files">
|
||||||
<label class="control-label">{{ 'Select to download' | translate }}</label>
|
<label class="control-label">{{ 'Select to download' | translate }}</label>
|
||||||
|
|
||||||
|
@ -1126,7 +1136,7 @@ http://ex1.com/f2.mp4 http://ex2.com/f2.mp4 --out=file2.mp4
|
||||||
<label class="col-sm-3 control-label">{{ 'Enter the secret token (optional)' | translate }}:</label>
|
<label class="col-sm-3 control-label">{{ 'Enter the secret token (optional)' | translate }}:</label>
|
||||||
<div class="col-sm-9 controls">
|
<div class="col-sm-9 controls">
|
||||||
<label>
|
<label>
|
||||||
<input type="text" class="form-control input-xlarge" ng-model="connection.conf.auth.token"/>
|
<input type="password" class="form-control input-xlarge" ng-model="connection.conf.auth.token"/>
|
||||||
<p class="help-block">
|
<p class="help-block">
|
||||||
{{ 'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)' | translate }}
|
{{ 'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)' | translate }}
|
||||||
</p>
|
</p>
|
||||||
|
|
|
@ -9,11 +9,11 @@ angular
|
||||||
'$scope', '$name', '$enable', '$rpc', '$rpchelpers', '$utils', '$alerts', '$modals',
|
'$scope', '$name', '$enable', '$rpc', '$rpchelpers', '$utils', '$alerts', '$modals',
|
||||||
'$fileSettings', '$activeInclude', '$waitingExclude', '$pageSize', '$getErrorStatus',
|
'$fileSettings', '$activeInclude', '$waitingExclude', '$pageSize', '$getErrorStatus',
|
||||||
// for document title
|
// for document title
|
||||||
'$rootScope',
|
'$rootScope', '$filter',
|
||||||
function(
|
function(
|
||||||
scope, name, enable, rpc, rhelpers, utils, alerts, modals,
|
scope, name, enable, rpc, rhelpers, utils, alerts, modals,
|
||||||
fsettings, activeInclude, waitingExclude, pageSize, getErrorStatus,
|
fsettings, activeInclude, waitingExclude, pageSize, getErrorStatus,
|
||||||
rootScope
|
rootScope, filter
|
||||||
) {
|
) {
|
||||||
|
|
||||||
scope.name = name; // default UI name
|
scope.name = name; // default UI name
|
||||||
|
@ -82,7 +82,9 @@ function(
|
||||||
// HACK to make sure an angular digest is not running, as only one can happen at a time, and confirm is a blocking
|
// HACK to make sure an angular digest is not running, as only one can happen at a time, and confirm is a blocking
|
||||||
// call so an rpc response can also trigger a digest call
|
// call so an rpc response can also trigger a digest call
|
||||||
setTimeout(function() {
|
setTimeout(function() {
|
||||||
if (!noConfirm && !confirm("Remove %s and associated meta-data?".replace("%s", d.name))) {
|
if (!noConfirm && !confirm(
|
||||||
|
filter('translate')('Remove {{name}} and associated meta-data?',
|
||||||
|
{ name: d.name }))) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -8,12 +8,12 @@ angular
|
||||||
'$scope', '$modals',
|
'$scope', '$modals',
|
||||||
'$rpc', '$rpchelpers', '$fileSettings',
|
'$rpc', '$rpchelpers', '$fileSettings',
|
||||||
'$globalSettings', '$globalExclude',
|
'$globalSettings', '$globalExclude',
|
||||||
'$utils', '$translate',
|
'$utils', '$translate', '$filter',
|
||||||
function(
|
function(
|
||||||
scope, modals,
|
scope, modals,
|
||||||
rpc, rhelpers, fsettings,
|
rpc, rhelpers, fsettings,
|
||||||
gsettings, gexclude,
|
gsettings, gexclude,
|
||||||
utils, translate
|
utils, translate, filter
|
||||||
) {
|
) {
|
||||||
|
|
||||||
scope.isFeatureEnabled = function(f) { return rhelpers.isFeatureEnabled(f) };
|
scope.isFeatureEnabled = function(f) { return rhelpers.isFeatureEnabled(f) };
|
||||||
|
@ -98,7 +98,9 @@ angular
|
||||||
|
|
||||||
modals.invoke(
|
modals.invoke(
|
||||||
'settings', _.cloneDeep(settings),
|
'settings', _.cloneDeep(settings),
|
||||||
'Global Settings', 'Save', function(chsettings) {
|
filter('translate')('Global Settings'),
|
||||||
|
filter('translate')('Save'),
|
||||||
|
function(chsettings) {
|
||||||
|
|
||||||
var sets = {};
|
var sets = {};
|
||||||
var starred = [];
|
var starred = [];
|
||||||
|
|
|
@ -33,12 +33,15 @@ webui.config(['$translateProvider', function ($translateProvider) {
|
||||||
.translations('nl_NL', mergeTranslation(translations.nl_NL, translations.en_US))
|
.translations('nl_NL', mergeTranslation(translations.nl_NL, translations.en_US))
|
||||||
.translations('th_TH', mergeTranslation(translations.th_TH, translations.en_US))
|
.translations('th_TH', mergeTranslation(translations.th_TH, translations.en_US))
|
||||||
.translations('zh_CN', mergeTranslation(translations.zh_CN, translations.en_US))
|
.translations('zh_CN', mergeTranslation(translations.zh_CN, translations.en_US))
|
||||||
|
.translations('zh_TW', mergeTranslation(translations.zh_TW, translations.en_US))
|
||||||
.translations('pl_PL', mergeTranslation(translations.pl_PL, translations.en_US))
|
.translations('pl_PL', mergeTranslation(translations.pl_PL, translations.en_US))
|
||||||
.translations('fr_FR', mergeTranslation(translations.fr_FR, translations.en_US))
|
.translations('fr_FR', mergeTranslation(translations.fr_FR, translations.en_US))
|
||||||
.translations('de_DE', mergeTranslation(translations.de_DE, translations.en_US))
|
.translations('de_DE', mergeTranslation(translations.de_DE, translations.en_US))
|
||||||
.translations('es_ES', mergeTranslation(translations.es_ES, translations.en_US))
|
.translations('es_ES', mergeTranslation(translations.es_ES, translations.en_US))
|
||||||
.translations('ru_RU', mergeTranslation(translations.ru_RU, translations.en_US))
|
.translations('ru_RU', mergeTranslation(translations.ru_RU, translations.en_US))
|
||||||
.translations('it_IT', mergeTranslation(translations.it_IT, translations.en_US))
|
.translations('it_IT', mergeTranslation(translations.it_IT, translations.en_US))
|
||||||
|
.translations('tr_TR', mergeTranslation(translations.tr_TR, translations.en_US))
|
||||||
|
.useSanitizeValueStrategy('escapeParameters')
|
||||||
.determinePreferredLanguage();
|
.determinePreferredLanguage();
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
|
|
3141
js/libs/angular-translate.js
vendored
3141
js/libs/angular-translate.js
vendored
File diff suppressed because it is too large
Load Diff
6
js/libs/angular-translate.min.js
vendored
Normal file
6
js/libs/angular-translate.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
30714
js/libs/angular.js
vendored
30714
js/libs/angular.js
vendored
File diff suppressed because it is too large
Load Diff
329
js/libs/angular.min.js
vendored
Normal file
329
js/libs/angular.min.js
vendored
Normal file
|
@ -0,0 +1,329 @@
|
||||||
|
/*
|
||||||
|
AngularJS v1.6.0
|
||||||
|
(c) 2010-2016 Google, Inc. http://angularjs.org
|
||||||
|
License: MIT
|
||||||
|
*/
|
||||||
|
(function(A){'use strict';function H(a,b){b=b||Error;return function(){var d=arguments[0],c;c="["+(a?a+":":"")+d+"] http://errors.angularjs.org/1.6.0/"+(a?a+"/":"")+d;for(d=1;d<arguments.length;d++){c=c+(1==d?"?":"&")+"p"+(d-1)+"=";var f=encodeURIComponent,e;e=arguments[d];e="function"==typeof e?e.toString().replace(/ \{[\s\S]*$/,""):"undefined"==typeof e?"undefined":"string"!=typeof e?JSON.stringify(e):e;c+=f(e)}return new b(c)}}function ta(a){if(null==a||Wa(a))return!1;if(G(a)||y(a)||F&&a instanceof
|
||||||
|
F)return!0;var b="length"in Object(a)&&a.length;return W(b)&&(0<=b&&(b-1 in a||a instanceof Array)||"function"===typeof a.item)}function q(a,b,d){var c,f;if(a)if(B(a))for(c in a)"prototype"!==c&&"length"!==c&&"name"!==c&&a.hasOwnProperty(c)&&b.call(d,a[c],c,a);else if(G(a)||ta(a)){var e="object"!==typeof a;c=0;for(f=a.length;c<f;c++)(e||c in a)&&b.call(d,a[c],c,a)}else if(a.forEach&&a.forEach!==q)a.forEach(b,d,a);else if(Cc(a))for(c in a)b.call(d,a[c],c,a);else if("function"===typeof a.hasOwnProperty)for(c in a)a.hasOwnProperty(c)&&
|
||||||
|
b.call(d,a[c],c,a);else for(c in a)va.call(a,c)&&b.call(d,a[c],c,a);return a}function Dc(a,b,d){for(var c=Object.keys(a).sort(),f=0;f<c.length;f++)b.call(d,a[c[f]],c[f]);return c}function Ec(a){return function(b,d){a(d,b)}}function he(){return++qb}function Rb(a,b,d){for(var c=a.$$hashKey,f=0,e=b.length;f<e;++f){var g=b[f];if(E(g)||B(g))for(var h=Object.keys(g),k=0,l=h.length;k<l;k++){var m=h[k],n=g[m];d&&E(n)?ea(n)?a[m]=new Date(n.valueOf()):Xa(n)?a[m]=new RegExp(n):n.nodeName?a[m]=n.cloneNode(!0):
|
||||||
|
Sb(n)?a[m]=n.clone():(E(a[m])||(a[m]=G(n)?[]:{}),Rb(a[m],[n],!0)):a[m]=n}}c?a.$$hashKey=c:delete a.$$hashKey;return a}function Q(a){return Rb(a,wa.call(arguments,1),!1)}function ie(a){return Rb(a,wa.call(arguments,1),!0)}function X(a){return parseInt(a,10)}function Tb(a,b){return Q(Object.create(a),b)}function v(){}function Ya(a){return a}function fa(a){return function(){return a}}function Ub(a){return B(a.toString)&&a.toString!==la}function x(a){return"undefined"===typeof a}function u(a){return"undefined"!==
|
||||||
|
typeof a}function E(a){return null!==a&&"object"===typeof a}function Cc(a){return null!==a&&"object"===typeof a&&!Fc(a)}function y(a){return"string"===typeof a}function W(a){return"number"===typeof a}function ea(a){return"[object Date]"===la.call(a)}function B(a){return"function"===typeof a}function Xa(a){return"[object RegExp]"===la.call(a)}function Wa(a){return a&&a.window===a}function Za(a){return a&&a.$evalAsync&&a.$watch}function Ia(a){return"boolean"===typeof a}function je(a){return a&&W(a.length)&&
|
||||||
|
ke.test(la.call(a))}function Sb(a){return!(!a||!(a.nodeName||a.prop&&a.attr&&a.find))}function le(a){var b={};a=a.split(",");var d;for(d=0;d<a.length;d++)b[a[d]]=!0;return b}function xa(a){return L(a.nodeName||a[0]&&a[0].nodeName)}function $a(a,b){var d=a.indexOf(b);0<=d&&a.splice(d,1);return d}function Fa(a,b){function d(a,b){var d=b.$$hashKey,e;if(G(a)){e=0;for(var f=a.length;e<f;e++)b.push(c(a[e]))}else if(Cc(a))for(e in a)b[e]=c(a[e]);else if(a&&"function"===typeof a.hasOwnProperty)for(e in a)a.hasOwnProperty(e)&&
|
||||||
|
(b[e]=c(a[e]));else for(e in a)va.call(a,e)&&(b[e]=c(a[e]));d?b.$$hashKey=d:delete b.$$hashKey;return b}function c(a){if(!E(a))return a;var b=e.indexOf(a);if(-1!==b)return g[b];if(Wa(a)||Za(a))throw Ga("cpws");var b=!1,c=f(a);void 0===c&&(c=G(a)?[]:Object.create(Fc(a)),b=!0);e.push(a);g.push(c);return b?d(a,c):c}function f(a){switch(la.call(a)){case "[object Int8Array]":case "[object Int16Array]":case "[object Int32Array]":case "[object Float32Array]":case "[object Float64Array]":case "[object Uint8Array]":case "[object Uint8ClampedArray]":case "[object Uint16Array]":case "[object Uint32Array]":return new a.constructor(c(a.buffer),
|
||||||
|
a.byteOffset,a.length);case "[object ArrayBuffer]":if(!a.slice){var b=new ArrayBuffer(a.byteLength);(new Uint8Array(b)).set(new Uint8Array(a));return b}return a.slice(0);case "[object Boolean]":case "[object Number]":case "[object String]":case "[object Date]":return new a.constructor(a.valueOf());case "[object RegExp]":return b=new RegExp(a.source,a.toString().match(/[^/]*$/)[0]),b.lastIndex=a.lastIndex,b;case "[object Blob]":return new a.constructor([a],{type:a.type})}if(B(a.cloneNode))return a.cloneNode(!0)}
|
||||||
|
var e=[],g=[];if(b){if(je(b)||"[object ArrayBuffer]"===la.call(b))throw Ga("cpta");if(a===b)throw Ga("cpi");G(b)?b.length=0:q(b,function(a,d){"$$hashKey"!==d&&delete b[d]});e.push(a);g.push(b);return d(a,b)}return c(a)}function ma(a,b){if(a===b)return!0;if(null===a||null===b)return!1;if(a!==a&&b!==b)return!0;var d=typeof a,c;if(d===typeof b&&"object"===d)if(G(a)){if(!G(b))return!1;if((d=a.length)===b.length){for(c=0;c<d;c++)if(!ma(a[c],b[c]))return!1;return!0}}else{if(ea(a))return ea(b)?ma(a.getTime(),
|
||||||
|
b.getTime()):!1;if(Xa(a))return Xa(b)?a.toString()===b.toString():!1;if(Za(a)||Za(b)||Wa(a)||Wa(b)||G(b)||ea(b)||Xa(b))return!1;d=T();for(c in a)if("$"!==c.charAt(0)&&!B(a[c])){if(!ma(a[c],b[c]))return!1;d[c]=!0}for(c in b)if(!(c in d)&&"$"!==c.charAt(0)&&u(b[c])&&!B(b[c]))return!1;return!0}return!1}function ab(a,b,d){return a.concat(wa.call(b,d))}function bb(a,b){var d=2<arguments.length?wa.call(arguments,2):[];return!B(b)||b instanceof RegExp?b:d.length?function(){return arguments.length?b.apply(a,
|
||||||
|
ab(d,arguments,0)):b.apply(a,d)}:function(){return arguments.length?b.apply(a,arguments):b.call(a)}}function Gc(a,b){var d=b;"string"===typeof a&&"$"===a.charAt(0)&&"$"===a.charAt(1)?d=void 0:Wa(b)?d="$WINDOW":b&&A.document===b?d="$DOCUMENT":Za(b)&&(d="$SCOPE");return d}function cb(a,b){if(!x(a))return W(b)||(b=b?2:null),JSON.stringify(a,Gc,b)}function Hc(a){return y(a)?JSON.parse(a):a}function Ic(a,b){a=a.replace(me,"");var d=Date.parse("Jan 01, 1970 00:00:00 "+a)/6E4;return ga(d)?b:d}function Vb(a,
|
||||||
|
b,d){d=d?-1:1;var c=a.getTimezoneOffset();b=Ic(b,c);d*=b-c;a=new Date(a.getTime());a.setMinutes(a.getMinutes()+d);return a}function ya(a){a=F(a).clone();try{a.empty()}catch(b){}var d=F("<div>").append(a).html();try{return a[0].nodeType===Ja?L(d):d.match(/^(<[^>]+>)/)[1].replace(/^<([\w-]+)/,function(a,b){return"<"+L(b)})}catch(c){return L(d)}}function Jc(a){try{return decodeURIComponent(a)}catch(b){}}function Kc(a){var b={};q((a||"").split("&"),function(a){var c,f,e;a&&(f=a=a.replace(/\+/g,"%20"),
|
||||||
|
c=a.indexOf("="),-1!==c&&(f=a.substring(0,c),e=a.substring(c+1)),f=Jc(f),u(f)&&(e=u(e)?Jc(e):!0,va.call(b,f)?G(b[f])?b[f].push(e):b[f]=[b[f],e]:b[f]=e))});return b}function Wb(a){var b=[];q(a,function(a,c){G(a)?q(a,function(a){b.push(ia(c,!0)+(!0===a?"":"="+ia(a,!0)))}):b.push(ia(c,!0)+(!0===a?"":"="+ia(a,!0)))});return b.length?b.join("&"):""}function db(a){return ia(a,!0).replace(/%26/gi,"&").replace(/%3D/gi,"=").replace(/%2B/gi,"+")}function ia(a,b){return encodeURIComponent(a).replace(/%40/gi,
|
||||||
|
"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%3B/gi,";").replace(/%20/g,b?"%20":"+")}function ne(a,b){var d,c,f=Ka.length;for(c=0;c<f;++c)if(d=Ka[c]+b,y(d=a.getAttribute(d)))return d;return null}function oe(a,b){var d,c,f={};q(Ka,function(b){b+="app";!d&&a.hasAttribute&&a.hasAttribute(b)&&(d=a,c=a.getAttribute(b))});q(Ka,function(b){b+="app";var f;!d&&(f=a.querySelector("["+b.replace(":","\\:")+"]"))&&(d=f,c=f.getAttribute(b))});d&&(pe?(f.strictDi=null!==ne(d,"strict-di"),
|
||||||
|
b(d,c?[c]:[],f)):A.console.error("Angular: disabling automatic bootstrap. <script> protocol indicates an extension, document.location.href does not match."))}function Lc(a,b,d){E(d)||(d={});d=Q({strictDi:!1},d);var c=function(){a=F(a);if(a.injector()){var c=a[0]===A.document?"document":ya(a);throw Ga("btstrpd",c.replace(/</,"<").replace(/>/,">"));}b=b||[];b.unshift(["$provide",function(b){b.value("$rootElement",a)}]);d.debugInfoEnabled&&b.push(["$compileProvider",function(a){a.debugInfoEnabled(!0)}]);
|
||||||
|
b.unshift("ng");c=eb(b,d.strictDi);c.invoke(["$rootScope","$rootElement","$compile","$injector",function(a,b,c,d){a.$apply(function(){b.data("$injector",d);c(b)(a)})}]);return c},f=/^NG_ENABLE_DEBUG_INFO!/,e=/^NG_DEFER_BOOTSTRAP!/;A&&f.test(A.name)&&(d.debugInfoEnabled=!0,A.name=A.name.replace(f,""));if(A&&!e.test(A.name))return c();A.name=A.name.replace(e,"");Z.resumeBootstrap=function(a){q(a,function(a){b.push(a)});return c()};B(Z.resumeDeferredBootstrap)&&Z.resumeDeferredBootstrap()}function qe(){A.name=
|
||||||
|
"NG_ENABLE_DEBUG_INFO!"+A.name;A.location.reload()}function re(a){a=Z.element(a).injector();if(!a)throw Ga("test");return a.get("$$testability")}function Mc(a,b){b=b||"_";return a.replace(se,function(a,c){return(c?b:"")+a.toLowerCase()})}function te(){var a;if(!Nc){var b=rb();(na=x(b)?A.jQuery:b?A[b]:void 0)&&na.fn.on?(F=na,Q(na.fn,{scope:Na.scope,isolateScope:Na.isolateScope,controller:Na.controller,injector:Na.injector,inheritedData:Na.inheritedData}),a=na.cleanData,na.cleanData=function(b){for(var c,
|
||||||
|
f=0,e;null!=(e=b[f]);f++)(c=na._data(e,"events"))&&c.$destroy&&na(e).triggerHandler("$destroy");a(b)}):F=U;Z.element=F;Nc=!0}}function fb(a,b,d){if(!a)throw Ga("areq",b||"?",d||"required");return a}function sb(a,b,d){d&&G(a)&&(a=a[a.length-1]);fb(B(a),b,"not a function, got "+(a&&"object"===typeof a?a.constructor.name||"Object":typeof a));return a}function Oa(a,b){if("hasOwnProperty"===a)throw Ga("badname",b);}function Oc(a,b,d){if(!b)return a;b=b.split(".");for(var c,f=a,e=b.length,g=0;g<e;g++)c=
|
||||||
|
b[g],a&&(a=(f=a)[c]);return!d&&B(a)?bb(f,a):a}function tb(a){for(var b=a[0],d=a[a.length-1],c,f=1;b!==d&&(b=b.nextSibling);f++)if(c||a[f]!==b)c||(c=F(wa.call(a,0,f))),c.push(b);return c||a}function T(){return Object.create(null)}function Xb(a){if(null==a)return"";switch(typeof a){case "string":break;case "number":a=""+a;break;default:a=!Ub(a)||G(a)||ea(a)?cb(a):a.toString()}return a}function ue(a){function b(a,b,c){return a[b]||(a[b]=c())}var d=H("$injector"),c=H("ng");a=b(a,"angular",Object);a.$$minErr=
|
||||||
|
a.$$minErr||H;return b(a,"module",function(){var a={};return function(e,g,h){if("hasOwnProperty"===e)throw c("badname","module");g&&a.hasOwnProperty(e)&&(a[e]=null);return b(a,e,function(){function a(b,d,e,f){f||(f=c);return function(){f[e||"push"]([b,d,arguments]);return C}}function b(a,d,f){f||(f=c);return function(b,c){c&&B(c)&&(c.$$moduleName=e);f.push([a,d,arguments]);return C}}if(!g)throw d("nomod",e);var c=[],f=[],p=[],t=a("$injector","invoke","push",f),C={_invokeQueue:c,_configBlocks:f,_runBlocks:p,
|
||||||
|
requires:g,name:e,provider:b("$provide","provider"),factory:b("$provide","factory"),service:b("$provide","service"),value:a("$provide","value"),constant:a("$provide","constant","unshift"),decorator:b("$provide","decorator",f),animation:b("$animateProvider","register"),filter:b("$filterProvider","register"),controller:b("$controllerProvider","register"),directive:b("$compileProvider","directive"),component:b("$compileProvider","component"),config:t,run:function(a){p.push(a);return this}};h&&t(h);return C})}})}
|
||||||
|
function ja(a,b){if(G(a)){b=b||[];for(var d=0,c=a.length;d<c;d++)b[d]=a[d]}else if(E(a))for(d in b=b||{},a)if("$"!==d.charAt(0)||"$"!==d.charAt(1))b[d]=a[d];return b||a}function ve(a){var b=[];return JSON.stringify(a,function(a,c){c=Gc(a,c);if(E(c)){if(0<=b.indexOf(c))return"...";b.push(c)}return c})}function we(a){Q(a,{bootstrap:Lc,copy:Fa,extend:Q,merge:ie,equals:ma,element:F,forEach:q,injector:eb,noop:v,bind:bb,toJson:cb,fromJson:Hc,identity:Ya,isUndefined:x,isDefined:u,isString:y,isFunction:B,
|
||||||
|
isObject:E,isNumber:W,isElement:Sb,isArray:G,version:xe,isDate:ea,lowercase:L,uppercase:ub,callbacks:{$$counter:0},getTestability:re,reloadWithDebugInfo:qe,$$minErr:H,$$csp:za,$$encodeUriSegment:db,$$encodeUriQuery:ia,$$stringify:Xb});Yb=ue(A);Yb("ng",["ngLocale"],["$provide",function(a){a.provider({$$sanitizeUri:ye});a.provider("$compile",Pc).directive({a:ze,input:Qc,textarea:Qc,form:Ae,script:Be,select:Ce,option:De,ngBind:Ee,ngBindHtml:Fe,ngBindTemplate:Ge,ngClass:He,ngClassEven:Ie,ngClassOdd:Je,
|
||||||
|
ngCloak:Ke,ngController:Le,ngForm:Me,ngHide:Ne,ngIf:Oe,ngInclude:Pe,ngInit:Qe,ngNonBindable:Re,ngPluralize:Se,ngRepeat:Te,ngShow:Ue,ngStyle:Ve,ngSwitch:We,ngSwitchWhen:Xe,ngSwitchDefault:Ye,ngOptions:Ze,ngTransclude:$e,ngModel:af,ngList:bf,ngChange:cf,pattern:Rc,ngPattern:Rc,required:Sc,ngRequired:Sc,minlength:Tc,ngMinlength:Tc,maxlength:Uc,ngMaxlength:Uc,ngValue:df,ngModelOptions:ef}).directive({ngInclude:ff}).directive(vb).directive(Vc);a.provider({$anchorScroll:gf,$animate:hf,$animateCss:jf,$$animateJs:kf,
|
||||||
|
$$animateQueue:lf,$$AnimateRunner:mf,$$animateAsyncRun:nf,$browser:of,$cacheFactory:pf,$controller:qf,$document:rf,$$isDocumentHidden:sf,$exceptionHandler:tf,$filter:Wc,$$forceReflow:uf,$interpolate:vf,$interval:wf,$http:xf,$httpParamSerializer:yf,$httpParamSerializerJQLike:zf,$httpBackend:Af,$xhrFactory:Bf,$jsonpCallbacks:Cf,$location:Df,$log:Ef,$parse:Ff,$rootScope:Gf,$q:Hf,$$q:If,$sce:Jf,$sceDelegate:Kf,$sniffer:Lf,$templateCache:Mf,$templateRequest:Nf,$$testability:Of,$timeout:Pf,$window:Qf,$$rAF:Rf,
|
||||||
|
$$jqLite:Sf,$$HashMap:Tf,$$cookieReader:Uf})}])}function gb(a,b){return b.toUpperCase()}function wb(a){return a.replace(Vf,gb)}function Xc(a){a=a.nodeType;return 1===a||!a||9===a}function Yc(a,b){var d,c,f=b.createDocumentFragment(),e=[];if(Zb.test(a)){d=f.appendChild(b.createElement("div"));c=(Wf.exec(a)||["",""])[1].toLowerCase();c=oa[c]||oa._default;d.innerHTML=c[1]+a.replace(Xf,"<$1></$2>")+c[2];for(c=c[0];c--;)d=d.lastChild;e=ab(e,d.childNodes);d=f.firstChild;d.textContent=""}else e.push(b.createTextNode(a));
|
||||||
|
f.textContent="";f.innerHTML="";q(e,function(a){f.appendChild(a)});return f}function U(a){if(a instanceof U)return a;var b;y(a)&&(a=R(a),b=!0);if(!(this instanceof U)){if(b&&"<"!==a.charAt(0))throw $b("nosel");return new U(a)}if(b){b=A.document;var d;a=(d=Yf.exec(a))?[b.createElement(d[1])]:(d=Yc(a,b))?d.childNodes:[];ac(this,a)}else B(a)?Zc(a):ac(this,a)}function bc(a){return a.cloneNode(!0)}function xb(a,b){b||hb(a);if(a.querySelectorAll)for(var d=a.querySelectorAll("*"),c=0,f=d.length;c<f;c++)hb(d[c])}
|
||||||
|
function $c(a,b,d,c){if(u(c))throw $b("offargs");var f=(c=yb(a))&&c.events,e=c&&c.handle;if(e)if(b){var g=function(b){var c=f[b];u(d)&&$a(c||[],d);u(d)&&c&&0<c.length||(a.removeEventListener(b,e),delete f[b])};q(b.split(" "),function(a){g(a);zb[a]&&g(zb[a])})}else for(b in f)"$destroy"!==b&&a.removeEventListener(b,e),delete f[b]}function hb(a,b){var d=a.ng339,c=d&&ib[d];c&&(b?delete c.data[b]:(c.handle&&(c.events.$destroy&&c.handle({},"$destroy"),$c(a)),delete ib[d],a.ng339=void 0))}function yb(a,
|
||||||
|
b){var d=a.ng339,d=d&&ib[d];b&&!d&&(a.ng339=d=++Zf,d=ib[d]={events:{},data:{},handle:void 0});return d}function cc(a,b,d){if(Xc(a)){var c,f=u(d),e=!f&&b&&!E(b),g=!b;a=(a=yb(a,!e))&&a.data;if(f)a[wb(b)]=d;else{if(g)return a;if(e)return a&&a[wb(b)];for(c in b)a[wb(c)]=b[c]}}}function Ab(a,b){return a.getAttribute?-1<(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ").indexOf(" "+b+" "):!1}function Bb(a,b){b&&a.setAttribute&&q(b.split(" "),function(b){a.setAttribute("class",R((" "+(a.getAttribute("class")||
|
||||||
|
"")+" ").replace(/[\n\t]/g," ").replace(" "+R(b)+" "," ")))})}function Cb(a,b){if(b&&a.setAttribute){var d=(" "+(a.getAttribute("class")||"")+" ").replace(/[\n\t]/g," ");q(b.split(" "),function(a){a=R(a);-1===d.indexOf(" "+a+" ")&&(d+=a+" ")});a.setAttribute("class",R(d))}}function ac(a,b){if(b)if(b.nodeType)a[a.length++]=b;else{var d=b.length;if("number"===typeof d&&b.window!==b){if(d)for(var c=0;c<d;c++)a[a.length++]=b[c]}else a[a.length++]=b}}function ad(a,b){return Db(a,"$"+(b||"ngController")+
|
||||||
|
"Controller")}function Db(a,b,d){9===a.nodeType&&(a=a.documentElement);for(b=G(b)?b:[b];a;){for(var c=0,f=b.length;c<f;c++)if(u(d=F.data(a,b[c])))return d;a=a.parentNode||11===a.nodeType&&a.host}}function bd(a){for(xb(a,!0);a.firstChild;)a.removeChild(a.firstChild)}function Eb(a,b){b||xb(a);var d=a.parentNode;d&&d.removeChild(a)}function $f(a,b){b=b||A;if("complete"===b.document.readyState)b.setTimeout(a);else F(b).on("load",a)}function Zc(a){function b(){A.document.removeEventListener("DOMContentLoaded",
|
||||||
|
b);A.removeEventListener("load",b);a()}"complete"===A.document.readyState?A.setTimeout(a):(A.document.addEventListener("DOMContentLoaded",b),A.addEventListener("load",b))}function cd(a,b){var d=Fb[b.toLowerCase()];return d&&dd[xa(a)]&&d}function ag(a,b){var d=function(c,d){c.isDefaultPrevented=function(){return c.defaultPrevented};var e=b[d||c.type],g=e?e.length:0;if(g){if(x(c.immediatePropagationStopped)){var h=c.stopImmediatePropagation;c.stopImmediatePropagation=function(){c.immediatePropagationStopped=
|
||||||
|
!0;c.stopPropagation&&c.stopPropagation();h&&h.call(c)}}c.isImmediatePropagationStopped=function(){return!0===c.immediatePropagationStopped};var k=e.specialHandlerWrapper||bg;1<g&&(e=ja(e));for(var l=0;l<g;l++)c.isImmediatePropagationStopped()||k(a,c,e[l])}};d.elem=a;return d}function bg(a,b,d){d.call(a,b)}function cg(a,b,d){var c=b.relatedTarget;c&&(c===a||dg.call(a,c))||d.call(a,b)}function Sf(){this.$get=function(){return Q(U,{hasClass:function(a,b){a.attr&&(a=a[0]);return Ab(a,b)},addClass:function(a,
|
||||||
|
b){a.attr&&(a=a[0]);return Cb(a,b)},removeClass:function(a,b){a.attr&&(a=a[0]);return Bb(a,b)}})}}function ka(a,b){var d=a&&a.$$hashKey;if(d)return"function"===typeof d&&(d=a.$$hashKey()),d;d=typeof a;return d="function"===d||"object"===d&&null!==a?a.$$hashKey=d+":"+(b||he)():d+":"+a}function Pa(a,b){if(b){var d=0;this.nextUid=function(){return++d}}q(a,this.put,this)}function ed(a){a=(Function.prototype.toString.call(a)+" ").replace(eg,"");return a.match(fg)||a.match(gg)}function hg(a){return(a=ed(a))?
|
||||||
|
"function("+(a[1]||"").replace(/[\s\r\n]+/," ")+")":"fn"}function eb(a,b){function d(a){return function(b,c){if(E(b))q(b,Ec(a));else return a(b,c)}}function c(a,b){Oa(a,"service");if(B(b)||G(b))b=p.instantiate(b);if(!b.$get)throw ca("pget",a);return n[a+"Provider"]=b}function f(a,b){return function(){var c=J.invoke(b,this);if(x(c))throw ca("undef",a);return c}}function e(a,b,d){return c(a,{$get:!1!==d?f(a,b):b})}function g(a){fb(x(a)||G(a),"modulesToLoad","not an array");var b=[],c;q(a,function(a){function d(a){var b,
|
||||||
|
c;b=0;for(c=a.length;b<c;b++){var e=a[b],f=p.get(e[0]);f[e[1]].apply(f,e[2])}}if(!m.get(a)){m.put(a,!0);try{y(a)?(c=Yb(a),b=b.concat(g(c.requires)).concat(c._runBlocks),d(c._invokeQueue),d(c._configBlocks)):B(a)?b.push(p.invoke(a)):G(a)?b.push(p.invoke(a)):sb(a,"module")}catch(e){throw G(a)&&(a=a[a.length-1]),e.message&&e.stack&&-1===e.stack.indexOf(e.message)&&(e=e.message+"\n"+e.stack),ca("modulerr",a,e.stack||e.message||e);}}});return b}function h(a,c){function d(b,e){if(a.hasOwnProperty(b)){if(a[b]===
|
||||||
|
k)throw ca("cdep",b+" <- "+l.join(" <- "));return a[b]}try{return l.unshift(b),a[b]=k,a[b]=c(b,e),a[b]}catch(f){throw a[b]===k&&delete a[b],f;}finally{l.shift()}}function e(a,c,f){var g=[];a=eb.$$annotate(a,b,f);for(var h=0,k=a.length;h<k;h++){var l=a[h];if("string"!==typeof l)throw ca("itkn",l);g.push(c&&c.hasOwnProperty(l)?c[l]:d(l,f))}return g}return{invoke:function(a,b,c,d){"string"===typeof c&&(d=c,c=null);c=e(a,c,d);G(a)&&(a=a[a.length-1]);d=a;if(La||"function"!==typeof d)d=!1;else{var f=d.$$ngIsClass;
|
||||||
|
Ia(f)||(f=d.$$ngIsClass=/^(?:class\b|constructor\()/.test(Function.prototype.toString.call(d)+" "));d=f}return d?(c.unshift(null),new (Function.prototype.bind.apply(a,c))):a.apply(b,c)},instantiate:function(a,b,c){var d=G(a)?a[a.length-1]:a;a=e(a,b,c);a.unshift(null);return new (Function.prototype.bind.apply(d,a))},get:d,annotate:eb.$$annotate,has:function(b){return n.hasOwnProperty(b+"Provider")||a.hasOwnProperty(b)}}}b=!0===b;var k={},l=[],m=new Pa([],!0),n={$provide:{provider:d(c),factory:d(e),
|
||||||
|
service:d(function(a,b){return e(a,["$injector",function(a){return a.instantiate(b)}])}),value:d(function(a,b){return e(a,fa(b),!1)}),constant:d(function(a,b){Oa(a,"constant");n[a]=b;t[a]=b}),decorator:function(a,b){var c=p.get(a+"Provider"),d=c.$get;c.$get=function(){var a=J.invoke(d,c);return J.invoke(b,null,{$delegate:a})}}}},p=n.$injector=h(n,function(a,b){Z.isString(b)&&l.push(b);throw ca("unpr",l.join(" <- "));}),t={},C=h(t,function(a,b){var c=p.get(a+"Provider",b);return J.invoke(c.$get,c,
|
||||||
|
void 0,a)}),J=C;n.$injectorProvider={$get:fa(C)};var s=g(a),J=C.get("$injector");J.strictDi=b;q(s,function(a){a&&J.invoke(a)});return J}function gf(){var a=!0;this.disableAutoScrolling=function(){a=!1};this.$get=["$window","$location","$rootScope",function(b,d,c){function f(a){var b=null;Array.prototype.some.call(a,function(a){if("a"===xa(a))return b=a,!0});return b}function e(a){if(a){a.scrollIntoView();var c;c=g.yOffset;B(c)?c=c():Sb(c)?(c=c[0],c="fixed"!==b.getComputedStyle(c).position?0:c.getBoundingClientRect().bottom):
|
||||||
|
W(c)||(c=0);c&&(a=a.getBoundingClientRect().top,b.scrollBy(0,a-c))}else b.scrollTo(0,0)}function g(a){a=y(a)?a:W(a)?a.toString():d.hash();var b;a?(b=h.getElementById(a))?e(b):(b=f(h.getElementsByName(a)))?e(b):"top"===a&&e(null):e(null)}var h=b.document;a&&c.$watch(function(){return d.hash()},function(a,b){a===b&&""===a||$f(function(){c.$evalAsync(g)})});return g}]}function jb(a,b){if(!a&&!b)return"";if(!a)return b;if(!b)return a;G(a)&&(a=a.join(" "));G(b)&&(b=b.join(" "));return a+" "+b}function ig(a){y(a)&&
|
||||||
|
(a=a.split(" "));var b=T();q(a,function(a){a.length&&(b[a]=!0)});return b}function Aa(a){return E(a)?a:{}}function jg(a,b,d,c){function f(a){try{a.apply(null,wa.call(arguments,1))}finally{if(C--,0===C)for(;J.length;)try{J.pop()()}catch(b){d.error(b)}}}function e(){r=null;g();h()}function g(){s=D();s=x(s)?null:s;ma(s,O)&&(s=O);O=s}function h(){if(w!==k.url()||M!==s)w=k.url(),M=s,q(K,function(a){a(k.url(),s)})}var k=this,l=a.location,m=a.history,n=a.setTimeout,p=a.clearTimeout,t={};k.isMock=!1;var C=
|
||||||
|
0,J=[];k.$$completeOutstandingRequest=f;k.$$incOutstandingRequestCount=function(){C++};k.notifyWhenNoOutstandingRequests=function(a){0===C?a():J.push(a)};var s,M,w=l.href,N=b.find("base"),r=null,D=c.history?function(){try{return m.state}catch(a){}}:v;g();M=s;k.url=function(b,d,e){x(e)&&(e=null);l!==a.location&&(l=a.location);m!==a.history&&(m=a.history);if(b){var f=M===e;if(w===b&&(!c.history||f))return k;var h=w&&Ba(w)===Ba(b);w=b;M=e;!c.history||h&&f?(h||(r=b),d?l.replace(b):h?(d=l,e=b.indexOf("#"),
|
||||||
|
e=-1===e?"":b.substr(e),d.hash=e):l.href=b,l.href!==b&&(r=b)):(m[d?"replaceState":"pushState"](e,"",b),g(),M=s);r&&(r=b);return k}return r||l.href.replace(/%27/g,"'")};k.state=function(){return s};var K=[],pa=!1,O=null;k.onUrlChange=function(b){if(!pa){if(c.history)F(a).on("popstate",e);F(a).on("hashchange",e);pa=!0}K.push(b);return b};k.$$applicationDestroyed=function(){F(a).off("hashchange popstate",e)};k.$$checkUrlChange=h;k.baseHref=function(){var a=N.attr("href");return a?a.replace(/^(https?:)?\/\/[^/]*/,
|
||||||
|
""):""};k.defer=function(a,b){var c;C++;c=n(function(){delete t[c];f(a)},b||0);t[c]=!0;return c};k.defer.cancel=function(a){return t[a]?(delete t[a],p(a),f(v),!0):!1}}function of(){this.$get=["$window","$log","$sniffer","$document",function(a,b,d,c){return new jg(a,c,b,d)}]}function pf(){this.$get=function(){function a(a,c){function f(a){a!==n&&(p?p===a&&(p=a.n):p=a,e(a.n,a.p),e(a,n),n=a,n.n=null)}function e(a,b){a!==b&&(a&&(a.p=b),b&&(b.n=a))}if(a in b)throw H("$cacheFactory")("iid",a);var g=0,h=
|
||||||
|
Q({},c,{id:a}),k=T(),l=c&&c.capacity||Number.MAX_VALUE,m=T(),n=null,p=null;return b[a]={put:function(a,b){if(!x(b)){if(l<Number.MAX_VALUE){var c=m[a]||(m[a]={key:a});f(c)}a in k||g++;k[a]=b;g>l&&this.remove(p.key);return b}},get:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;f(b)}return k[a]},remove:function(a){if(l<Number.MAX_VALUE){var b=m[a];if(!b)return;b===n&&(n=b.p);b===p&&(p=b.n);e(b.n,b.p);delete m[a]}a in k&&(delete k[a],g--)},removeAll:function(){k=T();g=0;m=T();n=p=null},destroy:function(){m=
|
||||||
|
h=k=null;delete b[a]},info:function(){return Q({},h,{size:g})}}}var b={};a.info=function(){var a={};q(b,function(b,f){a[f]=b.info()});return a};a.get=function(a){return b[a]};return a}}function Mf(){this.$get=["$cacheFactory",function(a){return a("templates")}]}function Pc(a,b){function d(a,b,c){var d=/^\s*([@&<]|=(\*?))(\??)\s*(\w*)\s*$/,e=T();q(a,function(a,f){if(a in n)e[f]=n[a];else{var g=a.match(d);if(!g)throw da("iscp",b,f,a,c?"controller bindings definition":"isolate scope definition");e[f]=
|
||||||
|
{mode:g[1][0],collection:"*"===g[2],optional:"?"===g[3],attrName:g[4]||f};g[4]&&(n[a]=e[f])}});return e}function c(a){var b=a.charAt(0);if(!b||b!==L(b))throw da("baddir",a);if(a!==a.trim())throw da("baddir",a);}function f(a){var b=a.require||a.controller&&a.name;!G(b)&&E(b)&&q(b,function(a,c){var d=a.match(l);a.substring(d[0].length)||(b[c]=d[0]+c)});return b}var e={},g=/^\s*directive:\s*([\w-]+)\s+(.*)$/,h=/(([\w-]+)(?::([^;]+))?;?)/,k=le("ngSrc,ngSrcset,src,srcset"),l=/^(?:(\^\^?)?(\?)?(\^\^?)?)?/,
|
||||||
|
m=/^(on[a-z]+|formaction)$/,n=T();this.directive=function w(b,d){fb(b,"name");Oa(b,"directive");y(b)?(c(b),fb(d,"directiveFactory"),e.hasOwnProperty(b)||(e[b]=[],a.factory(b+"Directive",["$injector","$exceptionHandler",function(a,c){var d=[];q(e[b],function(e,g){try{var h=a.invoke(e);B(h)?h={compile:fa(h)}:!h.compile&&h.link&&(h.compile=fa(h.link));h.priority=h.priority||0;h.index=g;h.name=h.name||b;h.require=f(h);var k=h,l=h.restrict;if(l&&(!y(l)||!/[EACM]/.test(l)))throw da("badrestrict",l,b);k.restrict=
|
||||||
|
l||"EA";h.$$moduleName=e.$$moduleName;d.push(h)}catch(m){c(m)}});return d}])),e[b].push(d)):q(b,Ec(w));return this};this.component=function(a,b){function c(a){function e(b){return B(b)||G(b)?function(c,d){return a.invoke(b,this,{$element:c,$attrs:d})}:b}var f=b.template||b.templateUrl?b.template:"",g={controller:d,controllerAs:kg(b.controller)||b.controllerAs||"$ctrl",template:e(f),templateUrl:e(b.templateUrl),transclude:b.transclude,scope:{},bindToController:b.bindings||{},restrict:"E",require:b.require};
|
||||||
|
q(b,function(a,b){"$"===b.charAt(0)&&(g[b]=a)});return g}var d=b.controller||function(){};q(b,function(a,b){"$"===b.charAt(0)&&(c[b]=a,B(d)&&(d[b]=a))});c.$inject=["$injector"];return this.directive(a,c)};this.aHrefSanitizationWhitelist=function(a){return u(a)?(b.aHrefSanitizationWhitelist(a),this):b.aHrefSanitizationWhitelist()};this.imgSrcSanitizationWhitelist=function(a){return u(a)?(b.imgSrcSanitizationWhitelist(a),this):b.imgSrcSanitizationWhitelist()};var p=!0;this.debugInfoEnabled=function(a){return u(a)?
|
||||||
|
(p=a,this):p};var t=!1;this.preAssignBindingsEnabled=function(a){return u(a)?(t=a,this):t};var C=10;this.onChangesTtl=function(a){return arguments.length?(C=a,this):C};var J=!0;this.commentDirectivesEnabled=function(a){return arguments.length?(J=a,this):J};var s=!0;this.cssClassDirectivesEnabled=function(a){return arguments.length?(s=a,this):s};this.$get=["$injector","$interpolate","$exceptionHandler","$templateRequest","$parse","$controller","$rootScope","$sce","$animate","$$sanitizeUri",function(a,
|
||||||
|
b,c,f,n,pa,O,z,P,I){function V(){try{if(!--za)throw ca=void 0,da("infchng",C);O.$apply(function(){for(var a=[],b=0,c=ca.length;b<c;++b)try{ca[b]()}catch(d){a.push(d)}ca=void 0;if(a.length)throw a;})}finally{za++}}function r(a,b){if(b){var c=Object.keys(b),d,e,f;d=0;for(e=c.length;d<e;d++)f=c[d],this[f]=b[f]}else this.$attr={};this.$$element=a}function Y(a,b,c){ua.innerHTML="<span "+b+">";b=ua.firstChild.attributes;var d=b[0];b.removeNamedItem(d.name);d.value=c;a.attributes.setNamedItem(d)}function ra(a,
|
||||||
|
b){try{a.addClass(b)}catch(c){}}function aa(a,b,c,d,e){a instanceof F||(a=F(a));var f=Ma(a,b,a,c,d,e);aa.$$addScopeClass(a);var g=null;return function(b,c,d){if(!a)throw da("multilink");fb(b,"scope");e&&e.needsNewScope&&(b=b.$parent.$new());d=d||{};var h=d.parentBoundTranscludeFn,k=d.transcludeControllers;d=d.futureParentElement;h&&h.$$boundTransclude&&(h=h.$$boundTransclude);g||(g=(d=d&&d[0])?"foreignobject"!==xa(d)&&la.call(d).match(/SVG/)?"svg":"html":"html");d="html"!==g?F(fa(g,F("<div>").append(a).html())):
|
||||||
|
c?Na.clone.call(a):a;if(k)for(var l in k)d.data("$"+l+"Controller",k[l].instance);aa.$$addScopeInfo(d,b);c&&c(d,b);f&&f(b,d,d,h);c||(a=f=null);return d}}function Ma(a,b,c,d,e,f){function g(a,c,d,e){var f,k,l,m,p,n,t;if(K)for(t=Array(c.length),m=0;m<h.length;m+=3)f=h[m],t[f]=c[f];else t=c;m=0;for(p=h.length;m<p;)k=t[h[m++]],c=h[m++],f=h[m++],c?(c.scope?(l=a.$new(),aa.$$addScopeInfo(F(k),l)):l=a,n=c.transcludeOnThisElement?ha(a,c.transclude,e):!c.templateOnThisElement&&e?e:!e&&b?ha(a,b):null,c(f,l,
|
||||||
|
k,d,n)):f&&f(a,k.childNodes,void 0,e)}for(var h=[],k=G(a)||a instanceof F,l,m,p,n,K,t=0;t<a.length;t++){l=new r;11===La&&Gb(a,t,k);m=dc(a[t],[],l,0===t?d:void 0,e);(f=m.length?U(m,a[t],l,b,c,null,[],[],f):null)&&f.scope&&aa.$$addScopeClass(l.$$element);l=f&&f.terminal||!(p=a[t].childNodes)||!p.length?null:Ma(p,f?(f.transcludeOnThisElement||!f.templateOnThisElement)&&f.transclude:b);if(f||l)h.push(t,f,l),n=!0,K=K||f;f=null}return n?g:null}function Gb(a,b,c){var d=a[b],e=d.parentNode,f;if(d.nodeType===
|
||||||
|
Ja)for(;;){f=e?d.nextSibling:a[b+1];if(!f||f.nodeType!==Ja)break;d.nodeValue+=f.nodeValue;f.parentNode&&f.parentNode.removeChild(f);c&&f===a[b+1]&&a.splice(b+1,1)}}function ha(a,b,c){function d(e,f,g,h,k){e||(e=a.$new(!1,k),e.$$transcluded=!0);return b(e,f,{parentBoundTranscludeFn:c,transcludeControllers:g,futureParentElement:h})}var e=d.$$slots=T(),f;for(f in b.$$slots)e[f]=b.$$slots[f]?ha(a,b.$$slots[f],c):null;return d}function dc(a,b,c,d,e){var f=c.$attr,g;switch(a.nodeType){case 1:g=xa(a);W(b,
|
||||||
|
Ca(g),"E",d,e);for(var k,l,m,p,n=a.attributes,K=0,t=n&&n.length;K<t;K++){var D=!1,s=!1;k=n[K];l=k.name;m=k.value;k=Ca(l);(p=Ha.test(k))&&(l=l.replace(fd,"").substr(8).replace(/_(.)/g,function(a,b){return b.toUpperCase()}));(k=k.match(Ka))&&X(k[1])&&(D=l,s=l.substr(0,l.length-5)+"end",l=l.substr(0,l.length-6));k=Ca(l.toLowerCase());f[k]=l;if(p||!c.hasOwnProperty(k))c[k]=m,cd(a,k)&&(c[k]=!0);qa(a,b,m,k,p);W(b,k,"A",d,e,D,s)}"input"===g&&"hidden"===a.getAttribute("type")&&a.setAttribute("autocomplete",
|
||||||
|
"off");if(!Ga)break;f=a.className;E(f)&&(f=f.animVal);if(y(f)&&""!==f)for(;a=h.exec(f);)k=Ca(a[2]),W(b,k,"C",d,e)&&(c[k]=R(a[3])),f=f.substr(a.index+a[0].length);break;case Ja:ja(b,a.nodeValue);break;case 8:if(!Fa)break;H(a,b,c,d,e)}b.sort(ia);return b}function H(a,b,c,d,e){try{var f=g.exec(a.nodeValue);if(f){var h=Ca(f[1]);W(b,h,"M",d,e)&&(c[h]=R(f[2]))}}catch(k){}}function gd(a,b,c){var d=[],e=0;if(b&&a.hasAttribute&&a.hasAttribute(b)){do{if(!a)throw da("uterdir",b,c);1===a.nodeType&&(a.hasAttribute(b)&&
|
||||||
|
e++,a.hasAttribute(c)&&e--);d.push(a);a=a.nextSibling}while(0<e)}else d.push(a);return F(d)}function hd(a,b,c){return function(d,e,f,g,h){e=gd(e[0],b,c);return a(d,e,f,g,h)}}function fc(a,b,c,d,e,f){var g;return a?aa(b,c,d,e,f):function(){g||(g=aa(b,c,d,e,f),b=c=f=null);return g.apply(this,arguments)}}function U(a,b,d,e,f,g,h,k,l){function m(a,b,c,d){if(a){c&&(a=hd(a,c,d));a.require=z.require;a.directiveName=J;if(s===z||z.$$isolateScope)a=sa(a,{isolateScope:!0});h.push(a)}if(b){c&&(b=hd(b,c,d));b.require=
|
||||||
|
z.require;b.directiveName=J;if(s===z||z.$$isolateScope)b=sa(b,{isolateScope:!0});k.push(b)}}function p(a,e,f,g,l){function m(a,b,c,d){var e;Za(a)||(d=c,c=b,b=a,a=void 0);pa&&(e=I);c||(c=pa?J.parent():J);if(d){var f=l.$$slots[d];if(f)return f(a,b,e,c,u);if(x(f))throw da("noslot",d,ya(J));}else return l(a,b,e,c,u)}var n,z,C,w,P,I,Qa,J;b===f?(g=d,J=d.$$element):(J=F(f),g=new r(J,d));P=e;s?w=e.$new(!0):K&&(P=e.$parent);l&&(Qa=m,Qa.$$boundTransclude=l,Qa.isSlotFilled=function(a){return!!l.$$slots[a]});
|
||||||
|
D&&(I=ba(J,g,Qa,D,w,e,s));s&&(aa.$$addScopeInfo(J,w,!0,!(O&&(O===s||O===s.$$originalDirective))),aa.$$addScopeClass(J,!0),w.$$isolateBindings=s.$$isolateBindings,z=na(e,g,w,w.$$isolateBindings,s),z.removeWatches&&w.$on("$destroy",z.removeWatches));for(n in I){z=D[n];C=I[n];var V=z.$$bindings.bindToController;if(t){C.bindingInfo=V?na(P,g,C.instance,V,z):{};var N=C();N!==C.instance&&(C.instance=N,J.data("$"+z.name+"Controller",N),C.bindingInfo.removeWatches&&C.bindingInfo.removeWatches(),C.bindingInfo=
|
||||||
|
na(P,g,C.instance,V,z))}else C.instance=C(),J.data("$"+z.name+"Controller",C.instance),C.bindingInfo=na(P,g,C.instance,V,z)}q(D,function(a,b){var c=a.require;a.bindToController&&!G(c)&&E(c)&&Q(I[b].instance,S(b,c,J,I))});q(I,function(a){var b=a.instance;if(B(b.$onChanges))try{b.$onChanges(a.bindingInfo.initialChanges)}catch(d){c(d)}if(B(b.$onInit))try{b.$onInit()}catch(e){c(e)}B(b.$doCheck)&&(P.$watch(function(){b.$doCheck()}),b.$doCheck());B(b.$onDestroy)&&P.$on("$destroy",function(){b.$onDestroy()})});
|
||||||
|
n=0;for(z=h.length;n<z;n++)C=h[n],ta(C,C.isolateScope?w:e,J,g,C.require&&S(C.directiveName,C.require,J,I),Qa);var u=e;s&&(s.template||null===s.templateUrl)&&(u=w);a&&a(u,f.childNodes,void 0,l);for(n=k.length-1;0<=n;n--)C=k[n],ta(C,C.isolateScope?w:e,J,g,C.require&&S(C.directiveName,C.require,J,I),Qa);q(I,function(a){a=a.instance;B(a.$postLink)&&a.$postLink()})}l=l||{};for(var n=-Number.MAX_VALUE,K=l.newScopeDirective,D=l.controllerDirectives,s=l.newIsolateScopeDirective,O=l.templateDirective,C=l.nonTlbTranscludeDirective,
|
||||||
|
w=!1,P=!1,pa=l.hasElementTranscludeDirective,I=d.$$element=F(b),z,J,V,N=e,u,ra=!1,Y=!1,v,A=0,y=a.length;A<y;A++){z=a[A];var Ma=z.$$start,H=z.$$end;Ma&&(I=gd(b,Ma,H));V=void 0;if(n>z.priority)break;if(v=z.scope)z.templateUrl||(E(v)?(Z("new/isolated scope",s||K,z,I),s=z):Z("new/isolated scope",s,z,I)),K=K||z;J=z.name;if(!ra&&(z.replace&&(z.templateUrl||z.template)||z.transclude&&!z.$$tlb)){for(v=A+1;ra=a[v++];)if(ra.transclude&&!ra.$$tlb||ra.replace&&(ra.templateUrl||ra.template)){Y=!0;break}ra=!0}!z.templateUrl&&
|
||||||
|
z.controller&&(D=D||T(),Z("'"+J+"' controller",D[J],z,I),D[J]=z);if(v=z.transclude)if(w=!0,z.$$tlb||(Z("transclusion",C,z,I),C=z),"element"===v)pa=!0,n=z.priority,V=I,I=d.$$element=F(aa.$$createComment(J,d[J])),b=I[0],ka(f,wa.call(V,0),b),V[0].$$parentNode=V[0].parentNode,N=fc(Y,V,e,n,g&&g.name,{nonTlbTranscludeDirective:C});else{var ha=T();if(E(v)){V=[];var Gb=T(),L=T();q(v,function(a,b){var c="?"===a.charAt(0);a=c?a.substring(1):a;Gb[a]=b;ha[b]=null;L[b]=c});q(I.contents(),function(a){var b=Gb[Ca(xa(a))];
|
||||||
|
b?(L[b]=!0,ha[b]=ha[b]||[],ha[b].push(a)):V.push(a)});q(L,function(a,b){if(!a)throw da("reqslot",b);});for(var ec in ha)ha[ec]&&(ha[ec]=fc(Y,ha[ec],e))}else V=F(bc(b)).contents();I.empty();N=fc(Y,V,e,void 0,void 0,{needsNewScope:z.$$isolateScope||z.$$newScope});N.$$slots=ha}if(z.template)if(P=!0,Z("template",O,z,I),O=z,v=B(z.template)?z.template(I,d):z.template,v=Ea(v),z.replace){g=z;V=Zb.test(v)?id(fa(z.templateNamespace,R(v))):[];b=V[0];if(1!==V.length||1!==b.nodeType)throw da("tplrt",J,"");ka(f,
|
||||||
|
I,b);y={$attr:{}};v=dc(b,[],y);var W=a.splice(A+1,a.length-(A+1));(s||K)&&$(v,s,K);a=a.concat(v).concat(W);ea(d,y);y=a.length}else I.html(v);if(z.templateUrl)P=!0,Z("template",O,z,I),O=z,z.replace&&(g=z),p=ga(a.splice(A,a.length-A),I,d,f,w&&N,h,k,{controllerDirectives:D,newScopeDirective:K!==z&&K,newIsolateScopeDirective:s,templateDirective:O,nonTlbTranscludeDirective:C}),y=a.length;else if(z.compile)try{u=z.compile(I,d,N);var X=z.$$originalDirective||z;B(u)?m(null,bb(X,u),Ma,H):u&&m(bb(X,u.pre),
|
||||||
|
bb(X,u.post),Ma,H)}catch(ca){c(ca,ya(I))}z.terminal&&(p.terminal=!0,n=Math.max(n,z.priority))}p.scope=K&&!0===K.scope;p.transcludeOnThisElement=w;p.templateOnThisElement=P;p.transclude=N;l.hasElementTranscludeDirective=pa;return p}function S(a,b,c,d){var e;if(y(b)){var f=b.match(l);b=b.substring(f[0].length);var g=f[1]||f[3],f="?"===f[2];"^^"===g?c=c.parent():e=(e=d&&d[b])&&e.instance;if(!e){var h="$"+b+"Controller";e=g?c.inheritedData(h):c.data(h)}if(!e&&!f)throw da("ctreq",b,a);}else if(G(b))for(e=
|
||||||
|
[],g=0,f=b.length;g<f;g++)e[g]=S(a,b[g],c,d);else E(b)&&(e={},q(b,function(b,f){e[f]=S(a,b,c,d)}));return e||null}function ba(a,b,c,d,e,f,g){var h=T(),k;for(k in d){var l=d[k],m={$scope:l===g||l.$$isolateScope?e:f,$element:a,$attrs:b,$transclude:c},n=l.controller;"@"===n&&(n=b[l.name]);m=pa(n,m,!0,l.controllerAs);h[l.name]=m;a.data("$"+l.name+"Controller",m.instance)}return h}function $(a,b,c){for(var d=0,e=a.length;d<e;d++)a[d]=Tb(a[d],{$$isolateScope:b,$$newScope:c})}function W(b,c,f,g,h,k,l){if(c===
|
||||||
|
h)return null;var m=null;if(e.hasOwnProperty(c)){h=a.get(c+"Directive");for(var n=0,p=h.length;n<p;n++)if(c=h[n],(x(g)||g>c.priority)&&-1!==c.restrict.indexOf(f)){k&&(c=Tb(c,{$$start:k,$$end:l}));if(!c.$$bindings){var K=m=c,t=c.name,D={isolateScope:null,bindToController:null};E(K.scope)&&(!0===K.bindToController?(D.bindToController=d(K.scope,t,!0),D.isolateScope={}):D.isolateScope=d(K.scope,t,!1));E(K.bindToController)&&(D.bindToController=d(K.bindToController,t,!0));if(D.bindToController&&!K.controller)throw da("noctrl",
|
||||||
|
t);m=m.$$bindings=D;E(m.isolateScope)&&(c.$$isolateBindings=m.isolateScope)}b.push(c);m=c}}return m}function X(b){if(e.hasOwnProperty(b))for(var c=a.get(b+"Directive"),d=0,f=c.length;d<f;d++)if(b=c[d],b.multiElement)return!0;return!1}function ea(a,b){var c=b.$attr,d=a.$attr;q(a,function(d,e){"$"!==e.charAt(0)&&(b[e]&&b[e]!==d&&(d=d.length?d+(("style"===e?";":" ")+b[e]):b[e]),a.$set(e,d,!0,c[e]))});q(b,function(b,e){a.hasOwnProperty(e)||"$"===e.charAt(0)||(a[e]=b,"class"!==e&&"style"!==e&&(d[e]=c[e]))})}
|
||||||
|
function ga(a,b,d,e,g,h,k,l){var m=[],n,p,K=b[0],t=a.shift(),s=Tb(t,{templateUrl:null,transclude:null,replace:null,$$originalDirective:t}),z=B(t.templateUrl)?t.templateUrl(b,d):t.templateUrl,C=t.templateNamespace;b.empty();f(z).then(function(c){var f,D;c=Ea(c);if(t.replace){c=Zb.test(c)?id(fa(C,R(c))):[];f=c[0];if(1!==c.length||1!==f.nodeType)throw da("tplrt",t.name,z);c={$attr:{}};ka(e,b,f);var w=dc(f,[],c);E(t.scope)&&$(w,!0);a=w.concat(a);ea(d,c)}else f=K,b.html(c);a.unshift(s);n=U(a,f,d,g,b,t,
|
||||||
|
h,k,l);q(e,function(a,c){a===f&&(e[c]=b[0])});for(p=Ma(b[0].childNodes,g);m.length;){c=m.shift();D=m.shift();var O=m.shift(),I=m.shift(),w=b[0];if(!c.$$destroyed){if(D!==K){var P=D.className;l.hasElementTranscludeDirective&&t.replace||(w=bc(f));ka(O,F(D),w);ra(F(w),P)}D=n.transcludeOnThisElement?ha(c,n.transclude,I):I;n(p,c,w,e,D)}}m=null}).catch(function(a){a instanceof Error&&c(a)}).catch(v);return function(a,b,c,d,e){a=e;b.$$destroyed||(m?m.push(b,c,d,a):(n.transcludeOnThisElement&&(a=ha(b,n.transclude,
|
||||||
|
e)),n(p,b,c,d,a)))}}function ia(a,b){var c=b.priority-a.priority;return 0!==c?c:a.name!==b.name?a.name<b.name?-1:1:a.index-b.index}function Z(a,b,c,d){function e(a){return a?" (module: "+a+")":""}if(b)throw da("multidir",b.name,e(b.$$moduleName),c.name,e(c.$$moduleName),a,ya(d));}function ja(a,c){var d=b(c,!0);d&&a.push({priority:0,compile:function(a){a=a.parent();var b=!!a.length;b&&aa.$$addBindingClass(a);return function(a,c){var e=c.parent();b||aa.$$addBindingClass(e);aa.$$addBindingInfo(e,d.expressions);
|
||||||
|
a.$watch(d,function(a){c[0].nodeValue=a})}}})}function fa(a,b){a=L(a||"html");switch(a){case "svg":case "math":var c=A.document.createElement("div");c.innerHTML="<"+a+">"+b+"</"+a+">";return c.childNodes[0].childNodes;default:return b}}function oa(a,b){if("srcdoc"===b)return z.HTML;var c=xa(a);if("src"===b||"ngSrc"===b){if(-1===["img","video","audio","source","track"].indexOf(c))return z.RESOURCE_URL}else if("xlinkHref"===b||"form"===c&&"action"===b||"link"===c&&"href"===b)return z.RESOURCE_URL}function qa(a,
|
||||||
|
c,d,e,f){var g=oa(a,e),h=k[e]||f,l=b(d,!f,g,h);if(l){if("multiple"===e&&"select"===xa(a))throw da("selmulti",ya(a));if(m.test(e))throw da("nodomevents");c.push({priority:100,compile:function(){return{pre:function(a,c,f){c=f.$$observers||(f.$$observers=T());var k=f[e];k!==d&&(l=k&&b(k,!0,g,h),d=k);l&&(f[e]=l(a),(c[e]||(c[e]=[])).$$inter=!0,(f.$$observers&&f.$$observers[e].$$scope||a).$watch(l,function(a,b){"class"===e&&a!==b?f.$updateClass(a,b):f.$set(e,a)}))}}}})}}function ka(a,b,c){var d=b[0],e=
|
||||||
|
b.length,f=d.parentNode,g,h;if(a)for(g=0,h=a.length;g<h;g++)if(a[g]===d){a[g++]=c;h=g+e-1;for(var k=a.length;g<k;g++,h++)h<k?a[g]=a[h]:delete a[g];a.length-=e-1;a.context===d&&(a.context=c);break}f&&f.replaceChild(c,d);a=A.document.createDocumentFragment();for(g=0;g<e;g++)a.appendChild(b[g]);F.hasData(d)&&(F.data(c,F.data(d)),F(d).off("$destroy"));F.cleanData(a.querySelectorAll("*"));for(g=1;g<e;g++)delete b[g];b[0]=c;b.length=1}function sa(a,b){return Q(function(){return a.apply(null,arguments)},
|
||||||
|
a,b)}function ta(a,b,d,e,f,g){try{a(b,d,e,f,g)}catch(h){c(h,ya(d))}}function na(a,c,d,e,f){function g(b,c,e){!B(d.$onChanges)||c===e||c!==c&&e!==e||(ca||(a.$$postDigest(V),ca=[]),m||(m={},ca.push(h)),m[b]&&(e=m[b].previousValue),m[b]=new Hb(e,c))}function h(){d.$onChanges(m);m=void 0}var k=[],l={},m;q(e,function(e,h){var m=e.attrName,p=e.optional,t,D,s,z;switch(e.mode){case "@":p||va.call(c,m)||(d[h]=c[m]=void 0);p=c.$observe(m,function(a){if(y(a)||Ia(a))g(h,a,d[h]),d[h]=a});c.$$observers[m].$$scope=
|
||||||
|
a;t=c[m];y(t)?d[h]=b(t)(a):Ia(t)&&(d[h]=t);l[h]=new Hb(gc,d[h]);k.push(p);break;case "=":if(!va.call(c,m)){if(p)break;c[m]=void 0}if(p&&!c[m])break;D=n(c[m]);z=D.literal?ma:function(a,b){return a===b||a!==a&&b!==b};s=D.assign||function(){t=d[h]=D(a);throw da("nonassign",c[m],m,f.name);};t=d[h]=D(a);p=function(b){z(b,d[h])||(z(b,t)?s(a,b=d[h]):d[h]=b);return t=b};p.$stateful=!0;p=e.collection?a.$watchCollection(c[m],p):a.$watch(n(c[m],p),null,D.literal);k.push(p);break;case "<":if(!va.call(c,m)){if(p)break;
|
||||||
|
c[m]=void 0}if(p&&!c[m])break;D=n(c[m]);var C=D.literal,w=d[h]=D(a);l[h]=new Hb(gc,d[h]);p=a.$watch(D,function(a,b){if(b===a){if(b===w||C&&ma(b,w))return;b=w}g(h,a,b);d[h]=a},C);k.push(p);break;case "&":D=c.hasOwnProperty(m)?n(c[m]):v;if(D===v&&p)break;d[h]=function(b){return D(a,b)}}});return{initialChanges:l,removeWatches:k.length&&function(){for(var a=0,b=k.length;a<b;++a)k[a]()}}}var Da=/^\w/,ua=A.document.createElement("div"),Fa=J,Ga=s,za=C,ca;r.prototype={$normalize:Ca,$addClass:function(a){a&&
|
||||||
|
0<a.length&&P.addClass(this.$$element,a)},$removeClass:function(a){a&&0<a.length&&P.removeClass(this.$$element,a)},$updateClass:function(a,b){var c=jd(a,b);c&&c.length&&P.addClass(this.$$element,c);(c=jd(b,a))&&c.length&&P.removeClass(this.$$element,c)},$set:function(a,b,d,e){var f=cd(this.$$element[0],a),g=kd[a],h=a;f?(this.$$element.prop(a,b),e=f):g&&(this[g]=b,h=g);this[a]=b;e?this.$attr[a]=e:(e=this.$attr[a])||(this.$attr[a]=e=Mc(a,"-"));f=xa(this.$$element);if("a"===f&&("href"===a||"xlinkHref"===
|
||||||
|
a)||"img"===f&&"src"===a)this[a]=b=I(b,"src"===a);else if("img"===f&&"srcset"===a&&u(b)){for(var f="",g=R(b),k=/(\s+\d+x\s*,|\s+\d+w\s*,|\s+,|,\s+)/,k=/\s/.test(g)?k:/(,)/,g=g.split(k),k=Math.floor(g.length/2),l=0;l<k;l++)var m=2*l,f=f+I(R(g[m]),!0),f=f+(" "+R(g[m+1]));g=R(g[2*l]).split(/\s/);f+=I(R(g[0]),!0);2===g.length&&(f+=" "+R(g[1]));this[a]=b=f}!1!==d&&(null===b||x(b)?this.$$element.removeAttr(e):Da.test(e)?this.$$element.attr(e,b):Y(this.$$element[0],e,b));(a=this.$$observers)&&q(a[h],function(a){try{a(b)}catch(d){c(d)}})},
|
||||||
|
$observe:function(a,b){var c=this,d=c.$$observers||(c.$$observers=T()),e=d[a]||(d[a]=[]);e.push(b);O.$evalAsync(function(){e.$$inter||!c.hasOwnProperty(a)||x(c[a])||b(c[a])});return function(){$a(e,b)}}};var Aa=b.startSymbol(),Ba=b.endSymbol(),Ea="{{"===Aa&&"}}"===Ba?Ya:function(a){return a.replace(/\{\{/g,Aa).replace(/}}/g,Ba)},Ha=/^ngAttr[A-Z]/,Ka=/^(.+)Start$/;aa.$$addBindingInfo=p?function(a,b){var c=a.data("$binding")||[];G(b)?c=c.concat(b):c.push(b);a.data("$binding",c)}:v;aa.$$addBindingClass=
|
||||||
|
p?function(a){ra(a,"ng-binding")}:v;aa.$$addScopeInfo=p?function(a,b,c,d){a.data(c?d?"$isolateScopeNoTemplate":"$isolateScope":"$scope",b)}:v;aa.$$addScopeClass=p?function(a,b){ra(a,b?"ng-isolate-scope":"ng-scope")}:v;aa.$$createComment=function(a,b){var c="";p&&(c=" "+(a||"")+": ",b&&(c+=b+" "));return A.document.createComment(c)};return aa}]}function Hb(a,b){this.previousValue=a;this.currentValue=b}function Ca(a){return a.replace(fd,"").replace(lg,gb)}function jd(a,b){var d="",c=a.split(/\s+/),
|
||||||
|
f=b.split(/\s+/),e=0;a:for(;e<c.length;e++){for(var g=c[e],h=0;h<f.length;h++)if(g===f[h])continue a;d+=(0<d.length?" ":"")+g}return d}function id(a){a=F(a);var b=a.length;if(1>=b)return a;for(;b--;){var d=a[b];(8===d.nodeType||d.nodeType===Ja&&""===d.nodeValue.trim())&&mg.call(a,b,1)}return a}function kg(a,b){if(b&&y(b))return b;if(y(a)){var d=ld.exec(a);if(d)return d[3]}}function qf(){var a={},b=!1;this.has=function(b){return a.hasOwnProperty(b)};this.register=function(b,c){Oa(b,"controller");E(b)?
|
||||||
|
Q(a,b):a[b]=c};this.allowGlobals=function(){b=!0};this.$get=["$injector","$window",function(d,c){function f(a,b,c,d){if(!a||!E(a.$scope))throw H("$controller")("noscp",d,b);a.$scope[b]=c}return function(e,g,h,k){var l,m,n;h=!0===h;k&&y(k)&&(n=k);if(y(e)){k=e.match(ld);if(!k)throw md("ctrlfmt",e);m=k[1];n=n||k[3];e=a.hasOwnProperty(m)?a[m]:Oc(g.$scope,m,!0)||(b?Oc(c,m,!0):void 0);if(!e)throw md("ctrlreg",m);sb(e,m,!0)}if(h)return h=(G(e)?e[e.length-1]:e).prototype,l=Object.create(h||null),n&&f(g,n,
|
||||||
|
l,m||e.name),Q(function(){var a=d.invoke(e,l,g,m);a!==l&&(E(a)||B(a))&&(l=a,n&&f(g,n,l,m||e.name));return l},{instance:l,identifier:n});l=d.instantiate(e,g,m);n&&f(g,n,l,m||e.name);return l}}]}function rf(){this.$get=["$window",function(a){return F(a.document)}]}function sf(){this.$get=["$document","$rootScope",function(a,b){function d(){f=c.hidden}var c=a[0],f=c&&c.hidden;a.on("visibilitychange",d);b.$on("$destroy",function(){a.off("visibilitychange",d)});return function(){return f}}]}function tf(){this.$get=
|
||||||
|
["$log",function(a){return function(b,d){a.error.apply(a,arguments)}}]}function hc(a){return E(a)?ea(a)?a.toISOString():cb(a):a}function yf(){this.$get=function(){return function(a){if(!a)return"";var b=[];Dc(a,function(a,c){null===a||x(a)||(G(a)?q(a,function(a){b.push(ia(c)+"="+ia(hc(a)))}):b.push(ia(c)+"="+ia(hc(a))))});return b.join("&")}}}function zf(){this.$get=function(){return function(a){function b(a,f,e){null===a||x(a)||(G(a)?q(a,function(a,c){b(a,f+"["+(E(a)?c:"")+"]")}):E(a)&&!ea(a)?Dc(a,
|
||||||
|
function(a,c){b(a,f+(e?"":"[")+c+(e?"":"]"))}):d.push(ia(f)+"="+ia(hc(a))))}if(!a)return"";var d=[];b(a,"",!0);return d.join("&")}}}function ic(a,b){if(y(a)){var d=a.replace(ng,"").trim();if(d){var c=b("Content-Type");(c=c&&0===c.indexOf(nd))||(c=(c=d.match(og))&&pg[c[0]].test(d));c&&(a=Hc(d))}}return a}function od(a){var b=T(),d;y(a)?q(a.split("\n"),function(a){d=a.indexOf(":");var f=L(R(a.substr(0,d)));a=R(a.substr(d+1));f&&(b[f]=b[f]?b[f]+", "+a:a)}):E(a)&&q(a,function(a,d){var e=L(d),g=R(a);e&&
|
||||||
|
(b[e]=b[e]?b[e]+", "+g:g)});return b}function pd(a){var b;return function(d){b||(b=od(a));return d?(d=b[L(d)],void 0===d&&(d=null),d):b}}function qd(a,b,d,c){if(B(c))return c(a,b,d);q(c,function(c){a=c(a,b,d)});return a}function xf(){var a=this.defaults={transformResponse:[ic],transformRequest:[function(a){return E(a)&&"[object File]"!==la.call(a)&&"[object Blob]"!==la.call(a)&&"[object FormData]"!==la.call(a)?cb(a):a}],headers:{common:{Accept:"application/json, text/plain, */*"},post:ja(jc),put:ja(jc),
|
||||||
|
patch:ja(jc)},xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",paramSerializer:"$httpParamSerializer",jsonpCallbackParam:"callback"},b=!1;this.useApplyAsync=function(a){return u(a)?(b=!!a,this):b};var d=this.interceptors=[];this.$get=["$browser","$httpBackend","$$cookieReader","$cacheFactory","$rootScope","$q","$injector","$sce",function(c,f,e,g,h,k,l,m){function n(b){function d(a,b){for(var c=0,e=b.length;c<e;){var f=b[c++],g=b[c++];a=a.then(f,g)}b.length=0;return a}function e(a,b){var c,
|
||||||
|
d={};q(a,function(a,e){B(a)?(c=a(b),null!=c&&(d[e]=c)):d[e]=a});return d}function f(a){var b=Q({},a);b.data=qd(a.data,a.headers,a.status,g.transformResponse);a=a.status;return 200<=a&&300>a?b:k.reject(b)}if(!E(b))throw H("$http")("badreq",b);if(!y(m.valueOf(b.url)))throw H("$http")("badreq",b.url);var g=Q({method:"get",transformRequest:a.transformRequest,transformResponse:a.transformResponse,paramSerializer:a.paramSerializer,jsonpCallbackParam:a.jsonpCallbackParam},b);g.headers=function(b){var c=
|
||||||
|
a.headers,d=Q({},b.headers),f,g,h,c=Q({},c.common,c[L(b.method)]);a:for(f in c){g=L(f);for(h in d)if(L(h)===g)continue a;d[f]=c[f]}return e(d,ja(b))}(b);g.method=ub(g.method);g.paramSerializer=y(g.paramSerializer)?l.get(g.paramSerializer):g.paramSerializer;c.$$incOutstandingRequestCount();var h=[],n=[];b=k.resolve(g);q(s,function(a){(a.request||a.requestError)&&h.unshift(a.request,a.requestError);(a.response||a.responseError)&&n.push(a.response,a.responseError)});b=d(b,h);b=b.then(function(b){var c=
|
||||||
|
b.headers,d=qd(b.data,pd(c),void 0,b.transformRequest);x(d)&&q(c,function(a,b){"content-type"===L(b)&&delete c[b]});x(b.withCredentials)&&!x(a.withCredentials)&&(b.withCredentials=a.withCredentials);return p(b,d).then(f,f)});b=d(b,n);return b=b.finally(function(){c.$$completeOutstandingRequest(v)})}function p(c,d){function g(a){if(a){var c={};q(a,function(a,d){c[d]=function(c){function d(){a(c)}b?h.$applyAsync(d):h.$$phase?d():h.$apply(d)}});return c}}function l(a,c,d,e){function f(){p(c,a,d,e)}P&&
|
||||||
|
(200<=a&&300>a?P.put(Y,[a,c,od(d),e]):P.remove(Y));b?h.$applyAsync(f):(f(),h.$$phase||h.$apply())}function p(a,b,d,e){b=-1<=b?b:0;(200<=b&&300>b?O.resolve:O.reject)({data:a,status:b,headers:pd(d),config:c,statusText:e})}function K(a){p(a.data,a.status,ja(a.headers()),a.statusText)}function s(){var a=n.pendingRequests.indexOf(c);-1!==a&&n.pendingRequests.splice(a,1)}var O=k.defer(),z=O.promise,P,I,V=c.headers,r="jsonp"===L(c.method),Y=c.url;r?Y=m.getTrustedResourceUrl(Y):y(Y)||(Y=m.valueOf(Y));Y=t(Y,
|
||||||
|
c.paramSerializer(c.params));r&&(Y=C(Y,c.jsonpCallbackParam));n.pendingRequests.push(c);z.then(s,s);!c.cache&&!a.cache||!1===c.cache||"GET"!==c.method&&"JSONP"!==c.method||(P=E(c.cache)?c.cache:E(a.cache)?a.cache:J);P&&(I=P.get(Y),u(I)?I&&B(I.then)?I.then(K,K):G(I)?p(I[1],I[0],ja(I[2]),I[3]):p(I,200,{},"OK"):P.put(Y,z));x(I)&&((I=rd(c.url)?e()[c.xsrfCookieName||a.xsrfCookieName]:void 0)&&(V[c.xsrfHeaderName||a.xsrfHeaderName]=I),f(c.method,Y,d,l,V,c.timeout,c.withCredentials,c.responseType,g(c.eventHandlers),
|
||||||
|
g(c.uploadEventHandlers)));return z}function t(a,b){0<b.length&&(a+=(-1===a.indexOf("?")?"?":"&")+b);return a}function C(a,b){if(/[&?][^=]+=JSON_CALLBACK/.test(a))throw sd("badjsonp",a);if((new RegExp("[&?]"+b+"=")).test(a))throw sd("badjsonp",b,a);return a+=(-1===a.indexOf("?")?"?":"&")+b+"=JSON_CALLBACK"}var J=g("$http");a.paramSerializer=y(a.paramSerializer)?l.get(a.paramSerializer):a.paramSerializer;var s=[];q(d,function(a){s.unshift(y(a)?l.get(a):l.invoke(a))});n.pendingRequests=[];(function(a){q(arguments,
|
||||||
|
function(a){n[a]=function(b,c){return n(Q({},c||{},{method:a,url:b}))}})})("get","delete","head","jsonp");(function(a){q(arguments,function(a){n[a]=function(b,c,d){return n(Q({},d||{},{method:a,url:b,data:c}))}})})("post","put","patch");n.defaults=a;return n}]}function Bf(){this.$get=function(){return function(){return new A.XMLHttpRequest}}}function Af(){this.$get=["$browser","$jsonpCallbacks","$document","$xhrFactory",function(a,b,d,c){return qg(a,c,a.defer,b,d[0])}]}function qg(a,b,d,c,f){function e(a,
|
||||||
|
b,d){a=a.replace("JSON_CALLBACK",b);var e=f.createElement("script"),m=null;e.type="text/javascript";e.src=a;e.async=!0;m=function(a){e.removeEventListener("load",m);e.removeEventListener("error",m);f.body.removeChild(e);e=null;var g=-1,t="unknown";a&&("load"!==a.type||c.wasCalled(b)||(a={type:"error"}),t=a.type,g="error"===a.type?404:200);d&&d(g,t)};e.addEventListener("load",m);e.addEventListener("error",m);f.body.appendChild(e);return m}return function(f,h,k,l,m,n,p,t,C,J){function s(){w&&w();N&&
|
||||||
|
N.abort()}h=h||a.url();if("jsonp"===L(f))var M=c.createCallback(h),w=e(h,M,function(a,b){var e=200===a&&c.getResponse(M);u(D)&&d.cancel(D);w=N=null;l(a,e,"",b);c.removeCallback(M)});else{var N=b(f,h);N.open(f,h,!0);q(m,function(a,b){u(a)&&N.setRequestHeader(b,a)});N.onload=function(){var a=N.statusText||"",b="response"in N?N.response:N.responseText,c=1223===N.status?204:N.status;0===c&&(c=b?200:"file"===Da(h).protocol?404:0);var e=N.getAllResponseHeaders();u(D)&&d.cancel(D);w=N=null;l(c,b,e,a)};f=
|
||||||
|
function(){u(D)&&d.cancel(D);w=N=null;l(-1,null,null,"")};N.onerror=f;N.onabort=f;N.ontimeout=f;q(C,function(a,b){N.addEventListener(b,a)});q(J,function(a,b){N.upload.addEventListener(b,a)});p&&(N.withCredentials=!0);if(t)try{N.responseType=t}catch(r){if("json"!==t)throw r;}N.send(x(k)?null:k)}if(0<n)var D=d(s,n);else n&&B(n.then)&&n.then(s)}}function vf(){var a="{{",b="}}";this.startSymbol=function(b){return b?(a=b,this):a};this.endSymbol=function(a){return a?(b=a,this):b};this.$get=["$parse","$exceptionHandler",
|
||||||
|
"$sce",function(d,c,f){function e(a){return"\\\\\\"+a}function g(c){return c.replace(n,a).replace(p,b)}function h(a,b,c,d){var e=a.$watch(function(a){e();return d(a)},b,c);return e}function k(e,k,p,n){function M(a){try{var b=a;a=p?f.getTrusted(p,b):f.valueOf(b);return n&&!u(a)?a:Xb(a)}catch(d){c(Ea.interr(e,d))}}if(!e.length||-1===e.indexOf(a)){var w;k||(k=g(e),w=fa(k),w.exp=e,w.expressions=[],w.$$watchDelegate=h);return w}n=!!n;var q,r,D=0,K=[],pa=[];w=e.length;for(var O=[],z=[];D<w;)if(-1!==(q=
|
||||||
|
e.indexOf(a,D))&&-1!==(r=e.indexOf(b,q+l)))D!==q&&O.push(g(e.substring(D,q))),D=e.substring(q+l,r),K.push(D),pa.push(d(D,M)),D=r+m,z.push(O.length),O.push("");else{D!==w&&O.push(g(e.substring(D)));break}p&&1<O.length&&Ea.throwNoconcat(e);if(!k||K.length){var P=function(a){for(var b=0,c=K.length;b<c;b++){if(n&&x(a[b]))return;O[z[b]]=a[b]}return O.join("")};return Q(function(a){var b=0,d=K.length,f=Array(d);try{for(;b<d;b++)f[b]=pa[b](a);return P(f)}catch(g){c(Ea.interr(e,g))}},{exp:e,expressions:K,
|
||||||
|
$$watchDelegate:function(a,b){var c;return a.$watchGroup(pa,function(d,e){var f=P(d);B(b)&&b.call(this,f,d!==e?c:f,a);c=f})}})}}var l=a.length,m=b.length,n=new RegExp(a.replace(/./g,e),"g"),p=new RegExp(b.replace(/./g,e),"g");k.startSymbol=function(){return a};k.endSymbol=function(){return b};return k}]}function wf(){this.$get=["$rootScope","$window","$q","$$q","$browser",function(a,b,d,c,f){function e(e,k,l,m){function n(){p?e.apply(null,t):e(s)}var p=4<arguments.length,t=p?wa.call(arguments,4):
|
||||||
|
[],C=b.setInterval,q=b.clearInterval,s=0,M=u(m)&&!m,w=(M?c:d).defer(),r=w.promise;l=u(l)?l:0;r.$$intervalId=C(function(){M?f.defer(n):a.$evalAsync(n);w.notify(s++);0<l&&s>=l&&(w.resolve(s),q(r.$$intervalId),delete g[r.$$intervalId]);M||a.$apply()},k);g[r.$$intervalId]=w;return r}var g={};e.cancel=function(a){return a&&a.$$intervalId in g?(g[a.$$intervalId].promise.catch(v),g[a.$$intervalId].reject("canceled"),b.clearInterval(a.$$intervalId),delete g[a.$$intervalId],!0):!1};return e}]}function kc(a){a=
|
||||||
|
a.split("/");for(var b=a.length;b--;)a[b]=db(a[b]);return a.join("/")}function td(a,b){var d=Da(a);b.$$protocol=d.protocol;b.$$host=d.hostname;b.$$port=X(d.port)||rg[d.protocol]||null}function ud(a,b){if(sg.test(a))throw kb("badpath",a);var d="/"!==a.charAt(0);d&&(a="/"+a);var c=Da(a);b.$$path=decodeURIComponent(d&&"/"===c.pathname.charAt(0)?c.pathname.substring(1):c.pathname);b.$$search=Kc(c.search);b.$$hash=decodeURIComponent(c.hash);b.$$path&&"/"!==b.$$path.charAt(0)&&(b.$$path="/"+b.$$path)}function lc(a,
|
||||||
|
b){return a.slice(0,b.length)===b}function sa(a,b){if(lc(b,a))return b.substr(a.length)}function Ba(a){var b=a.indexOf("#");return-1===b?a:a.substr(0,b)}function lb(a){return a.replace(/(#.+)|#$/,"$1")}function mc(a,b,d){this.$$html5=!0;d=d||"";td(a,this);this.$$parse=function(a){var d=sa(b,a);if(!y(d))throw kb("ipthprfx",a,b);ud(d,this);this.$$path||(this.$$path="/");this.$$compose()};this.$$compose=function(){var a=Wb(this.$$search),d=this.$$hash?"#"+db(this.$$hash):"";this.$$url=kc(this.$$path)+
|
||||||
|
(a?"?"+a:"")+d;this.$$absUrl=b+this.$$url.substr(1)};this.$$parseLinkUrl=function(c,f){if(f&&"#"===f[0])return this.hash(f.slice(1)),!0;var e,g;u(e=sa(a,c))?(g=e,g=d&&u(e=sa(d,e))?b+(sa("/",e)||e):a+g):u(e=sa(b,c))?g=b+e:b===c+"/"&&(g=b);g&&this.$$parse(g);return!!g}}function nc(a,b,d){td(a,this);this.$$parse=function(c){var f=sa(a,c)||sa(b,c),e;x(f)||"#"!==f.charAt(0)?this.$$html5?e=f:(e="",x(f)&&(a=c,this.replace())):(e=sa(d,f),x(e)&&(e=f));ud(e,this);c=this.$$path;var f=a,g=/^\/[A-Z]:(\/.*)/;lc(e,
|
||||||
|
f)&&(e=e.replace(f,""));g.exec(e)||(c=(e=g.exec(c))?e[1]:c);this.$$path=c;this.$$compose()};this.$$compose=function(){var b=Wb(this.$$search),f=this.$$hash?"#"+db(this.$$hash):"";this.$$url=kc(this.$$path)+(b?"?"+b:"")+f;this.$$absUrl=a+(this.$$url?d+this.$$url:"")};this.$$parseLinkUrl=function(b,d){return Ba(a)===Ba(b)?(this.$$parse(b),!0):!1}}function vd(a,b,d){this.$$html5=!0;nc.apply(this,arguments);this.$$parseLinkUrl=function(c,f){if(f&&"#"===f[0])return this.hash(f.slice(1)),!0;var e,g;a===
|
||||||
|
Ba(c)?e=c:(g=sa(b,c))?e=a+d+g:b===c+"/"&&(e=b);e&&this.$$parse(e);return!!e};this.$$compose=function(){var b=Wb(this.$$search),f=this.$$hash?"#"+db(this.$$hash):"";this.$$url=kc(this.$$path)+(b?"?"+b:"")+f;this.$$absUrl=a+d+this.$$url}}function Ib(a){return function(){return this[a]}}function wd(a,b){return function(d){if(x(d))return this[a];this[a]=b(d);this.$$compose();return this}}function Df(){var a="!",b={enabled:!1,requireBase:!0,rewriteLinks:!0};this.hashPrefix=function(b){return u(b)?(a=b,
|
||||||
|
this):a};this.html5Mode=function(a){if(Ia(a))return b.enabled=a,this;if(E(a)){Ia(a.enabled)&&(b.enabled=a.enabled);Ia(a.requireBase)&&(b.requireBase=a.requireBase);if(Ia(a.rewriteLinks)||y(a.rewriteLinks))b.rewriteLinks=a.rewriteLinks;return this}return b};this.$get=["$rootScope","$browser","$sniffer","$rootElement","$window",function(d,c,f,e,g){function h(a,b,d){var e=l.url(),f=l.$$state;try{c.url(a,b,d),l.$$state=c.state()}catch(g){throw l.url(e),l.$$state=f,g;}}function k(a,b){d.$broadcast("$locationChangeSuccess",
|
||||||
|
l.absUrl(),a,l.$$state,b)}var l,m;m=c.baseHref();var n=c.url(),p;if(b.enabled){if(!m&&b.requireBase)throw kb("nobase");p=n.substring(0,n.indexOf("/",n.indexOf("//")+2))+(m||"/");m=f.history?mc:vd}else p=Ba(n),m=nc;var t=p.substr(0,Ba(p).lastIndexOf("/")+1);l=new m(p,t,"#"+a);l.$$parseLinkUrl(n,n);l.$$state=c.state();var C=/^\s*(javascript|mailto):/i;e.on("click",function(a){var f=b.rewriteLinks;if(f&&!a.ctrlKey&&!a.metaKey&&!a.shiftKey&&2!==a.which&&2!==a.button){for(var h=F(a.target);"a"!==xa(h[0]);)if(h[0]===
|
||||||
|
e[0]||!(h=h.parent())[0])return;if(!y(f)||!x(h.attr(f))){var f=h.prop("href"),k=h.attr("href")||h.attr("xlink:href");E(f)&&"[object SVGAnimatedString]"===f.toString()&&(f=Da(f.animVal).href);C.test(f)||!f||h.attr("target")||a.isDefaultPrevented()||!l.$$parseLinkUrl(f,k)||(a.preventDefault(),l.absUrl()!==c.url()&&(d.$apply(),g.angular["ff-684208-preventDefault"]=!0))}}});lb(l.absUrl())!==lb(n)&&c.url(l.absUrl(),!0);var q=!0;c.onUrlChange(function(a,b){lc(a,t)?(d.$evalAsync(function(){var c=l.absUrl(),
|
||||||
|
e=l.$$state,f;a=lb(a);l.$$parse(a);l.$$state=b;f=d.$broadcast("$locationChangeStart",a,c,b,e).defaultPrevented;l.absUrl()===a&&(f?(l.$$parse(c),l.$$state=e,h(c,!1,e)):(q=!1,k(c,e)))}),d.$$phase||d.$digest()):g.location.href=a});d.$watch(function(){var a=lb(c.url()),b=lb(l.absUrl()),e=c.state(),g=l.$$replace,m=a!==b||l.$$html5&&f.history&&e!==l.$$state;if(q||m)q=!1,d.$evalAsync(function(){var b=l.absUrl(),c=d.$broadcast("$locationChangeStart",b,a,l.$$state,e).defaultPrevented;l.absUrl()===b&&(c?(l.$$parse(a),
|
||||||
|
l.$$state=e):(m&&h(b,g,e===l.$$state?null:l.$$state),k(a,e)))});l.$$replace=!1});return l}]}function Ef(){var a=!0,b=this;this.debugEnabled=function(b){return u(b)?(a=b,this):a};this.$get=["$window",function(d){function c(a){a instanceof Error&&(a.stack?a=a.message&&-1===a.stack.indexOf(a.message)?"Error: "+a.message+"\n"+a.stack:a.stack:a.sourceURL&&(a=a.message+"\n"+a.sourceURL+":"+a.line));return a}function f(a){var b=d.console||{},f=b[a]||b.log||v;a=!1;try{a=!!f.apply}catch(k){}return a?function(){var a=
|
||||||
|
[];q(arguments,function(b){a.push(c(b))});return f.apply(b,a)}:function(a,b){f(a,null==b?"":b)}}return{log:f("log"),info:f("info"),warn:f("warn"),error:f("error"),debug:function(){var c=f("debug");return function(){a&&c.apply(b,arguments)}}()}}]}function tg(a){return a+""}function ug(a,b){return"undefined"!==typeof a?a:b}function xd(a,b){return"undefined"===typeof a?b:"undefined"===typeof b?a:a+b}function S(a,b){var d,c,f;switch(a.type){case r.Program:d=!0;q(a.body,function(a){S(a.expression,b);d=
|
||||||
|
d&&a.expression.constant});a.constant=d;break;case r.Literal:a.constant=!0;a.toWatch=[];break;case r.UnaryExpression:S(a.argument,b);a.constant=a.argument.constant;a.toWatch=a.argument.toWatch;break;case r.BinaryExpression:S(a.left,b);S(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.left.toWatch.concat(a.right.toWatch);break;case r.LogicalExpression:S(a.left,b);S(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=a.constant?[]:[a];break;case r.ConditionalExpression:S(a.test,
|
||||||
|
b);S(a.alternate,b);S(a.consequent,b);a.constant=a.test.constant&&a.alternate.constant&&a.consequent.constant;a.toWatch=a.constant?[]:[a];break;case r.Identifier:a.constant=!1;a.toWatch=[a];break;case r.MemberExpression:S(a.object,b);a.computed&&S(a.property,b);a.constant=a.object.constant&&(!a.computed||a.property.constant);a.toWatch=[a];break;case r.CallExpression:d=f=a.filter?!b(a.callee.name).$stateful:!1;c=[];q(a.arguments,function(a){S(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});
|
||||||
|
a.constant=d;a.toWatch=f?c:[a];break;case r.AssignmentExpression:S(a.left,b);S(a.right,b);a.constant=a.left.constant&&a.right.constant;a.toWatch=[a];break;case r.ArrayExpression:d=!0;c=[];q(a.elements,function(a){S(a,b);d=d&&a.constant;a.constant||c.push.apply(c,a.toWatch)});a.constant=d;a.toWatch=c;break;case r.ObjectExpression:d=!0;c=[];q(a.properties,function(a){S(a.value,b);d=d&&a.value.constant&&!a.computed;a.value.constant||c.push.apply(c,a.value.toWatch)});a.constant=d;a.toWatch=c;break;case r.ThisExpression:a.constant=
|
||||||
|
!1;a.toWatch=[];break;case r.LocalsExpression:a.constant=!1,a.toWatch=[]}}function yd(a){if(1===a.length){a=a[0].expression;var b=a.toWatch;return 1!==b.length?b:b[0]!==a?b:void 0}}function zd(a){return a.type===r.Identifier||a.type===r.MemberExpression}function Ad(a){if(1===a.body.length&&zd(a.body[0].expression))return{type:r.AssignmentExpression,left:a.body[0].expression,right:{type:r.NGValueParameter},operator:"="}}function Bd(a){return 0===a.body.length||1===a.body.length&&(a.body[0].expression.type===
|
||||||
|
r.Literal||a.body[0].expression.type===r.ArrayExpression||a.body[0].expression.type===r.ObjectExpression)}function Cd(a,b){this.astBuilder=a;this.$filter=b}function Dd(a,b){this.astBuilder=a;this.$filter=b}function oc(a){return B(a.valueOf)?a.valueOf():vg.call(a)}function Ff(){var a=T(),b={"true":!0,"false":!1,"null":null,undefined:void 0},d,c;this.addLiteral=function(a,c){b[a]=c};this.setIdentifierFns=function(a,b){d=a;c=b;return this};this.$get=["$filter",function(f){function e(a,b){return null==
|
||||||
|
a||null==b?a===b:"object"===typeof a&&(a=oc(a),"object"===typeof a)?!1:a===b||a!==a&&b!==b}function g(a,b,c,d,f){var g=d.inputs,h;if(1===g.length){var k=e,g=g[0];return a.$watch(function(a){var b=g(a);e(b,k)||(h=d(a,void 0,void 0,[b]),k=b&&oc(b));return h},b,c,f)}for(var l=[],m=[],n=0,q=g.length;n<q;n++)l[n]=e,m[n]=null;return a.$watch(function(a){for(var b=!1,c=0,f=g.length;c<f;c++){var k=g[c](a);if(b||(b=!e(k,l[c])))m[c]=k,l[c]=k&&oc(k)}b&&(h=d(a,void 0,void 0,m));return h},b,c,f)}function h(a,
|
||||||
|
b,c,d,e){function f(a){return d(a)}function h(a,c,d){l=a;B(b)&&b(a,c,d);u(a)&&d.$$postDigest(function(){u(l)&&k()})}var k,l;return k=d.inputs?g(a,h,c,d,e):a.$watch(f,h,c)}function k(a,b,c,d){function e(a){var b=!0;q(a,function(a){u(a)||(b=!1)});return b}var f,g;return f=a.$watch(function(a){return d(a)},function(a,c,d){g=a;B(b)&&b(a,c,d);e(a)&&d.$$postDigest(function(){e(g)&&f()})},c)}function l(a,b,c,d){var e=a.$watch(function(a){e();return d(a)},b,c);return e}function m(a,b){if(!b)return a;var c=
|
||||||
|
a.$$watchDelegate,d=!1,c=c!==k&&c!==h?function(c,e,f,g){f=d&&g?g[0]:a(c,e,f,g);return b(f,c,e)}:function(c,d,e,f){e=a(c,d,e,f);c=b(e,c,d);return u(e)?c:e},d=!a.inputs;a.$$watchDelegate&&a.$$watchDelegate!==g?(c.$$watchDelegate=a.$$watchDelegate,c.inputs=a.inputs):b.$stateful||(c.$$watchDelegate=g,c.inputs=a.inputs?a.inputs:[a]);return c}var n={csp:za().noUnsafeEval,literals:Fa(b),isIdentifierStart:B(d)&&d,isIdentifierContinue:B(c)&&c};return function(b,c){var d,e,s;switch(typeof b){case "string":return s=
|
||||||
|
b=b.trim(),d=a[s],d||(":"===b.charAt(0)&&":"===b.charAt(1)&&(e=!0,b=b.substring(2)),d=new pc(n),d=(new qc(d,f,n)).parse(b),d.constant?d.$$watchDelegate=l:e?d.$$watchDelegate=d.literal?k:h:d.inputs&&(d.$$watchDelegate=g),a[s]=d),m(d,c);case "function":return m(b,c);default:return m(v,c)}}}]}function Hf(){var a=!0;this.$get=["$rootScope","$exceptionHandler",function(b,d){return Ed(function(a){b.$evalAsync(a)},d,a)}];this.errorOnUnhandledRejections=function(b){return u(b)?(a=b,this):a}}function If(){var a=
|
||||||
|
!0;this.$get=["$browser","$exceptionHandler",function(b,d){return Ed(function(a){b.defer(a)},d,a)}];this.errorOnUnhandledRejections=function(b){return u(b)?(a=b,this):a}}function Ed(a,b,d){function c(){return new f}function f(){var a=this.promise=new e;this.resolve=function(b){k(a,b)};this.reject=function(b){m(a,b)};this.notify=function(b){p(a,b)}}function e(){this.$$state={status:0}}function g(){for(;!w&&u.length;){var a=u.shift();a.pur||(a.pur=!0,a=a.value,a="Possibly unhandled rejection: "+("function"===
|
||||||
|
typeof a?a.toString().replace(/ \{[\s\S]*$/,""):x(a)?"undefined":"string"!==typeof a?ve(a):a),b(a))}}function h(b){!d||b.pending||2!==b.status||b.pur||(0===w&&0===u.length&&a(g),u.push(b));!b.processScheduled&&b.pending&&(b.processScheduled=!0,++w,a(function(){var c,e,f;f=b.pending;b.processScheduled=!1;b.pending=void 0;try{for(var h=0,l=f.length;h<l;++h){b.pur=!0;e=f[h][0];c=f[h][b.status];try{B(c)?k(e,c(b.value)):1===b.status?k(e,b.value):m(e,b.value)}catch(n){m(e,n)}}}finally{--w,d&&0===w&&a(g)}}))}
|
||||||
|
function k(a,b){a.$$state.status||(b===a?n(a,M("qcycle",b)):l(a,b))}function l(a,b){function c(b){g||(g=!0,l(a,b))}function d(b){g||(g=!0,n(a,b))}function e(b){p(a,b)}var f,g=!1;try{if(E(b)||B(b))f=b.then;B(f)?(a.$$state.status=-1,f.call(b,c,d,e)):(a.$$state.value=b,a.$$state.status=1,h(a.$$state))}catch(k){d(k)}}function m(a,b){a.$$state.status||n(a,b)}function n(a,b){a.$$state.value=b;a.$$state.status=2;h(a.$$state)}function p(c,d){var e=c.$$state.pending;0>=c.$$state.status&&e&&e.length&&a(function(){for(var a,
|
||||||
|
c,f=0,g=e.length;f<g;f++){c=e[f][0];a=e[f][3];try{p(c,B(a)?a(d):d)}catch(h){b(h)}}})}function t(a){var b=new e;m(b,a);return b}function C(a,b,c){var d=null;try{B(c)&&(d=c())}catch(e){return t(e)}return d&&B(d.then)?d.then(function(){return b(a)},t):b(a)}function r(a,b,c,d){var f=new e;k(f,a);return f.then(b,c,d)}function s(a){if(!B(a))throw M("norslvr",a);var b=new e;a(function(a){k(b,a)},function(a){m(b,a)});return b}var M=H("$q",TypeError),w=0,u=[];Q(e.prototype,{then:function(a,b,c){if(x(a)&&x(b)&&
|
||||||
|
x(c))return this;var d=new e;this.$$state.pending=this.$$state.pending||[];this.$$state.pending.push([d,a,b,c]);0<this.$$state.status&&h(this.$$state);return d},"catch":function(a){return this.then(null,a)},"finally":function(a,b){return this.then(function(b){return C(b,v,a)},function(b){return C(b,t,a)},b)}});var v=r;s.prototype=e.prototype;s.defer=c;s.reject=t;s.when=r;s.resolve=v;s.all=function(a){var b=new e,c=0,d=G(a)?[]:{};q(a,function(a,e){c++;r(a).then(function(a){d[e]=a;--c||k(b,d)},function(a){m(b,
|
||||||
|
a)})});0===c&&k(b,d);return b};s.race=function(a){var b=c();q(a,function(a){r(a).then(b.resolve,b.reject)});return b.promise};return s}function Rf(){this.$get=["$window","$timeout",function(a,b){var d=a.requestAnimationFrame||a.webkitRequestAnimationFrame,c=a.cancelAnimationFrame||a.webkitCancelAnimationFrame||a.webkitCancelRequestAnimationFrame,f=!!d,e=f?function(a){var b=d(a);return function(){c(b)}}:function(a){var c=b(a,16.66,!1);return function(){b.cancel(c)}};e.supported=f;return e}]}function Gf(){function a(a){function b(){this.$$watchers=
|
||||||
|
this.$$nextSibling=this.$$childHead=this.$$childTail=null;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$id=++qb;this.$$ChildScope=null}b.prototype=a;return b}var b=10,d=H("$rootScope"),c=null,f=null;this.digestTtl=function(a){arguments.length&&(b=a);return b};this.$get=["$exceptionHandler","$parse","$browser",function(e,g,h){function k(a){a.currentScope.$$destroyed=!0}function l(a){9===La&&(a.$$childHead&&l(a.$$childHead),a.$$nextSibling&&l(a.$$nextSibling));a.$parent=a.$$nextSibling=
|
||||||
|
a.$$prevSibling=a.$$childHead=a.$$childTail=a.$root=a.$$watchers=null}function m(){this.$id=++qb;this.$$phase=this.$parent=this.$$watchers=this.$$nextSibling=this.$$prevSibling=this.$$childHead=this.$$childTail=null;this.$root=this;this.$$destroyed=!1;this.$$listeners={};this.$$listenerCount={};this.$$watchersCount=0;this.$$isolateBindings=null}function n(a){if(M.$$phase)throw d("inprog",M.$$phase);M.$$phase=a}function p(a,b){do a.$$watchersCount+=b;while(a=a.$parent)}function t(a,b,c){do a.$$listenerCount[c]-=
|
||||||
|
b,0===a.$$listenerCount[c]&&delete a.$$listenerCount[c];while(a=a.$parent)}function C(){}function r(){for(;A.length;)try{A.shift()()}catch(a){e(a)}f=null}function s(){null===f&&(f=h.defer(function(){M.$apply(r)}))}m.prototype={constructor:m,$new:function(b,c){var d;c=c||this;b?(d=new m,d.$root=this.$root):(this.$$ChildScope||(this.$$ChildScope=a(this)),d=new this.$$ChildScope);d.$parent=c;d.$$prevSibling=c.$$childTail;c.$$childHead?(c.$$childTail.$$nextSibling=d,c.$$childTail=d):c.$$childHead=c.$$childTail=
|
||||||
|
d;(b||c!==this)&&d.$on("$destroy",k);return d},$watch:function(a,b,d,e){var f=g(a);if(f.$$watchDelegate)return f.$$watchDelegate(this,b,d,f,a);var h=this,k=h.$$watchers,l={fn:b,last:C,get:f,exp:e||a,eq:!!d};c=null;B(b)||(l.fn=v);k||(k=h.$$watchers=[]);k.unshift(l);p(this,1);return function(){0<=$a(k,l)&&p(h,-1);c=null}},$watchGroup:function(a,b){function c(){h=!1;k?(k=!1,b(e,e,g)):b(e,d,g)}var d=Array(a.length),e=Array(a.length),f=[],g=this,h=!1,k=!0;if(!a.length){var l=!0;g.$evalAsync(function(){l&&
|
||||||
|
b(e,e,g)});return function(){l=!1}}if(1===a.length)return this.$watch(a[0],function(a,c,f){e[0]=a;d[0]=c;b(e,a===c?e:d,f)});q(a,function(a,b){var k=g.$watch(a,function(a,f){e[b]=a;d[b]=f;h||(h=!0,g.$evalAsync(c))});f.push(k)});return function(){for(;f.length;)f.shift()()}},$watchCollection:function(a,b){function c(a){e=a;var b,d,g,h;if(!x(e)){if(E(e))if(ta(e))for(f!==n&&(f=n,s=f.length=0,l++),a=e.length,s!==a&&(l++,f.length=s=a),b=0;b<a;b++)h=f[b],g=e[b],d=h!==h&&g!==g,d||h===g||(l++,f[b]=g);else{f!==
|
||||||
|
p&&(f=p={},s=0,l++);a=0;for(b in e)va.call(e,b)&&(a++,g=e[b],h=f[b],b in f?(d=h!==h&&g!==g,d||h===g||(l++,f[b]=g)):(s++,f[b]=g,l++));if(s>a)for(b in l++,f)va.call(e,b)||(s--,delete f[b])}else f!==e&&(f=e,l++);return l}}c.$stateful=!0;var d=this,e,f,h,k=1<b.length,l=0,m=g(a,c),n=[],p={},t=!0,s=0;return this.$watch(m,function(){t?(t=!1,b(e,e,d)):b(e,h,d);if(k)if(E(e))if(ta(e)){h=Array(e.length);for(var a=0;a<e.length;a++)h[a]=e[a]}else for(a in h={},e)va.call(e,a)&&(h[a]=e[a]);else h=e})},$digest:function(){var a,
|
||||||
|
g,k,l,m,p,t,s,q=b,v,x=[],A,y;n("$digest");h.$$checkUrlChange();this===M&&null!==f&&(h.defer.cancel(f),r());c=null;do{s=!1;v=this;for(p=0;p<w.length;p++){try{y=w[p],y.scope.$eval(y.expression,y.locals)}catch(F){e(F)}c=null}w.length=0;a:do{if(p=v.$$watchers)for(t=p.length;t--;)try{if(a=p[t])if(m=a.get,(g=m(v))!==(k=a.last)&&!(a.eq?ma(g,k):ga(g)&&ga(k)))s=!0,c=a,a.last=a.eq?Fa(g,null):g,l=a.fn,l(g,k===C?g:k,v),5>q&&(A=4-q,x[A]||(x[A]=[]),x[A].push({msg:B(a.exp)?"fn: "+(a.exp.name||a.exp.toString()):
|
||||||
|
a.exp,newVal:g,oldVal:k}));else if(a===c){s=!1;break a}}catch(E){e(E)}if(!(p=v.$$watchersCount&&v.$$childHead||v!==this&&v.$$nextSibling))for(;v!==this&&!(p=v.$$nextSibling);)v=v.$parent}while(v=p);if((s||w.length)&&!q--)throw M.$$phase=null,d("infdig",b,x);}while(s||w.length);for(M.$$phase=null;D<u.length;)try{u[D++]()}catch(G){e(G)}u.length=D=0},$destroy:function(){if(!this.$$destroyed){var a=this.$parent;this.$broadcast("$destroy");this.$$destroyed=!0;this===M&&h.$$applicationDestroyed();p(this,
|
||||||
|
-this.$$watchersCount);for(var b in this.$$listenerCount)t(this,this.$$listenerCount[b],b);a&&a.$$childHead===this&&(a.$$childHead=this.$$nextSibling);a&&a.$$childTail===this&&(a.$$childTail=this.$$prevSibling);this.$$prevSibling&&(this.$$prevSibling.$$nextSibling=this.$$nextSibling);this.$$nextSibling&&(this.$$nextSibling.$$prevSibling=this.$$prevSibling);this.$destroy=this.$digest=this.$apply=this.$evalAsync=this.$applyAsync=v;this.$on=this.$watch=this.$watchGroup=function(){return v};this.$$listeners=
|
||||||
|
{};this.$$nextSibling=null;l(this)}},$eval:function(a,b){return g(a)(this,b)},$evalAsync:function(a,b){M.$$phase||w.length||h.defer(function(){w.length&&M.$digest()});w.push({scope:this,expression:g(a),locals:b})},$$postDigest:function(a){u.push(a)},$apply:function(a){try{n("$apply");try{return this.$eval(a)}finally{M.$$phase=null}}catch(b){e(b)}finally{try{M.$digest()}catch(c){throw e(c),c;}}},$applyAsync:function(a){function b(){c.$eval(a)}var c=this;a&&A.push(b);a=g(a);s()},$on:function(a,b){var c=
|
||||||
|
this.$$listeners[a];c||(this.$$listeners[a]=c=[]);c.push(b);var d=this;do d.$$listenerCount[a]||(d.$$listenerCount[a]=0),d.$$listenerCount[a]++;while(d=d.$parent);var e=this;return function(){var d=c.indexOf(b);-1!==d&&(c[d]=null,t(e,1,a))}},$emit:function(a,b){var c=[],d,f=this,g=!1,h={name:a,targetScope:f,stopPropagation:function(){g=!0},preventDefault:function(){h.defaultPrevented=!0},defaultPrevented:!1},k=ab([h],arguments,1),l,m;do{d=f.$$listeners[a]||c;h.currentScope=f;l=0;for(m=d.length;l<
|
||||||
|
m;l++)if(d[l])try{d[l].apply(null,k)}catch(n){e(n)}else d.splice(l,1),l--,m--;if(g)return h.currentScope=null,h;f=f.$parent}while(f);h.currentScope=null;return h},$broadcast:function(a,b){var c=this,d=this,f={name:a,targetScope:this,preventDefault:function(){f.defaultPrevented=!0},defaultPrevented:!1};if(!this.$$listenerCount[a])return f;for(var g=ab([f],arguments,1),h,k;c=d;){f.currentScope=c;d=c.$$listeners[a]||[];h=0;for(k=d.length;h<k;h++)if(d[h])try{d[h].apply(null,g)}catch(l){e(l)}else d.splice(h,
|
||||||
|
1),h--,k--;if(!(d=c.$$listenerCount[a]&&c.$$childHead||c!==this&&c.$$nextSibling))for(;c!==this&&!(d=c.$$nextSibling);)c=c.$parent}f.currentScope=null;return f}};var M=new m,w=M.$$asyncQueue=[],u=M.$$postDigestQueue=[],A=M.$$applyAsyncQueue=[],D=0;return M}]}function ye(){var a=/^\s*(https?|ftp|mailto|tel|file):/,b=/^\s*((https?|ftp|file|blob):|data:image\/)/;this.aHrefSanitizationWhitelist=function(b){return u(b)?(a=b,this):a};this.imgSrcSanitizationWhitelist=function(a){return u(a)?(b=a,this):b};
|
||||||
|
this.$get=function(){return function(d,c){var f=c?b:a,e;e=Da(d).href;return""===e||e.match(f)?d:"unsafe:"+e}}}function wg(a){if("self"===a)return a;if(y(a)){if(-1<a.indexOf("***"))throw ua("iwcard",a);a=Fd(a).replace(/\\\*\\\*/g,".*").replace(/\\\*/g,"[^:/.?&;]*");return new RegExp("^"+a+"$")}if(Xa(a))return new RegExp("^"+a.source+"$");throw ua("imatcher");}function Gd(a){var b=[];u(a)&&q(a,function(a){b.push(wg(a))});return b}function Kf(){this.SCE_CONTEXTS=qa;var a=["self"],b=[];this.resourceUrlWhitelist=
|
||||||
|
function(b){arguments.length&&(a=Gd(b));return a};this.resourceUrlBlacklist=function(a){arguments.length&&(b=Gd(a));return b};this.$get=["$injector",function(d){function c(a,b){return"self"===a?rd(b):!!a.exec(b.href)}function f(a){var b=function(a){this.$$unwrapTrustedValue=function(){return a}};a&&(b.prototype=new a);b.prototype.valueOf=function(){return this.$$unwrapTrustedValue()};b.prototype.toString=function(){return this.$$unwrapTrustedValue().toString()};return b}var e=function(a){throw ua("unsafe");
|
||||||
|
};d.has("$sanitize")&&(e=d.get("$sanitize"));var g=f(),h={};h[qa.HTML]=f(g);h[qa.CSS]=f(g);h[qa.URL]=f(g);h[qa.JS]=f(g);h[qa.RESOURCE_URL]=f(h[qa.URL]);return{trustAs:function(a,b){var c=h.hasOwnProperty(a)?h[a]:null;if(!c)throw ua("icontext",a,b);if(null===b||x(b)||""===b)return b;if("string"!==typeof b)throw ua("itype",a);return new c(b)},getTrusted:function(d,f){if(null===f||x(f)||""===f)return f;var g=h.hasOwnProperty(d)?h[d]:null;if(g&&f instanceof g)return f.$$unwrapTrustedValue();if(d===qa.RESOURCE_URL){var g=
|
||||||
|
Da(f.toString()),n,p,t=!1;n=0;for(p=a.length;n<p;n++)if(c(a[n],g)){t=!0;break}if(t)for(n=0,p=b.length;n<p;n++)if(c(b[n],g)){t=!1;break}if(t)return f;throw ua("insecurl",f.toString());}if(d===qa.HTML)return e(f);throw ua("unsafe");},valueOf:function(a){return a instanceof g?a.$$unwrapTrustedValue():a}}}]}function Jf(){var a=!0;this.enabled=function(b){arguments.length&&(a=!!b);return a};this.$get=["$parse","$sceDelegate",function(b,d){if(a&&8>La)throw ua("iequirks");var c=ja(qa);c.isEnabled=function(){return a};
|
||||||
|
c.trustAs=d.trustAs;c.getTrusted=d.getTrusted;c.valueOf=d.valueOf;a||(c.trustAs=c.getTrusted=function(a,b){return b},c.valueOf=Ya);c.parseAs=function(a,d){var e=b(d);return e.literal&&e.constant?e:b(d,function(b){return c.getTrusted(a,b)})};var f=c.parseAs,e=c.getTrusted,g=c.trustAs;q(qa,function(a,b){var d=L(b);c[("parse_as_"+d).replace(rc,gb)]=function(b){return f(a,b)};c[("get_trusted_"+d).replace(rc,gb)]=function(b){return e(a,b)};c[("trust_as_"+d).replace(rc,gb)]=function(b){return g(a,b)}});
|
||||||
|
return c}]}function Lf(){this.$get=["$window","$document",function(a,b){var d={},c=!(a.chrome&&(a.chrome.app&&a.chrome.app.runtime||!a.chrome.app&&a.chrome.runtime&&a.chrome.runtime.id))&&a.history&&a.history.pushState,f=X((/android (\d+)/.exec(L((a.navigator||{}).userAgent))||[])[1]),e=/Boxee/i.test((a.navigator||{}).userAgent),g=b[0]||{},h=g.body&&g.body.style,k=!1,l=!1;h&&(k=!!("transition"in h||"webkitTransition"in h),l=!!("animation"in h||"webkitAnimation"in h));return{history:!(!c||4>f||e),
|
||||||
|
hasEvent:function(a){if("input"===a&&La)return!1;if(x(d[a])){var b=g.createElement("div");d[a]="on"+a in b}return d[a]},csp:za(),transitions:k,animations:l,android:f}}]}function Nf(){var a;this.httpOptions=function(b){return b?(a=b,this):a};this.$get=["$exceptionHandler","$templateCache","$http","$q","$sce",function(b,d,c,f,e){function g(h,k){g.totalPendingRequests++;if(!y(h)||x(d.get(h)))h=e.getTrustedResourceUrl(h);var l=c.defaults&&c.defaults.transformResponse;G(l)?l=l.filter(function(a){return a!==
|
||||||
|
ic}):l===ic&&(l=null);return c.get(h,Q({cache:d,transformResponse:l},a)).finally(function(){g.totalPendingRequests--}).then(function(a){d.put(h,a.data);return a.data},function(a){k||(a=xg("tpload",h,a.status,a.statusText),b(a));return f.reject(a)})}g.totalPendingRequests=0;return g}]}function Of(){this.$get=["$rootScope","$browser","$location",function(a,b,d){return{findBindings:function(a,b,d){a=a.getElementsByClassName("ng-binding");var g=[];q(a,function(a){var c=Z.element(a).data("$binding");c&&
|
||||||
|
q(c,function(c){d?(new RegExp("(^|\\s)"+Fd(b)+"(\\s|\\||$)")).test(c)&&g.push(a):-1!==c.indexOf(b)&&g.push(a)})});return g},findModels:function(a,b,d){for(var g=["ng-","data-ng-","ng\\:"],h=0;h<g.length;++h){var k=a.querySelectorAll("["+g[h]+"model"+(d?"=":"*=")+'"'+b+'"]');if(k.length)return k}},getLocation:function(){return d.url()},setLocation:function(b){b!==d.url()&&(d.url(b),a.$digest())},whenStable:function(a){b.notifyWhenNoOutstandingRequests(a)}}}]}function Pf(){this.$get=["$rootScope","$browser",
|
||||||
|
"$q","$$q","$exceptionHandler",function(a,b,d,c,f){function e(e,k,l){B(e)||(l=k,k=e,e=v);var m=wa.call(arguments,3),n=u(l)&&!l,p=(n?c:d).defer(),t=p.promise,q;q=b.defer(function(){try{p.resolve(e.apply(null,m))}catch(b){p.reject(b),f(b)}finally{delete g[t.$$timeoutId]}n||a.$apply()},k);t.$$timeoutId=q;g[q]=p;return t}var g={};e.cancel=function(a){return a&&a.$$timeoutId in g?(g[a.$$timeoutId].promise.catch(v),g[a.$$timeoutId].reject("canceled"),delete g[a.$$timeoutId],b.defer.cancel(a.$$timeoutId)):
|
||||||
|
!1};return e}]}function Da(a){La&&(ba.setAttribute("href",a),a=ba.href);ba.setAttribute("href",a);return{href:ba.href,protocol:ba.protocol?ba.protocol.replace(/:$/,""):"",host:ba.host,search:ba.search?ba.search.replace(/^\?/,""):"",hash:ba.hash?ba.hash.replace(/^#/,""):"",hostname:ba.hostname,port:ba.port,pathname:"/"===ba.pathname.charAt(0)?ba.pathname:"/"+ba.pathname}}function rd(a){a=y(a)?Da(a):a;return a.protocol===Hd.protocol&&a.host===Hd.host}function Qf(){this.$get=fa(A)}function Id(a){function b(a){try{return decodeURIComponent(a)}catch(b){return a}}
|
||||||
|
var d=a[0]||{},c={},f="";return function(){var a,g,h,k,l;a=d.cookie||"";if(a!==f)for(f=a,a=f.split("; "),c={},h=0;h<a.length;h++)g=a[h],k=g.indexOf("="),0<k&&(l=b(g.substring(0,k)),x(c[l])&&(c[l]=b(g.substring(k+1))));return c}}function Uf(){this.$get=Id}function Wc(a){function b(d,c){if(E(d)){var f={};q(d,function(a,c){f[c]=b(c,a)});return f}return a.factory(d+"Filter",c)}this.register=b;this.$get=["$injector",function(a){return function(b){return a.get(b+"Filter")}}];b("currency",Jd);b("date",Kd);
|
||||||
|
b("filter",yg);b("json",zg);b("limitTo",Ag);b("lowercase",Bg);b("number",Ld);b("orderBy",Md);b("uppercase",Cg)}function yg(){return function(a,b,d,c){if(!ta(a)){if(null==a)return a;throw H("filter")("notarray",a);}c=c||"$";var f;switch(sc(b)){case "function":break;case "boolean":case "null":case "number":case "string":f=!0;case "object":b=Dg(b,d,c,f);break;default:return a}return Array.prototype.filter.call(a,b)}}function Dg(a,b,d,c){var f=E(a)&&d in a;!0===b?b=ma:B(b)||(b=function(a,b){if(x(a))return!1;
|
||||||
|
if(null===a||null===b)return a===b;if(E(b)||E(a)&&!Ub(a))return!1;a=L(""+a);b=L(""+b);return-1!==a.indexOf(b)});return function(e){return f&&!E(e)?Ha(e,a[d],b,d,!1):Ha(e,a,b,d,c)}}function Ha(a,b,d,c,f,e){var g=sc(a),h=sc(b);if("string"===h&&"!"===b.charAt(0))return!Ha(a,b.substring(1),d,c,f);if(G(a))return a.some(function(a){return Ha(a,b,d,c,f)});switch(g){case "object":var k;if(f){for(k in a)if("$"!==k.charAt(0)&&Ha(a[k],b,d,c,!0))return!0;return e?!1:Ha(a,b,d,c,!1)}if("object"===h){for(k in b)if(e=
|
||||||
|
b[k],!B(e)&&!x(e)&&(g=k===c,!Ha(g?a:a[k],e,d,c,g,g)))return!1;return!0}return d(a,b);case "function":return!1;default:return d(a,b)}}function sc(a){return null===a?"null":typeof a}function Jd(a){var b=a.NUMBER_FORMATS;return function(a,c,f){x(c)&&(c=b.CURRENCY_SYM);x(f)&&(f=b.PATTERNS[1].maxFrac);return null==a?a:Nd(a,b.PATTERNS[1],b.GROUP_SEP,b.DECIMAL_SEP,f).replace(/\u00A4/g,c)}}function Ld(a){var b=a.NUMBER_FORMATS;return function(a,c){return null==a?a:Nd(a,b.PATTERNS[0],b.GROUP_SEP,b.DECIMAL_SEP,
|
||||||
|
c)}}function Eg(a){var b=0,d,c,f,e,g;-1<(c=a.indexOf(Od))&&(a=a.replace(Od,""));0<(f=a.search(/e/i))?(0>c&&(c=f),c+=+a.slice(f+1),a=a.substring(0,f)):0>c&&(c=a.length);for(f=0;a.charAt(f)===tc;f++);if(f===(g=a.length))d=[0],c=1;else{for(g--;a.charAt(g)===tc;)g--;c-=f;d=[];for(e=0;f<=g;f++,e++)d[e]=+a.charAt(f)}c>Pd&&(d=d.splice(0,Pd-1),b=c-1,c=1);return{d:d,e:b,i:c}}function Fg(a,b,d,c){var f=a.d,e=f.length-a.i;b=x(b)?Math.min(Math.max(d,e),c):+b;d=b+a.i;c=f[d];if(0<d){f.splice(Math.max(a.i,d));for(var g=
|
||||||
|
d;g<f.length;g++)f[g]=0}else for(e=Math.max(0,e),a.i=1,f.length=Math.max(1,d=b+1),f[0]=0,g=1;g<d;g++)f[g]=0;if(5<=c)if(0>d-1){for(c=0;c>d;c--)f.unshift(0),a.i++;f.unshift(1);a.i++}else f[d-1]++;for(;e<Math.max(0,b);e++)f.push(0);if(b=f.reduceRight(function(a,b,c,d){b+=a;d[c]=b%10;return Math.floor(b/10)},0))f.unshift(b),a.i++}function Nd(a,b,d,c,f){if(!y(a)&&!W(a)||isNaN(a))return"";var e=!isFinite(a),g=!1,h=Math.abs(a)+"",k="";if(e)k="\u221e";else{g=Eg(h);Fg(g,f,b.minFrac,b.maxFrac);k=g.d;h=g.i;
|
||||||
|
f=g.e;e=[];for(g=k.reduce(function(a,b){return a&&!b},!0);0>h;)k.unshift(0),h++;0<h?e=k.splice(h,k.length):(e=k,k=[0]);h=[];for(k.length>=b.lgSize&&h.unshift(k.splice(-b.lgSize,k.length).join(""));k.length>b.gSize;)h.unshift(k.splice(-b.gSize,k.length).join(""));k.length&&h.unshift(k.join(""));k=h.join(d);e.length&&(k+=c+e.join(""));f&&(k+="e+"+f)}return 0>a&&!g?b.negPre+k+b.negSuf:b.posPre+k+b.posSuf}function Jb(a,b,d,c){var f="";if(0>a||c&&0>=a)c?a=-a+1:(a=-a,f="-");for(a=""+a;a.length<b;)a=tc+
|
||||||
|
a;d&&(a=a.substr(a.length-b));return f+a}function $(a,b,d,c,f){d=d||0;return function(e){e=e["get"+a]();if(0<d||e>-d)e+=d;0===e&&-12===d&&(e=12);return Jb(e,b,c,f)}}function mb(a,b,d){return function(c,f){var e=c["get"+a](),g=ub((d?"STANDALONE":"")+(b?"SHORT":"")+a);return f[g][e]}}function Qd(a){var b=(new Date(a,0,1)).getDay();return new Date(a,0,(4>=b?5:12)-b)}function Rd(a){return function(b){var d=Qd(b.getFullYear());b=+new Date(b.getFullYear(),b.getMonth(),b.getDate()+(4-b.getDay()))-+d;b=1+
|
||||||
|
Math.round(b/6048E5);return Jb(b,a)}}function uc(a,b){return 0>=a.getFullYear()?b.ERAS[0]:b.ERAS[1]}function Kd(a){function b(a){var b;if(b=a.match(d)){a=new Date(0);var e=0,g=0,h=b[8]?a.setUTCFullYear:a.setFullYear,k=b[8]?a.setUTCHours:a.setHours;b[9]&&(e=X(b[9]+b[10]),g=X(b[9]+b[11]));h.call(a,X(b[1]),X(b[2])-1,X(b[3]));e=X(b[4]||0)-e;g=X(b[5]||0)-g;h=X(b[6]||0);b=Math.round(1E3*parseFloat("0."+(b[7]||0)));k.call(a,e,g,h,b)}return a}var d=/^(\d{4})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/;
|
||||||
|
return function(c,d,e){var g="",h=[],k,l;d=d||"mediumDate";d=a.DATETIME_FORMATS[d]||d;y(c)&&(c=Gg.test(c)?X(c):b(c));W(c)&&(c=new Date(c));if(!ea(c)||!isFinite(c.getTime()))return c;for(;d;)(l=Hg.exec(d))?(h=ab(h,l,1),d=h.pop()):(h.push(d),d=null);var m=c.getTimezoneOffset();e&&(m=Ic(e,m),c=Vb(c,e,!0));q(h,function(b){k=Ig[b];g+=k?k(c,a.DATETIME_FORMATS,m):"''"===b?"'":b.replace(/(^'|'$)/g,"").replace(/''/g,"'")});return g}}function zg(){return function(a,b){x(b)&&(b=2);return cb(a,b)}}function Ag(){return function(a,
|
||||||
|
b,d){b=Infinity===Math.abs(Number(b))?Number(b):X(b);if(ga(b))return a;W(a)&&(a=a.toString());if(!ta(a))return a;d=!d||isNaN(d)?0:X(d);d=0>d?Math.max(0,a.length+d):d;return 0<=b?vc(a,d,d+b):0===d?vc(a,b,a.length):vc(a,Math.max(0,d+b),d)}}function vc(a,b,d){return y(a)?a.slice(b,d):wa.call(a,b,d)}function Md(a){function b(b){return b.map(function(b){var c=1,d=Ya;if(B(b))d=b;else if(y(b)){if("+"===b.charAt(0)||"-"===b.charAt(0))c="-"===b.charAt(0)?-1:1,b=b.substring(1);if(""!==b&&(d=a(b),d.constant))var f=
|
||||||
|
d(),d=function(a){return a[f]}}return{get:d,descending:c}})}function d(a){switch(typeof a){case "number":case "boolean":case "string":return!0;default:return!1}}function c(a,b){var c=0,d=a.type,k=b.type;if(d===k){var k=a.value,l=b.value;"string"===d?(k=k.toLowerCase(),l=l.toLowerCase()):"object"===d&&(E(k)&&(k=a.index),E(l)&&(l=b.index));k!==l&&(c=k<l?-1:1)}else c=d<k?-1:1;return c}return function(a,e,g,h){if(null==a)return a;if(!ta(a))throw H("orderBy")("notarray",a);G(e)||(e=[e]);0===e.length&&
|
||||||
|
(e=["+"]);var k=b(e),l=g?-1:1,m=B(h)?h:c;a=Array.prototype.map.call(a,function(a,b){return{value:a,tieBreaker:{value:b,type:"number",index:b},predicateValues:k.map(function(c){var e=c.get(a);c=typeof e;if(null===e)c="string",e="null";else if("object"===c)a:{if(B(e.valueOf)&&(e=e.valueOf(),d(e)))break a;Ub(e)&&(e=e.toString(),d(e))}return{value:e,type:c,index:b}})}});a.sort(function(a,b){for(var c=0,d=k.length;c<d;c++){var e=m(a.predicateValues[c],b.predicateValues[c]);if(e)return e*k[c].descending*
|
||||||
|
l}return m(a.tieBreaker,b.tieBreaker)*l});return a=a.map(function(a){return a.value})}}function Ra(a){B(a)&&(a={link:a});a.restrict=a.restrict||"AC";return fa(a)}function Kb(a,b,d,c,f){this.$$controls=[];this.$error={};this.$$success={};this.$pending=void 0;this.$name=f(b.name||b.ngForm||"")(d);this.$dirty=!1;this.$valid=this.$pristine=!0;this.$submitted=this.$invalid=!1;this.$$parentForm=Lb;this.$$element=a;this.$$animate=c;Sd(this)}function Sd(a){a.$$classCache={};a.$$classCache[Td]=!(a.$$classCache[nb]=
|
||||||
|
a.$$element.hasClass(nb))}function Ud(a){function b(a,b,c){c&&!a.$$classCache[b]?(a.$$animate.addClass(a.$$element,b),a.$$classCache[b]=!0):!c&&a.$$classCache[b]&&(a.$$animate.removeClass(a.$$element,b),a.$$classCache[b]=!1)}function d(a,c,d){c=c?"-"+Mc(c,"-"):"";b(a,nb+c,!0===d);b(a,Td+c,!1===d)}var c=a.set,f=a.unset;a.clazz.prototype.$setValidity=function(a,g,h){x(g)?(this.$pending||(this.$pending={}),c(this.$pending,a,h)):(this.$pending&&f(this.$pending,a,h),Vd(this.$pending)&&(this.$pending=void 0));
|
||||||
|
Ia(g)?g?(f(this.$error,a,h),c(this.$$success,a,h)):(c(this.$error,a,h),f(this.$$success,a,h)):(f(this.$error,a,h),f(this.$$success,a,h));this.$pending?(b(this,"ng-pending",!0),this.$valid=this.$invalid=void 0,d(this,"",null)):(b(this,"ng-pending",!1),this.$valid=Vd(this.$error),this.$invalid=!this.$valid,d(this,"",this.$valid));g=this.$pending&&this.$pending[a]?void 0:this.$error[a]?!1:this.$$success[a]?!0:null;d(this,a,g);this.$$parentForm.$setValidity(a,g,this)}}function Vd(a){if(a)for(var b in a)if(a.hasOwnProperty(b))return!1;
|
||||||
|
return!0}function wc(a){a.$formatters.push(function(b){return a.$isEmpty(b)?b:b.toString()})}function Sa(a,b,d,c,f,e){var g=L(b[0].type);if(!f.android){var h=!1;b.on("compositionstart",function(){h=!0});b.on("compositionend",function(){h=!1;l()})}var k,l=function(a){k&&(e.defer.cancel(k),k=null);if(!h){var f=b.val();a=a&&a.type;"password"===g||d.ngTrim&&"false"===d.ngTrim||(f=R(f));(c.$viewValue!==f||""===f&&c.$$hasNativeValidators)&&c.$setViewValue(f,a)}};if(f.hasEvent("input"))b.on("input",l);else{var m=
|
||||||
|
function(a,b,c){k||(k=e.defer(function(){k=null;b&&b.value===c||l(a)}))};b.on("keydown",function(a){var b=a.keyCode;91===b||15<b&&19>b||37<=b&&40>=b||m(a,this,this.value)});if(f.hasEvent("paste"))b.on("paste cut",m)}b.on("change",l);if(Wd[g]&&c.$$hasNativeValidators&&g===d.type)b.on("keydown wheel mousedown",function(a){if(!k){var b=this.validity,c=b.badInput,d=b.typeMismatch;k=e.defer(function(){k=null;b.badInput===c&&b.typeMismatch===d||l(a)})}});c.$render=function(){var a=c.$isEmpty(c.$viewValue)?
|
||||||
|
"":c.$viewValue;b.val()!==a&&b.val(a)}}function Mb(a,b){return function(d,c){var f,e;if(ea(d))return d;if(y(d)){'"'===d.charAt(0)&&'"'===d.charAt(d.length-1)&&(d=d.substring(1,d.length-1));if(Jg.test(d))return new Date(d);a.lastIndex=0;if(f=a.exec(d))return f.shift(),e=c?{yyyy:c.getFullYear(),MM:c.getMonth()+1,dd:c.getDate(),HH:c.getHours(),mm:c.getMinutes(),ss:c.getSeconds(),sss:c.getMilliseconds()/1E3}:{yyyy:1970,MM:1,dd:1,HH:0,mm:0,ss:0,sss:0},q(f,function(a,c){c<b.length&&(e[b[c]]=+a)}),new Date(e.yyyy,
|
||||||
|
e.MM-1,e.dd,e.HH,e.mm,e.ss||0,1E3*e.sss||0)}return NaN}}function ob(a,b,d,c){return function(f,e,g,h,k,l,m){function n(a){return a&&!(a.getTime&&a.getTime()!==a.getTime())}function p(a){return u(a)&&!ea(a)?d(a)||void 0:a}xc(f,e,g,h);Sa(f,e,g,h,k,l);var t=h&&h.$options.getOption("timezone"),q;h.$$parserName=a;h.$parsers.push(function(a){if(h.$isEmpty(a))return null;if(b.test(a))return a=d(a,q),t&&(a=Vb(a,t)),a});h.$formatters.push(function(a){if(a&&!ea(a))throw pb("datefmt",a);if(n(a))return(q=a)&&
|
||||||
|
t&&(q=Vb(q,t,!0)),m("date")(a,c,t);q=null;return""});if(u(g.min)||g.ngMin){var r;h.$validators.min=function(a){return!n(a)||x(r)||d(a)>=r};g.$observe("min",function(a){r=p(a);h.$validate()})}if(u(g.max)||g.ngMax){var s;h.$validators.max=function(a){return!n(a)||x(s)||d(a)<=s};g.$observe("max",function(a){s=p(a);h.$validate()})}}}function xc(a,b,d,c){(c.$$hasNativeValidators=E(b[0].validity))&&c.$parsers.push(function(a){var c=b.prop("validity")||{};return c.badInput||c.typeMismatch?void 0:a})}function Xd(a){a.$$parserName=
|
||||||
|
"number";a.$parsers.push(function(b){if(a.$isEmpty(b))return null;if(Kg.test(b))return parseFloat(b)});a.$formatters.push(function(b){if(!a.$isEmpty(b)){if(!W(b))throw pb("numfmt",b);b=b.toString()}return b})}function Ta(a){u(a)&&!W(a)&&(a=parseFloat(a));return ga(a)?void 0:a}function yc(a){var b=a.toString(),d=b.indexOf(".");return-1===d?-1<a&&1>a&&(a=/e-(\d+)$/.exec(b))?Number(a[1]):0:b.length-d-1}function Yd(a,b,d){a=Number(a);if((a|0)!==a||(b|0)!==b||(d|0)!==d){var c=Math.max(yc(a),yc(b),yc(d)),
|
||||||
|
c=Math.pow(10,c);a*=c;b*=c;d*=c}return 0===(a-b)%d}function Zd(a,b,d,c,f){if(u(c)){a=a(c);if(!a.constant)throw pb("constexpr",d,c);return a(b)}return f}function zc(a,b){a="ngClass"+a;return["$animate",function(d){function c(a,b){var c=[],d=0;a:for(;d<a.length;d++){for(var f=a[d],m=0;m<b.length;m++)if(f===b[m])continue a;c.push(f)}return c}function f(a){var b=[];return G(a)?(q(a,function(a){b=b.concat(f(a))}),b):y(a)?a.split(" "):E(a)?(q(a,function(a,c){a&&(b=b.concat(c.split(" ")))}),b):a}return{restrict:"AC",
|
||||||
|
link:function(e,g,h){function k(a){a=l(a,1);h.$addClass(a)}function l(a,b){var c=g.data("$classCounts")||T(),d=[];q(a,function(a){if(0<b||c[a])c[a]=(c[a]||0)+b,c[a]===+(0<b)&&d.push(a)});g.data("$classCounts",c);return d.join(" ")}function m(a,b){var e=c(b,a),f=c(a,b),e=l(e,1),f=l(f,-1);e&&e.length&&d.addClass(g,e);f&&f.length&&d.removeClass(g,f)}function n(a){if(!0===b||(e.$index&1)===b){var c=f(a||[]);if(!p)k(c);else if(!ma(a,p)){var d=f(p);m(d,c)}}p=G(a)?a.map(function(a){return ja(a)}):ja(a)}
|
||||||
|
var p;e.$watch(h[a],n,!0);h.$observe("class",function(b){n(e.$eval(h[a]))});"ngClass"!==a&&e.$watch("$index",function(c,d){var g=c&1;if(g!==(d&1)){var m=f(e.$eval(h[a]));g===b?k(m):(g=l(m,-1),h.$removeClass(g))}})}}}]}function Nb(a,b,d,c,f,e,g,h,k){this.$modelValue=this.$viewValue=Number.NaN;this.$$rawModelValue=void 0;this.$validators={};this.$asyncValidators={};this.$parsers=[];this.$formatters=[];this.$viewChangeListeners=[];this.$untouched=!0;this.$touched=!1;this.$pristine=!0;this.$dirty=!1;
|
||||||
|
this.$valid=!0;this.$invalid=!1;this.$error={};this.$$success={};this.$pending=void 0;this.$name=k(d.name||"",!1)(a);this.$$parentForm=Lb;this.$options=Ob;this.$$parsedNgModel=f(d.ngModel);this.$$parsedNgModelAssign=this.$$parsedNgModel.assign;this.$$ngModelGet=this.$$parsedNgModel;this.$$ngModelSet=this.$$parsedNgModelAssign;this.$$pendingDebounce=null;this.$$parserValid=void 0;this.$$currentValidationRunId=0;this.$$scope=a;this.$$attr=d;this.$$element=c;this.$$animate=e;this.$$timeout=g;this.$$parse=
|
||||||
|
f;this.$$q=h;this.$$exceptionHandler=b;Sd(this);Lg(this)}function Lg(a){a.$$scope.$watch(function(){var b=a.$$ngModelGet(a.$$scope);if(b!==a.$modelValue&&(a.$modelValue===a.$modelValue||b===b)){a.$modelValue=a.$$rawModelValue=b;a.$$parserValid=void 0;for(var d=a.$formatters,c=d.length,f=b;c--;)f=d[c](f);a.$viewValue!==f&&(a.$$updateEmptyClasses(f),a.$viewValue=a.$$lastCommittedViewValue=f,a.$render(),a.$$runValidators(a.$modelValue,a.$viewValue,v))}return b})}function Ac(a){this.$$options=a}function $d(a,
|
||||||
|
b){q(b,function(b,c){u(a[c])||(a[c]=b)})}var Mg=/^\/(.+)\/([a-z]*)$/,va=Object.prototype.hasOwnProperty,L=function(a){return y(a)?a.toLowerCase():a},ub=function(a){return y(a)?a.toUpperCase():a},La,F,na,wa=[].slice,mg=[].splice,Ng=[].push,la=Object.prototype.toString,Fc=Object.getPrototypeOf,Ga=H("ng"),Z=A.angular||(A.angular={}),Yb,qb=0;La=A.document.documentMode;var ga=Number.isNaN||function(a){return a!==a};v.$inject=[];Ya.$inject=[];var G=Array.isArray,ke=/^\[object (?:Uint8|Uint8Clamped|Uint16|Uint32|Int8|Int16|Int32|Float32|Float64)Array]$/,
|
||||||
|
R=function(a){return y(a)?a.trim():a},Fd=function(a){return a.replace(/([-()[\]{}+?*.$^|,:#<!\\])/g,"\\$1").replace(/\x08/g,"\\x08")},za=function(){if(!u(za.rules)){var a=A.document.querySelector("[ng-csp]")||A.document.querySelector("[data-ng-csp]");if(a){var b=a.getAttribute("ng-csp")||a.getAttribute("data-ng-csp");za.rules={noUnsafeEval:!b||-1!==b.indexOf("no-unsafe-eval"),noInlineStyle:!b||-1!==b.indexOf("no-inline-style")}}else{a=za;try{new Function(""),b=!1}catch(d){b=!0}a.rules={noUnsafeEval:b,
|
||||||
|
noInlineStyle:!1}}}return za.rules},rb=function(){if(u(rb.name_))return rb.name_;var a,b,d=Ka.length,c,f;for(b=0;b<d;++b)if(c=Ka[b],a=A.document.querySelector("["+c.replace(":","\\:")+"jq]")){f=a.getAttribute(c+"jq");break}return rb.name_=f},me=/:/g,Ka=["ng-","data-ng-","ng:","x-ng-"],pe=function(a){if(!a.currentScript)return!0;var b=a.currentScript.getAttribute("src"),d=a.createElement("a");d.href=b;if(a.location.origin===d.origin)return!0;switch(d.protocol){case "http:":case "https:":case "ftp:":case "blob:":case "file:":case "data:":return!0;
|
||||||
|
default:return!1}}(A.document),se=/[A-Z]/g,Nc=!1,Ja=3,xe={full:"1.6.0",major:1,minor:6,dot:0,codeName:"rainbow-tsunami"};U.expando="ng339";var ib=U.cache={},Zf=1;U._data=function(a){return this.cache[a[this.expando]]||{}};var Vf=/-([a-z])/g,Og=/^-ms-/,zb={mouseleave:"mouseout",mouseenter:"mouseover"},$b=H("jqLite"),Yf=/^<([\w-]+)\s*\/?>(?:<\/\1>|)$/,Zb=/<|&#?\w+;/,Wf=/<([\w:-]+)/,Xf=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,oa={option:[1,'<select multiple="multiple">',
|
||||||
|
"</select>"],thead:[1,"<table>","</table>"],col:[2,"<table><colgroup>","</colgroup></table>"],tr:[2,"<table><tbody>","</tbody></table>"],td:[3,"<table><tbody><tr>","</tr></tbody></table>"],_default:[0,"",""]};oa.optgroup=oa.option;oa.tbody=oa.tfoot=oa.colgroup=oa.caption=oa.thead;oa.th=oa.td;var dg=A.Node.prototype.contains||function(a){return!!(this.compareDocumentPosition(a)&16)},Na=U.prototype={ready:Zc,toString:function(){var a=[];q(this,function(b){a.push(""+b)});return"["+a.join(", ")+"]"},
|
||||||
|
eq:function(a){return 0<=a?F(this[a]):F(this[this.length+a])},length:0,push:Ng,sort:[].sort,splice:[].splice},Fb={};q("multiple selected checked disabled readOnly required open".split(" "),function(a){Fb[L(a)]=a});var dd={};q("input select option textarea button form details".split(" "),function(a){dd[a]=!0});var kd={ngMinlength:"minlength",ngMaxlength:"maxlength",ngMin:"min",ngMax:"max",ngPattern:"pattern",ngStep:"step"};q({data:cc,removeData:hb,hasData:function(a){for(var b in ib[a.ng339])return!0;
|
||||||
|
return!1},cleanData:function(a){for(var b=0,d=a.length;b<d;b++)hb(a[b])}},function(a,b){U[b]=a});q({data:cc,inheritedData:Db,scope:function(a){return F.data(a,"$scope")||Db(a.parentNode||a,["$isolateScope","$scope"])},isolateScope:function(a){return F.data(a,"$isolateScope")||F.data(a,"$isolateScopeNoTemplate")},controller:ad,injector:function(a){return Db(a,"$injector")},removeAttr:function(a,b){a.removeAttribute(b)},hasClass:Ab,css:function(a,b,d){b=wb(b.replace(Og,"ms-"));if(u(d))a.style[b]=d;
|
||||||
|
else return a.style[b]},attr:function(a,b,d){var c=a.nodeType;if(c!==Ja&&2!==c&&8!==c&&a.getAttribute){var c=L(b),f=Fb[c];if(u(d))null===d||!1===d&&f?a.removeAttribute(b):a.setAttribute(b,f?c:d);else return a=a.getAttribute(b),f&&null!==a&&(a=c),null===a?void 0:a}},prop:function(a,b,d){if(u(d))a[b]=d;else return a[b]},text:function(){function a(a,d){if(x(d)){var c=a.nodeType;return 1===c||c===Ja?a.textContent:""}a.textContent=d}a.$dv="";return a}(),val:function(a,b){if(x(b)){if(a.multiple&&"select"===
|
||||||
|
xa(a)){var d=[];q(a.options,function(a){a.selected&&d.push(a.value||a.text)});return d}return a.value}a.value=b},html:function(a,b){if(x(b))return a.innerHTML;xb(a,!0);a.innerHTML=b},empty:bd},function(a,b){U.prototype[b]=function(b,c){var f,e,g=this.length;if(a!==bd&&x(2===a.length&&a!==Ab&&a!==ad?b:c)){if(E(b)){for(f=0;f<g;f++)if(a===cc)a(this[f],b);else for(e in b)a(this[f],e,b[e]);return this}f=a.$dv;g=x(f)?Math.min(g,1):g;for(e=0;e<g;e++){var h=a(this[e],b,c);f=f?f+h:h}return f}for(f=0;f<g;f++)a(this[f],
|
||||||
|
b,c);return this}});q({removeData:hb,on:function(a,b,d,c){if(u(c))throw $b("onargs");if(Xc(a)){c=yb(a,!0);var f=c.events,e=c.handle;e||(e=c.handle=ag(a,f));c=0<=b.indexOf(" ")?b.split(" "):[b];for(var g=c.length,h=function(b,c,g){var h=f[b];h||(h=f[b]=[],h.specialHandlerWrapper=c,"$destroy"===b||g||a.addEventListener(b,e));h.push(d)};g--;)b=c[g],zb[b]?(h(zb[b],cg),h(b,void 0,!0)):h(b)}},off:$c,one:function(a,b,d){a=F(a);a.on(b,function f(){a.off(b,d);a.off(b,f)});a.on(b,d)},replaceWith:function(a,
|
||||||
|
b){var d,c=a.parentNode;xb(a);q(new U(b),function(b){d?c.insertBefore(b,d.nextSibling):c.replaceChild(b,a);d=b})},children:function(a){var b=[];q(a.childNodes,function(a){1===a.nodeType&&b.push(a)});return b},contents:function(a){return a.contentDocument||a.childNodes||[]},append:function(a,b){var d=a.nodeType;if(1===d||11===d){b=new U(b);for(var d=0,c=b.length;d<c;d++)a.appendChild(b[d])}},prepend:function(a,b){if(1===a.nodeType){var d=a.firstChild;q(new U(b),function(b){a.insertBefore(b,d)})}},
|
||||||
|
wrap:function(a,b){var d=F(b).eq(0).clone()[0],c=a.parentNode;c&&c.replaceChild(d,a);d.appendChild(a)},remove:Eb,detach:function(a){Eb(a,!0)},after:function(a,b){var d=a,c=a.parentNode;b=new U(b);for(var f=0,e=b.length;f<e;f++){var g=b[f];c.insertBefore(g,d.nextSibling);d=g}},addClass:Cb,removeClass:Bb,toggleClass:function(a,b,d){b&&q(b.split(" "),function(b){var f=d;x(f)&&(f=!Ab(a,b));(f?Cb:Bb)(a,b)})},parent:function(a){return(a=a.parentNode)&&11!==a.nodeType?a:null},next:function(a){return a.nextElementSibling},
|
||||||
|
find:function(a,b){return a.getElementsByTagName?a.getElementsByTagName(b):[]},clone:bc,triggerHandler:function(a,b,d){var c,f,e=b.type||b,g=yb(a);if(g=(g=g&&g.events)&&g[e])c={preventDefault:function(){this.defaultPrevented=!0},isDefaultPrevented:function(){return!0===this.defaultPrevented},stopImmediatePropagation:function(){this.immediatePropagationStopped=!0},isImmediatePropagationStopped:function(){return!0===this.immediatePropagationStopped},stopPropagation:v,type:e,target:a},b.type&&(c=Q(c,
|
||||||
|
b)),b=ja(g),f=d?[c].concat(d):[c],q(b,function(b){c.isImmediatePropagationStopped()||b.apply(a,f)})}},function(a,b){U.prototype[b]=function(b,c,f){for(var e,g=0,h=this.length;g<h;g++)x(e)?(e=a(this[g],b,c,f),u(e)&&(e=F(e))):ac(e,a(this[g],b,c,f));return u(e)?e:this}});U.prototype.bind=U.prototype.on;U.prototype.unbind=U.prototype.off;Pa.prototype={put:function(a,b){this[ka(a,this.nextUid)]=b},get:function(a){return this[ka(a,this.nextUid)]},remove:function(a){var b=this[a=ka(a,this.nextUid)];delete this[a];
|
||||||
|
return b}};var Tf=[function(){this.$get=[function(){return Pa}]}],fg=/^([^(]+?)=>/,gg=/^[^(]*\(\s*([^)]*)\)/m,Pg=/,/,Qg=/^\s*(_?)(\S+?)\1\s*$/,eg=/((\/\/.*$)|(\/\*[\s\S]*?\*\/))/mg,ca=H("$injector");eb.$$annotate=function(a,b,d){var c;if("function"===typeof a){if(!(c=a.$inject)){c=[];if(a.length){if(b)throw y(d)&&d||(d=a.name||hg(a)),ca("strictdi",d);b=ed(a);q(b[1].split(Pg),function(a){a.replace(Qg,function(a,b,d){c.push(d)})})}a.$inject=c}}else G(a)?(b=a.length-1,sb(a[b],"fn"),c=a.slice(0,b)):sb(a,
|
||||||
|
"fn",!0);return c};var ae=H("$animate"),kf=function(){this.$get=v},lf=function(){var a=new Pa,b=[];this.$get=["$$AnimateRunner","$rootScope",function(d,c){function f(a,b,c){var d=!1;b&&(b=y(b)?b.split(" "):G(b)?b:[],q(b,function(b){b&&(d=!0,a[b]=c)}));return d}function e(){q(b,function(b){var c=a.get(b);if(c){var d=ig(b.attr("class")),e="",f="";q(c,function(a,b){a!==!!d[b]&&(a?e+=(e.length?" ":"")+b:f+=(f.length?" ":"")+b)});q(b,function(a){e&&Cb(a,e);f&&Bb(a,f)});a.remove(b)}});b.length=0}return{enabled:v,
|
||||||
|
on:v,off:v,pin:v,push:function(g,h,k,l){l&&l();k=k||{};k.from&&g.css(k.from);k.to&&g.css(k.to);if(k.addClass||k.removeClass)if(h=k.addClass,l=k.removeClass,k=a.get(g)||{},h=f(k,h,!0),l=f(k,l,!1),h||l)a.put(g,k),b.push(g),1===b.length&&c.$$postDigest(e);g=new d;g.complete();return g}}}]},hf=["$provide",function(a){var b=this;this.$$registeredAnimations=Object.create(null);this.register=function(d,c){if(d&&"."!==d.charAt(0))throw ae("notcsel",d);var f=d+"-animation";b.$$registeredAnimations[d.substr(1)]=
|
||||||
|
f;a.factory(f,c)};this.classNameFilter=function(a){if(1===arguments.length&&(this.$$classNameFilter=a instanceof RegExp?a:null)&&/(\s+|\/)ng-animate(\s+|\/)/.test(this.$$classNameFilter.toString()))throw ae("nongcls","ng-animate");return this.$$classNameFilter};this.$get=["$$animateQueue",function(a){function b(a,c,d){if(d){var h;a:{for(h=0;h<d.length;h++){var k=d[h];if(1===k.nodeType){h=k;break a}}h=void 0}!h||h.parentNode||h.previousElementSibling||(d=null)}d?d.after(a):c.prepend(a)}return{on:a.on,
|
||||||
|
off:a.off,pin:a.pin,enabled:a.enabled,cancel:function(a){a.end&&a.end()},enter:function(f,e,g,h){e=e&&F(e);g=g&&F(g);e=e||g.parent();b(f,e,g);return a.push(f,"enter",Aa(h))},move:function(f,e,g,h){e=e&&F(e);g=g&&F(g);e=e||g.parent();b(f,e,g);return a.push(f,"move",Aa(h))},leave:function(b,c){return a.push(b,"leave",Aa(c),function(){b.remove()})},addClass:function(b,c,g){g=Aa(g);g.addClass=jb(g.addclass,c);return a.push(b,"addClass",g)},removeClass:function(b,c,g){g=Aa(g);g.removeClass=jb(g.removeClass,
|
||||||
|
c);return a.push(b,"removeClass",g)},setClass:function(b,c,g,h){h=Aa(h);h.addClass=jb(h.addClass,c);h.removeClass=jb(h.removeClass,g);return a.push(b,"setClass",h)},animate:function(b,c,g,h,k){k=Aa(k);k.from=k.from?Q(k.from,c):c;k.to=k.to?Q(k.to,g):g;k.tempClasses=jb(k.tempClasses,h||"ng-inline-animate");return a.push(b,"animate",k)}}}]}],nf=function(){this.$get=["$$rAF",function(a){function b(b){d.push(b);1<d.length||a(function(){for(var a=0;a<d.length;a++)d[a]();d=[]})}var d=[];return function(){var a=
|
||||||
|
!1;b(function(){a=!0});return function(d){a?d():b(d)}}}]},mf=function(){this.$get=["$q","$sniffer","$$animateAsyncRun","$$isDocumentHidden","$timeout",function(a,b,d,c,f){function e(a){this.setHost(a);var b=d();this._doneCallbacks=[];this._tick=function(a){c()?f(a,0,!1):b(a)};this._state=0}e.chain=function(a,b){function c(){if(d===a.length)b(!0);else a[d](function(a){!1===a?b(!1):(d++,c())})}var d=0;c()};e.all=function(a,b){function c(f){e=e&&f;++d===a.length&&b(e)}var d=0,e=!0;q(a,function(a){a.done(c)})};
|
||||||
|
e.prototype={setHost:function(a){this.host=a||{}},done:function(a){2===this._state?a():this._doneCallbacks.push(a)},progress:v,getPromise:function(){if(!this.promise){var b=this;this.promise=a(function(a,c){b.done(function(b){!1===b?c():a()})})}return this.promise},then:function(a,b){return this.getPromise().then(a,b)},"catch":function(a){return this.getPromise()["catch"](a)},"finally":function(a){return this.getPromise()["finally"](a)},pause:function(){this.host.pause&&this.host.pause()},resume:function(){this.host.resume&&
|
||||||
|
this.host.resume()},end:function(){this.host.end&&this.host.end();this._resolve(!0)},cancel:function(){this.host.cancel&&this.host.cancel();this._resolve(!1)},complete:function(a){var b=this;0===b._state&&(b._state=1,b._tick(function(){b._resolve(a)}))},_resolve:function(a){2!==this._state&&(q(this._doneCallbacks,function(b){b(a)}),this._doneCallbacks.length=0,this._state=2)}};return e}]},jf=function(){this.$get=["$$rAF","$q","$$AnimateRunner",function(a,b,d){return function(b,f){function e(){a(function(){g.addClass&&
|
||||||
|
(b.addClass(g.addClass),g.addClass=null);g.removeClass&&(b.removeClass(g.removeClass),g.removeClass=null);g.to&&(b.css(g.to),g.to=null);h||k.complete();h=!0});return k}var g=f||{};g.$$prepared||(g=Fa(g));g.cleanupStyles&&(g.from=g.to=null);g.from&&(b.css(g.from),g.from=null);var h,k=new d;return{start:e,end:e}}}]},da=H("$compile"),gc=new function(){};Pc.$inject=["$provide","$$sanitizeUriProvider"];Hb.prototype.isFirstChange=function(){return this.previousValue===gc};var fd=/^((?:x|data)[:\-_])/i,
|
||||||
|
lg=/[:\-_]+(.)/g,md=H("$controller"),ld=/^(\S+)(\s+as\s+([\w$]+))?$/,uf=function(){this.$get=["$document",function(a){return function(b){b?!b.nodeType&&b instanceof F&&(b=b[0]):b=a[0].body;return b.offsetWidth+1}}]},nd="application/json",jc={"Content-Type":nd+";charset=utf-8"},og=/^\[|^\{(?!\{)/,pg={"[":/]$/,"{":/}$/},ng=/^\)]\}',?\n/,sd=H("$http"),Ea=Z.$interpolateMinErr=H("$interpolate");Ea.throwNoconcat=function(a){throw Ea("noconcat",a);};Ea.interr=function(a,b){return Ea("interr",a,b.toString())};
|
||||||
|
var Cf=function(){this.$get=["$window",function(a){function b(a){var b=function(a){b.data=a;b.called=!0};b.id=a;return b}var d=a.angular.callbacks,c={};return{createCallback:function(a){a="_"+(d.$$counter++).toString(36);var e="angular.callbacks."+a,g=b(a);c[e]=d[a]=g;return e},wasCalled:function(a){return c[a].called},getResponse:function(a){return c[a].data},removeCallback:function(a){delete d[c[a].id];delete c[a]}}}]},Rg=/^([^?#]*)(\?([^#]*))?(#(.*))?$/,rg={http:80,https:443,ftp:21},kb=H("$location"),
|
||||||
|
sg=/^\s*[\\/]{2,}/,Sg={$$absUrl:"",$$html5:!1,$$replace:!1,absUrl:Ib("$$absUrl"),url:function(a){if(x(a))return this.$$url;var b=Rg.exec(a);(b[1]||""===a)&&this.path(decodeURIComponent(b[1]));(b[2]||b[1]||""===a)&&this.search(b[3]||"");this.hash(b[5]||"");return this},protocol:Ib("$$protocol"),host:Ib("$$host"),port:Ib("$$port"),path:wd("$$path",function(a){a=null!==a?a.toString():"";return"/"===a.charAt(0)?a:"/"+a}),search:function(a,b){switch(arguments.length){case 0:return this.$$search;case 1:if(y(a)||
|
||||||
|
W(a))a=a.toString(),this.$$search=Kc(a);else if(E(a))a=Fa(a,{}),q(a,function(b,c){null==b&&delete a[c]}),this.$$search=a;else throw kb("isrcharg");break;default:x(b)||null===b?delete this.$$search[a]:this.$$search[a]=b}this.$$compose();return this},hash:wd("$$hash",function(a){return null!==a?a.toString():""}),replace:function(){this.$$replace=!0;return this}};q([vd,nc,mc],function(a){a.prototype=Object.create(Sg);a.prototype.state=function(b){if(!arguments.length)return this.$$state;if(a!==mc||!this.$$html5)throw kb("nostate");
|
||||||
|
this.$$state=x(b)?null:b;return this}});var Ua=H("$parse"),vg={}.constructor.prototype.valueOf,Pb=T();q("+ - * / % === !== == != < > <= >= && || ! = |".split(" "),function(a){Pb[a]=!0});var Tg={n:"\n",f:"\f",r:"\r",t:"\t",v:"\v","'":"'",'"':'"'},pc=function(a){this.options=a};pc.prototype={constructor:pc,lex:function(a){this.text=a;this.index=0;for(this.tokens=[];this.index<this.text.length;)if(a=this.text.charAt(this.index),'"'===a||"'"===a)this.readString(a);else if(this.isNumber(a)||"."===a&&this.isNumber(this.peek()))this.readNumber();
|
||||||
|
else if(this.isIdentifierStart(this.peekMultichar()))this.readIdent();else if(this.is(a,"(){}[].,;:?"))this.tokens.push({index:this.index,text:a}),this.index++;else if(this.isWhitespace(a))this.index++;else{var b=a+this.peek(),d=b+this.peek(2),c=Pb[b],f=Pb[d];Pb[a]||c||f?(a=f?d:c?b:a,this.tokens.push({index:this.index,text:a,operator:!0}),this.index+=a.length):this.throwError("Unexpected next character ",this.index,this.index+1)}return this.tokens},is:function(a,b){return-1!==b.indexOf(a)},peek:function(a){a=
|
||||||
|
a||1;return this.index+a<this.text.length?this.text.charAt(this.index+a):!1},isNumber:function(a){return"0"<=a&&"9">=a&&"string"===typeof a},isWhitespace:function(a){return" "===a||"\r"===a||"\t"===a||"\n"===a||"\v"===a||"\u00a0"===a},isIdentifierStart:function(a){return this.options.isIdentifierStart?this.options.isIdentifierStart(a,this.codePointAt(a)):this.isValidIdentifierStart(a)},isValidIdentifierStart:function(a){return"a"<=a&&"z">=a||"A"<=a&&"Z">=a||"_"===a||"$"===a},isIdentifierContinue:function(a){return this.options.isIdentifierContinue?
|
||||||
|
this.options.isIdentifierContinue(a,this.codePointAt(a)):this.isValidIdentifierContinue(a)},isValidIdentifierContinue:function(a,b){return this.isValidIdentifierStart(a,b)||this.isNumber(a)},codePointAt:function(a){return 1===a.length?a.charCodeAt(0):(a.charCodeAt(0)<<10)+a.charCodeAt(1)-56613888},peekMultichar:function(){var a=this.text.charAt(this.index),b=this.peek();if(!b)return a;var d=a.charCodeAt(0),c=b.charCodeAt(0);return 55296<=d&&56319>=d&&56320<=c&&57343>=c?a+b:a},isExpOperator:function(a){return"-"===
|
||||||
|
a||"+"===a||this.isNumber(a)},throwError:function(a,b,d){d=d||this.index;b=u(b)?"s "+b+"-"+this.index+" ["+this.text.substring(b,d)+"]":" "+d;throw Ua("lexerr",a,b,this.text);},readNumber:function(){for(var a="",b=this.index;this.index<this.text.length;){var d=L(this.text.charAt(this.index));if("."===d||this.isNumber(d))a+=d;else{var c=this.peek();if("e"===d&&this.isExpOperator(c))a+=d;else if(this.isExpOperator(d)&&c&&this.isNumber(c)&&"e"===a.charAt(a.length-1))a+=d;else if(!this.isExpOperator(d)||
|
||||||
|
c&&this.isNumber(c)||"e"!==a.charAt(a.length-1))break;else this.throwError("Invalid exponent")}this.index++}this.tokens.push({index:b,text:a,constant:!0,value:Number(a)})},readIdent:function(){var a=this.index;for(this.index+=this.peekMultichar().length;this.index<this.text.length;){var b=this.peekMultichar();if(!this.isIdentifierContinue(b))break;this.index+=b.length}this.tokens.push({index:a,text:this.text.slice(a,this.index),identifier:!0})},readString:function(a){var b=this.index;this.index++;
|
||||||
|
for(var d="",c=a,f=!1;this.index<this.text.length;){var e=this.text.charAt(this.index),c=c+e;if(f)"u"===e?(f=this.text.substring(this.index+1,this.index+5),f.match(/[\da-f]{4}/i)||this.throwError("Invalid unicode escape [\\u"+f+"]"),this.index+=4,d+=String.fromCharCode(parseInt(f,16))):d+=Tg[e]||e,f=!1;else if("\\"===e)f=!0;else{if(e===a){this.index++;this.tokens.push({index:b,text:c,constant:!0,value:d});return}d+=e}this.index++}this.throwError("Unterminated quote",b)}};var r=function(a,b){this.lexer=
|
||||||
|
a;this.options=b};r.Program="Program";r.ExpressionStatement="ExpressionStatement";r.AssignmentExpression="AssignmentExpression";r.ConditionalExpression="ConditionalExpression";r.LogicalExpression="LogicalExpression";r.BinaryExpression="BinaryExpression";r.UnaryExpression="UnaryExpression";r.CallExpression="CallExpression";r.MemberExpression="MemberExpression";r.Identifier="Identifier";r.Literal="Literal";r.ArrayExpression="ArrayExpression";r.Property="Property";r.ObjectExpression="ObjectExpression";
|
||||||
|
r.ThisExpression="ThisExpression";r.LocalsExpression="LocalsExpression";r.NGValueParameter="NGValueParameter";r.prototype={ast:function(a){this.text=a;this.tokens=this.lexer.lex(a);a=this.program();0!==this.tokens.length&&this.throwError("is an unexpected token",this.tokens[0]);return a},program:function(){for(var a=[];;)if(0<this.tokens.length&&!this.peek("}",")",";","]")&&a.push(this.expressionStatement()),!this.expect(";"))return{type:r.Program,body:a}},expressionStatement:function(){return{type:r.ExpressionStatement,
|
||||||
|
expression:this.filterChain()}},filterChain:function(){for(var a=this.expression();this.expect("|");)a=this.filter(a);return a},expression:function(){return this.assignment()},assignment:function(){var a=this.ternary();if(this.expect("=")){if(!zd(a))throw Ua("lval");a={type:r.AssignmentExpression,left:a,right:this.assignment(),operator:"="}}return a},ternary:function(){var a=this.logicalOR(),b,d;return this.expect("?")&&(b=this.expression(),this.consume(":"))?(d=this.expression(),{type:r.ConditionalExpression,
|
||||||
|
test:a,alternate:b,consequent:d}):a},logicalOR:function(){for(var a=this.logicalAND();this.expect("||");)a={type:r.LogicalExpression,operator:"||",left:a,right:this.logicalAND()};return a},logicalAND:function(){for(var a=this.equality();this.expect("&&");)a={type:r.LogicalExpression,operator:"&&",left:a,right:this.equality()};return a},equality:function(){for(var a=this.relational(),b;b=this.expect("==","!=","===","!==");)a={type:r.BinaryExpression,operator:b.text,left:a,right:this.relational()};
|
||||||
|
return a},relational:function(){for(var a=this.additive(),b;b=this.expect("<",">","<=",">=");)a={type:r.BinaryExpression,operator:b.text,left:a,right:this.additive()};return a},additive:function(){for(var a=this.multiplicative(),b;b=this.expect("+","-");)a={type:r.BinaryExpression,operator:b.text,left:a,right:this.multiplicative()};return a},multiplicative:function(){for(var a=this.unary(),b;b=this.expect("*","/","%");)a={type:r.BinaryExpression,operator:b.text,left:a,right:this.unary()};return a},
|
||||||
|
unary:function(){var a;return(a=this.expect("+","-","!"))?{type:r.UnaryExpression,operator:a.text,prefix:!0,argument:this.unary()}:this.primary()},primary:function(){var a;this.expect("(")?(a=this.filterChain(),this.consume(")")):this.expect("[")?a=this.arrayDeclaration():this.expect("{")?a=this.object():this.selfReferential.hasOwnProperty(this.peek().text)?a=Fa(this.selfReferential[this.consume().text]):this.options.literals.hasOwnProperty(this.peek().text)?a={type:r.Literal,value:this.options.literals[this.consume().text]}:
|
||||||
|
this.peek().identifier?a=this.identifier():this.peek().constant?a=this.constant():this.throwError("not a primary expression",this.peek());for(var b;b=this.expect("(","[",".");)"("===b.text?(a={type:r.CallExpression,callee:a,arguments:this.parseArguments()},this.consume(")")):"["===b.text?(a={type:r.MemberExpression,object:a,property:this.expression(),computed:!0},this.consume("]")):"."===b.text?a={type:r.MemberExpression,object:a,property:this.identifier(),computed:!1}:this.throwError("IMPOSSIBLE");
|
||||||
|
return a},filter:function(a){a=[a];for(var b={type:r.CallExpression,callee:this.identifier(),arguments:a,filter:!0};this.expect(":");)a.push(this.expression());return b},parseArguments:function(){var a=[];if(")"!==this.peekToken().text){do a.push(this.filterChain());while(this.expect(","))}return a},identifier:function(){var a=this.consume();a.identifier||this.throwError("is not a valid identifier",a);return{type:r.Identifier,name:a.text}},constant:function(){return{type:r.Literal,value:this.consume().value}},
|
||||||
|
arrayDeclaration:function(){var a=[];if("]"!==this.peekToken().text){do{if(this.peek("]"))break;a.push(this.expression())}while(this.expect(","))}this.consume("]");return{type:r.ArrayExpression,elements:a}},object:function(){var a=[],b;if("}"!==this.peekToken().text){do{if(this.peek("}"))break;b={type:r.Property,kind:"init"};this.peek().constant?(b.key=this.constant(),b.computed=!1,this.consume(":"),b.value=this.expression()):this.peek().identifier?(b.key=this.identifier(),b.computed=!1,this.peek(":")?
|
||||||
|
(this.consume(":"),b.value=this.expression()):b.value=b.key):this.peek("[")?(this.consume("["),b.key=this.expression(),this.consume("]"),b.computed=!0,this.consume(":"),b.value=this.expression()):this.throwError("invalid key",this.peek());a.push(b)}while(this.expect(","))}this.consume("}");return{type:r.ObjectExpression,properties:a}},throwError:function(a,b){throw Ua("syntax",b.text,a,b.index+1,this.text,this.text.substring(b.index));},consume:function(a){if(0===this.tokens.length)throw Ua("ueoe",
|
||||||
|
this.text);var b=this.expect(a);b||this.throwError("is unexpected, expecting ["+a+"]",this.peek());return b},peekToken:function(){if(0===this.tokens.length)throw Ua("ueoe",this.text);return this.tokens[0]},peek:function(a,b,d,c){return this.peekAhead(0,a,b,d,c)},peekAhead:function(a,b,d,c,f){if(this.tokens.length>a){a=this.tokens[a];var e=a.text;if(e===b||e===d||e===c||e===f||!(b||d||c||f))return a}return!1},expect:function(a,b,d,c){return(a=this.peek(a,b,d,c))?(this.tokens.shift(),a):!1},selfReferential:{"this":{type:r.ThisExpression},
|
||||||
|
$locals:{type:r.LocalsExpression}}};Cd.prototype={compile:function(a){var b=this;a=this.astBuilder.ast(a);this.state={nextId:0,filters:{},fn:{vars:[],body:[],own:{}},assign:{vars:[],body:[],own:{}},inputs:[]};S(a,b.$filter);var d="",c;this.stage="assign";if(c=Ad(a))this.state.computing="assign",d=this.nextId(),this.recurse(c,d),this.return_(d),d="fn.assign="+this.generateFunction("assign","s,v,l");c=yd(a.body);b.stage="inputs";q(c,function(a,c){var d="fn"+c;b.state[d]={vars:[],body:[],own:{}};b.state.computing=
|
||||||
|
d;var h=b.nextId();b.recurse(a,h);b.return_(h);b.state.inputs.push(d);a.watchId=c});this.state.computing="fn";this.stage="main";this.recurse(a);d='"'+this.USE+" "+this.STRICT+'";\n'+this.filterPrefix()+"var fn="+this.generateFunction("fn","s,l,a,i")+d+this.watchFns()+"return fn;";d=(new Function("$filter","getStringValue","ifDefined","plus",d))(this.$filter,tg,ug,xd);this.state=this.stage=void 0;d.literal=Bd(a);d.constant=a.constant;return d},USE:"use",STRICT:"strict",watchFns:function(){var a=[],
|
||||||
|
b=this.state.inputs,d=this;q(b,function(b){a.push("var "+b+"="+d.generateFunction(b,"s"))});b.length&&a.push("fn.inputs=["+b.join(",")+"];");return a.join("")},generateFunction:function(a,b){return"function("+b+"){"+this.varsPrefix(a)+this.body(a)+"};"},filterPrefix:function(){var a=[],b=this;q(this.state.filters,function(d,c){a.push(d+"=$filter("+b.escape(c)+")")});return a.length?"var "+a.join(",")+";":""},varsPrefix:function(a){return this.state[a].vars.length?"var "+this.state[a].vars.join(",")+
|
||||||
|
";":""},body:function(a){return this.state[a].body.join("")},recurse:function(a,b,d,c,f,e){var g,h,k=this,l,m,n;c=c||v;if(!e&&u(a.watchId))b=b||this.nextId(),this.if_("i",this.lazyAssign(b,this.computedMember("i",a.watchId)),this.lazyRecurse(a,b,d,c,f,!0));else switch(a.type){case r.Program:q(a.body,function(b,c){k.recurse(b.expression,void 0,void 0,function(a){h=a});c!==a.body.length-1?k.current().body.push(h,";"):k.return_(h)});break;case r.Literal:m=this.escape(a.value);this.assign(b,m);c(b||m);
|
||||||
|
break;case r.UnaryExpression:this.recurse(a.argument,void 0,void 0,function(a){h=a});m=a.operator+"("+this.ifDefined(h,0)+")";this.assign(b,m);c(m);break;case r.BinaryExpression:this.recurse(a.left,void 0,void 0,function(a){g=a});this.recurse(a.right,void 0,void 0,function(a){h=a});m="+"===a.operator?this.plus(g,h):"-"===a.operator?this.ifDefined(g,0)+a.operator+this.ifDefined(h,0):"("+g+")"+a.operator+"("+h+")";this.assign(b,m);c(m);break;case r.LogicalExpression:b=b||this.nextId();k.recurse(a.left,
|
||||||
|
b);k.if_("&&"===a.operator?b:k.not(b),k.lazyRecurse(a.right,b));c(b);break;case r.ConditionalExpression:b=b||this.nextId();k.recurse(a.test,b);k.if_(b,k.lazyRecurse(a.alternate,b),k.lazyRecurse(a.consequent,b));c(b);break;case r.Identifier:b=b||this.nextId();d&&(d.context="inputs"===k.stage?"s":this.assign(this.nextId(),this.getHasOwnProperty("l",a.name)+"?l:s"),d.computed=!1,d.name=a.name);k.if_("inputs"===k.stage||k.not(k.getHasOwnProperty("l",a.name)),function(){k.if_("inputs"===k.stage||"s",function(){f&&
|
||||||
|
1!==f&&k.if_(k.isNull(k.nonComputedMember("s",a.name)),k.lazyAssign(k.nonComputedMember("s",a.name),"{}"));k.assign(b,k.nonComputedMember("s",a.name))})},b&&k.lazyAssign(b,k.nonComputedMember("l",a.name)));c(b);break;case r.MemberExpression:g=d&&(d.context=this.nextId())||this.nextId();b=b||this.nextId();k.recurse(a.object,g,void 0,function(){k.if_(k.notNull(g),function(){a.computed?(h=k.nextId(),k.recurse(a.property,h),k.getStringValue(h),f&&1!==f&&k.if_(k.not(k.computedMember(g,h)),k.lazyAssign(k.computedMember(g,
|
||||||
|
h),"{}")),m=k.computedMember(g,h),k.assign(b,m),d&&(d.computed=!0,d.name=h)):(f&&1!==f&&k.if_(k.isNull(k.nonComputedMember(g,a.property.name)),k.lazyAssign(k.nonComputedMember(g,a.property.name),"{}")),m=k.nonComputedMember(g,a.property.name),k.assign(b,m),d&&(d.computed=!1,d.name=a.property.name))},function(){k.assign(b,"undefined")});c(b)},!!f);break;case r.CallExpression:b=b||this.nextId();a.filter?(h=k.filter(a.callee.name),l=[],q(a.arguments,function(a){var b=k.nextId();k.recurse(a,b);l.push(b)}),
|
||||||
|
m=h+"("+l.join(",")+")",k.assign(b,m),c(b)):(h=k.nextId(),g={},l=[],k.recurse(a.callee,h,g,function(){k.if_(k.notNull(h),function(){q(a.arguments,function(b){k.recurse(b,a.constant?void 0:k.nextId(),void 0,function(a){l.push(a)})});m=g.name?k.member(g.context,g.name,g.computed)+"("+l.join(",")+")":h+"("+l.join(",")+")";k.assign(b,m)},function(){k.assign(b,"undefined")});c(b)}));break;case r.AssignmentExpression:h=this.nextId();g={};this.recurse(a.left,void 0,g,function(){k.if_(k.notNull(g.context),
|
||||||
|
function(){k.recurse(a.right,h);m=k.member(g.context,g.name,g.computed)+a.operator+h;k.assign(b,m);c(b||m)})},1);break;case r.ArrayExpression:l=[];q(a.elements,function(b){k.recurse(b,a.constant?void 0:k.nextId(),void 0,function(a){l.push(a)})});m="["+l.join(",")+"]";this.assign(b,m);c(b||m);break;case r.ObjectExpression:l=[];n=!1;q(a.properties,function(a){a.computed&&(n=!0)});n?(b=b||this.nextId(),this.assign(b,"{}"),q(a.properties,function(a){a.computed?(g=k.nextId(),k.recurse(a.key,g)):g=a.key.type===
|
||||||
|
r.Identifier?a.key.name:""+a.key.value;h=k.nextId();k.recurse(a.value,h);k.assign(k.member(b,g,a.computed),h)})):(q(a.properties,function(b){k.recurse(b.value,a.constant?void 0:k.nextId(),void 0,function(a){l.push(k.escape(b.key.type===r.Identifier?b.key.name:""+b.key.value)+":"+a)})}),m="{"+l.join(",")+"}",this.assign(b,m));c(b||m);break;case r.ThisExpression:this.assign(b,"s");c(b||"s");break;case r.LocalsExpression:this.assign(b,"l");c(b||"l");break;case r.NGValueParameter:this.assign(b,"v"),c(b||
|
||||||
|
"v")}},getHasOwnProperty:function(a,b){var d=a+"."+b,c=this.current().own;c.hasOwnProperty(d)||(c[d]=this.nextId(!1,a+"&&("+this.escape(b)+" in "+a+")"));return c[d]},assign:function(a,b){if(a)return this.current().body.push(a,"=",b,";"),a},filter:function(a){this.state.filters.hasOwnProperty(a)||(this.state.filters[a]=this.nextId(!0));return this.state.filters[a]},ifDefined:function(a,b){return"ifDefined("+a+","+this.escape(b)+")"},plus:function(a,b){return"plus("+a+","+b+")"},return_:function(a){this.current().body.push("return ",
|
||||||
|
a,";")},if_:function(a,b,d){if(!0===a)b();else{var c=this.current().body;c.push("if(",a,"){");b();c.push("}");d&&(c.push("else{"),d(),c.push("}"))}},not:function(a){return"!("+a+")"},isNull:function(a){return a+"==null"},notNull:function(a){return a+"!=null"},nonComputedMember:function(a,b){var d=/[^$_a-zA-Z0-9]/g;return/^[$_a-zA-Z][$_a-zA-Z0-9]*$/.test(b)?a+"."+b:a+'["'+b.replace(d,this.stringEscapeFn)+'"]'},computedMember:function(a,b){return a+"["+b+"]"},member:function(a,b,d){return d?this.computedMember(a,
|
||||||
|
b):this.nonComputedMember(a,b)},getStringValue:function(a){this.assign(a,"getStringValue("+a+")")},lazyRecurse:function(a,b,d,c,f,e){var g=this;return function(){g.recurse(a,b,d,c,f,e)}},lazyAssign:function(a,b){var d=this;return function(){d.assign(a,b)}},stringEscapeRegex:/[^ a-zA-Z0-9]/g,stringEscapeFn:function(a){return"\\u"+("0000"+a.charCodeAt(0).toString(16)).slice(-4)},escape:function(a){if(y(a))return"'"+a.replace(this.stringEscapeRegex,this.stringEscapeFn)+"'";if(W(a))return a.toString();
|
||||||
|
if(!0===a)return"true";if(!1===a)return"false";if(null===a)return"null";if("undefined"===typeof a)return"undefined";throw Ua("esc");},nextId:function(a,b){var d="v"+this.state.nextId++;a||this.current().vars.push(d+(b?"="+b:""));return d},current:function(){return this.state[this.state.computing]}};Dd.prototype={compile:function(a){var b=this;a=this.astBuilder.ast(a);S(a,b.$filter);var d,c;if(d=Ad(a))c=this.recurse(d);d=yd(a.body);var f;d&&(f=[],q(d,function(a,c){var d=b.recurse(a);a.input=d;f.push(d);
|
||||||
|
a.watchId=c}));var e=[];q(a.body,function(a){e.push(b.recurse(a.expression))});d=0===a.body.length?v:1===a.body.length?e[0]:function(a,b){var c;q(e,function(d){c=d(a,b)});return c};c&&(d.assign=function(a,b,d){return c(a,d,b)});f&&(d.inputs=f);d.literal=Bd(a);d.constant=a.constant;return d},recurse:function(a,b,d){var c,f,e=this,g;if(a.input)return this.inputs(a.input,a.watchId);switch(a.type){case r.Literal:return this.value(a.value,b);case r.UnaryExpression:return f=this.recurse(a.argument),this["unary"+
|
||||||
|
a.operator](f,b);case r.BinaryExpression:return c=this.recurse(a.left),f=this.recurse(a.right),this["binary"+a.operator](c,f,b);case r.LogicalExpression:return c=this.recurse(a.left),f=this.recurse(a.right),this["binary"+a.operator](c,f,b);case r.ConditionalExpression:return this["ternary?:"](this.recurse(a.test),this.recurse(a.alternate),this.recurse(a.consequent),b);case r.Identifier:return e.identifier(a.name,b,d);case r.MemberExpression:return c=this.recurse(a.object,!1,!!d),a.computed||(f=a.property.name),
|
||||||
|
a.computed&&(f=this.recurse(a.property)),a.computed?this.computedMember(c,f,b,d):this.nonComputedMember(c,f,b,d);case r.CallExpression:return g=[],q(a.arguments,function(a){g.push(e.recurse(a))}),a.filter&&(f=this.$filter(a.callee.name)),a.filter||(f=this.recurse(a.callee,!0)),a.filter?function(a,c,d,e){for(var n=[],p=0;p<g.length;++p)n.push(g[p](a,c,d,e));a=f.apply(void 0,n,e);return b?{context:void 0,name:void 0,value:a}:a}:function(a,c,d,e){var n=f(a,c,d,e),p;if(null!=n.value){p=[];for(var q=0;q<
|
||||||
|
g.length;++q)p.push(g[q](a,c,d,e));p=n.value.apply(n.context,p)}return b?{value:p}:p};case r.AssignmentExpression:return c=this.recurse(a.left,!0,1),f=this.recurse(a.right),function(a,d,e,g){var n=c(a,d,e,g);a=f(a,d,e,g);n.context[n.name]=a;return b?{value:a}:a};case r.ArrayExpression:return g=[],q(a.elements,function(a){g.push(e.recurse(a))}),function(a,c,d,e){for(var f=[],p=0;p<g.length;++p)f.push(g[p](a,c,d,e));return b?{value:f}:f};case r.ObjectExpression:return g=[],q(a.properties,function(a){a.computed?
|
||||||
|
g.push({key:e.recurse(a.key),computed:!0,value:e.recurse(a.value)}):g.push({key:a.key.type===r.Identifier?a.key.name:""+a.key.value,computed:!1,value:e.recurse(a.value)})}),function(a,c,d,e){for(var f={},p=0;p<g.length;++p)g[p].computed?f[g[p].key(a,c,d,e)]=g[p].value(a,c,d,e):f[g[p].key]=g[p].value(a,c,d,e);return b?{value:f}:f};case r.ThisExpression:return function(a){return b?{value:a}:a};case r.LocalsExpression:return function(a,c){return b?{value:c}:c};case r.NGValueParameter:return function(a,
|
||||||
|
c,d){return b?{value:d}:d}}},"unary+":function(a,b){return function(d,c,f,e){d=a(d,c,f,e);d=u(d)?+d:0;return b?{value:d}:d}},"unary-":function(a,b){return function(d,c,f,e){d=a(d,c,f,e);d=u(d)?-d:-0;return b?{value:d}:d}},"unary!":function(a,b){return function(d,c,f,e){d=!a(d,c,f,e);return b?{value:d}:d}},"binary+":function(a,b,d){return function(c,f,e,g){var h=a(c,f,e,g);c=b(c,f,e,g);h=xd(h,c);return d?{value:h}:h}},"binary-":function(a,b,d){return function(c,f,e,g){var h=a(c,f,e,g);c=b(c,f,e,g);
|
||||||
|
h=(u(h)?h:0)-(u(c)?c:0);return d?{value:h}:h}},"binary*":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)*b(c,f,e,g);return d?{value:c}:c}},"binary/":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)/b(c,f,e,g);return d?{value:c}:c}},"binary%":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)%b(c,f,e,g);return d?{value:c}:c}},"binary===":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)===b(c,f,e,g);return d?{value:c}:c}},"binary!==":function(a,b,d){return function(c,f,e,g){c=a(c,
|
||||||
|
f,e,g)!==b(c,f,e,g);return d?{value:c}:c}},"binary==":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)==b(c,f,e,g);return d?{value:c}:c}},"binary!=":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)!=b(c,f,e,g);return d?{value:c}:c}},"binary<":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)<b(c,f,e,g);return d?{value:c}:c}},"binary>":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)>b(c,f,e,g);return d?{value:c}:c}},"binary<=":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,
|
||||||
|
g)<=b(c,f,e,g);return d?{value:c}:c}},"binary>=":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)>=b(c,f,e,g);return d?{value:c}:c}},"binary&&":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)&&b(c,f,e,g);return d?{value:c}:c}},"binary||":function(a,b,d){return function(c,f,e,g){c=a(c,f,e,g)||b(c,f,e,g);return d?{value:c}:c}},"ternary?:":function(a,b,d,c){return function(f,e,g,h){f=a(f,e,g,h)?b(f,e,g,h):d(f,e,g,h);return c?{value:f}:f}},value:function(a,b){return function(){return b?{context:void 0,
|
||||||
|
name:void 0,value:a}:a}},identifier:function(a,b,d){return function(c,f,e,g){c=f&&a in f?f:c;d&&1!==d&&c&&null==c[a]&&(c[a]={});f=c?c[a]:void 0;return b?{context:c,name:a,value:f}:f}},computedMember:function(a,b,d,c){return function(f,e,g,h){var k=a(f,e,g,h),l,m;null!=k&&(l=b(f,e,g,h),l+="",c&&1!==c&&k&&!k[l]&&(k[l]={}),m=k[l]);return d?{context:k,name:l,value:m}:m}},nonComputedMember:function(a,b,d,c){return function(f,e,g,h){f=a(f,e,g,h);c&&1!==c&&f&&null==f[b]&&(f[b]={});e=null!=f?f[b]:void 0;
|
||||||
|
return d?{context:f,name:b,value:e}:e}},inputs:function(a,b){return function(d,c,f,e){return e?e[b]:a(d,c,f)}}};var qc=function(a,b,d){this.lexer=a;this.$filter=b;this.options=d;this.ast=new r(a,d);this.astCompiler=d.csp?new Dd(this.ast,b):new Cd(this.ast,b)};qc.prototype={constructor:qc,parse:function(a){return this.astCompiler.compile(a)}};var ua=H("$sce"),qa={HTML:"html",CSS:"css",URL:"url",RESOURCE_URL:"resourceUrl",JS:"js"},rc=/_([a-z])/g,xg=H("$compile"),ba=A.document.createElement("a"),Hd=
|
||||||
|
Da(A.location.href);Id.$inject=["$document"];Wc.$inject=["$provide"];var Pd=22,Od=".",tc="0";Jd.$inject=["$locale"];Ld.$inject=["$locale"];var Ig={yyyy:$("FullYear",4,0,!1,!0),yy:$("FullYear",2,0,!0,!0),y:$("FullYear",1,0,!1,!0),MMMM:mb("Month"),MMM:mb("Month",!0),MM:$("Month",2,1),M:$("Month",1,1),LLLL:mb("Month",!1,!0),dd:$("Date",2),d:$("Date",1),HH:$("Hours",2),H:$("Hours",1),hh:$("Hours",2,-12),h:$("Hours",1,-12),mm:$("Minutes",2),m:$("Minutes",1),ss:$("Seconds",2),s:$("Seconds",1),sss:$("Milliseconds",
|
||||||
|
3),EEEE:mb("Day"),EEE:mb("Day",!0),a:function(a,b){return 12>a.getHours()?b.AMPMS[0]:b.AMPMS[1]},Z:function(a,b,d){a=-1*d;return a=(0<=a?"+":"")+(Jb(Math[0<a?"floor":"ceil"](a/60),2)+Jb(Math.abs(a%60),2))},ww:Rd(2),w:Rd(1),G:uc,GG:uc,GGG:uc,GGGG:function(a,b){return 0>=a.getFullYear()?b.ERANAMES[0]:b.ERANAMES[1]}},Hg=/((?:[^yMLdHhmsaZEwG']+)|(?:'(?:[^']|'')*')|(?:E+|y+|M+|L+|d+|H+|h+|m+|s+|a|Z|G+|w+))(.*)/,Gg=/^-?\d+$/;Kd.$inject=["$locale"];var Bg=fa(L),Cg=fa(ub);Md.$inject=["$parse"];var ze=fa({restrict:"E",
|
||||||
|
compile:function(a,b){if(!b.href&&!b.xlinkHref)return function(a,b){if("a"===b[0].nodeName.toLowerCase()){var f="[object SVGAnimatedString]"===la.call(b.prop("href"))?"xlink:href":"href";b.on("click",function(a){b.attr(f)||a.preventDefault()})}}}}),vb={};q(Fb,function(a,b){function d(a,d,f){a.$watch(f[c],function(a){f.$set(b,!!a)})}if("multiple"!==a){var c=Ca("ng-"+b),f=d;"checked"===a&&(f=function(a,b,f){f.ngModel!==f[c]&&d(a,b,f)});vb[c]=function(){return{restrict:"A",priority:100,link:f}}}});q(kd,
|
||||||
|
function(a,b){vb[b]=function(){return{priority:100,link:function(a,c,f){if("ngPattern"===b&&"/"===f.ngPattern.charAt(0)&&(c=f.ngPattern.match(Mg))){f.$set("ngPattern",new RegExp(c[1],c[2]));return}a.$watch(f[b],function(a){f.$set(b,a)})}}}});q(["src","srcset","href"],function(a){var b=Ca("ng-"+a);vb[b]=function(){return{priority:99,link:function(d,c,f){var e=a,g=a;"href"===a&&"[object SVGAnimatedString]"===la.call(c.prop("href"))&&(g="xlinkHref",f.$attr[g]="xlink:href",e=null);f.$observe(b,function(b){b?
|
||||||
|
(f.$set(g,b),La&&e&&c.prop(e,f[g])):"href"===a&&f.$set(g,null)})}}}});var Lb={$addControl:v,$$renameControl:function(a,b){a.$name=b},$removeControl:v,$setValidity:v,$setDirty:v,$setPristine:v,$setSubmitted:v};Kb.$inject=["$element","$attrs","$scope","$animate","$interpolate"];Kb.prototype={$rollbackViewValue:function(){q(this.$$controls,function(a){a.$rollbackViewValue()})},$commitViewValue:function(){q(this.$$controls,function(a){a.$commitViewValue()})},$addControl:function(a){Oa(a.$name,"input");
|
||||||
|
this.$$controls.push(a);a.$name&&(this[a.$name]=a);a.$$parentForm=this},$$renameControl:function(a,b){var d=a.$name;this[d]===a&&delete this[d];this[b]=a;a.$name=b},$removeControl:function(a){a.$name&&this[a.$name]===a&&delete this[a.$name];q(this.$pending,function(b,d){this.$setValidity(d,null,a)},this);q(this.$error,function(b,d){this.$setValidity(d,null,a)},this);q(this.$$success,function(b,d){this.$setValidity(d,null,a)},this);$a(this.$$controls,a);a.$$parentForm=Lb},$setDirty:function(){this.$$animate.removeClass(this.$$element,
|
||||||
|
Va);this.$$animate.addClass(this.$$element,Qb);this.$dirty=!0;this.$pristine=!1;this.$$parentForm.$setDirty()},$setPristine:function(){this.$$animate.setClass(this.$$element,Va,Qb+" ng-submitted");this.$dirty=!1;this.$pristine=!0;this.$submitted=!1;q(this.$$controls,function(a){a.$setPristine()})},$setUntouched:function(){q(this.$$controls,function(a){a.$setUntouched()})},$setSubmitted:function(){this.$$animate.addClass(this.$$element,"ng-submitted");this.$submitted=!0;this.$$parentForm.$setSubmitted()}};
|
||||||
|
Ud({clazz:Kb,set:function(a,b,d){var c=a[b];c?-1===c.indexOf(d)&&c.push(d):a[b]=[d]},unset:function(a,b,d){var c=a[b];c&&($a(c,d),0===c.length&&delete a[b])}});var be=function(a){return["$timeout","$parse",function(b,d){function c(a){return""===a?d('this[""]').assign:d(a).assign||v}return{name:"form",restrict:a?"EAC":"E",require:["form","^^?form"],controller:Kb,compile:function(d,e){d.addClass(Va).addClass(nb);var g=e.name?"name":a&&e.ngForm?"ngForm":!1;return{pre:function(a,d,e,f){var n=f[0];if(!("action"in
|
||||||
|
e)){var p=function(b){a.$apply(function(){n.$commitViewValue();n.$setSubmitted()});b.preventDefault()};d[0].addEventListener("submit",p);d.on("$destroy",function(){b(function(){d[0].removeEventListener("submit",p)},0,!1)})}(f[1]||n.$$parentForm).$addControl(n);var q=g?c(n.$name):v;g&&(q(a,n),e.$observe(g,function(b){n.$name!==b&&(q(a,void 0),n.$$parentForm.$$renameControl(n,b),q=c(n.$name),q(a,n))}));d.on("$destroy",function(){n.$$parentForm.$removeControl(n);q(a,void 0);Q(n,Lb)})}}}}}]},Ae=be(),
|
||||||
|
Me=be(!0),Jg=/^\d{4,}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+(?:[+-][0-2]\d:[0-5]\d|Z)$/,Ug=/^[a-z][a-z\d.+-]*:\/*(?:[^:@]+(?::[^@]+)?@)?(?:[^\s:/?#]+|\[[a-f\d:]+])(?::\d+)?(?:\/[^?#]*)?(?:\?[^#]*)?(?:#.*)?$/i,Vg=/^(?=.{1,254}$)(?=.{1,64}@)[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+(\.[-!#$%&'*+/0-9=?A-Z^_`a-z{|}~]+)*@[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?(\.[A-Za-z0-9]([A-Za-z0-9-]{0,61}[A-Za-z0-9])?)*$/,Kg=/^\s*(-|\+)?(\d+|(\d*(\.\d*)))([eE][+-]?\d+)?\s*$/,ce=/^(\d{4,})-(\d{2})-(\d{2})$/,de=/^(\d{4,})-(\d\d)-(\d\d)T(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,
|
||||||
|
Bc=/^(\d{4,})-W(\d\d)$/,ee=/^(\d{4,})-(\d\d)$/,fe=/^(\d\d):(\d\d)(?::(\d\d)(\.\d{1,3})?)?$/,Wd=T();q(["date","datetime-local","month","time","week"],function(a){Wd[a]=!0});var ge={text:function(a,b,d,c,f,e){Sa(a,b,d,c,f,e);wc(c)},date:ob("date",ce,Mb(ce,["yyyy","MM","dd"]),"yyyy-MM-dd"),"datetime-local":ob("datetimelocal",de,Mb(de,"yyyy MM dd HH mm ss sss".split(" ")),"yyyy-MM-ddTHH:mm:ss.sss"),time:ob("time",fe,Mb(fe,["HH","mm","ss","sss"]),"HH:mm:ss.sss"),week:ob("week",Bc,function(a,b){if(ea(a))return a;
|
||||||
|
if(y(a)){Bc.lastIndex=0;var d=Bc.exec(a);if(d){var c=+d[1],f=+d[2],e=d=0,g=0,h=0,k=Qd(c),f=7*(f-1);b&&(d=b.getHours(),e=b.getMinutes(),g=b.getSeconds(),h=b.getMilliseconds());return new Date(c,0,k.getDate()+f,d,e,g,h)}}return NaN},"yyyy-Www"),month:ob("month",ee,Mb(ee,["yyyy","MM"]),"yyyy-MM"),number:function(a,b,d,c,f,e){xc(a,b,d,c);Xd(c);Sa(a,b,d,c,f,e);var g,h;if(u(d.min)||d.ngMin)c.$validators.min=function(a){return c.$isEmpty(a)||x(g)||a>=g},d.$observe("min",function(a){g=Ta(a);c.$validate()});
|
||||||
|
if(u(d.max)||d.ngMax)c.$validators.max=function(a){return c.$isEmpty(a)||x(h)||a<=h},d.$observe("max",function(a){h=Ta(a);c.$validate()});if(u(d.step)||d.ngStep){var k;c.$validators.step=function(a,b){return c.$isEmpty(b)||x(k)||Yd(b,g||0,k)};d.$observe("step",function(a){k=Ta(a);c.$validate()})}},url:function(a,b,d,c,f,e){Sa(a,b,d,c,f,e);wc(c);c.$$parserName="url";c.$validators.url=function(a,b){var d=a||b;return c.$isEmpty(d)||Ug.test(d)}},email:function(a,b,d,c,f,e){Sa(a,b,d,c,f,e);wc(c);c.$$parserName=
|
||||||
|
"email";c.$validators.email=function(a,b){var d=a||b;return c.$isEmpty(d)||Vg.test(d)}},radio:function(a,b,d,c){var f=!d.ngTrim||"false"!==R(d.ngTrim);x(d.name)&&b.attr("name",++qb);b.on("click",function(a){var g;b[0].checked&&(g=d.value,f&&(g=R(g)),c.$setViewValue(g,a&&a.type))});c.$render=function(){var a=d.value;f&&(a=R(a));b[0].checked=a===c.$viewValue};d.$observe("value",c.$render)},range:function(a,b,d,c,f,e){function g(a,c){b.attr(a,d[a]);d.$observe(a,c)}function h(a){n=Ta(a);ga(c.$modelValue)||
|
||||||
|
(m?(a=b.val(),n>a&&(a=n,b.val(a)),c.$setViewValue(a)):c.$validate())}function k(a){p=Ta(a);ga(c.$modelValue)||(m?(a=b.val(),p<a&&(b.val(p),a=p<n?n:p),c.$setViewValue(a)):c.$validate())}function l(a){q=Ta(a);ga(c.$modelValue)||(m&&c.$viewValue!==b.val()?c.$setViewValue(b.val()):c.$validate())}xc(a,b,d,c);Xd(c);Sa(a,b,d,c,f,e);var m=c.$$hasNativeValidators&&"range"===b[0].type,n=m?0:void 0,p=m?100:void 0,q=m?1:void 0,r=b[0].validity;a=u(d.min);f=u(d.max);e=u(d.step);var v=c.$render;c.$render=m&&u(r.rangeUnderflow)&&
|
||||||
|
u(r.rangeOverflow)?function(){v();c.$setViewValue(b.val())}:v;a&&(c.$validators.min=m?function(){return!0}:function(a,b){return c.$isEmpty(b)||x(n)||b>=n},g("min",h));f&&(c.$validators.max=m?function(){return!0}:function(a,b){return c.$isEmpty(b)||x(p)||b<=p},g("max",k));e&&(c.$validators.step=m?function(){return!r.stepMismatch}:function(a,b){return c.$isEmpty(b)||x(q)||Yd(b,n||0,q)},g("step",l))},checkbox:function(a,b,d,c,f,e,g,h){var k=Zd(h,a,"ngTrueValue",d.ngTrueValue,!0),l=Zd(h,a,"ngFalseValue",
|
||||||
|
d.ngFalseValue,!1);b.on("click",function(a){c.$setViewValue(b[0].checked,a&&a.type)});c.$render=function(){b[0].checked=c.$viewValue};c.$isEmpty=function(a){return!1===a};c.$formatters.push(function(a){return ma(a,k)});c.$parsers.push(function(a){return a?k:l})},hidden:v,button:v,submit:v,reset:v,file:v},Qc=["$browser","$sniffer","$filter","$parse",function(a,b,d,c){return{restrict:"E",require:["?ngModel"],link:{pre:function(f,e,g,h){h[0]&&(ge[L(g.type)]||ge.text)(f,e,g,h[0],b,a,d,c)}}}}],Wg=/^(true|false|\d+)$/,
|
||||||
|
df=function(){return{restrict:"A",priority:100,compile:function(a,b){return Wg.test(b.ngValue)?function(a,b,f){a=a.$eval(f.ngValue);b.prop("value",a);f.$set("value",a)}:function(a,b,f){a.$watch(f.ngValue,function(a){b.prop("value",a);f.$set("value",a)})}}}},Ee=["$compile",function(a){return{restrict:"AC",compile:function(b){a.$$addBindingClass(b);return function(b,c,f){a.$$addBindingInfo(c,f.ngBind);c=c[0];b.$watch(f.ngBind,function(a){c.textContent=Xb(a)})}}}}],Ge=["$interpolate","$compile",function(a,
|
||||||
|
b){return{compile:function(d){b.$$addBindingClass(d);return function(c,d,e){c=a(d.attr(e.$attr.ngBindTemplate));b.$$addBindingInfo(d,c.expressions);d=d[0];e.$observe("ngBindTemplate",function(a){d.textContent=x(a)?"":a})}}}}],Fe=["$sce","$parse","$compile",function(a,b,d){return{restrict:"A",compile:function(c,f){var e=b(f.ngBindHtml),g=b(f.ngBindHtml,function(b){return a.valueOf(b)});d.$$addBindingClass(c);return function(b,c,f){d.$$addBindingInfo(c,f.ngBindHtml);b.$watch(g,function(){var d=e(b);
|
||||||
|
c.html(a.getTrustedHtml(d)||"")})}}}}],cf=fa({restrict:"A",require:"ngModel",link:function(a,b,d,c){c.$viewChangeListeners.push(function(){a.$eval(d.ngChange)})}}),He=zc("",!0),Je=zc("Odd",0),Ie=zc("Even",1),Ke=Ra({compile:function(a,b){b.$set("ngCloak",void 0);a.removeClass("ng-cloak")}}),Le=[function(){return{restrict:"A",scope:!0,controller:"@",priority:500}}],Vc={},Xg={blur:!0,focus:!0};q("click dblclick mousedown mouseup mouseover mouseout mousemove mouseenter mouseleave keydown keyup keypress submit focus blur copy cut paste".split(" "),
|
||||||
|
function(a){var b=Ca("ng-"+a);Vc[b]=["$parse","$rootScope",function(d,c){return{restrict:"A",compile:function(f,e){var g=d(e[b],null,!0);return function(b,d){d.on(a,function(d){var e=function(){g(b,{$event:d})};Xg[a]&&c.$$phase?b.$evalAsync(e):b.$apply(e)})}}}}]});var Oe=["$animate","$compile",function(a,b){return{multiElement:!0,transclude:"element",priority:600,terminal:!0,restrict:"A",$$tlb:!0,link:function(d,c,f,e,g){var h,k,l;d.$watch(f.ngIf,function(d){d?k||g(function(d,e){k=e;d[d.length++]=
|
||||||
|
b.$$createComment("end ngIf",f.ngIf);h={clone:d};a.enter(d,c.parent(),c)}):(l&&(l.remove(),l=null),k&&(k.$destroy(),k=null),h&&(l=tb(h.clone),a.leave(l).done(function(a){!1!==a&&(l=null)}),h=null))})}}}],Pe=["$templateRequest","$anchorScroll","$animate",function(a,b,d){return{restrict:"ECA",priority:400,terminal:!0,transclude:"element",controller:Z.noop,compile:function(c,f){var e=f.ngInclude||f.src,g=f.onload||"",h=f.autoscroll;return function(c,f,m,n,p){var q=0,r,v,s,x=function(){v&&(v.remove(),
|
||||||
|
v=null);r&&(r.$destroy(),r=null);s&&(d.leave(s).done(function(a){!1!==a&&(v=null)}),v=s,s=null)};c.$watch(e,function(e){var m=function(a){!1===a||!u(h)||h&&!c.$eval(h)||b()},v=++q;e?(a(e,!0).then(function(a){if(!c.$$destroyed&&v===q){var b=c.$new();n.template=a;a=p(b,function(a){x();d.enter(a,null,f).done(m)});r=b;s=a;r.$emit("$includeContentLoaded",e);c.$eval(g)}},function(){c.$$destroyed||v!==q||(x(),c.$emit("$includeContentError",e))}),c.$emit("$includeContentRequested",e)):(x(),n.template=null)})}}}}],
|
||||||
|
ff=["$compile",function(a){return{restrict:"ECA",priority:-400,require:"ngInclude",link:function(b,d,c,f){la.call(d[0]).match(/SVG/)?(d.empty(),a(Yc(f.template,A.document).childNodes)(b,function(a){d.append(a)},{futureParentElement:d})):(d.html(f.template),a(d.contents())(b))}}}],Qe=Ra({priority:450,compile:function(){return{pre:function(a,b,d){a.$eval(d.ngInit)}}}}),bf=function(){return{restrict:"A",priority:100,require:"ngModel",link:function(a,b,d,c){var f=d.ngList||", ",e="false"!==d.ngTrim,g=
|
||||||
|
e?R(f):f;c.$parsers.push(function(a){if(!x(a)){var b=[];a&&q(a.split(g),function(a){a&&b.push(e?R(a):a)});return b}});c.$formatters.push(function(a){if(G(a))return a.join(f)});c.$isEmpty=function(a){return!a||!a.length}}}},nb="ng-valid",Td="ng-invalid",Va="ng-pristine",Qb="ng-dirty",pb=H("ngModel");Nb.$inject="$scope $exceptionHandler $attrs $element $parse $animate $timeout $q $interpolate".split(" ");Nb.prototype={$$initGetterSetters:function(){if(this.$options.getOption("getterSetter")){var a=
|
||||||
|
this.$$parse(this.$$attr.ngModel+"()"),b=this.$$parse(this.$$attr.ngModel+"($$$p)");this.$$ngModelGet=function(b){var c=this.$$parsedNgModel(b);B(c)&&(c=a(b));return c};this.$$ngModelSet=function(a,c){B(this.$$parsedNgModel(a))?b(a,{$$$p:c}):this.$$parsedNgModelAssign(a,c)}}else if(!this.$$parsedNgModel.assign)throw pb("nonassign",this.$$attr.ngModel,ya(this.$$element));},$render:v,$isEmpty:function(a){return x(a)||""===a||null===a||a!==a},$$updateEmptyClasses:function(a){this.$isEmpty(a)?(this.$$animate.removeClass(this.$$element,
|
||||||
|
"ng-not-empty"),this.$$animate.addClass(this.$$element,"ng-empty")):(this.$$animate.removeClass(this.$$element,"ng-empty"),this.$$animate.addClass(this.$$element,"ng-not-empty"))},$setPristine:function(){this.$dirty=!1;this.$pristine=!0;this.$$animate.removeClass(this.$$element,Qb);this.$$animate.addClass(this.$$element,Va)},$setDirty:function(){this.$dirty=!0;this.$pristine=!1;this.$$animate.removeClass(this.$$element,Va);this.$$animate.addClass(this.$$element,Qb);this.$$parentForm.$setDirty()},
|
||||||
|
$setUntouched:function(){this.$touched=!1;this.$untouched=!0;this.$$animate.setClass(this.$$element,"ng-untouched","ng-touched")},$setTouched:function(){this.$touched=!0;this.$untouched=!1;this.$$animate.setClass(this.$$element,"ng-touched","ng-untouched")},$rollbackViewValue:function(){this.$$timeout.cancel(this.$$pendingDebounce);this.$viewValue=this.$$lastCommittedViewValue;this.$render()},$validate:function(){if(!ga(this.$modelValue)){var a=this.$$lastCommittedViewValue,b=this.$$rawModelValue,
|
||||||
|
d=this.$valid,c=this.$modelValue,f=this.$options.getOption("allowInvalid"),e=this;this.$$runValidators(b,a,function(a){f||d===a||(e.$modelValue=a?b:void 0,e.$modelValue!==c&&e.$$writeModelToScope())})}},$$runValidators:function(a,b,d){function c(){var c=!0;q(k.$validators,function(d,f){var g=Boolean(d(a,b));c=c&&g;e(f,g)});return c?!0:(q(k.$asyncValidators,function(a,b){e(b,null)}),!1)}function f(){var c=[],d=!0;q(k.$asyncValidators,function(f,g){var h=f(a,b);if(!h||!B(h.then))throw pb("nopromise",
|
||||||
|
h);e(g,void 0);c.push(h.then(function(){e(g,!0)},function(){d=!1;e(g,!1)}))});c.length?k.$$q.all(c).then(function(){g(d)},v):g(!0)}function e(a,b){h===k.$$currentValidationRunId&&k.$setValidity(a,b)}function g(a){h===k.$$currentValidationRunId&&d(a)}this.$$currentValidationRunId++;var h=this.$$currentValidationRunId,k=this;(function(){var a=k.$$parserName||"parse";if(x(k.$$parserValid))e(a,null);else return k.$$parserValid||(q(k.$validators,function(a,b){e(b,null)}),q(k.$asyncValidators,function(a,
|
||||||
|
b){e(b,null)})),e(a,k.$$parserValid),k.$$parserValid;return!0})()?c()?f():g(!1):g(!1)},$commitViewValue:function(){var a=this.$viewValue;this.$$timeout.cancel(this.$$pendingDebounce);if(this.$$lastCommittedViewValue!==a||""===a&&this.$$hasNativeValidators)this.$$updateEmptyClasses(a),this.$$lastCommittedViewValue=a,this.$pristine&&this.$setDirty(),this.$$parseAndValidate()},$$parseAndValidate:function(){var a=this.$$lastCommittedViewValue,b=this;if(this.$$parserValid=x(a)?void 0:!0)for(var d=0;d<
|
||||||
|
this.$parsers.length;d++)if(a=this.$parsers[d](a),x(a)){this.$$parserValid=!1;break}ga(this.$modelValue)&&(this.$modelValue=this.$$ngModelGet(this.$$scope));var c=this.$modelValue,f=this.$options.getOption("allowInvalid");this.$$rawModelValue=a;f&&(this.$modelValue=a,b.$modelValue!==c&&b.$$writeModelToScope());this.$$runValidators(a,this.$$lastCommittedViewValue,function(d){f||(b.$modelValue=d?a:void 0,b.$modelValue!==c&&b.$$writeModelToScope())})},$$writeModelToScope:function(){this.$$ngModelSet(this.$$scope,
|
||||||
|
this.$modelValue);q(this.$viewChangeListeners,function(a){try{a()}catch(b){this.$$exceptionHandler(b)}},this)},$setViewValue:function(a,b){this.$viewValue=a;this.$options.getOption("updateOnDefault")&&this.$$debounceViewValueCommit(b)},$$debounceViewValueCommit:function(a){var b=this.$options.getOption("debounce");W(b[a])?b=b[a]:W(b["default"])&&(b=b["default"]);this.$$timeout.cancel(this.$$pendingDebounce);var d=this;0<b?this.$$pendingDebounce=this.$$timeout(function(){d.$commitViewValue()},b):this.$$scope.$root.$$phase?
|
||||||
|
this.$commitViewValue():this.$$scope.$apply(function(){d.$commitViewValue()})}};Ud({clazz:Nb,set:function(a,b){a[b]=!0},unset:function(a,b){delete a[b]}});var af=["$rootScope",function(a){return{restrict:"A",require:["ngModel","^?form","^?ngModelOptions"],controller:Nb,priority:1,compile:function(b){b.addClass(Va).addClass("ng-untouched").addClass(nb);return{pre:function(a,b,f,e){var g=e[0];b=e[1]||g.$$parentForm;if(e=e[2])g.$options=e.$options;g.$$initGetterSetters();b.$addControl(g);f.$observe("name",
|
||||||
|
function(a){g.$name!==a&&g.$$parentForm.$$renameControl(g,a)});a.$on("$destroy",function(){g.$$parentForm.$removeControl(g)})},post:function(b,c,f,e){function g(){h.$setTouched()}var h=e[0];if(h.$options.getOption("updateOn"))c.on(h.$options.getOption("updateOn"),function(a){h.$$debounceViewValueCommit(a&&a.type)});c.on("blur",function(){h.$touched||(a.$$phase?b.$evalAsync(g):b.$apply(g))})}}}}}],Ob,Yg=/(\s+|^)default(\s+|$)/;Ac.prototype={getOption:function(a){return this.$$options[a]},createChild:function(a){var b=
|
||||||
|
!1;a=Q({},a);q(a,function(d,c){"$inherit"===d?"*"===c?b=!0:(a[c]=this.$$options[c],"updateOn"===c&&(a.updateOnDefault=this.$$options.updateOnDefault)):"updateOn"===c&&(a.updateOnDefault=!1,a[c]=R(d.replace(Yg,function(){a.updateOnDefault=!0;return" "})))},this);b&&(delete a["*"],$d(a,this.$$options));$d(a,Ob.$$options);return new Ac(a)}};Ob=new Ac({updateOn:"",updateOnDefault:!0,debounce:0,getterSetter:!1,allowInvalid:!1,timezone:null});var ef=function(){return{restrict:"A",priority:10,require:["ngModelOptions",
|
||||||
|
"?^^ngModelOptions"],controller:function(){},link:{pre:function(a,b,d,c){c[0].$options=(c[1]?c[1].$options:Ob).createChild(a.$eval(d.ngModelOptions))}}}},Re=Ra({terminal:!0,priority:1E3}),Zg=H("ngOptions"),$g=/^\s*([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+group\s+by\s+([\s\S]+?))?(?:\s+disable\s+when\s+([\s\S]+?))?\s+for\s+(?:([$\w][$\w]*)|(?:\(\s*([$\w][$\w]*)\s*,\s*([$\w][$\w]*)\s*\)))\s+in\s+([\s\S]+?)(?:\s+track\s+by\s+([\s\S]+?))?$/,Ze=["$compile","$document","$parse",function(a,b,d){function c(a,
|
||||||
|
b,c){function e(a,b,c,d,f){this.selectValue=a;this.viewValue=b;this.label=c;this.group=d;this.disabled=f}function f(a){var b;if(!q&&ta(a))b=a;else{b=[];for(var c in a)a.hasOwnProperty(c)&&"$"!==c.charAt(0)&&b.push(c)}return b}var n=a.match($g);if(!n)throw Zg("iexp",a,ya(b));var p=n[5]||n[7],q=n[6];a=/ as /.test(n[0])&&n[1];var r=n[9];b=d(n[2]?n[1]:p);var v=a&&d(a)||b,s=r&&d(r),u=r?function(a,b){return s(c,b)}:function(a){return ka(a)},w=function(a,b){return u(a,B(a,b))},x=d(n[2]||n[1]),A=d(n[3]||
|
||||||
|
""),D=d(n[4]||""),K=d(n[8]),y={},B=q?function(a,b){y[q]=b;y[p]=a;return y}:function(a){y[p]=a;return y};return{trackBy:r,getTrackByValue:w,getWatchables:d(K,function(a){var b=[];a=a||[];for(var d=f(a),e=d.length,g=0;g<e;g++){var h=a===d?g:d[g],l=a[h],h=B(l,h),l=u(l,h);b.push(l);if(n[2]||n[1])l=x(c,h),b.push(l);n[4]&&(h=D(c,h),b.push(h))}return b}),getOptions:function(){for(var a=[],b={},d=K(c)||[],g=f(d),h=g.length,n=0;n<h;n++){var p=d===g?n:g[n],q=B(d[p],p),s=v(c,q),p=u(s,q),t=x(c,q),y=A(c,q),q=
|
||||||
|
D(c,q),s=new e(p,s,t,y,q);a.push(s);b[p]=s}return{items:a,selectValueMap:b,getOptionFromViewValue:function(a){return b[w(a)]},getViewValueFromOption:function(a){return r?Fa(a.viewValue):a.viewValue}}}}}var f=A.document.createElement("option"),e=A.document.createElement("optgroup");return{restrict:"A",terminal:!0,require:["select","ngModel"],link:{pre:function(a,b,c,d){d[0].registerOption=v},post:function(d,h,k,l){function m(a,b){a.element=b;b.disabled=a.disabled;a.label!==b.label&&(b.label=a.label,
|
||||||
|
b.textContent=a.label);b.value=a.selectValue}function n(){var a=w&&p.readValue();if(w)for(var b=w.items.length-1;0<=b;b--){var c=w.items[b];u(c.group)?Eb(c.element.parentNode):Eb(c.element)}w=y.getOptions();var d={};A&&h.prepend(p.emptyOption);w.items.forEach(function(a){var b;if(u(a.group)){b=d[a.group];b||(b=e.cloneNode(!1),B.appendChild(b),b.label=null===a.group?"null":a.group,d[a.group]=b);var c=f.cloneNode(!1)}else b=B,c=f.cloneNode(!1);b.appendChild(c);m(a,c)});h[0].appendChild(B);r.$render();
|
||||||
|
r.$isEmpty(a)||(b=p.readValue(),(y.trackBy||v?ma(a,b):a===b)||(r.$setViewValue(b),r.$render()))}var p=l[0],r=l[1],v=k.multiple;l=0;for(var x=h.children(),s=x.length;l<s;l++)if(""===x[l].value){p.hasEmptyOption=!0;p.emptyOption=x.eq(l);break}var A=!!p.emptyOption;F(f.cloneNode(!1)).val("?");var w,y=c(k.ngOptions,h,d),B=b[0].createDocumentFragment();p.generateUnknownOptionValue=function(a){return"?"};v?(p.writeValue=function(a){w.items.forEach(function(a){a.element.selected=!1});a&&a.forEach(function(a){if(a=
|
||||||
|
w.getOptionFromViewValue(a))a.element.selected=!0})},p.readValue=function(){var a=h.val()||[],b=[];q(a,function(a){(a=w.selectValueMap[a])&&!a.disabled&&b.push(w.getViewValueFromOption(a))});return b},y.trackBy&&d.$watchCollection(function(){if(G(r.$viewValue))return r.$viewValue.map(function(a){return y.getTrackByValue(a)})},function(){r.$render()})):(p.writeValue=function(a){var b=w.selectValueMap[h.val()],c=w.getOptionFromViewValue(a);b&&b.element.removeAttribute("selected");c?(h[0].value!==c.selectValue&&
|
||||||
|
(p.removeUnknownOption(),p.unselectEmptyOption(),h[0].value=c.selectValue,c.element.selected=!0),c.element.setAttribute("selected","selected")):A?p.selectEmptyOption():p.unknownOption.parent().length?p.updateUnknownOption(a):p.renderUnknownOption(a)},p.readValue=function(){var a=w.selectValueMap[h.val()];return a&&!a.disabled?(p.unselectEmptyOption(),p.removeUnknownOption(),w.getViewValueFromOption(a)):null},y.trackBy&&d.$watch(function(){return y.getTrackByValue(r.$viewValue)},function(){r.$render()}));
|
||||||
|
A&&(p.emptyOption.remove(),a(p.emptyOption)(d),8===p.emptyOption[0].nodeType?(p.hasEmptyOption=!1,p.registerOption=function(a,b){""===b.val()&&(p.hasEmptyOption=!0,p.emptyOption=b,p.emptyOption.removeClass("ng-scope"),r.$render(),b.on("$destroy",function(){p.hasEmptyOption=!1;p.emptyOption=void 0}))}):p.emptyOption.removeClass("ng-scope"));h.empty();n();d.$watchCollection(y.getWatchables,n)}}}}],Se=["$locale","$interpolate","$log",function(a,b,d){var c=/{}/g,f=/^when(Minus)?(.+)$/;return{link:function(e,
|
||||||
|
g,h){function k(a){g.text(a||"")}var l=h.count,m=h.$attr.when&&g.attr(h.$attr.when),n=h.offset||0,p=e.$eval(m)||{},r={},u=b.startSymbol(),y=b.endSymbol(),s=u+l+"-"+n+y,A=Z.noop,w;q(h,function(a,b){var c=f.exec(b);c&&(c=(c[1]?"-":"")+L(c[2]),p[c]=g.attr(h.$attr[b]))});q(p,function(a,d){r[d]=b(a.replace(c,s))});e.$watch(l,function(b){var c=parseFloat(b),f=ga(c);f||c in p||(c=a.pluralCat(c-n));c===w||f&&ga(w)||(A(),f=r[c],x(f)?(null!=b&&d.debug("ngPluralize: no rule defined for '"+c+"' in "+m),A=v,k()):
|
||||||
|
A=e.$watch(f,k),w=c)})}}}],Te=["$parse","$animate","$compile",function(a,b,d){var c=H("ngRepeat"),f=function(a,b,c,d,f,m,n){a[c]=d;f&&(a[f]=m);a.$index=b;a.$first=0===b;a.$last=b===n-1;a.$middle=!(a.$first||a.$last);a.$odd=!(a.$even=0===(b&1))};return{restrict:"A",multiElement:!0,transclude:"element",priority:1E3,terminal:!0,$$tlb:!0,compile:function(e,g){var h=g.ngRepeat,k=d.$$createComment("end ngRepeat",h),l=h.match(/^\s*([\s\S]+?)\s+in\s+([\s\S]+?)(?:\s+as\s+([\s\S]+?))?(?:\s+track\s+by\s+([\s\S]+?))?\s*$/);
|
||||||
|
if(!l)throw c("iexp",h);var m=l[1],n=l[2],p=l[3],r=l[4],l=m.match(/^(?:(\s*[$\w]+)|\(\s*([$\w]+)\s*,\s*([$\w]+)\s*\))$/);if(!l)throw c("iidexp",m);var v=l[3]||l[1],u=l[2];if(p&&(!/^[$a-zA-Z_][$a-zA-Z0-9_]*$/.test(p)||/^(null|undefined|this|\$index|\$first|\$middle|\$last|\$even|\$odd|\$parent|\$root|\$id)$/.test(p)))throw c("badident",p);var s,x,w,A,y={$id:ka};r?s=a(r):(w=function(a,b){return ka(b)},A=function(a){return a});return function(a,d,e,g,l){s&&(x=function(b,c,d){u&&(y[u]=b);y[v]=c;y.$index=
|
||||||
|
d;return s(a,y)});var m=T();a.$watchCollection(n,function(e){var g,n,r=d[0],s,t=T(),y,B,F,E,G,H,L;p&&(a[p]=e);if(ta(e))G=e,n=x||w;else for(L in n=x||A,G=[],e)va.call(e,L)&&"$"!==L.charAt(0)&&G.push(L);y=G.length;L=Array(y);for(g=0;g<y;g++)if(B=e===G?g:G[g],F=e[B],E=n(B,F,g),m[E])H=m[E],delete m[E],t[E]=H,L[g]=H;else{if(t[E])throw q(L,function(a){a&&a.scope&&(m[a.id]=a)}),c("dupes",h,E,F);L[g]={id:E,scope:void 0,clone:void 0};t[E]=!0}for(s in m){H=m[s];E=tb(H.clone);b.leave(E);if(E[0].parentNode)for(g=
|
||||||
|
0,n=E.length;g<n;g++)E[g].$$NG_REMOVED=!0;H.scope.$destroy()}for(g=0;g<y;g++)if(B=e===G?g:G[g],F=e[B],H=L[g],H.scope){s=r;do s=s.nextSibling;while(s&&s.$$NG_REMOVED);H.clone[0]!==s&&b.move(tb(H.clone),null,r);r=H.clone[H.clone.length-1];f(H.scope,g,v,F,u,B,y)}else l(function(a,c){H.scope=c;var d=k.cloneNode(!1);a[a.length++]=d;b.enter(a,null,r);r=d;H.clone=a;t[H.id]=H;f(H.scope,g,v,F,u,B,y)});m=t})}}}}],Ue=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngShow,
|
||||||
|
function(b){a[b?"removeClass":"addClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],Ne=["$animate",function(a){return{restrict:"A",multiElement:!0,link:function(b,d,c){b.$watch(c.ngHide,function(b){a[b?"addClass":"removeClass"](d,"ng-hide",{tempClasses:"ng-hide-animate"})})}}}],Ve=Ra(function(a,b,d){a.$watch(d.ngStyle,function(a,d){d&&a!==d&&q(d,function(a,c){b.css(c,"")});a&&b.css(a)},!0)}),We=["$animate","$compile",function(a,b){return{require:"ngSwitch",controller:["$scope",function(){this.cases=
|
||||||
|
{}}],link:function(d,c,f,e){var g=[],h=[],k=[],l=[],m=function(a,b){return function(c){!1!==c&&a.splice(b,1)}};d.$watch(f.ngSwitch||f.on,function(c){for(var d,f;k.length;)a.cancel(k.pop());d=0;for(f=l.length;d<f;++d){var r=tb(h[d].clone);l[d].$destroy();(k[d]=a.leave(r)).done(m(k,d))}h.length=0;l.length=0;(g=e.cases["!"+c]||e.cases["?"])&&q(g,function(c){c.transclude(function(d,e){l.push(e);var f=c.element;d[d.length++]=b.$$createComment("end ngSwitchWhen");h.push({clone:d});a.enter(d,f.parent(),
|
||||||
|
f)})})})}}}],Xe=Ra({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,f){a=d.ngSwitchWhen.split(d.ngSwitchWhenSeparator).sort().filter(function(a,b,c){return c[b-1]!==a});q(a,function(a){c.cases["!"+a]=c.cases["!"+a]||[];c.cases["!"+a].push({transclude:f,element:b})})}}),Ye=Ra({transclude:"element",priority:1200,require:"^ngSwitch",multiElement:!0,link:function(a,b,d,c,f){c.cases["?"]=c.cases["?"]||[];c.cases["?"].push({transclude:f,element:b})}}),ah=H("ngTransclude"),
|
||||||
|
$e=["$compile",function(a){return{restrict:"EAC",terminal:!0,compile:function(b){var d=a(b.contents());b.empty();return function(a,b,e,g,h){function k(){d(a,function(a){b.append(a)})}if(!h)throw ah("orphan",ya(b));e.ngTransclude===e.$attr.ngTransclude&&(e.ngTransclude="");e=e.ngTransclude||e.ngTranscludeSlot;h(function(a,c){var d;if(d=a.length)a:{d=0;for(var e=a.length;d<e;d++){var g=a[d];if(g.nodeType!==Ja||g.nodeValue.trim()){d=!0;break a}}d=void 0}d?b.append(a):(k(),c.$destroy())},null,e);e&&!h.isSlotFilled(e)&&
|
||||||
|
k()}}}}],Be=["$templateCache",function(a){return{restrict:"E",terminal:!0,compile:function(b,d){"text/ng-template"===d.type&&a.put(d.id,b[0].text)}}}],bh={$setViewValue:v,$render:v},ch=["$element","$scope",function(a,b){function d(){h||(h=!0,b.$$postDigest(function(){h=!1;e.ngModelCtrl.$render()}))}function c(a){k||(k=!0,b.$$postDigest(function(){b.$$destroyed||(k=!1,e.ngModelCtrl.$setViewValue(e.readValue()),a&&e.ngModelCtrl.$render())}))}function f(a){a.prop("selected",!0);a.attr("selected",!0)}
|
||||||
|
var e=this,g=new Pa;e.selectValueMap={};e.ngModelCtrl=bh;e.multiple=!1;e.unknownOption=F(A.document.createElement("option"));e.hasEmptyOption=!1;e.emptyOption=void 0;e.renderUnknownOption=function(b){b=e.generateUnknownOptionValue(b);e.unknownOption.val(b);a.prepend(e.unknownOption);f(e.unknownOption);a.val(b)};e.updateUnknownOption=function(b){b=e.generateUnknownOptionValue(b);e.unknownOption.val(b);f(e.unknownOption);a.val(b)};e.generateUnknownOptionValue=function(a){return"? "+ka(a)+" ?"};e.removeUnknownOption=
|
||||||
|
function(){e.unknownOption.parent()&&e.unknownOption.remove()};e.selectEmptyOption=function(){e.emptyOption&&(a.val(""),f(e.emptyOption))};e.unselectEmptyOption=function(){e.hasEmptyOption&&e.emptyOption.removeAttr("selected")};b.$on("$destroy",function(){e.renderUnknownOption=v});e.readValue=function(){var b=a.val(),b=b in e.selectValueMap?e.selectValueMap[b]:b;return e.hasOption(b)?b:null};e.writeValue=function(b){var c=a[0].options[a[0].selectedIndex];c&&c.removeAttribute("selected");e.hasOption(b)?
|
||||||
|
(e.removeUnknownOption(),c=ka(b),a.val(c in e.selectValueMap?c:b),f(F(a[0].options[a[0].selectedIndex]))):null==b&&e.emptyOption?(e.removeUnknownOption(),e.selectEmptyOption()):e.unknownOption.parent().length?e.updateUnknownOption(b):e.renderUnknownOption(b)};e.addOption=function(a,b){if(8!==b[0].nodeType){Oa(a,'"option value"');""===a&&(e.hasEmptyOption=!0,e.emptyOption=b);var c=g.get(a)||0;g.put(a,c+1);d()}};e.removeOption=function(a){var b=g.get(a);b&&(1===b?(g.remove(a),""===a&&(e.hasEmptyOption=
|
||||||
|
!1,e.emptyOption=void 0)):g.put(a,b-1))};e.hasOption=function(a){return!!g.get(a)};var h=!1,k=!1;e.registerOption=function(a,b,d,f,g){if(d.$attr.ngValue){var h,k=NaN;d.$observe("value",function(a){var d,f=b.prop("selected");u(k)&&(e.removeOption(h),delete e.selectValueMap[k],d=!0);k=ka(a);h=a;e.selectValueMap[k]=a;e.addOption(a,b);b.attr("value",k);d&&f&&c()})}else f?d.$observe("value",function(a){e.readValue();var d,f=b.prop("selected");u(h)&&(e.removeOption(h),d=!0);h=a;e.addOption(a,b);d&&f&&c()}):
|
||||||
|
g?a.$watch(g,function(a,f){d.$set("value",a);var g=b.prop("selected");f!==a&&e.removeOption(f);e.addOption(a,b);f&&g&&c()}):e.addOption(d.value,b);d.$observe("disabled",function(a){if("true"===a||a&&b.prop("selected"))e.multiple?c(!0):(e.ngModelCtrl.$setViewValue(null),e.ngModelCtrl.$render())});b.on("$destroy",function(){var a=e.readValue(),b=d.value;e.removeOption(b);e.ngModelCtrl.$render();(e.multiple&&a&&-1!==a.indexOf(b)||a===b)&&c(!0)})}}],Ce=function(){return{restrict:"E",require:["select",
|
||||||
|
"?ngModel"],controller:ch,priority:1,link:{pre:function(a,b,d,c){var f=c[0],e=c[1];if(e){if(f.ngModelCtrl=e,b.on("change",function(){f.removeUnknownOption();a.$apply(function(){e.$setViewValue(f.readValue())})}),d.multiple){f.multiple=!0;f.readValue=function(){var a=[];q(b.find("option"),function(b){b.selected&&!b.disabled&&(b=b.value,a.push(b in f.selectValueMap?f.selectValueMap[b]:b))});return a};f.writeValue=function(a){var c=new Pa(a);q(b.find("option"),function(a){a.selected=u(c.get(a.value))||
|
||||||
|
u(c.get(f.selectValueMap[a.value]))})};var g,h=NaN;a.$watch(function(){h!==e.$viewValue||ma(g,e.$viewValue)||(g=ja(e.$viewValue),e.$render());h=e.$viewValue});e.$isEmpty=function(a){return!a||0===a.length}}}else f.registerOption=v},post:function(a,b,d,c){var f=c[1];if(f){var e=c[0];f.$render=function(){e.writeValue(f.$viewValue)}}}}}},De=["$interpolate",function(a){return{restrict:"E",priority:100,compile:function(b,d){var c,f;u(d.ngValue)||(u(d.value)?c=a(d.value,!0):(f=a(b.text(),!0))||d.$set("value",
|
||||||
|
b.text()));return function(a,b,d){var k=b.parent();(k=k.data("$selectController")||k.parent().data("$selectController"))&&k.registerOption(a,b,d,c,f)}}}}],Sc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){c&&(d.required=!0,c.$validators.required=function(a,b){return!d.required||!c.$isEmpty(b)},d.$observe("required",function(){c.$validate()}))}}},Rc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var f,e=d.ngPattern||d.pattern;d.$observe("pattern",
|
||||||
|
function(a){y(a)&&0<a.length&&(a=new RegExp("^"+a+"$"));if(a&&!a.test)throw H("ngPattern")("noregexp",e,a,ya(b));f=a||void 0;c.$validate()});c.$validators.pattern=function(a,b){return c.$isEmpty(b)||x(f)||f.test(b)}}}}},Uc=function(){return{restrict:"A",require:"?ngModel",link:function(a,b,d,c){if(c){var f=-1;d.$observe("maxlength",function(a){a=X(a);f=ga(a)?-1:a;c.$validate()});c.$validators.maxlength=function(a,b){return 0>f||c.$isEmpty(b)||b.length<=f}}}}},Tc=function(){return{restrict:"A",require:"?ngModel",
|
||||||
|
link:function(a,b,d,c){if(c){var f=0;d.$observe("minlength",function(a){f=X(a)||0;c.$validate()});c.$validators.minlength=function(a,b){return c.$isEmpty(b)||b.length>=f}}}}};A.angular.bootstrap?A.console&&console.log("WARNING: Tried to load angular more than once."):(te(),we(Z),Z.module("ngLocale",[],["$provide",function(a){function b(a){a+="";var b=a.indexOf(".");return-1==b?0:a.length-b-1}a.value("$locale",{DATETIME_FORMATS:{AMPMS:["AM","PM"],DAY:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),
|
||||||
|
ERANAMES:["Before Christ","Anno Domini"],ERAS:["BC","AD"],FIRSTDAYOFWEEK:6,MONTH:"January February March April May June July August September October November December".split(" "),SHORTDAY:"Sun Mon Tue Wed Thu Fri Sat".split(" "),SHORTMONTH:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),STANDALONEMONTH:"January February March April May June July August September October November December".split(" "),WEEKENDRANGE:[5,6],fullDate:"EEEE, MMMM d, y",longDate:"MMMM d, y",medium:"MMM d, y h:mm:ss a",
|
||||||
|
mediumDate:"MMM d, y",mediumTime:"h:mm:ss a","short":"M/d/yy h:mm a",shortDate:"M/d/yy",shortTime:"h:mm a"},NUMBER_FORMATS:{CURRENCY_SYM:"$",DECIMAL_SEP:".",GROUP_SEP:",",PATTERNS:[{gSize:3,lgSize:3,maxFrac:3,minFrac:0,minInt:1,negPre:"-",negSuf:"",posPre:"",posSuf:""},{gSize:3,lgSize:3,maxFrac:2,minFrac:2,minInt:1,negPre:"-\u00a4",negSuf:"",posPre:"\u00a4",posSuf:""}]},id:"en-us",localeID:"en_US",pluralCat:function(a,c){var f=a|0,e=c;void 0===e&&(e=Math.min(b(a),3));Math.pow(10,e);return 1==f&&0==
|
||||||
|
e?"one":"other"}})}]),F(function(){oe(A.document,Lc)}))})(window);!window.angular.$$csp().noInlineStyle&&window.angular.element(document.head).prepend('<style type="text/css">@charset "UTF-8";[ng\\:cloak],[ng-cloak],[data-ng-cloak],[x-ng-cloak],.ng-cloak,.x-ng-cloak,.ng-hide:not(.ng-hide-animate){display:none !important;}ng\\:form{display:block;}.ng-animate-shim{visibility:hidden;}.ng-anchor{position:absolute;}</style>');
|
||||||
|
//# sourceMappingURL=angular.min.js.map
|
10
js/libs/angularui-bootstrap-tpls.min.js
vendored
Normal file
10
js/libs/angularui-bootstrap-tpls.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
4840
js/libs/angularui-bootstrap.js
vendored
4840
js/libs/angularui-bootstrap.js
vendored
File diff suppressed because it is too large
Load Diff
9205
js/libs/jquery-2.1.3.js
vendored
9205
js/libs/jquery-2.1.3.js
vendored
File diff suppressed because it is too large
Load Diff
4
js/libs/jquery-2.2.4.min.js
vendored
Normal file
4
js/libs/jquery-2.2.4.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
Load Diff
8
js/libs/jquery.flot.min.js
vendored
Normal file
8
js/libs/jquery.flot.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
|
@ -1,60 +0,0 @@
|
||||||
/* Flot plugin for automatically redrawing plots as the placeholder resizes.
|
|
||||||
|
|
||||||
Copyright (c) 2007-2013 IOLA and Ole Laursen.
|
|
||||||
Licensed under the MIT license.
|
|
||||||
|
|
||||||
It works by listening for changes on the placeholder div (through the jQuery
|
|
||||||
resize event plugin) - if the size changes, it will redraw the plot.
|
|
||||||
|
|
||||||
There are no options. If you need to disable the plugin for some plots, you
|
|
||||||
can just fix the size of their placeholders.
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
/* Inline dependency:
|
|
||||||
* jQuery resize event - v1.1 - 3/14/2010
|
|
||||||
* http://benalman.com/projects/jquery-resize-plugin/
|
|
||||||
*
|
|
||||||
* Copyright (c) 2010 "Cowboy" Ben Alman
|
|
||||||
* Dual licensed under the MIT and GPL licenses.
|
|
||||||
* http://benalman.com/about/license/
|
|
||||||
*/
|
|
||||||
|
|
||||||
(function($,t,n){function p(){for(var n=r.length-1;n>=0;n--){var o=$(r[n]);if(o[0]==t||o.is(":visible")){var h=o.width(),d=o.height(),v=o.data(a);!v||h===v.w&&d===v.h?i[f]=i[l]:(i[f]=i[c],o.trigger(u,[v.w=h,v.h=d]))}else v=o.data(a),v.w=0,v.h=0}s!==null&&(s=t.requestAnimationFrame(p))}var r=[],i=$.resize=$.extend($.resize,{}),s,o="setTimeout",u="resize",a=u+"-special-event",f="delay",l="pendingDelay",c="activeDelay",h="throttleWindow";i[l]=250,i[c]=20,i[f]=i[l],i[h]=!0,$.event.special[u]={setup:function(){if(!i[h]&&this[o])return!1;var t=$(this);r.push(this),t.data(a,{w:t.width(),h:t.height()}),r.length===1&&(s=n,p())},teardown:function(){if(!i[h]&&this[o])return!1;var t=$(this);for(var n=r.length-1;n>=0;n--)if(r[n]==this){r.splice(n,1);break}t.removeData(a),r.length||(cancelAnimationFrame(s),s=null)},add:function(t){function s(t,i,s){var o=$(this),u=o.data(a);u.w=i!==n?i:o.width(),u.h=s!==n?s:o.height(),r.apply(this,arguments)}if(!i[h]&&this[o])return!1;var r;if($.isFunction(t))return r=t,s;r=t.handler,t.handler=s}},t.requestAnimationFrame||(t.requestAnimationFrame=function(){return t.webkitRequestAnimationFrame||t.mozRequestAnimationFrame||t.oRequestAnimationFrame||t.msRequestAnimationFrame||function(e,n){return t.setTimeout(e,i[f])}}()),t.cancelAnimationFrame||(t.cancelAnimationFrame=function(){return t.webkitCancelRequestAnimationFrame||t.mozCancelRequestAnimationFrame||t.oCancelRequestAnimationFrame||t.msCancelRequestAnimationFrame||clearTimeout}())})(jQuery,this);
|
|
||||||
|
|
||||||
(function ($) {
|
|
||||||
var options = { }; // no options
|
|
||||||
|
|
||||||
function init(plot) {
|
|
||||||
function onResize() {
|
|
||||||
var placeholder = plot.getPlaceholder();
|
|
||||||
|
|
||||||
// somebody might have hidden us and we can't plot
|
|
||||||
// when we don't have the dimensions
|
|
||||||
if (placeholder.width() == 0 || placeholder.height() == 0)
|
|
||||||
return;
|
|
||||||
|
|
||||||
plot.resize();
|
|
||||||
plot.setupGrid();
|
|
||||||
plot.draw();
|
|
||||||
}
|
|
||||||
|
|
||||||
function bindEvents(plot, eventHolder) {
|
|
||||||
plot.getPlaceholder().resize(onResize);
|
|
||||||
}
|
|
||||||
|
|
||||||
function shutdown(plot, eventHolder) {
|
|
||||||
plot.getPlaceholder().unbind("resize", onResize);
|
|
||||||
}
|
|
||||||
|
|
||||||
plot.hooks.bindEvents.push(bindEvents);
|
|
||||||
plot.hooks.shutdown.push(shutdown);
|
|
||||||
}
|
|
||||||
|
|
||||||
$.plot.plugins.push({
|
|
||||||
init: init,
|
|
||||||
options: options,
|
|
||||||
name: 'resize',
|
|
||||||
version: '1.0'
|
|
||||||
});
|
|
||||||
})(jQuery);
|
|
7
js/libs/jquery.flot.resize.min.js
vendored
Normal file
7
js/libs/jquery.flot.resize.min.js
vendored
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
/* Javascript plotting library for jQuery, version 0.8.3.
|
||||||
|
|
||||||
|
Copyright (c) 2007-2014 IOLA and Ole Laursen.
|
||||||
|
Licensed under the MIT license.
|
||||||
|
|
||||||
|
*/
|
||||||
|
(function($,e,t){"$:nomunge";var i=[],n=$.resize=$.extend($.resize,{}),a,r=false,s="setTimeout",u="resize",m=u+"-special-event",o="pendingDelay",l="activeDelay",f="throttleWindow";n[o]=200;n[l]=20;n[f]=true;$.event.special[u]={setup:function(){if(!n[f]&&this[s]){return false}var e=$(this);i.push(this);e.data(m,{w:e.width(),h:e.height()});if(i.length===1){a=t;h()}},teardown:function(){if(!n[f]&&this[s]){return false}var e=$(this);for(var t=i.length-1;t>=0;t--){if(i[t]==this){i.splice(t,1);break}}e.removeData(m);if(!i.length){if(r){cancelAnimationFrame(a)}else{clearTimeout(a)}a=null}},add:function(e){if(!n[f]&&this[s]){return false}var i;function a(e,n,a){var r=$(this),s=r.data(m)||{};s.w=n!==t?n:r.width();s.h=a!==t?a:r.height();i.apply(this,arguments)}if($.isFunction(e)){i=e;return a}else{i=e.handler;e.handler=a}}};function h(t){if(r===true){r=t||1}for(var s=i.length-1;s>=0;s--){var l=$(i[s]);if(l[0]==e||l.is(":visible")){var f=l.width(),c=l.height(),d=l.data(m);if(d&&(f!==d.w||c!==d.h)){l.trigger(u,[d.w=f,d.h=c]);r=t||true}}else{d=l.data(m);d.w=0;d.h=0}}if(a!==null){if(r&&(t==null||t-r<1e3)){a=e.requestAnimationFrame(h)}else{a=setTimeout(h,n[o]);r=false}}}if(!e.requestAnimationFrame){e.requestAnimationFrame=function(){return e.webkitRequestAnimationFrame||e.mozRequestAnimationFrame||e.oRequestAnimationFrame||e.msRequestAnimationFrame||function(t,i){return e.setTimeout(function(){t((new Date).getTime())},n[l])}}()}if(!e.cancelAnimationFrame){e.cancelAnimationFrame=function(){return e.webkitCancelRequestAnimationFrame||e.mozCancelRequestAnimationFrame||e.oCancelRequestAnimationFrame||e.msCancelRequestAnimationFrame||clearTimeout}()}})(jQuery,this);(function($){var options={};function init(plot){function onResize(){var placeholder=plot.getPlaceholder();if(placeholder.width()==0||placeholder.height()==0)return;plot.resize();plot.setupGrid();plot.draw()}function bindEvents(plot,eventHolder){plot.getPlaceholder().resize(onResize)}function shutdown(plot,eventHolder){plot.getPlaceholder().unbind("resize",onResize)}plot.hooks.bindEvents.push(bindEvents);plot.hooks.shutdown.push(shutdown)}$.plot.plugins.push({init:init,options:options,name:"resize",version:"1.0"})})(jQuery);
|
|
@ -1,431 +0,0 @@
|
||||||
/* Pretty handling of time axes.
|
|
||||||
|
|
||||||
Copyright (c) 2007-2013 IOLA and Ole Laursen.
|
|
||||||
Licensed under the MIT license.
|
|
||||||
|
|
||||||
Set axis.mode to "time" to enable. See the section "Time series data" in
|
|
||||||
API.txt for details.
|
|
||||||
|
|
||||||
*/
|
|
||||||
|
|
||||||
(function($) {
|
|
||||||
|
|
||||||
var options = {
|
|
||||||
xaxis: {
|
|
||||||
timezone: null, // "browser" for local to the client or timezone for timezone-js
|
|
||||||
timeformat: null, // format string to use
|
|
||||||
twelveHourClock: false, // 12 or 24 time in time mode
|
|
||||||
monthNames: null // list of names of months
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// round to nearby lower multiple of base
|
|
||||||
|
|
||||||
function floorInBase(n, base) {
|
|
||||||
return base * Math.floor(n / base);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Returns a string with the date d formatted according to fmt.
|
|
||||||
// A subset of the Open Group's strftime format is supported.
|
|
||||||
|
|
||||||
function formatDate(d, fmt, monthNames, dayNames) {
|
|
||||||
|
|
||||||
if (typeof d.strftime == "function") {
|
|
||||||
return d.strftime(fmt);
|
|
||||||
}
|
|
||||||
|
|
||||||
var leftPad = function(n, pad) {
|
|
||||||
n = "" + n;
|
|
||||||
pad = "" + (pad == null ? "0" : pad);
|
|
||||||
return n.length == 1 ? pad + n : n;
|
|
||||||
};
|
|
||||||
|
|
||||||
var r = [];
|
|
||||||
var escape = false;
|
|
||||||
var hours = d.getHours();
|
|
||||||
var isAM = hours < 12;
|
|
||||||
|
|
||||||
if (monthNames == null) {
|
|
||||||
monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
|
|
||||||
}
|
|
||||||
|
|
||||||
if (dayNames == null) {
|
|
||||||
dayNames = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
|
|
||||||
}
|
|
||||||
|
|
||||||
var hours12;
|
|
||||||
|
|
||||||
if (hours > 12) {
|
|
||||||
hours12 = hours - 12;
|
|
||||||
} else if (hours == 0) {
|
|
||||||
hours12 = 12;
|
|
||||||
} else {
|
|
||||||
hours12 = hours;
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i = 0; i < fmt.length; ++i) {
|
|
||||||
|
|
||||||
var c = fmt.charAt(i);
|
|
||||||
|
|
||||||
if (escape) {
|
|
||||||
switch (c) {
|
|
||||||
case 'a': c = "" + dayNames[d.getDay()]; break;
|
|
||||||
case 'b': c = "" + monthNames[d.getMonth()]; break;
|
|
||||||
case 'd': c = leftPad(d.getDate()); break;
|
|
||||||
case 'e': c = leftPad(d.getDate(), " "); break;
|
|
||||||
case 'h': // For back-compat with 0.7; remove in 1.0
|
|
||||||
case 'H': c = leftPad(hours); break;
|
|
||||||
case 'I': c = leftPad(hours12); break;
|
|
||||||
case 'l': c = leftPad(hours12, " "); break;
|
|
||||||
case 'm': c = leftPad(d.getMonth() + 1); break;
|
|
||||||
case 'M': c = leftPad(d.getMinutes()); break;
|
|
||||||
// quarters not in Open Group's strftime specification
|
|
||||||
case 'q':
|
|
||||||
c = "" + (Math.floor(d.getMonth() / 3) + 1); break;
|
|
||||||
case 'S': c = leftPad(d.getSeconds()); break;
|
|
||||||
case 'y': c = leftPad(d.getFullYear() % 100); break;
|
|
||||||
case 'Y': c = "" + d.getFullYear(); break;
|
|
||||||
case 'p': c = (isAM) ? ("" + "am") : ("" + "pm"); break;
|
|
||||||
case 'P': c = (isAM) ? ("" + "AM") : ("" + "PM"); break;
|
|
||||||
case 'w': c = "" + d.getDay(); break;
|
|
||||||
}
|
|
||||||
r.push(c);
|
|
||||||
escape = false;
|
|
||||||
} else {
|
|
||||||
if (c == "%") {
|
|
||||||
escape = true;
|
|
||||||
} else {
|
|
||||||
r.push(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return r.join("");
|
|
||||||
}
|
|
||||||
|
|
||||||
// To have a consistent view of time-based data independent of which time
|
|
||||||
// zone the client happens to be in we need a date-like object independent
|
|
||||||
// of time zones. This is done through a wrapper that only calls the UTC
|
|
||||||
// versions of the accessor methods.
|
|
||||||
|
|
||||||
function makeUtcWrapper(d) {
|
|
||||||
|
|
||||||
function addProxyMethod(sourceObj, sourceMethod, targetObj, targetMethod) {
|
|
||||||
sourceObj[sourceMethod] = function() {
|
|
||||||
return targetObj[targetMethod].apply(targetObj, arguments);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
var utc = {
|
|
||||||
date: d
|
|
||||||
};
|
|
||||||
|
|
||||||
// support strftime, if found
|
|
||||||
|
|
||||||
if (d.strftime != undefined) {
|
|
||||||
addProxyMethod(utc, "strftime", d, "strftime");
|
|
||||||
}
|
|
||||||
|
|
||||||
addProxyMethod(utc, "getTime", d, "getTime");
|
|
||||||
addProxyMethod(utc, "setTime", d, "setTime");
|
|
||||||
|
|
||||||
var props = ["Date", "Day", "FullYear", "Hours", "Milliseconds", "Minutes", "Month", "Seconds"];
|
|
||||||
|
|
||||||
for (var p = 0; p < props.length; p++) {
|
|
||||||
addProxyMethod(utc, "get" + props[p], d, "getUTC" + props[p]);
|
|
||||||
addProxyMethod(utc, "set" + props[p], d, "setUTC" + props[p]);
|
|
||||||
}
|
|
||||||
|
|
||||||
return utc;
|
|
||||||
};
|
|
||||||
|
|
||||||
// select time zone strategy. This returns a date-like object tied to the
|
|
||||||
// desired timezone
|
|
||||||
|
|
||||||
function dateGenerator(ts, opts) {
|
|
||||||
if (opts.timezone == "browser") {
|
|
||||||
return new Date(ts);
|
|
||||||
} else if (!opts.timezone || opts.timezone == "utc") {
|
|
||||||
return makeUtcWrapper(new Date(ts));
|
|
||||||
} else if (typeof timezoneJS != "undefined" && typeof timezoneJS.Date != "undefined") {
|
|
||||||
var d = new timezoneJS.Date();
|
|
||||||
// timezone-js is fickle, so be sure to set the time zone before
|
|
||||||
// setting the time.
|
|
||||||
d.setTimezone(opts.timezone);
|
|
||||||
d.setTime(ts);
|
|
||||||
return d;
|
|
||||||
} else {
|
|
||||||
return makeUtcWrapper(new Date(ts));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// map of app. size of time units in milliseconds
|
|
||||||
|
|
||||||
var timeUnitSize = {
|
|
||||||
"second": 1000,
|
|
||||||
"minute": 60 * 1000,
|
|
||||||
"hour": 60 * 60 * 1000,
|
|
||||||
"day": 24 * 60 * 60 * 1000,
|
|
||||||
"month": 30 * 24 * 60 * 60 * 1000,
|
|
||||||
"quarter": 3 * 30 * 24 * 60 * 60 * 1000,
|
|
||||||
"year": 365.2425 * 24 * 60 * 60 * 1000
|
|
||||||
};
|
|
||||||
|
|
||||||
// the allowed tick sizes, after 1 year we use
|
|
||||||
// an integer algorithm
|
|
||||||
|
|
||||||
var baseSpec = [
|
|
||||||
[1, "second"], [2, "second"], [5, "second"], [10, "second"],
|
|
||||||
[30, "second"],
|
|
||||||
[1, "minute"], [2, "minute"], [5, "minute"], [10, "minute"],
|
|
||||||
[30, "minute"],
|
|
||||||
[1, "hour"], [2, "hour"], [4, "hour"],
|
|
||||||
[8, "hour"], [12, "hour"],
|
|
||||||
[1, "day"], [2, "day"], [3, "day"],
|
|
||||||
[0.25, "month"], [0.5, "month"], [1, "month"],
|
|
||||||
[2, "month"]
|
|
||||||
];
|
|
||||||
|
|
||||||
// we don't know which variant(s) we'll need yet, but generating both is
|
|
||||||
// cheap
|
|
||||||
|
|
||||||
var specMonths = baseSpec.concat([[3, "month"], [6, "month"],
|
|
||||||
[1, "year"]]);
|
|
||||||
var specQuarters = baseSpec.concat([[1, "quarter"], [2, "quarter"],
|
|
||||||
[1, "year"]]);
|
|
||||||
|
|
||||||
function init(plot) {
|
|
||||||
plot.hooks.processOptions.push(function (plot, options) {
|
|
||||||
$.each(plot.getAxes(), function(axisName, axis) {
|
|
||||||
|
|
||||||
var opts = axis.options;
|
|
||||||
|
|
||||||
if (opts.mode == "time") {
|
|
||||||
axis.tickGenerator = function(axis) {
|
|
||||||
|
|
||||||
var ticks = [];
|
|
||||||
var d = dateGenerator(axis.min, opts);
|
|
||||||
var minSize = 0;
|
|
||||||
|
|
||||||
// make quarter use a possibility if quarters are
|
|
||||||
// mentioned in either of these options
|
|
||||||
|
|
||||||
var spec = (opts.tickSize && opts.tickSize[1] ===
|
|
||||||
"quarter") ||
|
|
||||||
(opts.minTickSize && opts.minTickSize[1] ===
|
|
||||||
"quarter") ? specQuarters : specMonths;
|
|
||||||
|
|
||||||
if (opts.minTickSize != null) {
|
|
||||||
if (typeof opts.tickSize == "number") {
|
|
||||||
minSize = opts.tickSize;
|
|
||||||
} else {
|
|
||||||
minSize = opts.minTickSize[0] * timeUnitSize[opts.minTickSize[1]];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
for (var i = 0; i < spec.length - 1; ++i) {
|
|
||||||
if (axis.delta < (spec[i][0] * timeUnitSize[spec[i][1]]
|
|
||||||
+ spec[i + 1][0] * timeUnitSize[spec[i + 1][1]]) / 2
|
|
||||||
&& spec[i][0] * timeUnitSize[spec[i][1]] >= minSize) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
var size = spec[i][0];
|
|
||||||
var unit = spec[i][1];
|
|
||||||
|
|
||||||
// special-case the possibility of several years
|
|
||||||
|
|
||||||
if (unit == "year") {
|
|
||||||
|
|
||||||
// if given a minTickSize in years, just use it,
|
|
||||||
// ensuring that it's an integer
|
|
||||||
|
|
||||||
if (opts.minTickSize != null && opts.minTickSize[1] == "year") {
|
|
||||||
size = Math.floor(opts.minTickSize[0]);
|
|
||||||
} else {
|
|
||||||
|
|
||||||
var magn = Math.pow(10, Math.floor(Math.log(axis.delta / timeUnitSize.year) / Math.LN10));
|
|
||||||
var norm = (axis.delta / timeUnitSize.year) / magn;
|
|
||||||
|
|
||||||
if (norm < 1.5) {
|
|
||||||
size = 1;
|
|
||||||
} else if (norm < 3) {
|
|
||||||
size = 2;
|
|
||||||
} else if (norm < 7.5) {
|
|
||||||
size = 5;
|
|
||||||
} else {
|
|
||||||
size = 10;
|
|
||||||
}
|
|
||||||
|
|
||||||
size *= magn;
|
|
||||||
}
|
|
||||||
|
|
||||||
// minimum size for years is 1
|
|
||||||
|
|
||||||
if (size < 1) {
|
|
||||||
size = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
axis.tickSize = opts.tickSize || [size, unit];
|
|
||||||
var tickSize = axis.tickSize[0];
|
|
||||||
unit = axis.tickSize[1];
|
|
||||||
|
|
||||||
var step = tickSize * timeUnitSize[unit];
|
|
||||||
|
|
||||||
if (unit == "second") {
|
|
||||||
d.setSeconds(floorInBase(d.getSeconds(), tickSize));
|
|
||||||
} else if (unit == "minute") {
|
|
||||||
d.setMinutes(floorInBase(d.getMinutes(), tickSize));
|
|
||||||
} else if (unit == "hour") {
|
|
||||||
d.setHours(floorInBase(d.getHours(), tickSize));
|
|
||||||
} else if (unit == "month") {
|
|
||||||
d.setMonth(floorInBase(d.getMonth(), tickSize));
|
|
||||||
} else if (unit == "quarter") {
|
|
||||||
d.setMonth(3 * floorInBase(d.getMonth() / 3,
|
|
||||||
tickSize));
|
|
||||||
} else if (unit == "year") {
|
|
||||||
d.setFullYear(floorInBase(d.getFullYear(), tickSize));
|
|
||||||
}
|
|
||||||
|
|
||||||
// reset smaller components
|
|
||||||
|
|
||||||
d.setMilliseconds(0);
|
|
||||||
|
|
||||||
if (step >= timeUnitSize.minute) {
|
|
||||||
d.setSeconds(0);
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.hour) {
|
|
||||||
d.setMinutes(0);
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.day) {
|
|
||||||
d.setHours(0);
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.day * 4) {
|
|
||||||
d.setDate(1);
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.month * 2) {
|
|
||||||
d.setMonth(floorInBase(d.getMonth(), 3));
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.quarter * 2) {
|
|
||||||
d.setMonth(floorInBase(d.getMonth(), 6));
|
|
||||||
}
|
|
||||||
if (step >= timeUnitSize.year) {
|
|
||||||
d.setMonth(0);
|
|
||||||
}
|
|
||||||
|
|
||||||
var carry = 0;
|
|
||||||
var v = Number.NaN;
|
|
||||||
var prev;
|
|
||||||
|
|
||||||
do {
|
|
||||||
|
|
||||||
prev = v;
|
|
||||||
v = d.getTime();
|
|
||||||
ticks.push(v);
|
|
||||||
|
|
||||||
if (unit == "month" || unit == "quarter") {
|
|
||||||
if (tickSize < 1) {
|
|
||||||
|
|
||||||
// a bit complicated - we'll divide the
|
|
||||||
// month/quarter up but we need to take
|
|
||||||
// care of fractions so we don't end up in
|
|
||||||
// the middle of a day
|
|
||||||
|
|
||||||
d.setDate(1);
|
|
||||||
var start = d.getTime();
|
|
||||||
d.setMonth(d.getMonth() +
|
|
||||||
(unit == "quarter" ? 3 : 1));
|
|
||||||
var end = d.getTime();
|
|
||||||
d.setTime(v + carry * timeUnitSize.hour + (end - start) * tickSize);
|
|
||||||
carry = d.getHours();
|
|
||||||
d.setHours(0);
|
|
||||||
} else {
|
|
||||||
d.setMonth(d.getMonth() +
|
|
||||||
tickSize * (unit == "quarter" ? 3 : 1));
|
|
||||||
}
|
|
||||||
} else if (unit == "year") {
|
|
||||||
d.setFullYear(d.getFullYear() + tickSize);
|
|
||||||
} else {
|
|
||||||
d.setTime(v + step);
|
|
||||||
}
|
|
||||||
} while (v < axis.max && v != prev);
|
|
||||||
|
|
||||||
return ticks;
|
|
||||||
};
|
|
||||||
|
|
||||||
axis.tickFormatter = function (v, axis) {
|
|
||||||
|
|
||||||
var d = dateGenerator(v, axis.options);
|
|
||||||
|
|
||||||
// first check global format
|
|
||||||
|
|
||||||
if (opts.timeformat != null) {
|
|
||||||
return formatDate(d, opts.timeformat, opts.monthNames, opts.dayNames);
|
|
||||||
}
|
|
||||||
|
|
||||||
// possibly use quarters if quarters are mentioned in
|
|
||||||
// any of these places
|
|
||||||
|
|
||||||
var useQuarters = (axis.options.tickSize &&
|
|
||||||
axis.options.tickSize[1] == "quarter") ||
|
|
||||||
(axis.options.minTickSize &&
|
|
||||||
axis.options.minTickSize[1] == "quarter");
|
|
||||||
|
|
||||||
var t = axis.tickSize[0] * timeUnitSize[axis.tickSize[1]];
|
|
||||||
var span = axis.max - axis.min;
|
|
||||||
var suffix = (opts.twelveHourClock) ? " %p" : "";
|
|
||||||
var hourCode = (opts.twelveHourClock) ? "%I" : "%H";
|
|
||||||
var fmt;
|
|
||||||
|
|
||||||
if (t < timeUnitSize.minute) {
|
|
||||||
fmt = hourCode + ":%M:%S" + suffix;
|
|
||||||
} else if (t < timeUnitSize.day) {
|
|
||||||
if (span < 2 * timeUnitSize.day) {
|
|
||||||
fmt = hourCode + ":%M" + suffix;
|
|
||||||
} else {
|
|
||||||
fmt = "%b %d " + hourCode + ":%M" + suffix;
|
|
||||||
}
|
|
||||||
} else if (t < timeUnitSize.month) {
|
|
||||||
fmt = "%b %d";
|
|
||||||
} else if ((useQuarters && t < timeUnitSize.quarter) ||
|
|
||||||
(!useQuarters && t < timeUnitSize.year)) {
|
|
||||||
if (span < timeUnitSize.year) {
|
|
||||||
fmt = "%b";
|
|
||||||
} else {
|
|
||||||
fmt = "%b %Y";
|
|
||||||
}
|
|
||||||
} else if (useQuarters && t < timeUnitSize.year) {
|
|
||||||
if (span < timeUnitSize.year) {
|
|
||||||
fmt = "Q%q";
|
|
||||||
} else {
|
|
||||||
fmt = "Q%q %Y";
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
fmt = "%Y";
|
|
||||||
}
|
|
||||||
|
|
||||||
var rt = formatDate(d, fmt, opts.monthNames, opts.dayNames);
|
|
||||||
|
|
||||||
return rt;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
$.plot.plugins.push({
|
|
||||||
init: init,
|
|
||||||
options: options,
|
|
||||||
name: 'time',
|
|
||||||
version: '1.0'
|
|
||||||
});
|
|
||||||
|
|
||||||
// Time-axis support used to be in Flot core, which exposed the
|
|
||||||
// formatDate function on the plot object. Various plugins depend
|
|
||||||
// on the function, so we need to re-expose it here.
|
|
||||||
|
|
||||||
$.plot.formatDate = formatDate;
|
|
||||||
|
|
||||||
})(jQuery);
|
|
7
js/libs/jquery.flot.time.min.js
vendored
Normal file
7
js/libs/jquery.flot.time.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
136
js/libs/lodash-4.17.3.min.js
vendored
Normal file
136
js/libs/lodash-4.17.3.min.js
vendored
Normal file
|
@ -0,0 +1,136 @@
|
||||||
|
/**
|
||||||
|
* @license
|
||||||
|
* Lodash lodash.com/license | Underscore.js 1.8.3 underscorejs.org/LICENSE
|
||||||
|
*/
|
||||||
|
;(function(){function n(n,t){return n.set(t[0],t[1]),n}function t(n,t){return n.add(t),n}function r(n,t,r){switch(r.length){case 0:return n.call(t);case 1:return n.call(t,r[0]);case 2:return n.call(t,r[0],r[1]);case 3:return n.call(t,r[0],r[1],r[2])}return n.apply(t,r)}function e(n,t,r,e){for(var u=-1,i=null==n?0:n.length;++u<i;){var o=n[u];t(e,o,r(o),n)}return e}function u(n,t){for(var r=-1,e=null==n?0:n.length;++r<e&&false!==t(n[r],r,n););return n}function i(n,t){for(var r=null==n?0:n.length;r--&&false!==t(n[r],r,n););
|
||||||
|
return n}function o(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(!t(n[r],r,n))return false;return true}function f(n,t){for(var r=-1,e=null==n?0:n.length,u=0,i=[];++r<e;){var o=n[r];t(o,r,n)&&(i[u++]=o)}return i}function c(n,t){return!(null==n||!n.length)&&-1<d(n,t,0)}function a(n,t,r){for(var e=-1,u=null==n?0:n.length;++e<u;)if(r(t,n[e]))return true;return false}function l(n,t){for(var r=-1,e=null==n?0:n.length,u=Array(e);++r<e;)u[r]=t(n[r],r,n);return u}function s(n,t){for(var r=-1,e=t.length,u=n.length;++r<e;)n[u+r]=t[r];
|
||||||
|
return n}function h(n,t,r,e){var u=-1,i=null==n?0:n.length;for(e&&i&&(r=n[++u]);++u<i;)r=t(r,n[u],u,n);return r}function p(n,t,r,e){var u=null==n?0:n.length;for(e&&u&&(r=n[--u]);u--;)r=t(r,n[u],u,n);return r}function _(n,t){for(var r=-1,e=null==n?0:n.length;++r<e;)if(t(n[r],r,n))return true;return false}function v(n,t,r){var e;return r(n,function(n,r,u){if(t(n,r,u))return e=r,false}),e}function g(n,t,r,e){var u=n.length;for(r+=e?1:-1;e?r--:++r<u;)if(t(n[r],r,n))return r;return-1}function d(n,t,r){if(t===t)n:{
|
||||||
|
--r;for(var e=n.length;++r<e;)if(n[r]===t){n=r;break n}n=-1}else n=g(n,b,r);return n}function y(n,t,r,e){--r;for(var u=n.length;++r<u;)if(e(n[r],t))return r;return-1}function b(n){return n!==n}function x(n,t){var r=null==n?0:n.length;return r?k(n,t)/r:P}function j(n){return function(t){return null==t?F:t[n]}}function w(n){return function(t){return null==n?F:n[t]}}function m(n,t,r,e,u){return u(n,function(n,u,i){r=e?(e=false,n):t(r,n,u,i)}),r}function A(n,t){var r=n.length;for(n.sort(t);r--;)n[r]=n[r].c;
|
||||||
|
return n}function k(n,t){for(var r,e=-1,u=n.length;++e<u;){var i=t(n[e]);i!==F&&(r=r===F?i:r+i)}return r}function E(n,t){for(var r=-1,e=Array(n);++r<n;)e[r]=t(r);return e}function O(n,t){return l(t,function(t){return[t,n[t]]})}function S(n){return function(t){return n(t)}}function I(n,t){return l(t,function(t){return n[t]})}function R(n,t){return n.has(t)}function z(n,t){for(var r=-1,e=n.length;++r<e&&-1<d(t,n[r],0););return r}function W(n,t){for(var r=n.length;r--&&-1<d(t,n[r],0););return r}function B(n){
|
||||||
|
return"\\"+Tn[n]}function L(n){var t=-1,r=Array(n.size);return n.forEach(function(n,e){r[++t]=[e,n]}),r}function U(n,t){return function(r){return n(t(r))}}function C(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r];o!==t&&"__lodash_placeholder__"!==o||(n[r]="__lodash_placeholder__",i[u++]=r)}return i}function D(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=n}),r}function M(n){var t=-1,r=Array(n.size);return n.forEach(function(n){r[++t]=[n,n]}),r}function T(n){if(Bn.test(n)){
|
||||||
|
for(var t=zn.lastIndex=0;zn.test(n);)++t;n=t}else n=tt(n);return n}function $(n){return Bn.test(n)?n.match(zn)||[]:n.split("")}var F,N=1/0,P=NaN,Z=[["ary",128],["bind",1],["bindKey",2],["curry",8],["curryRight",16],["flip",512],["partial",32],["partialRight",64],["rearg",256]],q=/\b__p\+='';/g,V=/\b(__p\+=)''\+/g,K=/(__e\(.*?\)|\b__t\))\+'';/g,G=/&(?:amp|lt|gt|quot|#39);/g,H=/[&<>"']/g,J=RegExp(G.source),Y=RegExp(H.source),Q=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,nn=/<%=([\s\S]+?)%>/g,tn=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,rn=/^\w*$/,en=/^\./,un=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,on=/[\\^$.*+?()[\]{}|]/g,fn=RegExp(on.source),cn=/^\s+|\s+$/g,an=/^\s+/,ln=/\s+$/,sn=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,hn=/\{\n\/\* \[wrapped with (.+)\] \*/,pn=/,? & /,_n=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,vn=/\\(\\)?/g,gn=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,dn=/\w*$/,yn=/^[-+]0x[0-9a-f]+$/i,bn=/^0b[01]+$/i,xn=/^\[object .+?Constructor\]$/,jn=/^0o[0-7]+$/i,wn=/^(?:0|[1-9]\d*)$/,mn=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,An=/($^)/,kn=/['\n\r\u2028\u2029\\]/g,En="[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?(?:\\u200d(?:[^\\ud800-\\udfff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])[\\ufe0e\\ufe0f]?(?:[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|\\ud83c[\\udffb-\\udfff])?)*",On="(?:[\\u2700-\\u27bf]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff])"+En,Sn="(?:[^\\ud800-\\udfff][\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]?|[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]|(?:\\ud83c[\\udde6-\\uddff]){2}|[\\ud800-\\udbff][\\udc00-\\udfff]|[\\ud800-\\udfff])",In=RegExp("['\u2019]","g"),Rn=RegExp("[\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff]","g"),zn=RegExp("\\ud83c[\\udffb-\\udfff](?=\\ud83c[\\udffb-\\udfff])|"+Sn+En,"g"),Wn=RegExp(["[A-Z\\xc0-\\xd6\\xd8-\\xde]?[a-z\\xdf-\\xf6\\xf8-\\xff]+(?:['\u2019](?:d|ll|m|re|s|t|ve))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde]|$)|(?:[A-Z\\xc0-\\xd6\\xd8-\\xde]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?(?=[\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000]|[A-Z\\xc0-\\xd6\\xd8-\\xde](?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])|$)|[A-Z\\xc0-\\xd6\\xd8-\\xde]?(?:[a-z\\xdf-\\xf6\\xf8-\\xff]|[^\\ud800-\\udfff\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000\\d+\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde])+(?:['\u2019](?:d|ll|m|re|s|t|ve))?|[A-Z\\xc0-\\xd6\\xd8-\\xde]+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?|\\d*(?:(?:1ST|2ND|3RD|(?![123])\\dTH)\\b)|\\d*(?:(?:1st|2nd|3rd|(?![123])\\dth)\\b)|\\d+",On].join("|"),"g"),Bn=RegExp("[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]"),Ln=/[a-z][A-Z]|[A-Z]{2,}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Un="Array Buffer DataView Date Error Float32Array Float64Array Function Int8Array Int16Array Int32Array Map Math Object Promise RegExp Set String Symbol TypeError Uint8Array Uint8ClampedArray Uint16Array Uint32Array WeakMap _ clearTimeout isFinite parseInt setTimeout".split(" "),Cn={};
|
||||||
|
Cn["[object Float32Array]"]=Cn["[object Float64Array]"]=Cn["[object Int8Array]"]=Cn["[object Int16Array]"]=Cn["[object Int32Array]"]=Cn["[object Uint8Array]"]=Cn["[object Uint8ClampedArray]"]=Cn["[object Uint16Array]"]=Cn["[object Uint32Array]"]=true,Cn["[object Arguments]"]=Cn["[object Array]"]=Cn["[object ArrayBuffer]"]=Cn["[object Boolean]"]=Cn["[object DataView]"]=Cn["[object Date]"]=Cn["[object Error]"]=Cn["[object Function]"]=Cn["[object Map]"]=Cn["[object Number]"]=Cn["[object Object]"]=Cn["[object RegExp]"]=Cn["[object Set]"]=Cn["[object String]"]=Cn["[object WeakMap]"]=false;
|
||||||
|
var Dn={};Dn["[object Arguments]"]=Dn["[object Array]"]=Dn["[object ArrayBuffer]"]=Dn["[object DataView]"]=Dn["[object Boolean]"]=Dn["[object Date]"]=Dn["[object Float32Array]"]=Dn["[object Float64Array]"]=Dn["[object Int8Array]"]=Dn["[object Int16Array]"]=Dn["[object Int32Array]"]=Dn["[object Map]"]=Dn["[object Number]"]=Dn["[object Object]"]=Dn["[object RegExp]"]=Dn["[object Set]"]=Dn["[object String]"]=Dn["[object Symbol]"]=Dn["[object Uint8Array]"]=Dn["[object Uint8ClampedArray]"]=Dn["[object Uint16Array]"]=Dn["[object Uint32Array]"]=true,
|
||||||
|
Dn["[object Error]"]=Dn["[object Function]"]=Dn["[object WeakMap]"]=false;var Mn,Tn={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},$n=parseFloat,Fn=parseInt,Nn=typeof global=="object"&&global&&global.Object===Object&&global,Pn=typeof self=="object"&&self&&self.Object===Object&&self,Zn=Nn||Pn||Function("return this")(),qn=typeof exports=="object"&&exports&&!exports.nodeType&&exports,Vn=qn&&typeof module=="object"&&module&&!module.nodeType&&module,Kn=Vn&&Vn.exports===qn,Gn=Kn&&Nn.process;
|
||||||
|
n:{try{Mn=Gn&&Gn.binding&&Gn.binding("util");break n}catch(n){}Mn=void 0}var Hn=Mn&&Mn.isArrayBuffer,Jn=Mn&&Mn.isDate,Yn=Mn&&Mn.isMap,Qn=Mn&&Mn.isRegExp,Xn=Mn&&Mn.isSet,nt=Mn&&Mn.isTypedArray,tt=j("length"),rt=w({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I",
|
||||||
|
"\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C",
|
||||||
|
"\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i",
|
||||||
|
"\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S",
|
||||||
|
"\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe",
|
||||||
|
"\u0149":"'n","\u017f":"s"}),et=w({"&":"&","<":"<",">":">",'"':""","'":"'"}),ut=w({"&":"&","<":"<",">":">",""":'"',"'":"'"}),it=function w(En){function On(n){if(xu(n)&&!af(n)&&!(n instanceof Mn)){if(n instanceof zn)return n;if(ci.call(n,"__wrapped__"))return Pe(n)}return new zn(n)}function Sn(){}function zn(n,t){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=F}function Mn(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,
|
||||||
|
this.__filtered__=false,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function Tn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Nn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function Pn(n){var t=-1,r=null==n?0:n.length;for(this.clear();++t<r;){var e=n[t];this.set(e[0],e[1])}}function qn(n){var t=-1,r=null==n?0:n.length;for(this.__data__=new Pn;++t<r;)this.add(n[t])}function Vn(n){
|
||||||
|
this.size=(this.__data__=new Nn(n)).size}function Gn(n,t){var r,e=af(n),u=!e&&cf(n),i=!e&&!u&&sf(n),o=!e&&!u&&!i&&gf(n),u=(e=e||u||i||o)?E(n.length,ri):[],f=u.length;for(r in n)!t&&!ci.call(n,r)||e&&("length"==r||i&&("offset"==r||"parent"==r)||o&&("buffer"==r||"byteLength"==r||"byteOffset"==r)||Re(r,f))||u.push(r);return u}function tt(n){var t=n.length;return t?n[cr(0,t-1)]:F}function ot(n,t){return Te(Mr(n),gt(t,0,n.length))}function ft(n){return Te(Mr(n))}function ct(n,t,r){(r===F||hu(n[t],r))&&(r!==F||t in n)||_t(n,t,r);
|
||||||
|
}function at(n,t,r){var e=n[t];ci.call(n,t)&&hu(e,r)&&(r!==F||t in n)||_t(n,t,r)}function lt(n,t){for(var r=n.length;r--;)if(hu(n[r][0],t))return r;return-1}function st(n,t,r,e){return oo(n,function(n,u,i){t(e,n,r(n),i)}),e}function ht(n,t){return n&&Tr(t,Lu(t),n)}function pt(n,t){return n&&Tr(t,Uu(t),n)}function _t(n,t,r){"__proto__"==t&&Ei?Ei(n,t,{configurable:true,enumerable:true,value:r,writable:true}):n[t]=r}function vt(n,t){for(var r=-1,e=t.length,u=Hu(e),i=null==n;++r<e;)u[r]=i?F:Wu(n,t[r]);return u;
|
||||||
|
}function gt(n,t,r){return n===n&&(r!==F&&(n=n<=r?n:r),t!==F&&(n=n>=t?n:t)),n}function dt(n,t,r,e,i,o){var f,c=1&t,a=2&t,l=4&t;if(r&&(f=i?r(n,e,i,o):r(n)),f!==F)return f;if(!bu(n))return n;if(e=af(n)){if(f=Ee(n),!c)return Mr(n,f)}else{var s=yo(n),h="[object Function]"==s||"[object GeneratorFunction]"==s;if(sf(n))return Wr(n,c);if("[object Object]"==s||"[object Arguments]"==s||h&&!i){if(f=a||h?{}:Oe(n),!c)return a?Fr(n,pt(f,n)):$r(n,ht(f,n))}else{if(!Dn[s])return i?n:{};f=Se(n,s,dt,c)}}if(o||(o=new Vn),
|
||||||
|
i=o.get(n))return i;o.set(n,f);var a=l?a?ye:de:a?Uu:Lu,p=e?F:a(n);return u(p||n,function(e,u){p&&(u=e,e=n[u]),at(f,u,dt(e,t,r,u,n,o))}),f}function yt(n){var t=Lu(n);return function(r){return bt(r,n,t)}}function bt(n,t,r){var e=r.length;if(null==n)return!e;for(n=ni(n);e--;){var u=r[e],i=t[u],o=n[u];if(o===F&&!(u in n)||!i(o))return false}return true}function xt(n,t,r){if(typeof n!="function")throw new ei("Expected a function");return jo(function(){n.apply(F,r)},t)}function jt(n,t,r,e){var u=-1,i=c,o=true,f=n.length,s=[],h=t.length;
|
||||||
|
if(!f)return s;r&&(t=l(t,S(r))),e?(i=a,o=false):200<=t.length&&(i=R,o=false,t=new qn(t));n:for(;++u<f;){var p=n[u],_=null==r?p:r(p),p=e||0!==p?p:0;if(o&&_===_){for(var v=h;v--;)if(t[v]===_)continue n;s.push(p)}else i(t,_,e)||s.push(p)}return s}function wt(n,t){var r=true;return oo(n,function(n,e,u){return r=!!t(n,e,u)}),r}function mt(n,t,r){for(var e=-1,u=n.length;++e<u;){var i=n[e],o=t(i);if(null!=o&&(f===F?o===o&&!Au(o):r(o,f)))var f=o,c=i}return c}function At(n,t){var r=[];return oo(n,function(n,e,u){
|
||||||
|
t(n,e,u)&&r.push(n)}),r}function kt(n,t,r,e,u){var i=-1,o=n.length;for(r||(r=Ie),u||(u=[]);++i<o;){var f=n[i];0<t&&r(f)?1<t?kt(f,t-1,r,e,u):s(u,f):e||(u[u.length]=f)}return u}function Et(n,t){return n&&co(n,t,Lu)}function Ot(n,t){return n&&ao(n,t,Lu)}function St(n,t){return f(t,function(t){return gu(n[t])})}function It(n,t){t=Rr(t,n);for(var r=0,e=t.length;null!=n&&r<e;)n=n[$e(t[r++])];return r&&r==e?n:F}function Rt(n,t,r){return t=t(n),af(n)?t:s(t,r(n))}function zt(n){if(null==n)n=n===F?"[object Undefined]":"[object Null]";else if(ki&&ki in ni(n)){
|
||||||
|
var t=ci.call(n,ki),r=n[ki];try{n[ki]=F;var e=true}catch(n){}var u=si.call(n);e&&(t?n[ki]=r:delete n[ki]),n=u}else n=si.call(n);return n}function Wt(n,t){return n>t}function Bt(n,t){return null!=n&&ci.call(n,t)}function Lt(n,t){return null!=n&&t in ni(n)}function Ut(n,t,r){for(var e=r?a:c,u=n[0].length,i=n.length,o=i,f=Hu(i),s=1/0,h=[];o--;){var p=n[o];o&&t&&(p=l(p,S(t))),s=Mi(p.length,s),f[o]=!r&&(t||120<=u&&120<=p.length)?new qn(o&&p):F}var p=n[0],_=-1,v=f[0];n:for(;++_<u&&h.length<s;){var g=p[_],d=t?t(g):g,g=r||0!==g?g:0;
|
||||||
|
if(v?!R(v,d):!e(h,d,r)){for(o=i;--o;){var y=f[o];if(y?!R(y,d):!e(n[o],d,r))continue n}v&&v.push(d),h.push(g)}}return h}function Ct(n,t,r){var e={};return Et(n,function(n,u,i){t(e,r(n),u,i)}),e}function Dt(n,t,e){return t=Rr(t,n),n=2>t.length?n:It(n,vr(t,0,-1)),t=null==n?n:n[$e(Ge(t))],null==t?F:r(t,n,e)}function Mt(n){return xu(n)&&"[object Arguments]"==zt(n)}function Tt(n){return xu(n)&&"[object ArrayBuffer]"==zt(n)}function $t(n){return xu(n)&&"[object Date]"==zt(n)}function Ft(n,t,r,e,u){if(n===t)t=true;else if(null==n||null==t||!xu(n)&&!xu(t))t=n!==n&&t!==t;else n:{
|
||||||
|
var i=af(n),o=af(t),f=i?"[object Array]":yo(n),c=o?"[object Array]":yo(t),f="[object Arguments]"==f?"[object Object]":f,c="[object Arguments]"==c?"[object Object]":c,a="[object Object]"==f,o="[object Object]"==c;if((c=f==c)&&sf(n)){if(!sf(t)){t=false;break n}i=true,a=false}if(c&&!a)u||(u=new Vn),t=i||gf(n)?_e(n,t,r,e,Ft,u):ve(n,t,f,r,e,Ft,u);else{if(!(1&r)&&(i=a&&ci.call(n,"__wrapped__"),f=o&&ci.call(t,"__wrapped__"),i||f)){n=i?n.value():n,t=f?t.value():t,u||(u=new Vn),t=Ft(n,t,r,e,u);break n}if(c)t:if(u||(u=new Vn),
|
||||||
|
i=1&r,f=de(n),o=f.length,c=de(t).length,o==c||i){for(a=o;a--;){var l=f[a];if(!(i?l in t:ci.call(t,l))){t=false;break t}}if((c=u.get(n))&&u.get(t))t=c==t;else{c=true,u.set(n,t),u.set(t,n);for(var s=i;++a<o;){var l=f[a],h=n[l],p=t[l];if(e)var _=i?e(p,h,l,t,n,u):e(h,p,l,n,t,u);if(_===F?h!==p&&!Ft(h,p,r,e,u):!_){c=false;break}s||(s="constructor"==l)}c&&!s&&(r=n.constructor,e=t.constructor,r!=e&&"constructor"in n&&"constructor"in t&&!(typeof r=="function"&&r instanceof r&&typeof e=="function"&&e instanceof e)&&(c=false)),
|
||||||
|
u.delete(n),u.delete(t),t=c}}else t=false;else t=false}}return t}function Nt(n){return xu(n)&&"[object Map]"==yo(n)}function Pt(n,t,r,e){var u=r.length,i=u,o=!e;if(null==n)return!i;for(n=ni(n);u--;){var f=r[u];if(o&&f[2]?f[1]!==n[f[0]]:!(f[0]in n))return false}for(;++u<i;){var f=r[u],c=f[0],a=n[c],l=f[1];if(o&&f[2]){if(a===F&&!(c in n))return false}else{if(f=new Vn,e)var s=e(a,l,c,n,t,f);if(s===F?!Ft(l,a,3,e,f):!s)return false}}return true}function Zt(n){return!(!bu(n)||li&&li in n)&&(gu(n)?_i:xn).test(Fe(n))}function qt(n){
|
||||||
|
return xu(n)&&"[object RegExp]"==zt(n)}function Vt(n){return xu(n)&&"[object Set]"==yo(n)}function Kt(n){return xu(n)&&yu(n.length)&&!!Cn[zt(n)]}function Gt(n){return typeof n=="function"?n:null==n?Nu:typeof n=="object"?af(n)?Xt(n[0],n[1]):Qt(n):Vu(n)}function Ht(n){if(!Le(n))return Ci(n);var t,r=[];for(t in ni(n))ci.call(n,t)&&"constructor"!=t&&r.push(t);return r}function Jt(n,t){return n<t}function Yt(n,t){var r=-1,e=pu(n)?Hu(n.length):[];return oo(n,function(n,u,i){e[++r]=t(n,u,i)}),e}function Qt(n){
|
||||||
|
var t=me(n);return 1==t.length&&t[0][2]?Ue(t[0][0],t[0][1]):function(r){return r===n||Pt(r,n,t)}}function Xt(n,t){return We(n)&&t===t&&!bu(t)?Ue($e(n),t):function(r){var e=Wu(r,n);return e===F&&e===t?Bu(r,n):Ft(t,e,3)}}function nr(n,t,r,e,u){n!==t&&co(t,function(i,o){if(bu(i)){u||(u=new Vn);var f=u,c=n[o],a=t[o],l=f.get(a);if(l)ct(n,o,l);else{var l=e?e(c,a,o+"",n,t,f):F,s=l===F;if(s){var h=af(a),p=!h&&sf(a),_=!h&&!p&&gf(a),l=a;h||p||_?af(c)?l=c:_u(c)?l=Mr(c):p?(s=false,l=Wr(a,true)):_?(s=false,l=Lr(a,true)):l=[]:wu(a)||cf(a)?(l=c,
|
||||||
|
cf(c)?l=Ru(c):(!bu(c)||r&&gu(c))&&(l=Oe(a))):s=false}s&&(f.set(a,l),nr(l,a,r,e,f),f.delete(a)),ct(n,o,l)}}else f=e?e(n[o],i,o+"",n,t,u):F,f===F&&(f=i),ct(n,o,f)},Uu)}function tr(n,t){var r=n.length;if(r)return t+=0>t?r:0,Re(t,r)?n[t]:F}function rr(n,t,r){var e=-1;return t=l(t.length?t:[Nu],S(je())),n=Yt(n,function(n){return{a:l(t,function(t){return t(n)}),b:++e,c:n}}),A(n,function(n,t){var e;n:{e=-1;for(var u=n.a,i=t.a,o=u.length,f=r.length;++e<o;){var c=Ur(u[e],i[e]);if(c){e=e>=f?c:c*("desc"==r[e]?-1:1);
|
||||||
|
break n}}e=n.b-t.b}return e})}function er(n,t){return ur(n,t,function(t,r){return Bu(n,r)})}function ur(n,t,r){for(var e=-1,u=t.length,i={};++e<u;){var o=t[e],f=It(n,o);r(f,o)&&pr(i,Rr(o,n),f)}return i}function ir(n){return function(t){return It(t,n)}}function or(n,t,r,e){var u=e?y:d,i=-1,o=t.length,f=n;for(n===t&&(t=Mr(t)),r&&(f=l(n,S(r)));++i<o;)for(var c=0,a=t[i],a=r?r(a):a;-1<(c=u(f,a,c,e));)f!==n&&wi.call(f,c,1),wi.call(n,c,1);return n}function fr(n,t){for(var r=n?t.length:0,e=r-1;r--;){var u=t[r];
|
||||||
|
if(r==e||u!==i){var i=u;Re(u)?wi.call(n,u,1):mr(n,u)}}}function cr(n,t){return n+zi(Fi()*(t-n+1))}function ar(n,t){var r="";if(!n||1>t||9007199254740991<t)return r;do t%2&&(r+=n),(t=zi(t/2))&&(n+=n);while(t);return r}function lr(n,t){return wo(Ce(n,t,Nu),n+"")}function sr(n){return tt(Du(n))}function hr(n,t){var r=Du(n);return Te(r,gt(t,0,r.length))}function pr(n,t,r,e){if(!bu(n))return n;t=Rr(t,n);for(var u=-1,i=t.length,o=i-1,f=n;null!=f&&++u<i;){var c=$e(t[u]),a=r;if(u!=o){var l=f[c],a=e?e(l,c,f):F;
|
||||||
|
a===F&&(a=bu(l)?l:Re(t[u+1])?[]:{})}at(f,c,a),f=f[c]}return n}function _r(n){return Te(Du(n))}function vr(n,t,r){var e=-1,u=n.length;for(0>t&&(t=-t>u?0:u+t),r=r>u?u:r,0>r&&(r+=u),u=t>r?0:r-t>>>0,t>>>=0,r=Hu(u);++e<u;)r[e]=n[e+t];return r}function gr(n,t){var r;return oo(n,function(n,e,u){return r=t(n,e,u),!r}),!!r}function dr(n,t,r){var e=0,u=null==n?e:n.length;if(typeof t=="number"&&t===t&&2147483647>=u){for(;e<u;){var i=e+u>>>1,o=n[i];null!==o&&!Au(o)&&(r?o<=t:o<t)?e=i+1:u=i}return u}return yr(n,t,Nu,r);
|
||||||
|
}function yr(n,t,r,e){t=r(t);for(var u=0,i=null==n?0:n.length,o=t!==t,f=null===t,c=Au(t),a=t===F;u<i;){var l=zi((u+i)/2),s=r(n[l]),h=s!==F,p=null===s,_=s===s,v=Au(s);(o?e||_:a?_&&(e||h):f?_&&h&&(e||!p):c?_&&h&&!p&&(e||!v):p||v?0:e?s<=t:s<t)?u=l+1:i=l}return Mi(i,4294967294)}function br(n,t){for(var r=-1,e=n.length,u=0,i=[];++r<e;){var o=n[r],f=t?t(o):o;if(!r||!hu(f,c)){var c=f;i[u++]=0===o?0:o}}return i}function xr(n){return typeof n=="number"?n:Au(n)?P:+n}function jr(n){if(typeof n=="string")return n;
|
||||||
|
if(af(n))return l(n,jr)+"";if(Au(n))return uo?uo.call(n):"";var t=n+"";return"0"==t&&1/n==-N?"-0":t}function wr(n,t,r){var e=-1,u=c,i=n.length,o=true,f=[],l=f;if(r)o=false,u=a;else if(200<=i){if(u=t?null:po(n))return D(u);o=false,u=R,l=new qn}else l=t?[]:f;n:for(;++e<i;){var s=n[e],h=t?t(s):s,s=r||0!==s?s:0;if(o&&h===h){for(var p=l.length;p--;)if(l[p]===h)continue n;t&&l.push(h),f.push(s)}else u(l,h,r)||(l!==f&&l.push(h),f.push(s))}return f}function mr(n,t){return t=Rr(t,n),n=2>t.length?n:It(n,vr(t,0,-1)),
|
||||||
|
null==n||delete n[$e(Ge(t))]}function Ar(n,t,r,e){for(var u=n.length,i=e?u:-1;(e?i--:++i<u)&&t(n[i],i,n););return r?vr(n,e?0:i,e?i+1:u):vr(n,e?i+1:0,e?u:i)}function kr(n,t){var r=n;return r instanceof Mn&&(r=r.value()),h(t,function(n,t){return t.func.apply(t.thisArg,s([n],t.args))},r)}function Er(n,t,r){var e=n.length;if(2>e)return e?wr(n[0]):[];for(var u=-1,i=Hu(e);++u<e;)for(var o=n[u],f=-1;++f<e;)f!=u&&(i[u]=jt(i[u]||o,n[f],t,r));return wr(kt(i,1),t,r)}function Or(n,t,r){for(var e=-1,u=n.length,i=t.length,o={};++e<u;)r(o,n[e],e<i?t[e]:F);
|
||||||
|
return o}function Sr(n){return _u(n)?n:[]}function Ir(n){return typeof n=="function"?n:Nu}function Rr(n,t){return af(n)?n:We(n,t)?[n]:mo(zu(n))}function zr(n,t,r){var e=n.length;return r=r===F?e:r,!t&&r>=e?n:vr(n,t,r)}function Wr(n,t){if(t)return n.slice();var r=n.length,r=yi?yi(r):new n.constructor(r);return n.copy(r),r}function Br(n){var t=new n.constructor(n.byteLength);return new di(t).set(new di(n)),t}function Lr(n,t){return new n.constructor(t?Br(n.buffer):n.buffer,n.byteOffset,n.length)}function Ur(n,t){
|
||||||
|
if(n!==t){var r=n!==F,e=null===n,u=n===n,i=Au(n),o=t!==F,f=null===t,c=t===t,a=Au(t);if(!f&&!a&&!i&&n>t||i&&o&&c&&!f&&!a||e&&o&&c||!r&&c||!u)return 1;if(!e&&!i&&!a&&n<t||a&&r&&u&&!e&&!i||f&&r&&u||!o&&u||!c)return-1}return 0}function Cr(n,t,r,e){var u=-1,i=n.length,o=r.length,f=-1,c=t.length,a=Di(i-o,0),l=Hu(c+a);for(e=!e;++f<c;)l[f]=t[f];for(;++u<o;)(e||u<i)&&(l[r[u]]=n[u]);for(;a--;)l[f++]=n[u++];return l}function Dr(n,t,r,e){var u=-1,i=n.length,o=-1,f=r.length,c=-1,a=t.length,l=Di(i-f,0),s=Hu(l+a);
|
||||||
|
for(e=!e;++u<l;)s[u]=n[u];for(l=u;++c<a;)s[l+c]=t[c];for(;++o<f;)(e||u<i)&&(s[l+r[o]]=n[u++]);return s}function Mr(n,t){var r=-1,e=n.length;for(t||(t=Hu(e));++r<e;)t[r]=n[r];return t}function Tr(n,t,r,e){var u=!r;r||(r={});for(var i=-1,o=t.length;++i<o;){var f=t[i],c=e?e(r[f],n[f],f,r,n):F;c===F&&(c=n[f]),u?_t(r,f,c):at(r,f,c)}return r}function $r(n,t){return Tr(n,vo(n),t)}function Fr(n,t){return Tr(n,go(n),t)}function Nr(n,t){return function(r,u){var i=af(r)?e:st,o=t?t():{};return i(r,n,je(u,2),o);
|
||||||
|
}}function Pr(n){return lr(function(t,r){var e=-1,u=r.length,i=1<u?r[u-1]:F,o=2<u?r[2]:F,i=3<n.length&&typeof i=="function"?(u--,i):F;for(o&&ze(r[0],r[1],o)&&(i=3>u?F:i,u=1),t=ni(t);++e<u;)(o=r[e])&&n(t,o,e,i);return t})}function Zr(n,t){return function(r,e){if(null==r)return r;if(!pu(r))return n(r,e);for(var u=r.length,i=t?u:-1,o=ni(r);(t?i--:++i<u)&&false!==e(o[i],i,o););return r}}function qr(n){return function(t,r,e){var u=-1,i=ni(t);e=e(t);for(var o=e.length;o--;){var f=e[n?o:++u];if(false===r(i[f],f,i))break;
|
||||||
|
}return t}}function Vr(n,t,r){function e(){return(this&&this!==Zn&&this instanceof e?i:n).apply(u?r:this,arguments)}var u=1&t,i=Hr(n);return e}function Kr(n){return function(t){t=zu(t);var r=Bn.test(t)?$(t):F,e=r?r[0]:t.charAt(0);return t=r?zr(r,1).join(""):t.slice(1),e[n]()+t}}function Gr(n){return function(t){return h($u(Tu(t).replace(In,"")),n,"")}}function Hr(n){return function(){var t=arguments;switch(t.length){case 0:return new n;case 1:return new n(t[0]);case 2:return new n(t[0],t[1]);case 3:
|
||||||
|
return new n(t[0],t[1],t[2]);case 4:return new n(t[0],t[1],t[2],t[3]);case 5:return new n(t[0],t[1],t[2],t[3],t[4]);case 6:return new n(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new n(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=io(n.prototype),t=n.apply(r,t);return bu(t)?t:r}}function Jr(n,t,e){function u(){for(var o=arguments.length,f=Hu(o),c=o,a=xe(u);c--;)f[c]=arguments[c];return c=3>o&&f[0]!==a&&f[o-1]!==a?[]:C(f,a),o-=c.length,o<e?fe(n,t,Xr,u.placeholder,F,f,c,F,F,e-o):r(this&&this!==Zn&&this instanceof u?i:n,this,f);
|
||||||
|
}var i=Hr(n);return u}function Yr(n){return function(t,r,e){var u=ni(t);if(!pu(t)){var i=je(r,3);t=Lu(t),r=function(n){return i(u[n],n,u)}}return r=n(t,r,e),-1<r?u[i?t[r]:r]:F}}function Qr(n){return ge(function(t){var r=t.length,e=r,u=zn.prototype.thru;for(n&&t.reverse();e--;){var i=t[e];if(typeof i!="function")throw new ei("Expected a function");if(u&&!o&&"wrapper"==be(i))var o=new zn([],true)}for(e=o?e:r;++e<r;)var i=t[e],u=be(i),f="wrapper"==u?_o(i):F,o=f&&Be(f[0])&&424==f[1]&&!f[4].length&&1==f[9]?o[be(f[0])].apply(o,f[3]):1==i.length&&Be(i)?o[u]():o.thru(i);
|
||||||
|
return function(){var n=arguments,e=n[0];if(o&&1==n.length&&af(e))return o.plant(e).value();for(var u=0,n=r?t[u].apply(this,n):e;++u<r;)n=t[u].call(this,n);return n}})}function Xr(n,t,r,e,u,i,o,f,c,a){function l(){for(var d=arguments.length,y=Hu(d),b=d;b--;)y[b]=arguments[b];if(_){var x,j=xe(l),b=y.length;for(x=0;b--;)y[b]===j&&++x}if(e&&(y=Cr(y,e,u,_)),i&&(y=Dr(y,i,o,_)),d-=x,_&&d<a)return j=C(y,j),fe(n,t,Xr,l.placeholder,r,y,j,f,c,a-d);if(j=h?r:this,b=p?j[n]:n,d=y.length,f){x=y.length;for(var w=Mi(f.length,x),m=Mr(y);w--;){
|
||||||
|
var A=f[w];y[w]=Re(A,x)?m[A]:F}}else v&&1<d&&y.reverse();return s&&c<d&&(y.length=c),this&&this!==Zn&&this instanceof l&&(b=g||Hr(b)),b.apply(j,y)}var s=128&t,h=1&t,p=2&t,_=24&t,v=512&t,g=p?F:Hr(n);return l}function ne(n,t){return function(r,e){return Ct(r,n,t(e))}}function te(n,t){return function(r,e){var u;if(r===F&&e===F)return t;if(r!==F&&(u=r),e!==F){if(u===F)return e;typeof r=="string"||typeof e=="string"?(r=jr(r),e=jr(e)):(r=xr(r),e=xr(e)),u=n(r,e)}return u}}function re(n){return ge(function(t){
|
||||||
|
return t=l(t,S(je())),lr(function(e){var u=this;return n(t,function(n){return r(n,u,e)})})})}function ee(n,t){t=t===F?" ":jr(t);var r=t.length;return 2>r?r?ar(t,n):t:(r=ar(t,Ri(n/T(t))),Bn.test(t)?zr($(r),0,n).join(""):r.slice(0,n))}function ue(n,t,e,u){function i(){for(var t=-1,c=arguments.length,a=-1,l=u.length,s=Hu(l+c),h=this&&this!==Zn&&this instanceof i?f:n;++a<l;)s[a]=u[a];for(;c--;)s[a++]=arguments[++t];return r(h,o?e:this,s)}var o=1&t,f=Hr(n);return i}function ie(n){return function(t,r,e){
|
||||||
|
e&&typeof e!="number"&&ze(t,r,e)&&(r=e=F),t=Eu(t),r===F?(r=t,t=0):r=Eu(r),e=e===F?t<r?1:-1:Eu(e);var u=-1;r=Di(Ri((r-t)/(e||1)),0);for(var i=Hu(r);r--;)i[n?r:++u]=t,t+=e;return i}}function oe(n){return function(t,r){return typeof t=="string"&&typeof r=="string"||(t=Iu(t),r=Iu(r)),n(t,r)}}function fe(n,t,r,e,u,i,o,f,c,a){var l=8&t,s=l?o:F;o=l?F:o;var h=l?i:F;return i=l?F:i,t=(t|(l?32:64))&~(l?64:32),4&t||(t&=-4),u=[n,t,u,h,s,i,o,f,c,a],r=r.apply(F,u),Be(n)&&xo(r,u),r.placeholder=e,De(r,n,t)}function ce(n){
|
||||||
|
var t=Xu[n];return function(n,r){if(n=Iu(n),r=null==r?0:Mi(Ou(r),292)){var e=(zu(n)+"e").split("e"),e=t(e[0]+"e"+(+e[1]+r)),e=(zu(e)+"e").split("e");return+(e[0]+"e"+(+e[1]-r))}return t(n)}}function ae(n){return function(t){var r=yo(t);return"[object Map]"==r?L(t):"[object Set]"==r?M(t):O(t,n(t))}}function le(n,t,r,e,u,i,o,f){var c=2&t;if(!c&&typeof n!="function")throw new ei("Expected a function");var a=e?e.length:0;if(a||(t&=-97,e=u=F),o=o===F?o:Di(Ou(o),0),f=f===F?f:Ou(f),a-=u?u.length:0,64&t){
|
||||||
|
var l=e,s=u;e=u=F}var h=c?F:_o(n);return i=[n,t,r,e,u,l,s,i,o,f],h&&(r=i[1],n=h[1],t=r|n,e=128==n&&8==r||128==n&&256==r&&i[7].length<=h[8]||384==n&&h[7].length<=h[8]&&8==r,131>t||e)&&(1&n&&(i[2]=h[2],t|=1&r?0:4),(r=h[3])&&(e=i[3],i[3]=e?Cr(e,r,h[4]):r,i[4]=e?C(i[3],"__lodash_placeholder__"):h[4]),(r=h[5])&&(e=i[5],i[5]=e?Dr(e,r,h[6]):r,i[6]=e?C(i[5],"__lodash_placeholder__"):h[6]),(r=h[7])&&(i[7]=r),128&n&&(i[8]=null==i[8]?h[8]:Mi(i[8],h[8])),null==i[9]&&(i[9]=h[9]),i[0]=h[0],i[1]=t),n=i[0],t=i[1],
|
||||||
|
r=i[2],e=i[3],u=i[4],f=i[9]=i[9]===F?c?0:n.length:Di(i[9]-a,0),!f&&24&t&&(t&=-25),De((h?lo:xo)(t&&1!=t?8==t||16==t?Jr(n,t,f):32!=t&&33!=t||u.length?Xr.apply(F,i):ue(n,t,r,e):Vr(n,t,r),i),n,t)}function se(n,t,r,e){return n===F||hu(n,ii[r])&&!ci.call(e,r)?t:n}function he(n,t,r,e,u,i){return bu(n)&&bu(t)&&(i.set(t,n),nr(n,t,F,he,i),i.delete(t)),n}function pe(n,t){return t!==F&&wu(n)?F:n}function _e(n,t,r,e,u,i){var o=1&r,f=n.length,c=t.length;if(f!=c&&!(o&&c>f))return false;if((c=i.get(n))&&i.get(t))return c==t;
|
||||||
|
var c=-1,a=true,l=2&r?new qn:F;for(i.set(n,t),i.set(t,n);++c<f;){var s=n[c],h=t[c];if(e)var p=o?e(h,s,c,t,n,i):e(s,h,c,n,t,i);if(p!==F){if(p)continue;a=false;break}if(l){if(!_(t,function(n,t){if(!R(l,t)&&(s===n||u(s,n,r,e,i)))return l.push(t)})){a=false;break}}else if(s!==h&&!u(s,h,r,e,i)){a=false;break}}return i.delete(n),i.delete(t),a}function ve(n,t,r,e,u,i,o){switch(r){case"[object DataView]":if(n.byteLength!=t.byteLength||n.byteOffset!=t.byteOffset)break;n=n.buffer,t=t.buffer;case"[object ArrayBuffer]":
|
||||||
|
if(n.byteLength!=t.byteLength||!i(new di(n),new di(t)))break;return true;case"[object Boolean]":case"[object Date]":case"[object Number]":return hu(+n,+t);case"[object Error]":return n.name==t.name&&n.message==t.message;case"[object RegExp]":case"[object String]":return n==t+"";case"[object Map]":var f=L;case"[object Set]":if(f||(f=D),n.size!=t.size&&!(1&e))break;return(r=o.get(n))?r==t:(e|=2,o.set(n,t),t=_e(f(n),f(t),e,u,i,o),o.delete(n),t);case"[object Symbol]":if(eo)return eo.call(n)==eo.call(t)}
|
||||||
|
return false}function ge(n){return wo(Ce(n,F,Ve),n+"")}function de(n){return Rt(n,Lu,vo)}function ye(n){return Rt(n,Uu,go)}function be(n){for(var t=n.name+"",r=Ji[t],e=ci.call(Ji,t)?r.length:0;e--;){var u=r[e],i=u.func;if(null==i||i==n)return u.name}return t}function xe(n){return(ci.call(On,"placeholder")?On:n).placeholder}function je(){var n=On.iteratee||Pu,n=n===Pu?Gt:n;return arguments.length?n(arguments[0],arguments[1]):n}function we(n,t){var r=n.__data__,e=typeof t;return("string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t)?r[typeof t=="string"?"string":"hash"]:r.map;
|
||||||
|
}function me(n){for(var t=Lu(n),r=t.length;r--;){var e=t[r],u=n[e];t[r]=[e,u,u===u&&!bu(u)]}return t}function Ae(n,t){var r=null==n?F:n[t];return Zt(r)?r:F}function ke(n,t,r){t=Rr(t,n);for(var e=-1,u=t.length,i=false;++e<u;){var o=$e(t[e]);if(!(i=null!=n&&r(n,o)))break;n=n[o]}return i||++e!=u?i:(u=null==n?0:n.length,!!u&&yu(u)&&Re(o,u)&&(af(n)||cf(n)))}function Ee(n){var t=n.length,r=n.constructor(t);return t&&"string"==typeof n[0]&&ci.call(n,"index")&&(r.index=n.index,r.input=n.input),r}function Oe(n){
|
||||||
|
return typeof n.constructor!="function"||Le(n)?{}:io(bi(n))}function Se(r,e,u,i){var o=r.constructor;switch(e){case"[object ArrayBuffer]":return Br(r);case"[object Boolean]":case"[object Date]":return new o(+r);case"[object DataView]":return e=i?Br(r.buffer):r.buffer,new r.constructor(e,r.byteOffset,r.byteLength);case"[object Float32Array]":case"[object Float64Array]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":
|
||||||
|
case"[object Uint16Array]":case"[object Uint32Array]":return Lr(r,i);case"[object Map]":return e=i?u(L(r),1):L(r),h(e,n,new r.constructor);case"[object Number]":case"[object String]":return new o(r);case"[object RegExp]":return e=new r.constructor(r.source,dn.exec(r)),e.lastIndex=r.lastIndex,e;case"[object Set]":return e=i?u(D(r),1):D(r),h(e,t,new r.constructor);case"[object Symbol]":return eo?ni(eo.call(r)):{}}}function Ie(n){return af(n)||cf(n)||!!(mi&&n&&n[mi])}function Re(n,t){return t=null==t?9007199254740991:t,
|
||||||
|
!!t&&(typeof n=="number"||wn.test(n))&&-1<n&&0==n%1&&n<t}function ze(n,t,r){if(!bu(r))return false;var e=typeof t;return!!("number"==e?pu(r)&&Re(t,r.length):"string"==e&&t in r)&&hu(r[t],n)}function We(n,t){if(af(n))return false;var r=typeof n;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=n&&!Au(n))||(rn.test(n)||!tn.test(n)||null!=t&&n in ni(t))}function Be(n){var t=be(n),r=On[t];return typeof r=="function"&&t in Mn.prototype&&(n===r||(t=_o(r),!!t&&n===t[0]))}function Le(n){var t=n&&n.constructor;
|
||||||
|
return n===(typeof t=="function"&&t.prototype||ii)}function Ue(n,t){return function(r){return null!=r&&(r[n]===t&&(t!==F||n in ni(r)))}}function Ce(n,t,e){return t=Di(t===F?n.length-1:t,0),function(){for(var u=arguments,i=-1,o=Di(u.length-t,0),f=Hu(o);++i<o;)f[i]=u[t+i];for(i=-1,o=Hu(t+1);++i<t;)o[i]=u[i];return o[t]=e(f),r(n,this,o)}}function De(n,t,r){var e=t+"";t=wo;var u,i=Ne;return u=(u=e.match(hn))?u[1].split(pn):[],r=i(u,r),(i=r.length)&&(u=i-1,r[u]=(1<i?"& ":"")+r[u],r=r.join(2<i?", ":" "),
|
||||||
|
e=e.replace(sn,"{\n/* [wrapped with "+r+"] */\n")),t(n,e)}function Me(n){var t=0,r=0;return function(){var e=Ti(),u=16-(e-r);if(r=e,0<u){if(800<=++t)return arguments[0]}else t=0;return n.apply(F,arguments)}}function Te(n,t){var r=-1,e=n.length,u=e-1;for(t=t===F?e:t;++r<t;){var e=cr(r,u),i=n[e];n[e]=n[r],n[r]=i}return n.length=t,n}function $e(n){if(typeof n=="string"||Au(n))return n;var t=n+"";return"0"==t&&1/n==-N?"-0":t}function Fe(n){if(null!=n){try{return fi.call(n)}catch(n){}return n+""}return"";
|
||||||
|
}function Ne(n,t){return u(Z,function(r){var e="_."+r[0];t&r[1]&&!c(n,e)&&n.push(e)}),n.sort()}function Pe(n){if(n instanceof Mn)return n.clone();var t=new zn(n.__wrapped__,n.__chain__);return t.__actions__=Mr(n.__actions__),t.__index__=n.__index__,t.__values__=n.__values__,t}function Ze(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Ou(r),0>r&&(r=Di(e+r,0)),g(n,je(t,3),r)):-1}function qe(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e-1;return r!==F&&(u=Ou(r),u=0>r?Di(e+u,0):Mi(u,e-1)),
|
||||||
|
g(n,je(t,3),u,true)}function Ve(n){return(null==n?0:n.length)?kt(n,1):[]}function Ke(n){return n&&n.length?n[0]:F}function Ge(n){var t=null==n?0:n.length;return t?n[t-1]:F}function He(n,t){return n&&n.length&&t&&t.length?or(n,t):n}function Je(n){return null==n?n:Ni.call(n)}function Ye(n){if(!n||!n.length)return[];var t=0;return n=f(n,function(n){if(_u(n))return t=Di(n.length,t),true}),E(t,function(t){return l(n,j(t))})}function Qe(n,t){if(!n||!n.length)return[];var e=Ye(n);return null==t?e:l(e,function(n){
|
||||||
|
return r(t,F,n)})}function Xe(n){return n=On(n),n.__chain__=true,n}function nu(n,t){return t(n)}function tu(){return this}function ru(n,t){return(af(n)?u:oo)(n,je(t,3))}function eu(n,t){return(af(n)?i:fo)(n,je(t,3))}function uu(n,t){return(af(n)?l:Yt)(n,je(t,3))}function iu(n,t,r){return t=r?F:t,t=n&&null==t?n.length:t,le(n,128,F,F,F,F,t)}function ou(n,t){var r;if(typeof t!="function")throw new ei("Expected a function");return n=Ou(n),function(){return 0<--n&&(r=t.apply(this,arguments)),1>=n&&(t=F),
|
||||||
|
r}}function fu(n,t,r){return t=r?F:t,n=le(n,8,F,F,F,F,F,t),n.placeholder=fu.placeholder,n}function cu(n,t,r){return t=r?F:t,n=le(n,16,F,F,F,F,F,t),n.placeholder=cu.placeholder,n}function au(n,t,r){function e(t){var r=c,e=a;return c=a=F,_=t,s=n.apply(e,r)}function u(n){var r=n-p;return n-=_,p===F||r>=t||0>r||g&&n>=l}function i(){var n=Jo();if(u(n))return o(n);var r,e=jo;r=n-_,n=t-(n-p),r=g?Mi(n,l-r):n,h=e(i,r)}function o(n){return h=F,d&&c?e(n):(c=a=F,s)}function f(){var n=Jo(),r=u(n);if(c=arguments,
|
||||||
|
a=this,p=n,r){if(h===F)return _=n=p,h=jo(i,t),v?e(n):s;if(g)return h=jo(i,t),e(p)}return h===F&&(h=jo(i,t)),s}var c,a,l,s,h,p,_=0,v=false,g=false,d=true;if(typeof n!="function")throw new ei("Expected a function");return t=Iu(t)||0,bu(r)&&(v=!!r.leading,l=(g="maxWait"in r)?Di(Iu(r.maxWait)||0,t):l,d="trailing"in r?!!r.trailing:d),f.cancel=function(){h!==F&&ho(h),_=0,c=p=a=h=F},f.flush=function(){return h===F?s:o(Jo())},f}function lu(n,t){function r(){var e=arguments,u=t?t.apply(this,e):e[0],i=r.cache;return i.has(u)?i.get(u):(e=n.apply(this,e),
|
||||||
|
r.cache=i.set(u,e)||i,e)}if(typeof n!="function"||null!=t&&typeof t!="function")throw new ei("Expected a function");return r.cache=new(lu.Cache||Pn),r}function su(n){if(typeof n!="function")throw new ei("Expected a function");return function(){var t=arguments;switch(t.length){case 0:return!n.call(this);case 1:return!n.call(this,t[0]);case 2:return!n.call(this,t[0],t[1]);case 3:return!n.call(this,t[0],t[1],t[2])}return!n.apply(this,t)}}function hu(n,t){return n===t||n!==n&&t!==t}function pu(n){return null!=n&&yu(n.length)&&!gu(n);
|
||||||
|
}function _u(n){return xu(n)&&pu(n)}function vu(n){if(!xu(n))return false;var t=zt(n);return"[object Error]"==t||"[object DOMException]"==t||typeof n.message=="string"&&typeof n.name=="string"&&!wu(n)}function gu(n){return!!bu(n)&&(n=zt(n),"[object Function]"==n||"[object GeneratorFunction]"==n||"[object AsyncFunction]"==n||"[object Proxy]"==n)}function du(n){return typeof n=="number"&&n==Ou(n)}function yu(n){return typeof n=="number"&&-1<n&&0==n%1&&9007199254740991>=n}function bu(n){var t=typeof n;return null!=n&&("object"==t||"function"==t);
|
||||||
|
}function xu(n){return null!=n&&typeof n=="object"}function ju(n){return typeof n=="number"||xu(n)&&"[object Number]"==zt(n)}function wu(n){return!(!xu(n)||"[object Object]"!=zt(n))&&(n=bi(n),null===n||(n=ci.call(n,"constructor")&&n.constructor,typeof n=="function"&&n instanceof n&&fi.call(n)==hi))}function mu(n){return typeof n=="string"||!af(n)&&xu(n)&&"[object String]"==zt(n)}function Au(n){return typeof n=="symbol"||xu(n)&&"[object Symbol]"==zt(n)}function ku(n){if(!n)return[];if(pu(n))return mu(n)?$(n):Mr(n);
|
||||||
|
if(Ai&&n[Ai]){n=n[Ai]();for(var t,r=[];!(t=n.next()).done;)r.push(t.value);return r}return t=yo(n),("[object Map]"==t?L:"[object Set]"==t?D:Du)(n)}function Eu(n){return n?(n=Iu(n),n===N||n===-N?1.7976931348623157e308*(0>n?-1:1):n===n?n:0):0===n?n:0}function Ou(n){n=Eu(n);var t=n%1;return n===n?t?n-t:n:0}function Su(n){return n?gt(Ou(n),0,4294967295):0}function Iu(n){if(typeof n=="number")return n;if(Au(n))return P;if(bu(n)&&(n=typeof n.valueOf=="function"?n.valueOf():n,n=bu(n)?n+"":n),typeof n!="string")return 0===n?n:+n;
|
||||||
|
n=n.replace(cn,"");var t=bn.test(n);return t||jn.test(n)?Fn(n.slice(2),t?2:8):yn.test(n)?P:+n}function Ru(n){return Tr(n,Uu(n))}function zu(n){return null==n?"":jr(n)}function Wu(n,t,r){return n=null==n?F:It(n,t),n===F?r:n}function Bu(n,t){return null!=n&&ke(n,t,Lt)}function Lu(n){return pu(n)?Gn(n):Ht(n)}function Uu(n){if(pu(n))n=Gn(n,true);else if(bu(n)){var t,r=Le(n),e=[];for(t in n)("constructor"!=t||!r&&ci.call(n,t))&&e.push(t);n=e}else{if(t=[],null!=n)for(r in ni(n))t.push(r);n=t}return n}function Cu(n,t){
|
||||||
|
if(null==n)return{};var r=l(ye(n),function(n){return[n]});return t=je(t),ur(n,r,function(n,r){return t(n,r[0])})}function Du(n){return null==n?[]:I(n,Lu(n))}function Mu(n){return Nf(zu(n).toLowerCase())}function Tu(n){return(n=zu(n))&&n.replace(mn,rt).replace(Rn,"")}function $u(n,t,r){return n=zu(n),t=r?F:t,t===F?Ln.test(n)?n.match(Wn)||[]:n.match(_n)||[]:n.match(t)||[]}function Fu(n){return function(){return n}}function Nu(n){return n}function Pu(n){return Gt(typeof n=="function"?n:dt(n,1))}function Zu(n,t,r){
|
||||||
|
var e=Lu(t),i=St(t,e);null!=r||bu(t)&&(i.length||!e.length)||(r=t,t=n,n=this,i=St(t,Lu(t)));var o=!(bu(r)&&"chain"in r&&!r.chain),f=gu(n);return u(i,function(r){var e=t[r];n[r]=e,f&&(n.prototype[r]=function(){var t=this.__chain__;if(o||t){var r=n(this.__wrapped__);return(r.__actions__=Mr(this.__actions__)).push({func:e,args:arguments,thisArg:n}),r.__chain__=t,r}return e.apply(n,s([this.value()],arguments))})}),n}function qu(){}function Vu(n){return We(n)?j($e(n)):ir(n)}function Ku(){return[]}function Gu(){
|
||||||
|
return false}En=null==En?Zn:it.defaults(Zn.Object(),En,it.pick(Zn,Un));var Hu=En.Array,Ju=En.Date,Yu=En.Error,Qu=En.Function,Xu=En.Math,ni=En.Object,ti=En.RegExp,ri=En.String,ei=En.TypeError,ui=Hu.prototype,ii=ni.prototype,oi=En["__core-js_shared__"],fi=Qu.prototype.toString,ci=ii.hasOwnProperty,ai=0,li=function(){var n=/[^.]+$/.exec(oi&&oi.keys&&oi.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),si=ii.toString,hi=fi.call(ni),pi=Zn._,_i=ti("^"+fi.call(ci).replace(on,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),vi=Kn?En.Buffer:F,gi=En.Symbol,di=En.Uint8Array,yi=vi?vi.f:F,bi=U(ni.getPrototypeOf,ni),xi=ni.create,ji=ii.propertyIsEnumerable,wi=ui.splice,mi=gi?gi.isConcatSpreadable:F,Ai=gi?gi.iterator:F,ki=gi?gi.toStringTag:F,Ei=function(){
|
||||||
|
try{var n=Ae(ni,"defineProperty");return n({},"",{}),n}catch(n){}}(),Oi=En.clearTimeout!==Zn.clearTimeout&&En.clearTimeout,Si=Ju&&Ju.now!==Zn.Date.now&&Ju.now,Ii=En.setTimeout!==Zn.setTimeout&&En.setTimeout,Ri=Xu.ceil,zi=Xu.floor,Wi=ni.getOwnPropertySymbols,Bi=vi?vi.isBuffer:F,Li=En.isFinite,Ui=ui.join,Ci=U(ni.keys,ni),Di=Xu.max,Mi=Xu.min,Ti=Ju.now,$i=En.parseInt,Fi=Xu.random,Ni=ui.reverse,Pi=Ae(En,"DataView"),Zi=Ae(En,"Map"),qi=Ae(En,"Promise"),Vi=Ae(En,"Set"),Ki=Ae(En,"WeakMap"),Gi=Ae(ni,"create"),Hi=Ki&&new Ki,Ji={},Yi=Fe(Pi),Qi=Fe(Zi),Xi=Fe(qi),no=Fe(Vi),to=Fe(Ki),ro=gi?gi.prototype:F,eo=ro?ro.valueOf:F,uo=ro?ro.toString:F,io=function(){
|
||||||
|
function n(){}return function(t){return bu(t)?xi?xi(t):(n.prototype=t,t=new n,n.prototype=F,t):{}}}();On.templateSettings={escape:Q,evaluate:X,interpolate:nn,variable:"",imports:{_:On}},On.prototype=Sn.prototype,On.prototype.constructor=On,zn.prototype=io(Sn.prototype),zn.prototype.constructor=zn,Mn.prototype=io(Sn.prototype),Mn.prototype.constructor=Mn,Tn.prototype.clear=function(){this.__data__=Gi?Gi(null):{},this.size=0},Tn.prototype.delete=function(n){return n=this.has(n)&&delete this.__data__[n],
|
||||||
|
this.size-=n?1:0,n},Tn.prototype.get=function(n){var t=this.__data__;return Gi?(n=t[n],"__lodash_hash_undefined__"===n?F:n):ci.call(t,n)?t[n]:F},Tn.prototype.has=function(n){var t=this.__data__;return Gi?t[n]!==F:ci.call(t,n)},Tn.prototype.set=function(n,t){var r=this.__data__;return this.size+=this.has(n)?0:1,r[n]=Gi&&t===F?"__lodash_hash_undefined__":t,this},Nn.prototype.clear=function(){this.__data__=[],this.size=0},Nn.prototype.delete=function(n){var t=this.__data__;return n=lt(t,n),!(0>n)&&(n==t.length-1?t.pop():wi.call(t,n,1),
|
||||||
|
--this.size,true)},Nn.prototype.get=function(n){var t=this.__data__;return n=lt(t,n),0>n?F:t[n][1]},Nn.prototype.has=function(n){return-1<lt(this.__data__,n)},Nn.prototype.set=function(n,t){var r=this.__data__,e=lt(r,n);return 0>e?(++this.size,r.push([n,t])):r[e][1]=t,this},Pn.prototype.clear=function(){this.size=0,this.__data__={hash:new Tn,map:new(Zi||Nn),string:new Tn}},Pn.prototype.delete=function(n){return n=we(this,n).delete(n),this.size-=n?1:0,n},Pn.prototype.get=function(n){return we(this,n).get(n);
|
||||||
|
},Pn.prototype.has=function(n){return we(this,n).has(n)},Pn.prototype.set=function(n,t){var r=we(this,n),e=r.size;return r.set(n,t),this.size+=r.size==e?0:1,this},qn.prototype.add=qn.prototype.push=function(n){return this.__data__.set(n,"__lodash_hash_undefined__"),this},qn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.clear=function(){this.__data__=new Nn,this.size=0},Vn.prototype.delete=function(n){var t=this.__data__;return n=t.delete(n),this.size=t.size,n},Vn.prototype.get=function(n){
|
||||||
|
return this.__data__.get(n)},Vn.prototype.has=function(n){return this.__data__.has(n)},Vn.prototype.set=function(n,t){var r=this.__data__;if(r instanceof Nn){var e=r.__data__;if(!Zi||199>e.length)return e.push([n,t]),this.size=++r.size,this;r=this.__data__=new Pn(e)}return r.set(n,t),this.size=r.size,this};var oo=Zr(Et),fo=Zr(Ot,true),co=qr(),ao=qr(true),lo=Hi?function(n,t){return Hi.set(n,t),n}:Nu,so=Ei?function(n,t){return Ei(n,"toString",{configurable:true,enumerable:false,value:Fu(t),writable:true})}:Nu,ho=Oi||function(n){
|
||||||
|
return Zn.clearTimeout(n)},po=Vi&&1/D(new Vi([,-0]))[1]==N?function(n){return new Vi(n)}:qu,_o=Hi?function(n){return Hi.get(n)}:qu,vo=Wi?function(n){return null==n?[]:(n=ni(n),f(Wi(n),function(t){return ji.call(n,t)}))}:Ku,go=Wi?function(n){for(var t=[];n;)s(t,vo(n)),n=bi(n);return t}:Ku,yo=zt;(Pi&&"[object DataView]"!=yo(new Pi(new ArrayBuffer(1)))||Zi&&"[object Map]"!=yo(new Zi)||qi&&"[object Promise]"!=yo(qi.resolve())||Vi&&"[object Set]"!=yo(new Vi)||Ki&&"[object WeakMap]"!=yo(new Ki))&&(yo=function(n){
|
||||||
|
var t=zt(n);if(n=(n="[object Object]"==t?n.constructor:F)?Fe(n):"")switch(n){case Yi:return"[object DataView]";case Qi:return"[object Map]";case Xi:return"[object Promise]";case no:return"[object Set]";case to:return"[object WeakMap]"}return t});var bo=oi?gu:Gu,xo=Me(lo),jo=Ii||function(n,t){return Zn.setTimeout(n,t)},wo=Me(so),mo=function(n){n=lu(n,function(n){return 500===t.size&&t.clear(),n});var t=n.cache;return n}(function(n){var t=[];return en.test(n)&&t.push(""),n.replace(un,function(n,r,e,u){
|
||||||
|
t.push(e?u.replace(vn,"$1"):r||n)}),t}),Ao=lr(function(n,t){return _u(n)?jt(n,kt(t,1,_u,true)):[]}),ko=lr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?jt(n,kt(t,1,_u,true),je(r,2)):[]}),Eo=lr(function(n,t){var r=Ge(t);return _u(r)&&(r=F),_u(n)?jt(n,kt(t,1,_u,true),F,r):[]}),Oo=lr(function(n){var t=l(n,Sr);return t.length&&t[0]===n[0]?Ut(t):[]}),So=lr(function(n){var t=Ge(n),r=l(n,Sr);return t===Ge(r)?t=F:r.pop(),r.length&&r[0]===n[0]?Ut(r,je(t,2)):[]}),Io=lr(function(n){var t=Ge(n),r=l(n,Sr);return(t=typeof t=="function"?t:F)&&r.pop(),
|
||||||
|
r.length&&r[0]===n[0]?Ut(r,F,t):[]}),Ro=lr(He),zo=ge(function(n,t){var r=null==n?0:n.length,e=vt(n,t);return fr(n,l(t,function(n){return Re(n,r)?+n:n}).sort(Ur)),e}),Wo=lr(function(n){return wr(kt(n,1,_u,true))}),Bo=lr(function(n){var t=Ge(n);return _u(t)&&(t=F),wr(kt(n,1,_u,true),je(t,2))}),Lo=lr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;return wr(kt(n,1,_u,true),F,t)}),Uo=lr(function(n,t){return _u(n)?jt(n,t):[]}),Co=lr(function(n){return Er(f(n,_u))}),Do=lr(function(n){var t=Ge(n);return _u(t)&&(t=F),
|
||||||
|
Er(f(n,_u),je(t,2))}),Mo=lr(function(n){var t=Ge(n),t=typeof t=="function"?t:F;return Er(f(n,_u),F,t)}),To=lr(Ye),$o=lr(function(n){var t=n.length,t=1<t?n[t-1]:F,t=typeof t=="function"?(n.pop(),t):F;return Qe(n,t)}),Fo=ge(function(n){function t(t){return vt(t,n)}var r=n.length,e=r?n[0]:0,u=this.__wrapped__;return!(1<r||this.__actions__.length)&&u instanceof Mn&&Re(e)?(u=u.slice(e,+e+(r?1:0)),u.__actions__.push({func:nu,args:[t],thisArg:F}),new zn(u,this.__chain__).thru(function(n){return r&&!n.length&&n.push(F),
|
||||||
|
n})):this.thru(t)}),No=Nr(function(n,t,r){ci.call(n,r)?++n[r]:_t(n,r,1)}),Po=Yr(Ze),Zo=Yr(qe),qo=Nr(function(n,t,r){ci.call(n,r)?n[r].push(t):_t(n,r,[t])}),Vo=lr(function(n,t,e){var u=-1,i=typeof t=="function",o=pu(n)?Hu(n.length):[];return oo(n,function(n){o[++u]=i?r(t,n,e):Dt(n,t,e)}),o}),Ko=Nr(function(n,t,r){_t(n,r,t)}),Go=Nr(function(n,t,r){n[r?0:1].push(t)},function(){return[[],[]]}),Ho=lr(function(n,t){if(null==n)return[];var r=t.length;return 1<r&&ze(n,t[0],t[1])?t=[]:2<r&&ze(t[0],t[1],t[2])&&(t=[t[0]]),
|
||||||
|
rr(n,kt(t,1),[])}),Jo=Si||function(){return Zn.Date.now()},Yo=lr(function(n,t,r){var e=1;if(r.length)var u=C(r,xe(Yo)),e=32|e;return le(n,e,t,r,u)}),Qo=lr(function(n,t,r){var e=3;if(r.length)var u=C(r,xe(Qo)),e=32|e;return le(t,e,n,r,u)}),Xo=lr(function(n,t){return xt(n,1,t)}),nf=lr(function(n,t,r){return xt(n,Iu(t)||0,r)});lu.Cache=Pn;var tf=lr(function(n,t){t=1==t.length&&af(t[0])?l(t[0],S(je())):l(kt(t,1),S(je()));var e=t.length;return lr(function(u){for(var i=-1,o=Mi(u.length,e);++i<o;)u[i]=t[i].call(this,u[i]);
|
||||||
|
return r(n,this,u)})}),rf=lr(function(n,t){return le(n,32,F,t,C(t,xe(rf)))}),ef=lr(function(n,t){return le(n,64,F,t,C(t,xe(ef)))}),uf=ge(function(n,t){return le(n,256,F,F,F,t)}),of=oe(Wt),ff=oe(function(n,t){return n>=t}),cf=Mt(function(){return arguments}())?Mt:function(n){return xu(n)&&ci.call(n,"callee")&&!ji.call(n,"callee")},af=Hu.isArray,lf=Hn?S(Hn):Tt,sf=Bi||Gu,hf=Jn?S(Jn):$t,pf=Yn?S(Yn):Nt,_f=Qn?S(Qn):qt,vf=Xn?S(Xn):Vt,gf=nt?S(nt):Kt,df=oe(Jt),yf=oe(function(n,t){return n<=t}),bf=Pr(function(n,t){
|
||||||
|
if(Le(t)||pu(t))Tr(t,Lu(t),n);else for(var r in t)ci.call(t,r)&&at(n,r,t[r])}),xf=Pr(function(n,t){Tr(t,Uu(t),n)}),jf=Pr(function(n,t,r,e){Tr(t,Uu(t),n,e)}),wf=Pr(function(n,t,r,e){Tr(t,Lu(t),n,e)}),mf=ge(vt),Af=lr(function(n){return n.push(F,se),r(jf,F,n)}),kf=lr(function(n){return n.push(F,he),r(Rf,F,n)}),Ef=ne(function(n,t,r){n[t]=r},Fu(Nu)),Of=ne(function(n,t,r){ci.call(n,t)?n[t].push(r):n[t]=[r]},je),Sf=lr(Dt),If=Pr(function(n,t,r){nr(n,t,r)}),Rf=Pr(function(n,t,r,e){nr(n,t,r,e)}),zf=ge(function(n,t){
|
||||||
|
var r={};if(null==n)return r;var e=false;t=l(t,function(t){return t=Rr(t,n),e||(e=1<t.length),t}),Tr(n,ye(n),r),e&&(r=dt(r,7,pe));for(var u=t.length;u--;)mr(r,t[u]);return r}),Wf=ge(function(n,t){return null==n?{}:er(n,t)}),Bf=ae(Lu),Lf=ae(Uu),Uf=Gr(function(n,t,r){return t=t.toLowerCase(),n+(r?Mu(t):t)}),Cf=Gr(function(n,t,r){return n+(r?"-":"")+t.toLowerCase()}),Df=Gr(function(n,t,r){return n+(r?" ":"")+t.toLowerCase()}),Mf=Kr("toLowerCase"),Tf=Gr(function(n,t,r){return n+(r?"_":"")+t.toLowerCase();
|
||||||
|
}),$f=Gr(function(n,t,r){return n+(r?" ":"")+Nf(t)}),Ff=Gr(function(n,t,r){return n+(r?" ":"")+t.toUpperCase()}),Nf=Kr("toUpperCase"),Pf=lr(function(n,t){try{return r(n,F,t)}catch(n){return vu(n)?n:new Yu(n)}}),Zf=ge(function(n,t){return u(t,function(t){t=$e(t),_t(n,t,Yo(n[t],n))}),n}),qf=Qr(),Vf=Qr(true),Kf=lr(function(n,t){return function(r){return Dt(r,n,t)}}),Gf=lr(function(n,t){return function(r){return Dt(n,r,t)}}),Hf=re(l),Jf=re(o),Yf=re(_),Qf=ie(),Xf=ie(true),nc=te(function(n,t){return n+t},0),tc=ce("ceil"),rc=te(function(n,t){
|
||||||
|
return n/t},1),ec=ce("floor"),uc=te(function(n,t){return n*t},1),ic=ce("round"),oc=te(function(n,t){return n-t},0);return On.after=function(n,t){if(typeof t!="function")throw new ei("Expected a function");return n=Ou(n),function(){if(1>--n)return t.apply(this,arguments)}},On.ary=iu,On.assign=bf,On.assignIn=xf,On.assignInWith=jf,On.assignWith=wf,On.at=mf,On.before=ou,On.bind=Yo,On.bindAll=Zf,On.bindKey=Qo,On.castArray=function(){if(!arguments.length)return[];var n=arguments[0];return af(n)?n:[n]},
|
||||||
|
On.chain=Xe,On.chunk=function(n,t,r){if(t=(r?ze(n,t,r):t===F)?1:Di(Ou(t),0),r=null==n?0:n.length,!r||1>t)return[];for(var e=0,u=0,i=Hu(Ri(r/t));e<r;)i[u++]=vr(n,e,e+=t);return i},On.compact=function(n){for(var t=-1,r=null==n?0:n.length,e=0,u=[];++t<r;){var i=n[t];i&&(u[e++]=i)}return u},On.concat=function(){var n=arguments.length;if(!n)return[];for(var t=Hu(n-1),r=arguments[0];n--;)t[n-1]=arguments[n];return s(af(r)?Mr(r):[r],kt(t,1))},On.cond=function(n){var t=null==n?0:n.length,e=je();return n=t?l(n,function(n){
|
||||||
|
if("function"!=typeof n[1])throw new ei("Expected a function");return[e(n[0]),n[1]]}):[],lr(function(e){for(var u=-1;++u<t;){var i=n[u];if(r(i[0],this,e))return r(i[1],this,e)}})},On.conforms=function(n){return yt(dt(n,1))},On.constant=Fu,On.countBy=No,On.create=function(n,t){var r=io(n);return null==t?r:ht(r,t)},On.curry=fu,On.curryRight=cu,On.debounce=au,On.defaults=Af,On.defaultsDeep=kf,On.defer=Xo,On.delay=nf,On.difference=Ao,On.differenceBy=ko,On.differenceWith=Eo,On.drop=function(n,t,r){var e=null==n?0:n.length;
|
||||||
|
return e?(t=r||t===F?1:Ou(t),vr(n,0>t?0:t,e)):[]},On.dropRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Ou(t),t=e-t,vr(n,0,0>t?0:t)):[]},On.dropRightWhile=function(n,t){return n&&n.length?Ar(n,je(t,3),true,true):[]},On.dropWhile=function(n,t){return n&&n.length?Ar(n,je(t,3),true):[]},On.fill=function(n,t,r,e){var u=null==n?0:n.length;if(!u)return[];for(r&&typeof r!="number"&&ze(n,t,r)&&(r=0,e=u),u=n.length,r=Ou(r),0>r&&(r=-r>u?0:u+r),e=e===F||e>u?u:Ou(e),0>e&&(e+=u),e=r>e?0:Su(e);r<e;)n[r++]=t;
|
||||||
|
return n},On.filter=function(n,t){return(af(n)?f:At)(n,je(t,3))},On.flatMap=function(n,t){return kt(uu(n,t),1)},On.flatMapDeep=function(n,t){return kt(uu(n,t),N)},On.flatMapDepth=function(n,t,r){return r=r===F?1:Ou(r),kt(uu(n,t),r)},On.flatten=Ve,On.flattenDeep=function(n){return(null==n?0:n.length)?kt(n,N):[]},On.flattenDepth=function(n,t){return null!=n&&n.length?(t=t===F?1:Ou(t),kt(n,t)):[]},On.flip=function(n){return le(n,512)},On.flow=qf,On.flowRight=Vf,On.fromPairs=function(n){for(var t=-1,r=null==n?0:n.length,e={};++t<r;){
|
||||||
|
var u=n[t];e[u[0]]=u[1]}return e},On.functions=function(n){return null==n?[]:St(n,Lu(n))},On.functionsIn=function(n){return null==n?[]:St(n,Uu(n))},On.groupBy=qo,On.initial=function(n){return(null==n?0:n.length)?vr(n,0,-1):[]},On.intersection=Oo,On.intersectionBy=So,On.intersectionWith=Io,On.invert=Ef,On.invertBy=Of,On.invokeMap=Vo,On.iteratee=Pu,On.keyBy=Ko,On.keys=Lu,On.keysIn=Uu,On.map=uu,On.mapKeys=function(n,t){var r={};return t=je(t,3),Et(n,function(n,e,u){_t(r,t(n,e,u),n)}),r},On.mapValues=function(n,t){
|
||||||
|
var r={};return t=je(t,3),Et(n,function(n,e,u){_t(r,e,t(n,e,u))}),r},On.matches=function(n){return Qt(dt(n,1))},On.matchesProperty=function(n,t){return Xt(n,dt(t,1))},On.memoize=lu,On.merge=If,On.mergeWith=Rf,On.method=Kf,On.methodOf=Gf,On.mixin=Zu,On.negate=su,On.nthArg=function(n){return n=Ou(n),lr(function(t){return tr(t,n)})},On.omit=zf,On.omitBy=function(n,t){return Cu(n,su(je(t)))},On.once=function(n){return ou(2,n)},On.orderBy=function(n,t,r,e){return null==n?[]:(af(t)||(t=null==t?[]:[t]),
|
||||||
|
r=e?F:r,af(r)||(r=null==r?[]:[r]),rr(n,t,r))},On.over=Hf,On.overArgs=tf,On.overEvery=Jf,On.overSome=Yf,On.partial=rf,On.partialRight=ef,On.partition=Go,On.pick=Wf,On.pickBy=Cu,On.property=Vu,On.propertyOf=function(n){return function(t){return null==n?F:It(n,t)}},On.pull=Ro,On.pullAll=He,On.pullAllBy=function(n,t,r){return n&&n.length&&t&&t.length?or(n,t,je(r,2)):n},On.pullAllWith=function(n,t,r){return n&&n.length&&t&&t.length?or(n,t,F,r):n},On.pullAt=zo,On.range=Qf,On.rangeRight=Xf,On.rearg=uf,On.reject=function(n,t){
|
||||||
|
return(af(n)?f:At)(n,su(je(t,3)))},On.remove=function(n,t){var r=[];if(!n||!n.length)return r;var e=-1,u=[],i=n.length;for(t=je(t,3);++e<i;){var o=n[e];t(o,e,n)&&(r.push(o),u.push(e))}return fr(n,u),r},On.rest=function(n,t){if(typeof n!="function")throw new ei("Expected a function");return t=t===F?t:Ou(t),lr(n,t)},On.reverse=Je,On.sampleSize=function(n,t,r){return t=(r?ze(n,t,r):t===F)?1:Ou(t),(af(n)?ot:hr)(n,t)},On.set=function(n,t,r){return null==n?n:pr(n,t,r)},On.setWith=function(n,t,r,e){return e=typeof e=="function"?e:F,
|
||||||
|
null==n?n:pr(n,t,r,e)},On.shuffle=function(n){return(af(n)?ft:_r)(n)},On.slice=function(n,t,r){var e=null==n?0:n.length;return e?(r&&typeof r!="number"&&ze(n,t,r)?(t=0,r=e):(t=null==t?0:Ou(t),r=r===F?e:Ou(r)),vr(n,t,r)):[]},On.sortBy=Ho,On.sortedUniq=function(n){return n&&n.length?br(n):[]},On.sortedUniqBy=function(n,t){return n&&n.length?br(n,je(t,2)):[]},On.split=function(n,t,r){return r&&typeof r!="number"&&ze(n,t,r)&&(t=r=F),r=r===F?4294967295:r>>>0,r?(n=zu(n))&&(typeof t=="string"||null!=t&&!_f(t))&&(t=jr(t),
|
||||||
|
!t&&Bn.test(n))?zr($(n),0,r):n.split(t,r):[]},On.spread=function(n,t){if(typeof n!="function")throw new ei("Expected a function");return t=null==t?0:Di(Ou(t),0),lr(function(e){var u=e[t];return e=zr(e,0,t),u&&s(e,u),r(n,this,e)})},On.tail=function(n){var t=null==n?0:n.length;return t?vr(n,1,t):[]},On.take=function(n,t,r){return n&&n.length?(t=r||t===F?1:Ou(t),vr(n,0,0>t?0:t)):[]},On.takeRight=function(n,t,r){var e=null==n?0:n.length;return e?(t=r||t===F?1:Ou(t),t=e-t,vr(n,0>t?0:t,e)):[]},On.takeRightWhile=function(n,t){
|
||||||
|
return n&&n.length?Ar(n,je(t,3),false,true):[]},On.takeWhile=function(n,t){return n&&n.length?Ar(n,je(t,3)):[]},On.tap=function(n,t){return t(n),n},On.throttle=function(n,t,r){var e=true,u=true;if(typeof n!="function")throw new ei("Expected a function");return bu(r)&&(e="leading"in r?!!r.leading:e,u="trailing"in r?!!r.trailing:u),au(n,t,{leading:e,maxWait:t,trailing:u})},On.thru=nu,On.toArray=ku,On.toPairs=Bf,On.toPairsIn=Lf,On.toPath=function(n){return af(n)?l(n,$e):Au(n)?[n]:Mr(mo(zu(n)))},On.toPlainObject=Ru,
|
||||||
|
On.transform=function(n,t,r){var e=af(n),i=e||sf(n)||gf(n);if(t=je(t,4),null==r){var o=n&&n.constructor;r=i?e?new o:[]:bu(n)&&gu(o)?io(bi(n)):{}}return(i?u:Et)(n,function(n,e,u){return t(r,n,e,u)}),r},On.unary=function(n){return iu(n,1)},On.union=Wo,On.unionBy=Bo,On.unionWith=Lo,On.uniq=function(n){return n&&n.length?wr(n):[]},On.uniqBy=function(n,t){return n&&n.length?wr(n,je(t,2)):[]},On.uniqWith=function(n,t){return t=typeof t=="function"?t:F,n&&n.length?wr(n,F,t):[]},On.unset=function(n,t){return null==n||mr(n,t);
|
||||||
|
},On.unzip=Ye,On.unzipWith=Qe,On.update=function(n,t,r){return null==n?n:pr(n,t,Ir(r)(It(n,t)),void 0)},On.updateWith=function(n,t,r,e){return e=typeof e=="function"?e:F,null!=n&&(n=pr(n,t,Ir(r)(It(n,t)),e)),n},On.values=Du,On.valuesIn=function(n){return null==n?[]:I(n,Uu(n))},On.without=Uo,On.words=$u,On.wrap=function(n,t){return rf(Ir(t),n)},On.xor=Co,On.xorBy=Do,On.xorWith=Mo,On.zip=To,On.zipObject=function(n,t){return Or(n||[],t||[],at)},On.zipObjectDeep=function(n,t){return Or(n||[],t||[],pr);
|
||||||
|
},On.zipWith=$o,On.entries=Bf,On.entriesIn=Lf,On.extend=xf,On.extendWith=jf,Zu(On,On),On.add=nc,On.attempt=Pf,On.camelCase=Uf,On.capitalize=Mu,On.ceil=tc,On.clamp=function(n,t,r){return r===F&&(r=t,t=F),r!==F&&(r=Iu(r),r=r===r?r:0),t!==F&&(t=Iu(t),t=t===t?t:0),gt(Iu(n),t,r)},On.clone=function(n){return dt(n,4)},On.cloneDeep=function(n){return dt(n,5)},On.cloneDeepWith=function(n,t){return t=typeof t=="function"?t:F,dt(n,5,t)},On.cloneWith=function(n,t){return t=typeof t=="function"?t:F,dt(n,4,t)},
|
||||||
|
On.conformsTo=function(n,t){return null==t||bt(n,t,Lu(t))},On.deburr=Tu,On.defaultTo=function(n,t){return null==n||n!==n?t:n},On.divide=rc,On.endsWith=function(n,t,r){n=zu(n),t=jr(t);var e=n.length,e=r=r===F?e:gt(Ou(r),0,e);return r-=t.length,0<=r&&n.slice(r,e)==t},On.eq=hu,On.escape=function(n){return(n=zu(n))&&Y.test(n)?n.replace(H,et):n},On.escapeRegExp=function(n){return(n=zu(n))&&fn.test(n)?n.replace(on,"\\$&"):n},On.every=function(n,t,r){var e=af(n)?o:wt;return r&&ze(n,t,r)&&(t=F),e(n,je(t,3));
|
||||||
|
},On.find=Po,On.findIndex=Ze,On.findKey=function(n,t){return v(n,je(t,3),Et)},On.findLast=Zo,On.findLastIndex=qe,On.findLastKey=function(n,t){return v(n,je(t,3),Ot)},On.floor=ec,On.forEach=ru,On.forEachRight=eu,On.forIn=function(n,t){return null==n?n:co(n,je(t,3),Uu)},On.forInRight=function(n,t){return null==n?n:ao(n,je(t,3),Uu)},On.forOwn=function(n,t){return n&&Et(n,je(t,3))},On.forOwnRight=function(n,t){return n&&Ot(n,je(t,3))},On.get=Wu,On.gt=of,On.gte=ff,On.has=function(n,t){return null!=n&&ke(n,t,Bt);
|
||||||
|
},On.hasIn=Bu,On.head=Ke,On.identity=Nu,On.includes=function(n,t,r,e){return n=pu(n)?n:Du(n),r=r&&!e?Ou(r):0,e=n.length,0>r&&(r=Di(e+r,0)),mu(n)?r<=e&&-1<n.indexOf(t,r):!!e&&-1<d(n,t,r)},On.indexOf=function(n,t,r){var e=null==n?0:n.length;return e?(r=null==r?0:Ou(r),0>r&&(r=Di(e+r,0)),d(n,t,r)):-1},On.inRange=function(n,t,r){return t=Eu(t),r===F?(r=t,t=0):r=Eu(r),n=Iu(n),n>=Mi(t,r)&&n<Di(t,r)},On.invoke=Sf,On.isArguments=cf,On.isArray=af,On.isArrayBuffer=lf,On.isArrayLike=pu,On.isArrayLikeObject=_u,
|
||||||
|
On.isBoolean=function(n){return true===n||false===n||xu(n)&&"[object Boolean]"==zt(n)},On.isBuffer=sf,On.isDate=hf,On.isElement=function(n){return xu(n)&&1===n.nodeType&&!wu(n)},On.isEmpty=function(n){if(null==n)return true;if(pu(n)&&(af(n)||typeof n=="string"||typeof n.splice=="function"||sf(n)||gf(n)||cf(n)))return!n.length;var t=yo(n);if("[object Map]"==t||"[object Set]"==t)return!n.size;if(Le(n))return!Ht(n).length;for(var r in n)if(ci.call(n,r))return false;return true},On.isEqual=function(n,t){return Ft(n,t);
|
||||||
|
},On.isEqualWith=function(n,t,r){var e=(r=typeof r=="function"?r:F)?r(n,t):F;return e===F?Ft(n,t,F,r):!!e},On.isError=vu,On.isFinite=function(n){return typeof n=="number"&&Li(n)},On.isFunction=gu,On.isInteger=du,On.isLength=yu,On.isMap=pf,On.isMatch=function(n,t){return n===t||Pt(n,t,me(t))},On.isMatchWith=function(n,t,r){return r=typeof r=="function"?r:F,Pt(n,t,me(t),r)},On.isNaN=function(n){return ju(n)&&n!=+n},On.isNative=function(n){if(bo(n))throw new Yu("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");
|
||||||
|
return Zt(n)},On.isNil=function(n){return null==n},On.isNull=function(n){return null===n},On.isNumber=ju,On.isObject=bu,On.isObjectLike=xu,On.isPlainObject=wu,On.isRegExp=_f,On.isSafeInteger=function(n){return du(n)&&-9007199254740991<=n&&9007199254740991>=n},On.isSet=vf,On.isString=mu,On.isSymbol=Au,On.isTypedArray=gf,On.isUndefined=function(n){return n===F},On.isWeakMap=function(n){return xu(n)&&"[object WeakMap]"==yo(n)},On.isWeakSet=function(n){return xu(n)&&"[object WeakSet]"==zt(n)},On.join=function(n,t){
|
||||||
|
return null==n?"":Ui.call(n,t)},On.kebabCase=Cf,On.last=Ge,On.lastIndexOf=function(n,t,r){var e=null==n?0:n.length;if(!e)return-1;var u=e;if(r!==F&&(u=Ou(r),u=0>u?Di(e+u,0):Mi(u,e-1)),t===t){for(r=u+1;r--&&n[r]!==t;);n=r}else n=g(n,b,u,true);return n},On.lowerCase=Df,On.lowerFirst=Mf,On.lt=df,On.lte=yf,On.max=function(n){return n&&n.length?mt(n,Nu,Wt):F},On.maxBy=function(n,t){return n&&n.length?mt(n,je(t,2),Wt):F},On.mean=function(n){return x(n,Nu)},On.meanBy=function(n,t){return x(n,je(t,2))},On.min=function(n){
|
||||||
|
return n&&n.length?mt(n,Nu,Jt):F},On.minBy=function(n,t){return n&&n.length?mt(n,je(t,2),Jt):F},On.stubArray=Ku,On.stubFalse=Gu,On.stubObject=function(){return{}},On.stubString=function(){return""},On.stubTrue=function(){return true},On.multiply=uc,On.nth=function(n,t){return n&&n.length?tr(n,Ou(t)):F},On.noConflict=function(){return Zn._===this&&(Zn._=pi),this},On.noop=qu,On.now=Jo,On.pad=function(n,t,r){n=zu(n);var e=(t=Ou(t))?T(n):0;return!t||e>=t?n:(t=(t-e)/2,ee(zi(t),r)+n+ee(Ri(t),r))},On.padEnd=function(n,t,r){
|
||||||
|
n=zu(n);var e=(t=Ou(t))?T(n):0;return t&&e<t?n+ee(t-e,r):n},On.padStart=function(n,t,r){n=zu(n);var e=(t=Ou(t))?T(n):0;return t&&e<t?ee(t-e,r)+n:n},On.parseInt=function(n,t,r){return r||null==t?t=0:t&&(t=+t),$i(zu(n).replace(an,""),t||0)},On.random=function(n,t,r){if(r&&typeof r!="boolean"&&ze(n,t,r)&&(t=r=F),r===F&&(typeof t=="boolean"?(r=t,t=F):typeof n=="boolean"&&(r=n,n=F)),n===F&&t===F?(n=0,t=1):(n=Eu(n),t===F?(t=n,n=0):t=Eu(t)),n>t){var e=n;n=t,t=e}return r||n%1||t%1?(r=Fi(),Mi(n+r*(t-n+$n("1e-"+((r+"").length-1))),t)):cr(n,t);
|
||||||
|
},On.reduce=function(n,t,r){var e=af(n)?h:m,u=3>arguments.length;return e(n,je(t,4),r,u,oo)},On.reduceRight=function(n,t,r){var e=af(n)?p:m,u=3>arguments.length;return e(n,je(t,4),r,u,fo)},On.repeat=function(n,t,r){return t=(r?ze(n,t,r):t===F)?1:Ou(t),ar(zu(n),t)},On.replace=function(){var n=arguments,t=zu(n[0]);return 3>n.length?t:t.replace(n[1],n[2])},On.result=function(n,t,r){t=Rr(t,n);var e=-1,u=t.length;for(u||(u=1,n=F);++e<u;){var i=null==n?F:n[$e(t[e])];i===F&&(e=u,i=r),n=gu(i)?i.call(n):i;
|
||||||
|
}return n},On.round=ic,On.runInContext=w,On.sample=function(n){return(af(n)?tt:sr)(n)},On.size=function(n){if(null==n)return 0;if(pu(n))return mu(n)?T(n):n.length;var t=yo(n);return"[object Map]"==t||"[object Set]"==t?n.size:Ht(n).length},On.snakeCase=Tf,On.some=function(n,t,r){var e=af(n)?_:gr;return r&&ze(n,t,r)&&(t=F),e(n,je(t,3))},On.sortedIndex=function(n,t){return dr(n,t)},On.sortedIndexBy=function(n,t,r){return yr(n,t,je(r,2))},On.sortedIndexOf=function(n,t){var r=null==n?0:n.length;if(r){
|
||||||
|
var e=dr(n,t);if(e<r&&hu(n[e],t))return e}return-1},On.sortedLastIndex=function(n,t){return dr(n,t,true)},On.sortedLastIndexBy=function(n,t,r){return yr(n,t,je(r,2),true)},On.sortedLastIndexOf=function(n,t){if(null==n?0:n.length){var r=dr(n,t,true)-1;if(hu(n[r],t))return r}return-1},On.startCase=$f,On.startsWith=function(n,t,r){return n=zu(n),r=null==r?0:gt(Ou(r),0,n.length),t=jr(t),n.slice(r,r+t.length)==t},On.subtract=oc,On.sum=function(n){return n&&n.length?k(n,Nu):0},On.sumBy=function(n,t){return n&&n.length?k(n,je(t,2)):0;
|
||||||
|
},On.template=function(n,t,r){var e=On.templateSettings;r&&ze(n,t,r)&&(t=F),n=zu(n),t=jf({},t,e,se),r=jf({},t.imports,e.imports,se);var u,i,o=Lu(r),f=I(r,o),c=0;r=t.interpolate||An;var a="__p+='";r=ti((t.escape||An).source+"|"+r.source+"|"+(r===nn?gn:An).source+"|"+(t.evaluate||An).source+"|$","g");var l="sourceURL"in t?"//# sourceURL="+t.sourceURL+"\n":"";if(n.replace(r,function(t,r,e,o,f,l){return e||(e=o),a+=n.slice(c,l).replace(kn,B),r&&(u=true,a+="'+__e("+r+")+'"),f&&(i=true,a+="';"+f+";\n__p+='"),
|
||||||
|
e&&(a+="'+((__t=("+e+"))==null?'':__t)+'"),c=l+t.length,t}),a+="';",(t=t.variable)||(a="with(obj){"+a+"}"),a=(i?a.replace(q,""):a).replace(V,"$1").replace(K,"$1;"),a="function("+(t||"obj")+"){"+(t?"":"obj||(obj={});")+"var __t,__p=''"+(u?",__e=_.escape":"")+(i?",__j=Array.prototype.join;function print(){__p+=__j.call(arguments,'')}":";")+a+"return __p}",t=Pf(function(){return Qu(o,l+"return "+a).apply(F,f)}),t.source=a,vu(t))throw t;return t},On.times=function(n,t){if(n=Ou(n),1>n||9007199254740991<n)return[];
|
||||||
|
var r=4294967295,e=Mi(n,4294967295);for(t=je(t),n-=4294967295,e=E(e,t);++r<n;)t(r);return e},On.toFinite=Eu,On.toInteger=Ou,On.toLength=Su,On.toLower=function(n){return zu(n).toLowerCase()},On.toNumber=Iu,On.toSafeInteger=function(n){return n?gt(Ou(n),-9007199254740991,9007199254740991):0===n?n:0},On.toString=zu,On.toUpper=function(n){return zu(n).toUpperCase()},On.trim=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(cn,""):n&&(t=jr(t))?(n=$(n),r=$(t),t=z(n,r),r=W(n,r)+1,zr(n,t,r).join("")):n;
|
||||||
|
},On.trimEnd=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(ln,""):n&&(t=jr(t))?(n=$(n),t=W(n,$(t))+1,zr(n,0,t).join("")):n},On.trimStart=function(n,t,r){return(n=zu(n))&&(r||t===F)?n.replace(an,""):n&&(t=jr(t))?(n=$(n),t=z(n,$(t)),zr(n,t).join("")):n},On.truncate=function(n,t){var r=30,e="...";if(bu(t))var u="separator"in t?t.separator:u,r="length"in t?Ou(t.length):r,e="omission"in t?jr(t.omission):e;n=zu(n);var i=n.length;if(Bn.test(n))var o=$(n),i=o.length;if(r>=i)return n;if(i=r-T(e),1>i)return e;
|
||||||
|
if(r=o?zr(o,0,i).join(""):n.slice(0,i),u===F)return r+e;if(o&&(i+=r.length-i),_f(u)){if(n.slice(i).search(u)){var f=r;for(u.global||(u=ti(u.source,zu(dn.exec(u))+"g")),u.lastIndex=0;o=u.exec(f);)var c=o.index;r=r.slice(0,c===F?i:c)}}else n.indexOf(jr(u),i)!=i&&(u=r.lastIndexOf(u),-1<u&&(r=r.slice(0,u)));return r+e},On.unescape=function(n){return(n=zu(n))&&J.test(n)?n.replace(G,ut):n},On.uniqueId=function(n){var t=++ai;return zu(n)+t},On.upperCase=Ff,On.upperFirst=Nf,On.each=ru,On.eachRight=eu,On.first=Ke,
|
||||||
|
Zu(On,function(){var n={};return Et(On,function(t,r){ci.call(On.prototype,r)||(n[r]=t)}),n}(),{chain:false}),On.VERSION="4.17.3",u("bind bindKey curry curryRight partial partialRight".split(" "),function(n){On[n].placeholder=On}),u(["drop","take"],function(n,t){Mn.prototype[n]=function(r){r=r===F?1:Di(Ou(r),0);var e=this.__filtered__&&!t?new Mn(this):this.clone();return e.__filtered__?e.__takeCount__=Mi(r,e.__takeCount__):e.__views__.push({size:Mi(r,4294967295),type:n+(0>e.__dir__?"Right":"")}),e},Mn.prototype[n+"Right"]=function(t){
|
||||||
|
return this.reverse()[n](t).reverse()}}),u(["filter","map","takeWhile"],function(n,t){var r=t+1,e=1==r||3==r;Mn.prototype[n]=function(n){var t=this.clone();return t.__iteratees__.push({iteratee:je(n,3),type:r}),t.__filtered__=t.__filtered__||e,t}}),u(["head","last"],function(n,t){var r="take"+(t?"Right":"");Mn.prototype[n]=function(){return this[r](1).value()[0]}}),u(["initial","tail"],function(n,t){var r="drop"+(t?"":"Right");Mn.prototype[n]=function(){return this.__filtered__?new Mn(this):this[r](1);
|
||||||
|
}}),Mn.prototype.compact=function(){return this.filter(Nu)},Mn.prototype.find=function(n){return this.filter(n).head()},Mn.prototype.findLast=function(n){return this.reverse().find(n)},Mn.prototype.invokeMap=lr(function(n,t){return typeof n=="function"?new Mn(this):this.map(function(r){return Dt(r,n,t)})}),Mn.prototype.reject=function(n){return this.filter(su(je(n)))},Mn.prototype.slice=function(n,t){n=Ou(n);var r=this;return r.__filtered__&&(0<n||0>t)?new Mn(r):(0>n?r=r.takeRight(-n):n&&(r=r.drop(n)),
|
||||||
|
t!==F&&(t=Ou(t),r=0>t?r.dropRight(-t):r.take(t-n)),r)},Mn.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},Mn.prototype.toArray=function(){return this.take(4294967295)},Et(Mn.prototype,function(n,t){var r=/^(?:filter|find|map|reject)|While$/.test(t),e=/^(?:head|last)$/.test(t),u=On[e?"take"+("last"==t?"Right":""):t],i=e||/^find/.test(t);u&&(On.prototype[t]=function(){function t(n){return n=u.apply(On,s([n],f)),e&&h?n[0]:n}var o=this.__wrapped__,f=e?[1]:arguments,c=o instanceof Mn,a=f[0],l=c||af(o);
|
||||||
|
l&&r&&typeof a=="function"&&1!=a.length&&(c=l=false);var h=this.__chain__,p=!!this.__actions__.length,a=i&&!h,c=c&&!p;return!i&&l?(o=c?o:new Mn(this),o=n.apply(o,f),o.__actions__.push({func:nu,args:[t],thisArg:F}),new zn(o,h)):a&&c?n.apply(this,f):(o=this.thru(t),a?e?o.value()[0]:o.value():o)})}),u("pop push shift sort splice unshift".split(" "),function(n){var t=ui[n],r=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",e=/^(?:pop|shift)$/.test(n);On.prototype[n]=function(){var n=arguments;if(e&&!this.__chain__){
|
||||||
|
var u=this.value();return t.apply(af(u)?u:[],n)}return this[r](function(r){return t.apply(af(r)?r:[],n)})}}),Et(Mn.prototype,function(n,t){var r=On[t];if(r){var e=r.name+"";(Ji[e]||(Ji[e]=[])).push({name:t,func:r})}}),Ji[Xr(F,2).name]=[{name:"wrapper",func:F}],Mn.prototype.clone=function(){var n=new Mn(this.__wrapped__);return n.__actions__=Mr(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=Mr(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=Mr(this.__views__),
|
||||||
|
n},Mn.prototype.reverse=function(){if(this.__filtered__){var n=new Mn(this);n.__dir__=-1,n.__filtered__=true}else n=this.clone(),n.__dir__*=-1;return n},Mn.prototype.value=function(){var n,t=this.__wrapped__.value(),r=this.__dir__,e=af(t),u=0>r,i=e?t.length:0;n=i;for(var o=this.__views__,f=0,c=-1,a=o.length;++c<a;){var l=o[c],s=l.size;switch(l.type){case"drop":f+=s;break;case"dropRight":n-=s;break;case"take":n=Mi(n,f+s);break;case"takeRight":f=Di(f,n-s)}}if(n={start:f,end:n},o=n.start,f=n.end,n=f-o,
|
||||||
|
o=u?f:o-1,f=this.__iteratees__,c=f.length,a=0,l=Mi(n,this.__takeCount__),!e||!u&&i==n&&l==n)return kr(t,this.__actions__);e=[];n:for(;n--&&a<l;){for(o+=r,u=-1,i=t[o];++u<c;){var h=f[u],s=h.type,h=(0,h.iteratee)(i);if(2==s)i=h;else if(!h){if(1==s)continue n;break n}}e[a++]=i}return e},On.prototype.at=Fo,On.prototype.chain=function(){return Xe(this)},On.prototype.commit=function(){return new zn(this.value(),this.__chain__)},On.prototype.next=function(){this.__values__===F&&(this.__values__=ku(this.value()));
|
||||||
|
var n=this.__index__>=this.__values__.length;return{done:n,value:n?F:this.__values__[this.__index__++]}},On.prototype.plant=function(n){for(var t,r=this;r instanceof Sn;){var e=Pe(r);e.__index__=0,e.__values__=F,t?u.__wrapped__=e:t=e;var u=e,r=r.__wrapped__}return u.__wrapped__=n,t},On.prototype.reverse=function(){var n=this.__wrapped__;return n instanceof Mn?(this.__actions__.length&&(n=new Mn(this)),n=n.reverse(),n.__actions__.push({func:nu,args:[Je],thisArg:F}),new zn(n,this.__chain__)):this.thru(Je);
|
||||||
|
},On.prototype.toJSON=On.prototype.valueOf=On.prototype.value=function(){return kr(this.__wrapped__,this.__actions__)},On.prototype.first=On.prototype.head,Ai&&(On.prototype[Ai]=tu),On}();typeof define=="function"&&typeof define.amd=="object"&&define.amd?(Zn._=it, define(function(){return it})):Vn?((Vn.exports=it)._=it,qn._=it):Zn._=it}).call(this);
|
6785
js/libs/lodash.js
6785
js/libs/lodash.js
File diff suppressed because it is too large
Load Diff
|
@ -1,536 +0,0 @@
|
||||||
/*!
|
|
||||||
* mustache.js - Logic-less {{mustache}} templates with JavaScript
|
|
||||||
* http://github.com/janl/mustache.js
|
|
||||||
*/
|
|
||||||
var Mustache = (typeof module !== "undefined" && module.exports) || {};
|
|
||||||
|
|
||||||
(function (exports) {
|
|
||||||
|
|
||||||
exports.name = "mustache.js";
|
|
||||||
exports.version = "0.5.0-dev";
|
|
||||||
exports.tags = ["{{", "}}"];
|
|
||||||
exports.parse = parse;
|
|
||||||
exports.compile = compile;
|
|
||||||
exports.render = render;
|
|
||||||
exports.clearCache = clearCache;
|
|
||||||
|
|
||||||
// This is here for backwards compatibility with 0.4.x.
|
|
||||||
exports.to_html = function (template, view, partials, send) {
|
|
||||||
var result = render(template, view, partials);
|
|
||||||
|
|
||||||
if (typeof send === "function") {
|
|
||||||
send(result);
|
|
||||||
} else {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
var _toString = Object.prototype.toString;
|
|
||||||
var _isArray = Array.isArray;
|
|
||||||
var _forEach = Array.prototype.forEach;
|
|
||||||
var _trim = String.prototype.trim;
|
|
||||||
|
|
||||||
var isArray;
|
|
||||||
if (_isArray) {
|
|
||||||
isArray = _isArray;
|
|
||||||
} else {
|
|
||||||
isArray = function (obj) {
|
|
||||||
return _toString.call(obj) === "[object Array]";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
var forEach;
|
|
||||||
if (_forEach) {
|
|
||||||
forEach = function (obj, callback, scope) {
|
|
||||||
return _forEach.call(obj, callback, scope);
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
forEach = function (obj, callback, scope) {
|
|
||||||
for (var i = 0, len = obj.length; i < len; ++i) {
|
|
||||||
callback.call(scope, obj[i], i, obj);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
var spaceRe = /^\s*$/;
|
|
||||||
|
|
||||||
function isWhitespace(string) {
|
|
||||||
return spaceRe.test(string);
|
|
||||||
}
|
|
||||||
|
|
||||||
var trim;
|
|
||||||
if (_trim) {
|
|
||||||
trim = function (string) {
|
|
||||||
return string == null ? "" : _trim.call(string);
|
|
||||||
};
|
|
||||||
} else {
|
|
||||||
var trimLeft, trimRight;
|
|
||||||
|
|
||||||
if (isWhitespace("\xA0")) {
|
|
||||||
trimLeft = /^\s+/;
|
|
||||||
trimRight = /\s+$/;
|
|
||||||
} else {
|
|
||||||
// IE doesn't match non-breaking spaces with \s, thanks jQuery.
|
|
||||||
trimLeft = /^[\s\xA0]+/;
|
|
||||||
trimRight = /[\s\xA0]+$/;
|
|
||||||
}
|
|
||||||
|
|
||||||
trim = function (string) {
|
|
||||||
return string == null ? "" :
|
|
||||||
String(string).replace(trimLeft, "").replace(trimRight, "");
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
var escapeMap = {
|
|
||||||
"&": "&",
|
|
||||||
"<": "<",
|
|
||||||
">": ">",
|
|
||||||
'"': '"',
|
|
||||||
"'": '''
|
|
||||||
};
|
|
||||||
|
|
||||||
function escapeHTML(string) {
|
|
||||||
return String(string).replace(/&(?!\w+;)|[<>"']/g, function (s) {
|
|
||||||
return escapeMap[s] || s;
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Adds the `template`, `line`, and `file` properties to the given error
|
|
||||||
* object and alters the message to provide more useful debugging information.
|
|
||||||
*/
|
|
||||||
function debug(e, template, line, file) {
|
|
||||||
file = file || "<template>";
|
|
||||||
|
|
||||||
var lines = template.split("\n"),
|
|
||||||
start = Math.max(line - 3, 0),
|
|
||||||
end = Math.min(lines.length, line + 3),
|
|
||||||
context = lines.slice(start, end);
|
|
||||||
|
|
||||||
var c;
|
|
||||||
for (var i = 0, len = context.length; i < len; ++i) {
|
|
||||||
c = i + start + 1;
|
|
||||||
context[i] = (c === line ? " >> " : " ") + context[i];
|
|
||||||
}
|
|
||||||
|
|
||||||
e.template = template;
|
|
||||||
e.line = line;
|
|
||||||
e.file = file;
|
|
||||||
e.message = [file + ":" + line, context.join("\n"), "", e.message].join("\n");
|
|
||||||
|
|
||||||
return e;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Looks up the value of the given `name` in the given context `stack`.
|
|
||||||
*/
|
|
||||||
function lookup(name, stack, defaultValue) {
|
|
||||||
if (name === ".") {
|
|
||||||
return stack[stack.length - 1];
|
|
||||||
}
|
|
||||||
|
|
||||||
var names = name.split(".");
|
|
||||||
var lastIndex = names.length - 1;
|
|
||||||
var target = names[lastIndex];
|
|
||||||
|
|
||||||
var value, context, i = stack.length, j, localStack;
|
|
||||||
while (i) {
|
|
||||||
localStack = stack.slice(0);
|
|
||||||
context = stack[--i];
|
|
||||||
|
|
||||||
j = 0;
|
|
||||||
while (j < lastIndex) {
|
|
||||||
context = context[names[j++]];
|
|
||||||
|
|
||||||
if (context == null) {
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
localStack.push(context);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (context && typeof context === "object" && target in context) {
|
|
||||||
value = context[target];
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// If the value is a function, call it in the current context.
|
|
||||||
if (typeof value === "function") {
|
|
||||||
value = value.call(localStack[localStack.length - 1]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (value == null) {
|
|
||||||
return defaultValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
return value;
|
|
||||||
}
|
|
||||||
|
|
||||||
function renderSection(name, stack, callback, inverted) {
|
|
||||||
var buffer = "";
|
|
||||||
var value = lookup(name, stack);
|
|
||||||
|
|
||||||
if (inverted) {
|
|
||||||
// From the spec: inverted sections may render text once based on the
|
|
||||||
// inverse value of the key. That is, they will be rendered if the key
|
|
||||||
// doesn't exist, is false, or is an empty list.
|
|
||||||
if (value == null || value === false || (isArray(value) && value.length === 0)) {
|
|
||||||
buffer += callback();
|
|
||||||
}
|
|
||||||
} else if (isArray(value)) {
|
|
||||||
forEach(value, function (value) {
|
|
||||||
stack.push(value);
|
|
||||||
buffer += callback();
|
|
||||||
stack.pop();
|
|
||||||
});
|
|
||||||
} else if (typeof value === "object") {
|
|
||||||
stack.push(value);
|
|
||||||
buffer += callback();
|
|
||||||
stack.pop();
|
|
||||||
} else if (typeof value === "function") {
|
|
||||||
var scope = stack[stack.length - 1];
|
|
||||||
var scopedRender = function (template) {
|
|
||||||
return render(template, scope);
|
|
||||||
};
|
|
||||||
buffer += value.call(scope, callback(), scopedRender) || "";
|
|
||||||
} else if (value) {
|
|
||||||
buffer += callback();
|
|
||||||
}
|
|
||||||
|
|
||||||
return buffer;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Parses the given `template` and returns the source of a function that,
|
|
||||||
* with the proper arguments, will render the template. Recognized options
|
|
||||||
* include the following:
|
|
||||||
*
|
|
||||||
* - file The name of the file the template comes from (displayed in
|
|
||||||
* error messages)
|
|
||||||
* - tags An array of open and close tags the `template` uses. Defaults
|
|
||||||
* to the value of Mustache.tags
|
|
||||||
* - debug Set `true` to log the body of the generated function to the
|
|
||||||
* console
|
|
||||||
* - space Set `true` to preserve whitespace from lines that otherwise
|
|
||||||
* contain only a {{tag}}. Defaults to `false`
|
|
||||||
*/
|
|
||||||
function parse(template, options) {
|
|
||||||
options = options || {};
|
|
||||||
|
|
||||||
var tags = options.tags || exports.tags,
|
|
||||||
openTag = tags[0],
|
|
||||||
closeTag = tags[tags.length - 1];
|
|
||||||
|
|
||||||
var code = [
|
|
||||||
'var buffer = "";', // output buffer
|
|
||||||
"\nvar line = 1;", // keep track of source line number
|
|
||||||
"\ntry {",
|
|
||||||
'\nbuffer += "'
|
|
||||||
];
|
|
||||||
|
|
||||||
var spaces = [], // indices of whitespace in code on the current line
|
|
||||||
hasTag = false, // is there a {{tag}} on the current line?
|
|
||||||
nonSpace = false; // is there a non-space char on the current line?
|
|
||||||
|
|
||||||
// Strips all space characters from the code array for the current line
|
|
||||||
// if there was a {{tag}} on it and otherwise only spaces.
|
|
||||||
var stripSpace = function () {
|
|
||||||
if (hasTag && !nonSpace && !options.space) {
|
|
||||||
while (spaces.length) {
|
|
||||||
code.splice(spaces.pop(), 1);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
spaces = [];
|
|
||||||
}
|
|
||||||
|
|
||||||
hasTag = false;
|
|
||||||
nonSpace = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
var sectionStack = [], updateLine, nextOpenTag, nextCloseTag;
|
|
||||||
|
|
||||||
var setTags = function (source) {
|
|
||||||
tags = trim(source).split(/\s+/);
|
|
||||||
nextOpenTag = tags[0];
|
|
||||||
nextCloseTag = tags[tags.length - 1];
|
|
||||||
};
|
|
||||||
|
|
||||||
var includePartial = function (source) {
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
updateLine,
|
|
||||||
'\nvar partial = partials["' + trim(source) + '"];',
|
|
||||||
'\nif (partial) {',
|
|
||||||
'\n buffer += render(partial,stack[stack.length - 1],partials);',
|
|
||||||
'\n}',
|
|
||||||
'\nbuffer += "'
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
var openSection = function (source, inverted) {
|
|
||||||
var name = trim(source);
|
|
||||||
|
|
||||||
if (name === "") {
|
|
||||||
throw debug(new Error("Section name may not be empty"), template, line, options.file);
|
|
||||||
}
|
|
||||||
|
|
||||||
sectionStack.push({name: name, inverted: inverted});
|
|
||||||
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
updateLine,
|
|
||||||
'\nvar name = "' + name + '";',
|
|
||||||
'\nvar callback = (function () {',
|
|
||||||
'\n return function () {',
|
|
||||||
'\n var buffer = "";',
|
|
||||||
'\nbuffer += "'
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
var openInvertedSection = function (source) {
|
|
||||||
openSection(source, true);
|
|
||||||
};
|
|
||||||
|
|
||||||
var closeSection = function (source) {
|
|
||||||
var name = trim(source);
|
|
||||||
var openName = sectionStack.length != 0 && sectionStack[sectionStack.length - 1].name;
|
|
||||||
|
|
||||||
if (!openName || name != openName) {
|
|
||||||
throw debug(new Error('Section named "' + name + '" was never opened'), template, line, options.file);
|
|
||||||
}
|
|
||||||
|
|
||||||
var section = sectionStack.pop();
|
|
||||||
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
'\n return buffer;',
|
|
||||||
'\n };',
|
|
||||||
'\n})();'
|
|
||||||
);
|
|
||||||
|
|
||||||
if (section.inverted) {
|
|
||||||
code.push("\nbuffer += renderSection(name,stack,callback,true);");
|
|
||||||
} else {
|
|
||||||
code.push("\nbuffer += renderSection(name,stack,callback);");
|
|
||||||
}
|
|
||||||
|
|
||||||
code.push('\nbuffer += "');
|
|
||||||
};
|
|
||||||
|
|
||||||
var sendPlain = function (source) {
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
updateLine,
|
|
||||||
'\nbuffer += lookup("' + trim(source) + '",stack,"");',
|
|
||||||
'\nbuffer += "'
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
var sendEscaped = function (source) {
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
updateLine,
|
|
||||||
'\nbuffer += escapeHTML(lookup("' + trim(source) + '",stack,""));',
|
|
||||||
'\nbuffer += "'
|
|
||||||
);
|
|
||||||
};
|
|
||||||
|
|
||||||
var line = 1, c, callback;
|
|
||||||
for (var i = 0, len = template.length; i < len; ++i) {
|
|
||||||
if (template.slice(i, i + openTag.length) === openTag) {
|
|
||||||
i += openTag.length;
|
|
||||||
c = template.substr(i, 1);
|
|
||||||
updateLine = '\nline = ' + line + ';';
|
|
||||||
nextOpenTag = openTag;
|
|
||||||
nextCloseTag = closeTag;
|
|
||||||
hasTag = true;
|
|
||||||
|
|
||||||
switch (c) {
|
|
||||||
case "!": // comment
|
|
||||||
i++;
|
|
||||||
callback = null;
|
|
||||||
break;
|
|
||||||
case "=": // change open/close tags, e.g. {{=<% %>=}}
|
|
||||||
i++;
|
|
||||||
closeTag = "=" + closeTag;
|
|
||||||
callback = setTags;
|
|
||||||
break;
|
|
||||||
case ">": // include partial
|
|
||||||
i++;
|
|
||||||
callback = includePartial;
|
|
||||||
break;
|
|
||||||
case "#": // start section
|
|
||||||
i++;
|
|
||||||
callback = openSection;
|
|
||||||
break;
|
|
||||||
case "^": // start inverted section
|
|
||||||
i++;
|
|
||||||
callback = openInvertedSection;
|
|
||||||
break;
|
|
||||||
case "/": // end section
|
|
||||||
i++;
|
|
||||||
callback = closeSection;
|
|
||||||
break;
|
|
||||||
case "{": // plain variable
|
|
||||||
closeTag = "}" + closeTag;
|
|
||||||
// fall through
|
|
||||||
case "&": // plain variable
|
|
||||||
i++;
|
|
||||||
nonSpace = true;
|
|
||||||
callback = sendPlain;
|
|
||||||
break;
|
|
||||||
default: // escaped variable
|
|
||||||
nonSpace = true;
|
|
||||||
callback = sendEscaped;
|
|
||||||
}
|
|
||||||
|
|
||||||
var end = template.indexOf(closeTag, i);
|
|
||||||
|
|
||||||
if (end === -1) {
|
|
||||||
throw debug(new Error('Tag "' + openTag + '" was not closed properly'), template, line, options.file);
|
|
||||||
}
|
|
||||||
|
|
||||||
var source = template.substring(i, end);
|
|
||||||
|
|
||||||
if (callback) {
|
|
||||||
callback(source);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Maintain line count for \n in source.
|
|
||||||
var n = 0;
|
|
||||||
while (~(n = source.indexOf("\n", n))) {
|
|
||||||
line++;
|
|
||||||
n++;
|
|
||||||
}
|
|
||||||
|
|
||||||
i = end + closeTag.length - 1;
|
|
||||||
openTag = nextOpenTag;
|
|
||||||
closeTag = nextCloseTag;
|
|
||||||
} else {
|
|
||||||
c = template.substr(i, 1);
|
|
||||||
|
|
||||||
switch (c) {
|
|
||||||
case '"':
|
|
||||||
case "\\":
|
|
||||||
nonSpace = true;
|
|
||||||
code.push("\\" + c);
|
|
||||||
break;
|
|
||||||
case "\r":
|
|
||||||
// Ignore carriage returns.
|
|
||||||
break;
|
|
||||||
case "\n":
|
|
||||||
spaces.push(code.length);
|
|
||||||
code.push("\\n");
|
|
||||||
stripSpace(); // Check for whitespace on the current line.
|
|
||||||
line++;
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
if (isWhitespace(c)) {
|
|
||||||
spaces.push(code.length);
|
|
||||||
} else {
|
|
||||||
nonSpace = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
code.push(c);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (sectionStack.length != 0) {
|
|
||||||
throw debug(new Error('Section "' + sectionStack[sectionStack.length - 1].name + '" was not closed properly'), template, line, options.file);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Clean up any whitespace from a closing {{tag}} that was at the end
|
|
||||||
// of the template without a trailing \n.
|
|
||||||
stripSpace();
|
|
||||||
|
|
||||||
code.push(
|
|
||||||
'";',
|
|
||||||
"\nreturn buffer;",
|
|
||||||
"\n} catch (e) { throw {error: e, line: line}; }"
|
|
||||||
);
|
|
||||||
|
|
||||||
// Ignore `buffer += "";` statements.
|
|
||||||
var body = code.join("").replace(/buffer \+= "";\n/g, "");
|
|
||||||
|
|
||||||
if (options.debug) {
|
|
||||||
if (typeof console != "undefined" && console.log) {
|
|
||||||
console.log(body);
|
|
||||||
} else if (typeof print === "function") {
|
|
||||||
print(body);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return body;
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Used by `compile` to generate a reusable function for the given `template`.
|
|
||||||
*/
|
|
||||||
function _compile(template, options) {
|
|
||||||
var args = "view,partials,stack,lookup,escapeHTML,renderSection,render";
|
|
||||||
var body = parse(template, options);
|
|
||||||
var fn = new Function(args, body);
|
|
||||||
|
|
||||||
// This anonymous function wraps the generated function so we can do
|
|
||||||
// argument coercion, setup some variables, and handle any errors
|
|
||||||
// encountered while executing it.
|
|
||||||
return function (view, partials) {
|
|
||||||
partials = partials || {};
|
|
||||||
|
|
||||||
var stack = [view]; // context stack
|
|
||||||
|
|
||||||
try {
|
|
||||||
return fn(view, partials, stack, lookup, escapeHTML, renderSection, render);
|
|
||||||
} catch (e) {
|
|
||||||
throw debug(e.error, template, e.line, options.file);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cache of pre-compiled templates.
|
|
||||||
var _cache = {};
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Clear the cache of compiled templates.
|
|
||||||
*/
|
|
||||||
function clearCache() {
|
|
||||||
_cache = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Compiles the given `template` into a reusable function using the given
|
|
||||||
* `options`. In addition to the options accepted by Mustache.parse,
|
|
||||||
* recognized options include the following:
|
|
||||||
*
|
|
||||||
* - cache Set `false` to bypass any pre-compiled version of the given
|
|
||||||
* template. Otherwise, a given `template` string will be cached
|
|
||||||
* the first time it is parsed
|
|
||||||
*/
|
|
||||||
function compile(template, options) {
|
|
||||||
options = options || {};
|
|
||||||
|
|
||||||
// Use a pre-compiled version from the cache if we have one.
|
|
||||||
if (options.cache !== false) {
|
|
||||||
if (!_cache[template]) {
|
|
||||||
_cache[template] = _compile(template, options);
|
|
||||||
}
|
|
||||||
|
|
||||||
return _cache[template];
|
|
||||||
}
|
|
||||||
|
|
||||||
return _compile(template, options);
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* High-level function that renders the given `template` using the given
|
|
||||||
* `view` and `partials`. If you need to use any of the template options (see
|
|
||||||
* `compile` above), you must compile in a separate step, and then call that
|
|
||||||
* compiled function.
|
|
||||||
*/
|
|
||||||
function render(template, view, partials) {
|
|
||||||
return compile(template)(view, partials);
|
|
||||||
}
|
|
||||||
|
|
||||||
})(Mustache);
|
|
|
@ -1,186 +0,0 @@
|
||||||
//
|
|
||||||
// piecon.js
|
|
||||||
//
|
|
||||||
// https://github.com/lipka/piecon
|
|
||||||
//
|
|
||||||
// Copyright (c) 2012 Lukas Lipka <lukaslipka@gmail.com>. All rights reserved.
|
|
||||||
//
|
|
||||||
|
|
||||||
(function(){
|
|
||||||
var Piecon = {};
|
|
||||||
|
|
||||||
var currentFavicon = null;
|
|
||||||
var originalFavicon = null;
|
|
||||||
var originalTitle = null;
|
|
||||||
var canvas = null;
|
|
||||||
var options = {};
|
|
||||||
var defaults = {
|
|
||||||
color: '#ff0084',
|
|
||||||
background: '#bbb',
|
|
||||||
shadow: '#fff',
|
|
||||||
fallback: false
|
|
||||||
};
|
|
||||||
|
|
||||||
var ua = (function () {
|
|
||||||
var agent = navigator.userAgent.toLowerCase();
|
|
||||||
return function (browser) {
|
|
||||||
return agent.indexOf(browser) !== -1;
|
|
||||||
};
|
|
||||||
}());
|
|
||||||
|
|
||||||
var browser = {
|
|
||||||
ie: ua('msie'),
|
|
||||||
chrome: ua('chrome'),
|
|
||||||
webkit: ua('chrome') || ua('safari'),
|
|
||||||
safari: ua('safari') && !ua('chrome'),
|
|
||||||
mozilla: ua('mozilla') && !ua('chrome') && !ua('safari')
|
|
||||||
};
|
|
||||||
|
|
||||||
var getFaviconTag = function() {
|
|
||||||
var links = document.getElementsByTagName('link');
|
|
||||||
|
|
||||||
for (var i = 0, l = links.length; i < l; i++) {
|
|
||||||
if (links[i].getAttribute('rel') === 'icon' || links[i].getAttribute('rel') === 'shortcut icon') {
|
|
||||||
return links[i];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
|
|
||||||
var removeFaviconTag = function() {
|
|
||||||
var links = document.getElementsByTagName('link');
|
|
||||||
var head = document.getElementsByTagName('head')[0];
|
|
||||||
|
|
||||||
for (var i = 0, l = links.length; i < l; i++) {
|
|
||||||
if (links[i].getAttribute('rel') === 'icon' || links[i].getAttribute('rel') === 'shortcut icon') {
|
|
||||||
head.removeChild(links[i]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
var setFaviconTag = function(url) {
|
|
||||||
removeFaviconTag();
|
|
||||||
|
|
||||||
var link = document.createElement('link');
|
|
||||||
link.type = 'image/x-icon';
|
|
||||||
link.rel = 'icon';
|
|
||||||
link.href = url;
|
|
||||||
|
|
||||||
document.getElementsByTagName('head')[0].appendChild(link);
|
|
||||||
};
|
|
||||||
|
|
||||||
var getCanvas = function () {
|
|
||||||
if (!canvas) {
|
|
||||||
canvas = document.createElement("canvas");
|
|
||||||
canvas.width = 16;
|
|
||||||
canvas.height = 16;
|
|
||||||
}
|
|
||||||
|
|
||||||
return canvas;
|
|
||||||
};
|
|
||||||
|
|
||||||
var drawFavicon = function(percentage) {
|
|
||||||
var canvas = getCanvas();
|
|
||||||
var context = canvas.getContext("2d");
|
|
||||||
var percentage = percentage || 0;
|
|
||||||
var src = currentFavicon;
|
|
||||||
|
|
||||||
var faviconImage = new Image();
|
|
||||||
faviconImage.onload = function() {
|
|
||||||
if (context) {
|
|
||||||
context.clearRect(0, 0, 16, 16);
|
|
||||||
|
|
||||||
// Draw shadow
|
|
||||||
context.beginPath();
|
|
||||||
context.moveTo(canvas.width / 2, canvas.height / 2);
|
|
||||||
context.arc(canvas.width / 2, canvas.height / 2, Math.min(canvas.width / 2, canvas.height / 2), 0, Math.PI * 2, false);
|
|
||||||
context.fillStyle = options.shadow;
|
|
||||||
context.fill();
|
|
||||||
|
|
||||||
// Draw background
|
|
||||||
context.beginPath();
|
|
||||||
context.moveTo(canvas.width / 2, canvas.height / 2);
|
|
||||||
context.arc(canvas.width / 2, canvas.height / 2, Math.min(canvas.width / 2, canvas.height / 2) - 2, 0, Math.PI * 2, false);
|
|
||||||
context.fillStyle = options.background;
|
|
||||||
context.fill();
|
|
||||||
|
|
||||||
// Draw pie
|
|
||||||
if (percentage > 0) {
|
|
||||||
context.beginPath();
|
|
||||||
context.moveTo(canvas.width / 2, canvas.height / 2);
|
|
||||||
context.arc(canvas.width / 2, canvas.height / 2, Math.min(canvas.width / 2, canvas.height / 2) - 2, (-0.5) * Math.PI, (-0.5 + 2 * percentage / 100) * Math.PI, false);
|
|
||||||
context.lineTo(canvas.width / 2, canvas.height / 2);
|
|
||||||
context.fillStyle = options.color;
|
|
||||||
context.fill();
|
|
||||||
}
|
|
||||||
|
|
||||||
setFaviconTag(canvas.toDataURL());
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
// allow cross origin resource requests if the image is not a data:uri
|
|
||||||
// as detailed here: https://github.com/mrdoob/three.js/issues/1305
|
|
||||||
if (!src.match(/^data/)) {
|
|
||||||
faviconImage.crossOrigin = 'anonymous';
|
|
||||||
}
|
|
||||||
|
|
||||||
faviconImage.src = src;
|
|
||||||
};
|
|
||||||
|
|
||||||
var updateTitle = function(percentage) {
|
|
||||||
if (percentage > 0) {
|
|
||||||
document.title = '(' + percentage + '%) ' + originalTitle;
|
|
||||||
} else {
|
|
||||||
document.title = originalTitle;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Piecon.setOptions = function(custom) {
|
|
||||||
options = {};
|
|
||||||
|
|
||||||
for (var key in defaults){
|
|
||||||
options[key] = custom.hasOwnProperty(key) ? custom[key] : defaults[key];
|
|
||||||
}
|
|
||||||
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
|
|
||||||
Piecon.setProgress = function(percentage) {
|
|
||||||
if (!originalTitle) {
|
|
||||||
originalTitle = document.title;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!originalFavicon || !currentFavicon) {
|
|
||||||
var tag = getFaviconTag();
|
|
||||||
originalFavicon = currentFavicon = tag ? tag.getAttribute('href') : '/favicon.ico';
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!isNaN(parseFloat(percentage)) && isFinite(percentage)) {
|
|
||||||
if (!getCanvas().getContext || browser.ie || browser.safari || options.fallback == true) {
|
|
||||||
// Fallback to updating the browser title if unsupported
|
|
||||||
return updateTitle(percentage);
|
|
||||||
} else if (options.fallback === 'force') {
|
|
||||||
updateTitle(percentage);
|
|
||||||
}
|
|
||||||
|
|
||||||
return drawFavicon(percentage);
|
|
||||||
}
|
|
||||||
|
|
||||||
return false;
|
|
||||||
};
|
|
||||||
|
|
||||||
Piecon.reset = function() {
|
|
||||||
if (originalTitle) {
|
|
||||||
document.title = originalTitle;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (originalFavicon) {
|
|
||||||
currentFavicon = originalFavicon;
|
|
||||||
setFaviconTag(currentFavicon);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
Piecon.setOptions(defaults);
|
|
||||||
window.Piecon = Piecon;
|
|
||||||
})();
|
|
1993
js/libs/require.js
1993
js/libs/require.js
File diff suppressed because it is too large
Load Diff
|
@ -20,7 +20,6 @@ function(syscall, globalTimeout, alerts, utils, rootScope, uri, authconf, filter
|
||||||
if(cookieConf) configurations.unshift(cookieConf);
|
if(cookieConf) configurations.unshift(cookieConf);
|
||||||
|
|
||||||
if (['http', 'https'].indexOf(uri.protocol()) != -1 && uri.host() != 'localhost') {
|
if (['http', 'https'].indexOf(uri.protocol()) != -1 && uri.host() != 'localhost') {
|
||||||
console.log(uri.host());
|
|
||||||
configurations.push({
|
configurations.push({
|
||||||
host: uri.host(),
|
host: uri.host(),
|
||||||
path: '/jsonrpc',
|
path: '/jsonrpc',
|
||||||
|
@ -39,7 +38,6 @@ function(syscall, globalTimeout, alerts, utils, rootScope, uri, authconf, filter
|
||||||
path: authconf.path,
|
path: authconf.path,
|
||||||
encrypt: ( uri.protocol() == 'https' )
|
encrypt: ( uri.protocol() == 'https' )
|
||||||
});
|
});
|
||||||
console.log(configurations);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -108,7 +106,7 @@ function(syscall, globalTimeout, alerts, utils, rootScope, uri, authconf, filter
|
||||||
else {
|
else {
|
||||||
alerts.addAlert('<strong>' + filter('translate')('Oh Snap!') + '</strong> ' +
|
alerts.addAlert('<strong>' + filter('translate')('Oh Snap!') + '</strong> ' +
|
||||||
filter('translate')('Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings')
|
filter('translate')('Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings')
|
||||||
, 'error')
|
, 'error');
|
||||||
timeout = setTimeout(update, globalTimeout);
|
timeout = setTimeout(update, globalTimeout);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -117,13 +115,14 @@ function(syscall, globalTimeout, alerts, utils, rootScope, uri, authconf, filter
|
||||||
name: 'system.multicall',
|
name: 'system.multicall',
|
||||||
params: [params],
|
params: [params],
|
||||||
success: function(data) {
|
success: function(data) {
|
||||||
var failed = _.any(data.result, function(d) {
|
var failed = _.some(data.result, function(d) {
|
||||||
return d.code && d.message === "Unauthorized";
|
return d.code && d.message === "Unauthorized";
|
||||||
});
|
});
|
||||||
|
|
||||||
if (failed) {
|
if (failed) {
|
||||||
needNewConnection = true;
|
needNewConnection = true;
|
||||||
alerts.addAlert('<strong>Oh Snap!</strong> Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings', 'error');
|
alerts.addAlert('<strong>' + filter('translate')('Oh Snap!') + '</strong> ' +
|
||||||
|
filter('translate')('Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings', 'error'));
|
||||||
timeout = setTimeout(update, globalTimeout);
|
timeout = setTimeout(update, globalTimeout);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -41,15 +41,11 @@ function(log, jsonRPC, sockRPC, alerts) {
|
||||||
opts.error = opts.error || angular.noop;
|
opts.error = opts.error || angular.noop;
|
||||||
|
|
||||||
if (sockRPC.initialized) {
|
if (sockRPC.initialized) {
|
||||||
console.log('calling sock rpc');
|
|
||||||
return sockRPC.invoke(opts);
|
return sockRPC.invoke(opts);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
console.log('calling json rpc');
|
|
||||||
return jsonRPC.invoke(opts);
|
return jsonRPC.invoke(opts);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
}]);
|
}]);
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -39,9 +39,6 @@ translations.de_DE = {
|
||||||
'Paused': 'Angehaltene',
|
'Paused': 'Angehaltene',
|
||||||
'Removed': 'Gelöschte',
|
'Removed': 'Gelöschte',
|
||||||
'Hide linked meta-data': 'Blende verlinkte Meta-Daten aus',
|
'Hide linked meta-data': 'Blende verlinkte Meta-Daten aus',
|
||||||
'Displaying': 'Anzeige',
|
|
||||||
'of': 'von',
|
|
||||||
'downloads': 'Downloads',
|
|
||||||
'Toggle': 'Umschalten',
|
'Toggle': 'Umschalten',
|
||||||
'Reset filters': 'Filter zurücksetzen',
|
'Reset filters': 'Filter zurücksetzen',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
|
@ -39,13 +39,14 @@ translations.en_US = {
|
||||||
'Paused': 'Paused',
|
'Paused': 'Paused',
|
||||||
'Removed': 'Removed',
|
'Removed': 'Removed',
|
||||||
'Hide linked meta-data': 'Hide linked meta-data',
|
'Hide linked meta-data': 'Hide linked meta-data',
|
||||||
'Displaying': 'Displaying',
|
|
||||||
'of': 'of',
|
|
||||||
'downloads': 'downloads',
|
|
||||||
'Toggle': 'Toggle',
|
'Toggle': 'Toggle',
|
||||||
'Reset filters': 'Reset filters',
|
'Reset filters': 'Reset filters',
|
||||||
|
// download status
|
||||||
|
'Verifing': 'Verifing',
|
||||||
|
'Verify Pending': 'Verify Pending',
|
||||||
// starred properties
|
// starred properties
|
||||||
'Quick Access Settings': 'Quick Access Settings',
|
'Quick Access Settings': 'Quick Access Settings',
|
||||||
|
'Save': 'Save',
|
||||||
'Save settings': 'Save settings',
|
'Save settings': 'Save settings',
|
||||||
'Currently no download in line to display, use the': 'Currently no download in line to display, use the',
|
'Currently no download in line to display, use the': 'Currently no download in line to display, use the',
|
||||||
'download button to start downloading files!': 'download button to start downloading files!',
|
'download button to start downloading files!': 'download button to start downloading files!',
|
||||||
|
@ -138,7 +139,9 @@ translations.en_US = {
|
||||||
'The last connection attempt was unsuccessful. Trying another configuration': 'The last connection attempt was unsuccessful. Trying another configuration',
|
'The last connection attempt was unsuccessful. Trying another configuration': 'The last connection attempt was unsuccessful. Trying another configuration',
|
||||||
'Oh Snap!': 'Oh Snap!',
|
'Oh Snap!': 'Oh Snap!',
|
||||||
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings': 'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings',
|
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings': 'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings',
|
||||||
|
'Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings': 'Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings',
|
||||||
'Successfully connected to Aria2 through its remote RPC …': 'Successfully connected to Aria2 through its remote RPC …',
|
'Successfully connected to Aria2 through its remote RPC …': 'Successfully connected to Aria2 through its remote RPC …',
|
||||||
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)': 'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)',
|
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)': 'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)',
|
||||||
'Trying to connect to aria2 using the new connection configuration': 'Trying to connect to aria2 using the new connection configuration',
|
'Trying to connect to aria2 using the new connection configuration': 'Trying to connect to aria2 using the new connection configuration',
|
||||||
|
'Remove {{name}} and associated meta-data?': 'Remove {{name}} and associated meta-data?'
|
||||||
};
|
};
|
||||||
|
|
|
@ -54,9 +54,6 @@ translations.es_ES = { // replace en_US to ll_CC, examples: zh_CN, de_AT.
|
||||||
'Paused': 'En Pausa',
|
'Paused': 'En Pausa',
|
||||||
'Removed': 'Eliminado',
|
'Removed': 'Eliminado',
|
||||||
'Hide linked meta-data': 'Ocultar metadatos adjuntos',
|
'Hide linked meta-data': 'Ocultar metadatos adjuntos',
|
||||||
'Displaying': 'Mostrando',
|
|
||||||
'of': 'de',
|
|
||||||
'downloads': 'descargas',
|
|
||||||
'Toggle': 'Conmutar',
|
'Toggle': 'Conmutar',
|
||||||
'Reset filters': 'Restablecer Filtros',
|
'Reset filters': 'Restablecer Filtros',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
|
@ -39,9 +39,6 @@ translations.fr_FR = {
|
||||||
'Paused': 'En Pause',
|
'Paused': 'En Pause',
|
||||||
'Removed': 'Supprimés',
|
'Removed': 'Supprimés',
|
||||||
'Hide linked meta-data': 'Cacher les méta-données liées',
|
'Hide linked meta-data': 'Cacher les méta-données liées',
|
||||||
'Displaying': 'Affichage de',
|
|
||||||
'of': 'parmi',
|
|
||||||
'downloads': 'téléchargements',
|
|
||||||
'Toggle': 'Basculer',
|
'Toggle': 'Basculer',
|
||||||
'Reset filters': 'Réinitialiser les filtres',
|
'Reset filters': 'Réinitialiser les filtres',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
|
@ -39,9 +39,6 @@ translations.it_IT = {
|
||||||
'Paused': 'In pausa',
|
'Paused': 'In pausa',
|
||||||
'Removed': 'Rimossi',
|
'Removed': 'Rimossi',
|
||||||
'Hide linked meta-data': 'Nascondi i meta-data collegati',
|
'Hide linked meta-data': 'Nascondi i meta-data collegati',
|
||||||
'Displaying': 'Mostra',
|
|
||||||
'of': 'di',
|
|
||||||
'downloads': 'downloads',
|
|
||||||
'Toggle': 'Cambia',
|
'Toggle': 'Cambia',
|
||||||
'Reset filters': 'Reimposta filtri',
|
'Reset filters': 'Reimposta filtri',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
@ -86,54 +83,54 @@ translations.it_IT = {
|
||||||
'Choose files to start download for': 'Scegli i file da scaricare',
|
'Choose files to start download for': 'Scegli i file da scaricare',
|
||||||
'Select to download': 'Seleziona per scaricare',
|
'Select to download': 'Seleziona per scaricare',
|
||||||
// settings modal
|
// settings modal
|
||||||
'Aria2 RPC host and port': 'Aria2 RPC host and port',
|
'Aria2 RPC host and port': 'Host e porta del server RPC di Aria2',
|
||||||
'Enter the host': 'Enter the host',
|
'Enter the host': 'Inserisci l\'host',
|
||||||
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
||||||
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)',
|
'Inserisci l\'IP o il nome DNS del server dov\'è in esecuzione l\'RPC per Aria2 (default: localhost)',
|
||||||
'Enter the port': 'Enter the port',
|
'Enter the port': 'Inserisci la porta',
|
||||||
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
||||||
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)',
|
'Inserisci la porta del server dov\'è in esecuzione l\'RPC per Aria2 (default: 6800)',
|
||||||
'Enter the RPC path': 'Enter the RPC path',
|
'Enter the RPC path': 'Inserisci la path RPC',
|
||||||
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': 'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)',
|
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': 'Inserisci la path per l\'endpoint RPC di Aria2 (default: /jsonrpc)',
|
||||||
'SSL/TLS encryption': 'SSL/TLS encryption',
|
'SSL/TLS encryption': 'Cifratura SSL/TLS',
|
||||||
'Enable SSL/TLS encryption': 'Enable SSL/TLS encryption',
|
'Enable SSL/TLS encryption': 'Abilita la cifratura SSL/TLS',
|
||||||
'Enter the secret token (optional)': 'Enter the secret token (optional)',
|
'Enter the secret token (optional)': 'Inserisci il token segreto (opzionale)',
|
||||||
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
||||||
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)',
|
'Inserisci il token segreto per Aria2 (lascia vuoto se non è abilitato)',
|
||||||
'Enter the username (optional)': 'Enter the username (optional)',
|
'Enter the username (optional)': 'Inserisci l\'username (opzionale)',
|
||||||
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
||||||
'Enter the Aria2 RPC username (empty if authentication not enabled)',
|
'Inserisci l\'username per l\'RPC di Aria2 (lascia vuoto se non è abilitato)',
|
||||||
'Enter the password (optional)': 'Enter the password (optional)',
|
'Enter the password (optional)': 'Inserisci la password (opzionale)',
|
||||||
'Enter the Aria2 RPC password (empty if authentication not enabled)': 'Enter the Aria2 RPC password (empty if authentication not enabled)',
|
'Enter the Aria2 RPC password (empty if authentication not enabled)': 'Inserisci la password per l\'RPC di Aria2 (vuota se l\'autenticazione non è abilitata)',
|
||||||
'Enter base URL (optional)': 'Enter base URL (optional)',
|
'Enter base URL (optional)': 'Inserisci l\'URL di base(opzionale)',
|
||||||
'Direct Download': 'Direct Download',
|
'Direct Download': 'Downaload diretto',
|
||||||
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
||||||
'If supplied, links will be created to enable direct download from the Aria2 server.',
|
'Se inserito, verrano creati dei link per scaricare direttamente i file dal server Aria2.',
|
||||||
'(Requires appropriate webserver to be configured.)': '(Requires appropriate webserver to be configured.)',
|
'(Requires appropriate webserver to be configured.)': '(Richiede un webserver correttamente configurato)',
|
||||||
'Save Connection configuration': 'Save Connection configuration',
|
'Save Connection configuration': 'Salva la configurazione di connessione',
|
||||||
// server info modal
|
// server info modal
|
||||||
'Aria2 server info': 'Aria2 server info',
|
'Aria2 server info': 'Informazioni sul server Aria2',
|
||||||
'Aria2 Version': 'Aria2 Version',
|
'Aria2 Version': 'Versione di Aria2',
|
||||||
'Features Enabled': 'Features Enabled',
|
'Features Enabled': 'Funzionalità abilitate',
|
||||||
// about modal
|
// about modal
|
||||||
'To download the latest version of the project, add issues or to contribute back, head on to':
|
'To download the latest version of the project, add issues or to contribute back, head on to':
|
||||||
'To download the latest version of the project, add issues or to contribute back, head on to',
|
'Per scaricare l\'ultima versione del progetto, aggiungere problemi o contribuire, visita ',
|
||||||
'Or you can open the latest version in the browser through': 'Or you can open the latest version in the browser through',
|
'Or you can open the latest version in the browser through': 'Oppure puoi aprire l\'ultima versione direttamente nel browser',
|
||||||
'Close': 'Close',
|
'Close': 'Chiudi',
|
||||||
// lables
|
// lables
|
||||||
'Download status':'Download status',
|
'Download status':'Stato download',
|
||||||
'Download Speed':'Download Speed',
|
'Download Speed':'Velocità download',
|
||||||
'Upload Speed':'Upload Speed',
|
'Upload Speed':'Velocità upload',
|
||||||
'Estimated time':'Estimated time',
|
'Estimated time':'Tempo stimato',
|
||||||
'Download Size':'Download Size',
|
'Download Size':'Dimensione del download',
|
||||||
'Downloaded':'Downloaded',
|
'Downloaded':'Scaricato',
|
||||||
'Progress':'Progress',
|
'Progress':'Progresso',
|
||||||
'Download Path':'Download Path',
|
'Download Path':'Percorso di download',
|
||||||
'Uploaded':'Uploaded',
|
'Uploaded':'Caricato',
|
||||||
'Download GID':'Download GID',
|
'Download GID':'GID Download',
|
||||||
'Number of Pieces':'Number of Pieces',
|
'Number of Pieces':'Numero di segmenti',
|
||||||
'Piece Length': 'Piece Length',
|
'Piece Length': 'Lunghezza segmenti',
|
||||||
'Shutdown Server': 'Shutdown Server',
|
'Shutdown Server': 'Spegni Server',
|
||||||
|
|
||||||
'The last connection attempt was unsuccessful. Trying another configuration': 'L\'ultimo tentativo di connessione non è riuscito. Provo un\'altra connessione',
|
'The last connection attempt was unsuccessful. Trying another configuration': 'L\'ultimo tentativo di connessione non è riuscito. Provo un\'altra connessione',
|
||||||
'Oh Snap!': 'Mannaggia!',
|
'Oh Snap!': 'Mannaggia!',
|
||||||
|
|
|
@ -39,9 +39,6 @@ translations.pl_PL = {
|
||||||
'Paused': 'Zatrzymane',
|
'Paused': 'Zatrzymane',
|
||||||
'Removed': 'Usunięte',
|
'Removed': 'Usunięte',
|
||||||
'Hide linked meta-data': 'Ukryj zalinkowane meta-dane',
|
'Hide linked meta-data': 'Ukryj zalinkowane meta-dane',
|
||||||
'Displaying': 'Wyświetlanie',
|
|
||||||
'of': 'z',
|
|
||||||
'downloads': 'pobranych plików',
|
|
||||||
'Toggle': 'Przełącz',
|
'Toggle': 'Przełącz',
|
||||||
'Reset filters': 'Reset filtrów',
|
'Reset filters': 'Reset filtrów',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
|
@ -27,7 +27,7 @@ translations.ru_RU = {
|
||||||
'About': 'Об',
|
'About': 'Об',
|
||||||
'Displaying': 'Показано',
|
'Displaying': 'Показано',
|
||||||
'of': 'из',
|
'of': 'из',
|
||||||
'downloads': 'загрузки',
|
'downloads': 'загрузок',
|
||||||
'Language': 'Язык',
|
'Language': 'Язык',
|
||||||
// download filters
|
// download filters
|
||||||
'Download Filters': 'Фильтр Загрузок',
|
'Download Filters': 'Фильтр Загрузок',
|
||||||
|
@ -39,9 +39,6 @@ translations.ru_RU = {
|
||||||
'Paused': 'Приостановленные',
|
'Paused': 'Приостановленные',
|
||||||
'Removed': 'Удаленные',
|
'Removed': 'Удаленные',
|
||||||
'Hide linked meta-data': 'Скрыть связанные метаданные',
|
'Hide linked meta-data': 'Скрыть связанные метаданные',
|
||||||
'Displaying': 'Показано',
|
|
||||||
'of': 'из',
|
|
||||||
'downloads': 'загрузок',
|
|
||||||
'Toggle': 'Переключить',
|
'Toggle': 'Переключить',
|
||||||
'Reset filters': 'Сбросить фильтры',
|
'Reset filters': 'Сбросить фильтры',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
|
@ -54,13 +54,14 @@ translations.en_US = { // replace en_US to ll_CC, examples: zh_CN, de_AT.
|
||||||
'Paused': '',
|
'Paused': '',
|
||||||
'Removed': '',
|
'Removed': '',
|
||||||
'Hide linked meta-data': '',
|
'Hide linked meta-data': '',
|
||||||
'Displaying': '',
|
|
||||||
'of': '',
|
|
||||||
'downloads': '',
|
|
||||||
'Toggle': '',
|
'Toggle': '',
|
||||||
'Reset filters': '',
|
'Reset filters': '',
|
||||||
|
// download status
|
||||||
|
'Verifing': '',
|
||||||
|
'Verify Pending': '',
|
||||||
// starred properties
|
// starred properties
|
||||||
'Quick Access Settings': '',
|
'Quick Access Settings': '',
|
||||||
|
'Save': '',
|
||||||
'Save settings': '',
|
'Save settings': '',
|
||||||
'Currently no download in line to display, use the': '',
|
'Currently no download in line to display, use the': '',
|
||||||
'download button to start downloading files!': '',
|
'download button to start downloading files!': '',
|
||||||
|
@ -155,10 +156,14 @@ translations.en_US = { // replace en_US to ll_CC, examples: zh_CN, de_AT.
|
||||||
'Oh Snap!': '',
|
'Oh Snap!': '',
|
||||||
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings':
|
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings':
|
||||||
'',
|
'',
|
||||||
|
'Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings':
|
||||||
|
'',
|
||||||
'Successfully connected to Aria2 through its remote RPC …':
|
'Successfully connected to Aria2 through its remote RPC …':
|
||||||
'',
|
'',
|
||||||
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)':
|
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)':
|
||||||
'',
|
'',
|
||||||
'Trying to connect to aria2 using the new connection configuration':
|
'Trying to connect to aria2 using the new connection configuration':
|
||||||
|
'',
|
||||||
|
'Remove {{name}} and associated meta-data?': // {{name}} refers to the download name, do not modify.
|
||||||
''
|
''
|
||||||
};
|
};
|
||||||
|
|
|
@ -39,9 +39,6 @@ translations.th_TH = {
|
||||||
'Paused': 'หยุดอยู่',
|
'Paused': 'หยุดอยู่',
|
||||||
'Removed': 'ลบแล้ว',
|
'Removed': 'ลบแล้ว',
|
||||||
'Hide linked meta-data': 'ซ่อนข้อมูลเมตาที่เชื่อมโยง',
|
'Hide linked meta-data': 'ซ่อนข้อมูลเมตาที่เชื่อมโยง',
|
||||||
'Displaying': 'แแสดงดาวน์โหลด',
|
|
||||||
'of': 'อันใน',
|
|
||||||
'downloads': 'อันทั้งหมด',
|
|
||||||
'Toggle': 'สลับ',
|
'Toggle': 'สลับ',
|
||||||
'Reset filters': 'รีเซตตัวกรอง',
|
'Reset filters': 'รีเซตตัวกรอง',
|
||||||
// starred properties
|
// starred properties
|
||||||
|
|
141
js/translate/tr_TR.js
Normal file
141
js/translate/tr_TR.js
Normal file
|
@ -0,0 +1,141 @@
|
||||||
|
if(typeof translations == 'undefined'){
|
||||||
|
translations = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
translations.tr_TR = {
|
||||||
|
// header
|
||||||
|
'Search': 'Arama',
|
||||||
|
// Nav menu
|
||||||
|
'Add': 'Ekle',
|
||||||
|
'By URIs': 'URI ile',
|
||||||
|
'By Torrents': 'Torrent ile',
|
||||||
|
'By Metalinks': 'Metalink ile',
|
||||||
|
'Manage': 'Yönet',
|
||||||
|
'Pause All': 'Hepsini Duraklat',
|
||||||
|
'Resume Paused': 'Devam Et',
|
||||||
|
'Purge Completed': 'Temizleme Tamamlandı',
|
||||||
|
'Settings': 'Ayarlar',
|
||||||
|
'Connection Settings': 'Bağlantı Ayarları',
|
||||||
|
'Global Settings': 'Genel Ayarlar',
|
||||||
|
'Server info': 'Sunucu bilgisi',
|
||||||
|
'About and contribute': 'Hakkında ve katkıda bulunanlar',
|
||||||
|
'Toggle navigation': 'Gezinmeyi aç / kapat',
|
||||||
|
// body
|
||||||
|
// nav side bar
|
||||||
|
'Miscellaneous': 'Çeşitli',
|
||||||
|
'Global Statistics': 'Genel İstatistikler',
|
||||||
|
'About': 'Hakkında',
|
||||||
|
'Displaying': 'Gösteriliyor',
|
||||||
|
'of': ' / ',
|
||||||
|
'downloads': 'Indirme',
|
||||||
|
'Language': 'Dil',
|
||||||
|
// download filters
|
||||||
|
'Download Filters': 'İndirme Filtreleri',
|
||||||
|
'Running': 'Çalışıyor',
|
||||||
|
'Active': 'Aktif',
|
||||||
|
'Waiting': 'Bekliyor',
|
||||||
|
'Complete': 'Tamamlandı',
|
||||||
|
'Error': 'Hata',
|
||||||
|
'Paused': 'Duraklatıldı',
|
||||||
|
'Removed': 'Silindi',
|
||||||
|
'Hide linked meta-data': 'Bağlı meta verileri gizle',
|
||||||
|
'Toggle': 'aç/kapat',
|
||||||
|
'Reset filters': 'Filtreleri sıfırla',
|
||||||
|
// starred properties
|
||||||
|
'Quick Access Settings': 'Hızlı Erişim Ayarları',
|
||||||
|
'Save settings': 'Ayarları kaydet',
|
||||||
|
'Currently no download in line to display, use the': 'Şu anda görüntülenebilecek bir indirme yok,',
|
||||||
|
'download button to start downloading files!': 'butonu aracılığı ile dosya indirebilirsiniz!',
|
||||||
|
'Peers': 'Peers',
|
||||||
|
'More Info': 'Daha fazla bilgi',
|
||||||
|
'Remove': 'Kaldır',
|
||||||
|
'# of': '# dan',
|
||||||
|
'Length': 'Uzunluk',
|
||||||
|
// modals
|
||||||
|
'Add Downloads By URIs': 'URI kullanarak indirmelere ekle',
|
||||||
|
'- You can add multiple downloads (files) at the same time by putting URIs for each file on a separate line.':
|
||||||
|
'- Ayrı bir satıra her dosya için URI koyarak aynı anda birden fazla dosya indirebilirsiniz.',
|
||||||
|
'- You can also add multiple URIs (mirrors) for the *same* file. To do this, separate the URIs by a space.':
|
||||||
|
'- Aynı dosyalar için birden fazla URI (ayna) da ekleyebilirsiniz. Bunu yapmak için URIları bir boşlukla ayırın.',
|
||||||
|
'- A URI can be HTTP(S)/FTP/BitTorrent-Magnet.': '- Bir URI, HTTP(S)/FTP/BitTorrent-Magnet olabilir.',
|
||||||
|
'E.g. to add 2 files (downloads) f1.jpg and f2.mp4 with 2 URIs (mirrors) each, add URIs as follows':
|
||||||
|
'Örneğin. 2 dosya (indir) f1.jpg ve f2.mp4ü 2 URIla (aynalar) ekleyin, URIları aşağıdaki gibi ekleyin',
|
||||||
|
'Download settings': 'İndirme ayarları',
|
||||||
|
'Advanced settings': 'Gelişmiş Ayarlar',
|
||||||
|
'Cancel': 'İptal et',
|
||||||
|
'Start': 'Başlat',
|
||||||
|
'Choose': 'Seçiniz',
|
||||||
|
'Quick Access (shown on the main page)': 'Hızlı Erişim (ana sayfada gösterilir)',
|
||||||
|
// add torrent modal
|
||||||
|
'Add Downloads By Torrents': 'Torrent kullanarak indirmelere ekle',
|
||||||
|
'- Select the torrent from the local filesystem to start the download.': '- İndirmeyi başlatmak için yerel dosya sisteminden torrenti seçin.',
|
||||||
|
'- You can select multiple torrents to start multiple downloads.': '- Birden çok indirmeyi başlatmak için birden çok torrent seçebilirsiniz.',
|
||||||
|
'- To add a BitTorrent-Magnet URL, use the Add By URI option and add it there.': '- BitTorrent-Magnetli bir URL eklemek için, İstek Üzerine Ekle seçeneğini kullanın ve oraya ekleyin.',
|
||||||
|
'Select Torrents': 'Torrentleri seçin',
|
||||||
|
'Select a Torrent': 'Bir Torrent seçin',
|
||||||
|
// add metalink modal
|
||||||
|
'Add Downloads By Metalinks': 'Metalink kullanarak indirmelere ekle',
|
||||||
|
'Select Metalinks': 'Metalinkleri seçin',
|
||||||
|
'- Select the Metalink from the local filesystem to start the download.': '- İndirmeyi başlatmak için yerel dosya sisteminden Metalinki seçin.',
|
||||||
|
'- You can select multiple Metalinks to start multiple downloads.': '- Birden fazla yüklemeye başlamak için birden fazla Metalink seçebilirsiniz.',
|
||||||
|
'Select a Metalink': 'Bir Metalink Seç',
|
||||||
|
// select file modal
|
||||||
|
'Choose files to start download for': 'Için indirmeye başlamak için dosyaları seçin',
|
||||||
|
'Select to download': 'Indirmek için seçin',
|
||||||
|
// settings modal
|
||||||
|
'Aria2 RPC host and port': 'Aria2 RPC ana bilgisayar ve bağlantı noktası',
|
||||||
|
'Enter the host': 'Ana bilgisayar(host) girin',
|
||||||
|
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
||||||
|
'Aria2 için RPC\'nin çalıştığı sunucunun IP veya DNS adını girin (varsayılan: localhost)',
|
||||||
|
'Enter the port': 'Bağlantı noktasını gir',
|
||||||
|
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
||||||
|
'Aria2 için RPC\'nin çalıştığı sunucunun bağlantı noktasını girin (varsayılan: 6800)',
|
||||||
|
'Enter the RPC path': 'RPC yolunu girin',
|
||||||
|
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': 'Aria2 RPC bitiş noktası için yolu girin (varsayılan: / jsonrpc)',
|
||||||
|
'SSL/TLS encryption': 'SSL / TLS şifreleme',
|
||||||
|
'Enable SSL/TLS encryption': 'SSL / TLS şifrelemeyi etkinleştir',
|
||||||
|
'Enter the secret token (optional)': 'Gizli simge girin (isteğe bağlı)',
|
||||||
|
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
||||||
|
'Aria2 RPC gizli simgesini girin (kimlik doğrulama etkin değilse boş bırakın)',
|
||||||
|
'Enter the username (optional)': 'Kullanıcı adını girin (isteğe bağlı)',
|
||||||
|
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
||||||
|
'Aria2 RPC kullanıcı adını girin (kimlik doğrulama etkin değilse boş bırakın)',
|
||||||
|
'Enter the password (optional)': 'Parolayı girin (isteğe bağlı)',
|
||||||
|
'Enter the Aria2 RPC password (empty if authentication not enabled)': 'Aria2 RPC şifresini girin (kimlik doğrulama etkin değilse boş bırakın)',
|
||||||
|
'Enter base URL (optional)': 'Temel URL\'yi girin (isteğe bağlı)',
|
||||||
|
'Direct Download': 'Direkt indirme',
|
||||||
|
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
||||||
|
'Verilen, bağlantıları aria2 sunucudan doğrudan indirmeyi etkinleştirmek için oluşturulur.',
|
||||||
|
'(Requires appropriate webserver to be configured.)': '(Uygun web sunucusunun yapılandırılmasını gerektirir.)',
|
||||||
|
'Save Connection configuration': 'Bağlantı yapılandırmasını kaydedin',
|
||||||
|
// server info modal
|
||||||
|
'Aria2 server info': 'Aria2 sunucu bilgisi',
|
||||||
|
'Aria2 Version': 'Aria2 Sürümü',
|
||||||
|
'Features Enabled': 'Aşağıdaki Özellikler Etkin',
|
||||||
|
// about modal
|
||||||
|
'To download the latest version of the project, add issues or to contribute back, head on to':
|
||||||
|
'Projenin en son sürümünü indirmek için sorun ekleyin veya katkıda bulunun;',
|
||||||
|
'Or you can open the latest version in the browser through': 'Veya en son sürümü tarayıcınız aracılığıyla açabilirsiniz.',
|
||||||
|
'Close': 'Kapat',
|
||||||
|
// lables
|
||||||
|
'Download status':'İndirme durumu',
|
||||||
|
'Download Speed':'İndirme hızı',
|
||||||
|
'Upload Speed':'Yükleme hızı',
|
||||||
|
'Estimated time':'Tahmini süre',
|
||||||
|
'Download Size':'İndirme Boyutu',
|
||||||
|
'Downloaded':'İndirildi',
|
||||||
|
'Progress':'İlerleme',
|
||||||
|
'Download Path':'İndirme Yolu',
|
||||||
|
'Uploaded':'Yüklendi',
|
||||||
|
'Download GID':'GID\'yi indirin',
|
||||||
|
'Number of Pieces':'Parça sayısı',
|
||||||
|
'Piece Length': 'Parça Uzunluğu',
|
||||||
|
'Shutdown Server': 'Sunucuyu Kapat',
|
||||||
|
|
||||||
|
'The last connection attempt was unsuccessful. Trying another configuration': 'Son bağlantı girişimi başarısız oldu. Başka bir yapılandırma deneyin',
|
||||||
|
'Oh Snap!': 'HAydaaaaa!',
|
||||||
|
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings': 'Aria2 RPC sunucusuna bağlanılamadı. 10 saniye içinde tekrar deneyecek. Bağlantı ayarlarını, Ayarlar> Bağlantı Ayarları bölümüne giderek kontrol etmek isteyebilirsiniz.',
|
||||||
|
'Successfully connected to Aria2 through its remote RPC …': 'Uzak RPC aracılığıyla Aria2\'ye başarıyla bağlandı ...',
|
||||||
|
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)': 'Uzak RPC aracılığıyla Aria2\'ye başarıyla bağlandı ancak bağlantı hala güvende değil. Tam güvenlik için, Aria2\'yi başlatırken (--rpc-secret bayrağını kullanın) ve bir yetkilendirme gizli simgesi eklemeyi deneyin.',
|
||||||
|
'Trying to connect to aria2 using the new connection configuration': 'Yeni bağlantı yapılandırmasını kullanarak aria2\'ye bağlanmaya çalışılıyor',
|
||||||
|
};
|
|
@ -19,132 +19,137 @@ translations.zh_CN = {
|
||||||
'Connection Settings': '连接设置',
|
'Connection Settings': '连接设置',
|
||||||
'Global Settings': '全局设置',
|
'Global Settings': '全局设置',
|
||||||
'Server info': '服务器信息',
|
'Server info': '服务器信息',
|
||||||
'About and contribute': '关于和贡献',
|
'About and contribute': '关于和捐助',
|
||||||
'Toggle navigation': '切换导航',
|
'Toggle navigation': '切换导航',
|
||||||
// body
|
// body
|
||||||
// nav side bar
|
// nav side bar
|
||||||
'Miscellaneous': '杂项',
|
'Miscellaneous': '杂项',
|
||||||
'Global Statistics': '全局统计',
|
'Global Statistics': '全局统计',
|
||||||
'About': '关于',
|
'About': '关于',
|
||||||
'Displaying': '显示',
|
'Displaying': '正在显示',
|
||||||
'of': '/',
|
'of': '/',
|
||||||
'downloads': '下载',
|
'downloads': '下载',
|
||||||
'Language': '语言',
|
'Language': '语言',
|
||||||
// download filters
|
// download filters
|
||||||
'Download Filters': '下载过滤器',
|
'Download Filters': '下载过滤器',
|
||||||
'Running': '下载中',
|
'Running': '运行中',
|
||||||
'Active': '活动的',
|
'Active': '活动的',
|
||||||
'Waiting': '等待中',
|
'Waiting': '等待中',
|
||||||
'Complete': '已完成',
|
'Complete': '已完成',
|
||||||
'Error': '出错的',
|
'Error': '出错的',
|
||||||
'Paused': '已暂停',
|
'Paused': '已暂停',
|
||||||
'Removed': '已删除',
|
'Removed': '已删除',
|
||||||
'Hide linked meta-data': '隐藏链接的元数据',
|
'Hide linked meta-data': '隐藏连接的元数据',
|
||||||
'Displaying': '当前显示',
|
'Toggle': '反向选择',
|
||||||
'of': '/',
|
|
||||||
'downloads': '下载',
|
|
||||||
'Toggle': '反选',
|
|
||||||
'Reset filters': '重置过滤器',
|
'Reset filters': '重置过滤器',
|
||||||
|
// download status
|
||||||
|
'Verifing': '正在验证',
|
||||||
|
'Verify Pending': '等待验证',
|
||||||
// starred properties
|
// starred properties
|
||||||
'Quick Access Settings': '快速访问设置',
|
'Quick Access Settings': '快速访问设置',
|
||||||
|
'Save': '保存',
|
||||||
'Save settings': '保存设置',
|
'Save settings': '保存设置',
|
||||||
'Currently no download in line to display, use the': '目前还没有下载, 使用',
|
'Currently no download in line to display, use the': '当前没有可显示的下载项,使用',
|
||||||
'download button to start downloading files!': '按钮添加下载!',
|
'download button to start downloading files!': '按钮来开始下载!',
|
||||||
'Peers': '',
|
'Peers': 'Peers',
|
||||||
'More Info': '更多信息',
|
'More Info': '更多信息',
|
||||||
'Remove': '删除',
|
'Remove': '删除',
|
||||||
'# of': '',
|
'# of': '块数',
|
||||||
'Length': '块大小',
|
'Length': '块大小',
|
||||||
// modals
|
// modals
|
||||||
'Add Downloads By URIs': '使用链接下载',
|
'Add Downloads By URIs': '使用链接下载',
|
||||||
'- You can add multiple downloads (files) at the same time by putting URIs for each file on a separate line.':
|
'- You can add multiple downloads (files) at the same time by putting URIs for each file on a separate line.':
|
||||||
'- 你可以同时添加多个下载, 每行一个下载链接.',
|
'- 你可以同时添加多个文件下载任务,每行下载一个文件;',
|
||||||
'- You can also add multiple URIs (mirrors) for the *same* file. To do this, separate the URIs by a space.':
|
'- You can also add multiple URIs (mirrors) for the *same* file. To do this, separate the URIs by a space.':
|
||||||
'- 你可以给一个下载添加多个镜像链接, 在同一行里用空格分割.',
|
'- 你也可以给同一个下载任务添加多个镜像链接,写在一行并用空格分隔每条链接;',
|
||||||
'- A URI can be HTTP(S)/FTP/BitTorrent-Magnet.': '- 链接可以是 HTTP(S)/FTP/BitTorrent-Magnet.',
|
'- A URI can be HTTP(S)/FTP/BitTorrent-Magnet.': '- 链接可以是 HTTP(S)、FTP 和磁力链接。',
|
||||||
'E.g. to add 2 files (downloads) f1.jpg and f2.mp4 with 2 URIs (mirrors) each, add URIs as follows':
|
'E.g. to add 2 files (downloads) f1.jpg and f2.mp4 with 2 URIs (mirrors) each, add URIs as follows':
|
||||||
'例如:添加2个下载 f1.jpg 和 f2.mp4 (都有2个镜像链接), 添加方式如下',
|
'例如:添加 2 个下载任务 f1.jpg 和 f2.mp4(它们都有2个镜像链接),添加方式如下',
|
||||||
'Download settings': '下载设置',
|
'Download settings': '下载设置',
|
||||||
'Advanced settings': '高级设置',
|
'Advanced settings': '高级设置',
|
||||||
'Cancel': '取消',
|
'Cancel': '取消',
|
||||||
'Start': '开始',
|
'Start': '开始',
|
||||||
'Choose': '选择',
|
'Choose': '选择',
|
||||||
'Quick Access (shown on the main page)': '快速访问 (在主页上显示)',
|
'Quick Access (shown on the main page)': '快速访问(在主页上显示)',
|
||||||
// add torrent modal
|
// add torrent modal
|
||||||
'Add Downloads By Torrents': '使用种子下载',
|
'Add Downloads By Torrents': '使用种子下载',
|
||||||
'- Select the torrent from the local filesystem to start the download.': '- 上传种子文件开始下载.',
|
'- Select the torrent from the local filesystem to start the download.': '- 从本地文件系统选择种子文件开始下载;',
|
||||||
'- You can select multiple torrents to start multiple downloads.': '- 你可以选择多个种子开始下载.',
|
'- You can select multiple torrents to start multiple downloads.': '- 你可以同时选择多个种子来启动多个下载;',
|
||||||
'- To add a BitTorrent-Magnet URL, use the Add By URI option and add it there.': '- 如果要添加磁力链请使用添加链接的方式.',
|
'- To add a BitTorrent-Magnet URL, use the Add By URI option and add it there.': '- 如果要添加磁力链接,请使用添加链接的方式。',
|
||||||
'Select Torrents': '选择种子文件',
|
'Select Torrents': '选择种子文件',
|
||||||
'Select a Torrent': '选择种子文件',
|
'Select a Torrent': '选择种子文件',
|
||||||
// add metalink modal
|
// add metalink modal
|
||||||
'Add Downloads By Metalinks': '使用 Metalink 下载',
|
'Add Downloads By Metalinks': '使用 Metalink 下载',
|
||||||
'Select Metalinks': '选择 Metalink 文件',
|
'Select Metalinks': '选择 Metalink 文件',
|
||||||
'- Select the Metalink from the local filesystem to start the download.': '- 上传 Metalink 文件开始下载.',
|
'- Select the Metalink from the local filesystem to start the download.': '* 从本地文件系统选择 Metalink 文件开始下载;',
|
||||||
'- You can select multiple Metalinks to start multiple downloads.': '- 你可以选择多个 Metalink 文件开始下载.',
|
'- You can select multiple Metalinks to start multiple downloads.': '* 你可以同时选择多个 Metalink 文件来启动多个下载。',
|
||||||
'Select a Metalink': '选择 Metalink 文件',
|
'Select a Metalink': '选择 Metalink 文件',
|
||||||
// select file modal
|
// select file modal
|
||||||
'Choose files to start download for': '选择文件开始下载',
|
'Choose files to start download for': '请选择要下载的文件',
|
||||||
'Select to download': '选择下载',
|
'Select to download': '选择以下载',
|
||||||
// settings modal
|
// settings modal
|
||||||
'Aria2 RPC host and port': 'Aria2 RPC 主机和端口',
|
'Aria2 RPC host and port': 'Aria2 RPC 主机和端口',
|
||||||
'Enter the host': '主机',
|
'Enter the host': '主机',
|
||||||
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
||||||
'输入 Aria2 RPC 所在服务器的 IP 或域名 (默认: localhost)',
|
'输入 Aria2 RPC 所在服务器的 IP 或域名(默认:localhost)',
|
||||||
'Enter the port': '端口',
|
'Enter the port': '端口',
|
||||||
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
||||||
'输入 Aria2 RPC 端口号 (默认: 6800)',
|
'输入 Aria2 RPC 端口号(默认:6800)',
|
||||||
'Enter the RPC path': 'RPC 路径',
|
'Enter the RPC path': 'RPC 路径',
|
||||||
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': '输入 Aria2 RPC 路径 (默认: /jsonrpc)',
|
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': '输入 Aria2 RPC 路径(默认:/jsonrpc)',
|
||||||
'SSL/TLS encryption': 'SSL/TLS 加密',
|
'SSL/TLS encryption': 'SSL/TLS 加密',
|
||||||
'Enable SSL/TLS encryption': '启用 SSL/TLS 加密',
|
'Enable SSL/TLS encryption': '启用 SSL/TLS 加密',
|
||||||
'Enter the secret token (optional)': '密码令牌 (可选)',
|
'Enter the secret token (optional)': '密码令牌(可选)',
|
||||||
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
||||||
'输入 Aria2 RPC 密码令牌 (如果未启用则留空)',
|
'输入 Aria2 RPC 密码令牌(如果未启用则留空)',
|
||||||
'Enter the username (optional)': '用户名 (可选)',
|
'Enter the username (optional)': '用户名(可选)',
|
||||||
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
||||||
'输入 Aria2 RPC 用户名 (如果未启用身份验证则留空)',
|
'输入 Aria2 RPC 用户名(如果未启用身份验证则留空)',
|
||||||
'Enter the password (optional)': '密码 (可选)',
|
'Enter the password (optional)': '密码(可选)',
|
||||||
'Enter the Aria2 RPC password (empty if authentication not enabled)': '输入 Aria2 RPC 密码 (如果未启用身份验证则留空)',
|
'Enter the Aria2 RPC password (empty if authentication not enabled)': '输入 Aria2 RPC 密码(如果未启用身份验证则留空)',
|
||||||
'Enter base URL (optional)': '基 URL (可选)',
|
'Enter base URL (optional)': '基本链接地址(可选)',
|
||||||
'Direct Download': '直接下载',
|
'Direct Download': '直接下载',
|
||||||
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
||||||
'配置后将创建可以直接从 Aria2 服务器上下载文件的链接.',
|
'如果指定该选项,将会创建可以直接从 Aria2 服务器上下载文件的链接。',
|
||||||
'(Requires appropriate webserver to be configured.)': '(需要 WEB 服务器配置正确.)',
|
'(Requires appropriate webserver to be configured.)': '(需要 WEB 服务器配置正确)',
|
||||||
'Save Connection configuration': '保存连接设置',
|
'Save Connection configuration': '保存连接配置',
|
||||||
// server info modal
|
// server info modal
|
||||||
'Aria2 server info': 'Aria2 服务器信息',
|
'Aria2 server info': 'Aria2 服务器信息',
|
||||||
'Aria2 Version': 'Aria2 版本',
|
'Aria2 Version': 'Aria2 版本',
|
||||||
'Features Enabled': '已启用功能',
|
'Features Enabled': '已启用功能',
|
||||||
// about modal
|
// about modal
|
||||||
'To download the latest version of the project, add issues or to contribute back, head on to':
|
'To download the latest version of the project, add issues or to contribute back, head on to':
|
||||||
'下载最新版本, 提交 Issue 和贡献, 请到',
|
'下载最新版本、提交问题或捐助,请访问',
|
||||||
'Or you can open the latest version in the browser through': '在线使用最新版本请访问',
|
'Or you can open the latest version in the browser through': '直接在浏览器中使用最新版本,请访问',
|
||||||
'Close': '关闭',
|
'Close': '关闭',
|
||||||
// labels
|
// labels
|
||||||
'Download status':'下载状态',
|
'Download status':'当前下载状态',
|
||||||
'Download Speed':'下载速度',
|
'Download Speed':'当前下载速度',
|
||||||
'Upload Speed':'上传速度',
|
'Upload Speed':'当前上传速度',
|
||||||
'Estimated time':'预计剩余时间',
|
'Estimated time':'预计剩余时间',
|
||||||
'Download Size':'下载总大小',
|
'Download Size':'下载总大小',
|
||||||
'Downloaded':'已下载',
|
'Downloaded':'已下载大小',
|
||||||
'Progress':'进度',
|
'Progress':'当前下载进度',
|
||||||
'Download Path':'下载路径',
|
'Download Path':'文件下载路径',
|
||||||
'Uploaded':'已上传',
|
'Uploaded':'已上传大小',
|
||||||
'Download GID':'下载 GID',
|
'Download GID':'下载的 GID',
|
||||||
'Number of Pieces':'文件块数量',
|
'Number of Pieces':'文件块数量',
|
||||||
'Piece Length':'每块大小',
|
'Piece Length':'每块大小',
|
||||||
|
|
||||||
//alerts
|
//alerts
|
||||||
'The last connection attempt was unsuccessful. Trying another configuration':
|
'The last connection attempt was unsuccessful. Trying another configuration':
|
||||||
'上一个连接请求失败, 请尝试修改设置',
|
'上次连接请求未成功,正在尝试使用另一个配置',
|
||||||
'Oh Snap!': '',
|
'Oh Snap!': '糟糕!',
|
||||||
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings':
|
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings':
|
||||||
'不能连接到 Aria2 RPC 服务器, 将在10秒后重试. 您可能希望检查连接设置, 打开 设置 > 连接设置',
|
'无法连接到 Aria2 RPC 服务器,将在10秒后重试。您可能需要检查连接设置,请前往 设置 > 连接设置',
|
||||||
|
'Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings':
|
||||||
|
'连接到 Aria2 RPC 服务器时认证失败,将在10秒后重试。您可能需要确认您的身份验证信息,请前往 设置 > 连接设置',
|
||||||
'Successfully connected to Aria2 through its remote RPC …':
|
'Successfully connected to Aria2 through its remote RPC …':
|
||||||
'通过 RPC 连接到 Aria2 成功...',
|
'通过 RPC 连接到 Aria2 成功!',
|
||||||
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)':
|
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)':
|
||||||
'通过 RPC 连接到 Aria2 成功, 但连接不是安全的. 要想使用安全连接, 尝试在启动 Aria2 时添加一个授权密码令牌 (通过 --rpc-secret 参数)',
|
'通过 RPC 连接到 Aria2 成功,但是连接并不安全。要想使用安全连接,尝试在启动 Aria2 时添加一个授权密码令牌(通过 --rpc-secret 参数)',
|
||||||
'Trying to connect to aria2 using the new connection configuration':
|
'Trying to connect to aria2 using the new connection configuration':
|
||||||
'正在尝试使用新的连接设置来连接到 Aria2'
|
'正在尝试使用新的连接配置来连接到 Aria2 ……',
|
||||||
|
'Remove {{name}} and associated meta-data?':
|
||||||
|
'是否删除 {{name}} 和关联的元数据?'
|
||||||
};
|
};
|
||||||
|
|
155
js/translate/zh_TW.js
Normal file
155
js/translate/zh_TW.js
Normal file
|
@ -0,0 +1,155 @@
|
||||||
|
if(typeof translations == 'undefined'){
|
||||||
|
translations = {};
|
||||||
|
}
|
||||||
|
|
||||||
|
translations.zh_TW = {
|
||||||
|
// header
|
||||||
|
'Search': '搜尋',
|
||||||
|
// Nav menu
|
||||||
|
'Add': '新增',
|
||||||
|
'By URIs': '使用連結',
|
||||||
|
'By Torrents': '使用種子',
|
||||||
|
'By Metalinks': '使用 Metalink',
|
||||||
|
'Manage': '管理',
|
||||||
|
'Pause All': '暫停所有',
|
||||||
|
'Resume Paused': '恢復下載',
|
||||||
|
'Purge Completed': '清除已完成',
|
||||||
|
'Shutdown Server': '關閉伺服器',
|
||||||
|
'Settings': '設定',
|
||||||
|
'Connection Settings': '連線設定',
|
||||||
|
'Global Settings': '全域性設定',
|
||||||
|
'Server info': '伺服器資訊',
|
||||||
|
'About and contribute': '關於和捐助',
|
||||||
|
'Toggle navigation': '切換導航',
|
||||||
|
// body
|
||||||
|
// nav side bar
|
||||||
|
'Miscellaneous': '雜項',
|
||||||
|
'Global Statistics': '全域性統計',
|
||||||
|
'About': '關於',
|
||||||
|
'Displaying': '正在顯示',
|
||||||
|
'of': '/',
|
||||||
|
'downloads': '下載',
|
||||||
|
'Language': '語言',
|
||||||
|
// download filters
|
||||||
|
'Download Filters': '下載過濾器',
|
||||||
|
'Running': '執行中',
|
||||||
|
'Active': '活動的',
|
||||||
|
'Waiting': '等待中',
|
||||||
|
'Complete': '已完成',
|
||||||
|
'Error': '出錯的',
|
||||||
|
'Paused': '已暫停',
|
||||||
|
'Removed': '已刪除',
|
||||||
|
'Hide linked meta-data': '隱藏連線的元資料',
|
||||||
|
'Toggle': '反向選擇',
|
||||||
|
'Reset filters': '重置過濾器',
|
||||||
|
// download status
|
||||||
|
'Verifing': '正在驗證',
|
||||||
|
'Verify Pending': '等待驗證',
|
||||||
|
// starred properties
|
||||||
|
'Quick Access Settings': '快速訪問設定',
|
||||||
|
'Save': '儲存',
|
||||||
|
'Save settings': '儲存設定',
|
||||||
|
'Currently no download in line to display, use the': '當前沒有可顯示的下載項,使用',
|
||||||
|
'download button to start downloading files!': '按鈕來開始下載!',
|
||||||
|
'Peers': 'Peers',
|
||||||
|
'More Info': '更多資訊',
|
||||||
|
'Remove': '刪除',
|
||||||
|
'# of': '塊數',
|
||||||
|
'Length': '塊大小',
|
||||||
|
// modals
|
||||||
|
'Add Downloads By URIs': '使用連結下載',
|
||||||
|
'- You can add multiple downloads (files) at the same time by putting URIs for each file on a separate line.':
|
||||||
|
'- 你可以同時新增多個檔案下載任務,每行下載一個檔案;',
|
||||||
|
'- You can also add multiple URIs (mirrors) for the *same* file. To do this, separate the URIs by a space.':
|
||||||
|
'- 你也可以給同一個下載任務新增多個映象連結,寫在一行並用空格分隔每條連結;',
|
||||||
|
'- A URI can be HTTP(S)/FTP/BitTorrent-Magnet.': '- 連結可以是 HTTP(S)、FTP 和磁力連結。',
|
||||||
|
'E.g. to add 2 files (downloads) f1.jpg and f2.mp4 with 2 URIs (mirrors) each, add URIs as follows':
|
||||||
|
'例如:新增 2 個下載任務 f1.jpg 和 f2.mp4(它們都有2個映象連結),新增方式如下',
|
||||||
|
'Download settings': '下載設定',
|
||||||
|
'Advanced settings': '高階設定',
|
||||||
|
'Cancel': '取消',
|
||||||
|
'Start': '開始',
|
||||||
|
'Choose': '選擇',
|
||||||
|
'Quick Access (shown on the main page)': '快速訪問(在主頁上顯示)',
|
||||||
|
// add torrent modal
|
||||||
|
'Add Downloads By Torrents': '使用種子下載',
|
||||||
|
'- Select the torrent from the local filesystem to start the download.': '- 從本地檔案系統選擇種子檔案開始下載;',
|
||||||
|
'- You can select multiple torrents to start multiple downloads.': '- 你可以同時選擇多個種子來啟動多個下載;',
|
||||||
|
'- To add a BitTorrent-Magnet URL, use the Add By URI option and add it there.': '- 如果要新增磁力連結,請使用新增連結的方式。',
|
||||||
|
'Select Torrents': '選擇種子檔案',
|
||||||
|
'Select a Torrent': '選擇種子檔案',
|
||||||
|
// add metalink modal
|
||||||
|
'Add Downloads By Metalinks': '使用 Metalink 下載',
|
||||||
|
'Select Metalinks': '選擇 Metalink 檔案',
|
||||||
|
'- Select the Metalink from the local filesystem to start the download.': '* 從本地檔案系統選擇 Metalink 檔案開始下載;',
|
||||||
|
'- You can select multiple Metalinks to start multiple downloads.': '* 你可以同時選擇多個 Metalink 檔案來啟動多個下載。',
|
||||||
|
'Select a Metalink': '選擇 Metalink 檔案',
|
||||||
|
// select file modal
|
||||||
|
'Choose files to start download for': '請選擇要下載的檔案',
|
||||||
|
'Select to download': '選擇以下載',
|
||||||
|
// settings modal
|
||||||
|
'Aria2 RPC host and port': 'Aria2 RPC 主機和埠',
|
||||||
|
'Enter the host': '主機',
|
||||||
|
'Enter the IP or DNS name of the server on which the RPC for Aria2 is running (default: localhost)':
|
||||||
|
'輸入 Aria2 RPC 所在伺服器的 IP 或域名(預設:localhost)',
|
||||||
|
'Enter the port': '埠號',
|
||||||
|
'Enter the port of the server on which the RPC for Aria2 is running (default: 6800)':
|
||||||
|
'輸入 Aria2 RPC 埠號(預設:6800)',
|
||||||
|
'Enter the RPC path': 'RPC 路徑',
|
||||||
|
'Enter the path for the Aria2 RPC endpoint (default: /jsonrpc)': '輸入 Aria2 RPC 路徑(預設:/jsonrpc)',
|
||||||
|
'SSL/TLS encryption': 'SSL/TLS 加密',
|
||||||
|
'Enable SSL/TLS encryption': '啟用 SSL/TLS 加密',
|
||||||
|
'Enter the secret token (optional)': '密碼令牌(可選)',
|
||||||
|
'Enter the Aria2 RPC secret token (leave empty if authentication is not enabled)':
|
||||||
|
'輸入 Aria2 RPC 密碼令牌(如果未啟用則留空)',
|
||||||
|
'Enter the username (optional)': '使用者名稱(可選)',
|
||||||
|
'Enter the Aria2 RPC username (empty if authentication not enabled)':
|
||||||
|
'輸入 Aria2 RPC 使用者名稱(如果未啟用身份驗證則留空)',
|
||||||
|
'Enter the password (optional)': '密碼(可選)',
|
||||||
|
'Enter the Aria2 RPC password (empty if authentication not enabled)': '輸入 Aria2 RPC 密碼(如果未啟用身份驗證則留空)',
|
||||||
|
'Enter base URL (optional)': '基本連結地址(可選)',
|
||||||
|
'Direct Download': '直接下載',
|
||||||
|
'If supplied, links will be created to enable direct download from the Aria2 server.':
|
||||||
|
'如果指定該選項,將會建立可以直接從 Aria2 伺服器上下載檔案的連結。',
|
||||||
|
'(Requires appropriate webserver to be configured.)': '(需要 WEB 伺服器配置正確)',
|
||||||
|
'Save Connection configuration': '儲存連線配置',
|
||||||
|
// server info modal
|
||||||
|
'Aria2 server info': 'Aria2 伺服器資訊',
|
||||||
|
'Aria2 Version': 'Aria2 版本',
|
||||||
|
'Features Enabled': '已啟用功能',
|
||||||
|
// about modal
|
||||||
|
'To download the latest version of the project, add issues or to contribute back, head on to':
|
||||||
|
'下載最新版本、提交問題或捐助,請訪問',
|
||||||
|
'Or you can open the latest version in the browser through': '直接在瀏覽器中使用最新版本,請訪問',
|
||||||
|
'Close': '關閉',
|
||||||
|
// labels
|
||||||
|
'Download status':'當前下載狀態',
|
||||||
|
'Download Speed':'當前下載速度',
|
||||||
|
'Upload Speed':'當前上傳速度',
|
||||||
|
'Estimated time':'預計剩餘時間',
|
||||||
|
'Download Size':'下載總大小',
|
||||||
|
'Downloaded':'已下載大小',
|
||||||
|
'Progress':'當前下載進度',
|
||||||
|
'Download Path':'檔案下載路徑',
|
||||||
|
'Uploaded':'已上傳大小',
|
||||||
|
'Download GID':'下載的 GID',
|
||||||
|
'Number of Pieces':'檔案塊數量',
|
||||||
|
'Piece Length':'每塊大小',
|
||||||
|
|
||||||
|
//alerts
|
||||||
|
'The last connection attempt was unsuccessful. Trying another configuration':
|
||||||
|
'上次連線請求未成功,正在嘗試使用另一個配置',
|
||||||
|
'Oh Snap!': '糟糕!',
|
||||||
|
'Could not connect to the aria2 RPC server. Will retry in 10 secs. You might want to check the connection settings by going to Settings > Connection Settings':
|
||||||
|
'無法連線到 Aria2 RPC 伺服器,將在10秒後重試。您可能需要檢查連線設定,請前往 設定 > 連線設定',
|
||||||
|
'Authentication failed while connecting to Aria2 RPC server. Will retry in 10 secs. You might want to confirm your authentication details by going to Settings > Connection Settings':
|
||||||
|
'連線到 Aria2 RPC 伺服器時認證失敗,將在10秒後重試。您可能需要確認您的身份驗證資訊,請前往 設定 > 連線設定',
|
||||||
|
'Successfully connected to Aria2 through its remote RPC …':
|
||||||
|
'通過 RPC 連線到 Aria2 成功!',
|
||||||
|
'Successfully connected to Aria2 through remote RPC, however the connection is still insecure. For complete security try adding an authorization secret token while starting Aria2 (through the flag --rpc-secret)':
|
||||||
|
'通過 RPC 連線到 Aria2 成功,但是連線並不安全。要想使用安全連線,嘗試在啟動 Aria2 時新增一個授權密碼令牌(通過 --rpc-secret 引數)',
|
||||||
|
'Trying to connect to aria2 using the new connection configuration':
|
||||||
|
'正在嘗試使用新的連線配置來連線到 Aria2 ……',
|
||||||
|
'Remove {{name}} and associated meta-data?':
|
||||||
|
'是否刪除 {{name}} 和關聯的元資料?'
|
||||||
|
};
|
54
rpi-Dockerfile
Normal file
54
rpi-Dockerfile
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
FROM resin/rpi-raspbian
|
||||||
|
|
||||||
|
# less priviledge user, the id should map the user the downloaded files belongs to
|
||||||
|
RUN groupadd -r aria && useradd -r -g aria aria -u 1000
|
||||||
|
|
||||||
|
# webui + aria2
|
||||||
|
RUN apt-get update \
|
||||||
|
&& apt-get install -y busybox curl \
|
||||||
|
git \
|
||||||
|
make g++ libssl-dev nettle-dev libgmp-dev libssh2-1-dev libc-ares-dev libxml2-dev zlib1g-dev libsqlite3-dev pkg-config libxml2-dev libcppunit-dev autoconf automake autotools-dev autopoint libtool \
|
||||||
|
&& ARIA2_VERSION="1.30.0" \
|
||||||
|
&& mkdir aria_build && cd aria_build \
|
||||||
|
&& curl -L https://github.com/aria2/aria2/releases/download/release-"$ARIA2_VERSION"/aria2-"$ARIA2_VERSION".tar.gz > aria2.tar.gz \
|
||||||
|
&& tar -xzf aria2.tar.gz \
|
||||||
|
&& cd aria2-$ARIA2_VERSION \
|
||||||
|
&& autoreconf -i && ./configure && make \
|
||||||
|
&& mv src/aria2c /usr/bin/ \
|
||||||
|
&& cd ../.. \
|
||||||
|
&& rm -rf aria_build \
|
||||||
|
&& apt-get remove --purge --auto-remove make g++ libssl-dev nettle-dev libgmp-dev libssh2-1-dev libc-ares-dev libxml2-dev zlib1g-dev libsqlite3-dev pkg-config libxml2-dev libcppunit-dev autoconf automake autotools-dev autopoint libtool \
|
||||||
|
&& apt-get install -y libxml2 libsqlite3-0 libc-ares2 zlib1g \
|
||||||
|
&& rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
|
ADD . /webui-aria2
|
||||||
|
|
||||||
|
# gosu install latest
|
||||||
|
RUN GITHUB_REPO="https://github.com/tianon/gosu" \
|
||||||
|
&& LATEST=`curl -s $GITHUB_REPO"/releases/latest" | grep -Eo "[0-9].[0-9]*"` \
|
||||||
|
&& curl -L $GITHUB_REPO"/releases/download/"$LATEST"/gosu-armhf" > /usr/local/bin/gosu \
|
||||||
|
&& chmod +x /usr/local/bin/gosu
|
||||||
|
|
||||||
|
# goland install (compile source code for ARM since no version are currently available)
|
||||||
|
RUN curl -L "https://storage.googleapis.com/golang/go1.6.1.linux-armv6l.tar.gz" > go.tar.gz \
|
||||||
|
&& tar -xzf go.tar.gz -C /usr/local \
|
||||||
|
&& export GOROOT="/usr/local/go" && export GOPATH=`pwd` \
|
||||||
|
&& $GOROOT/bin/go get github.com/mattn/goreman && $GOROOT/bin/go build -o /usr/local/bin/goreman github.com/mattn/goreman \
|
||||||
|
&& apt-get remove --purge --auto-remove git \
|
||||||
|
&& rm go.tar.gz && rm -rf $GOROOT && rm -rf $GOPATH/src && rm -rf $GOPATH/pkg \
|
||||||
|
&& unset GOROOT && unset GOPATH
|
||||||
|
|
||||||
|
# goreman setup
|
||||||
|
RUN echo "web: gosu aria /bin/busybox httpd -f -p 8080 -h /webui-aria2\nbackend: gosu aria /usr/bin/aria2c --conf-path=/data/.aria2/aria2.conf" > Procfile
|
||||||
|
|
||||||
|
# aria2 downloads directory
|
||||||
|
VOLUME /data
|
||||||
|
|
||||||
|
# aria2 RPC port, map as-is or reconfigure webui
|
||||||
|
EXPOSE 6800/tcp
|
||||||
|
|
||||||
|
# webui static content web server, map wherever is convenient
|
||||||
|
EXPOSE 8080/tcp
|
||||||
|
|
||||||
|
CMD ["start"]
|
||||||
|
ENTRYPOINT ["/usr/local/bin/goreman"]
|
Loading…
Reference in New Issue
Block a user