├── .gitignore
├── .gitmodules
├── 3rd
└── update.py
├── 3rdparty
└── libjpeg.so.8.1.2
├── LICENSE
├── MANIFEST.in
├── Makefile
├── Makefile.lua
├── Makefile.static
├── README.md
├── bachelor.h
├── copilot
├── .babelrc
├── .editorconfig
├── .eslintrc.js
├── Makefile
├── README.md
├── build
│ ├── build.js
│ ├── check-versions.js
│ ├── dev-client.js
│ ├── dev-server.js
│ ├── utils.js
│ ├── webpack.base.conf.js
│ ├── webpack.dev.conf.js
│ └── webpack.prod.conf.js
├── config
│ ├── dev.env.js
│ ├── index.js
│ ├── prod.env.js
│ └── test.env.js
├── index.html
├── package.json
├── src
│ ├── assets
│ │ └── logo.png
│ ├── components
│ │ ├── 404.vue
│ │ ├── App.vue
│ │ ├── Dash.vue
│ │ ├── Login.vue
│ │ └── dash
│ │ │ ├── Access.vue
│ │ │ ├── Dashboard.vue
│ │ │ ├── Overview.vue
│ │ │ ├── Repos.vue
│ │ │ ├── Samples.vue
│ │ │ ├── Server.vue
│ │ │ ├── Setting.vue
│ │ │ ├── Stream.vue
│ │ │ ├── Tables.vue
│ │ │ └── Tasks.vue
│ ├── filters
│ │ └── index.js
│ ├── main.js
│ ├── routes.js
│ └── store.js
├── static
│ ├── css
│ │ ├── AdminLTE.min.css
│ │ ├── bootstrap-slider.min.css
│ │ ├── bootstrap.min.css
│ │ ├── bootstrap.min.css.map.css
│ │ └── skin-blue.min.css
│ ├── img
│ │ ├── banner.jpg
│ │ ├── favicon.ico
│ │ ├── logo.png
│ │ ├── logo_blk.png
│ │ ├── logo_blk_sm.png
│ │ ├── logo_sm.png
│ │ ├── screenshot.png
│ │ ├── screenshotv2.png
│ │ └── stock
│ │ │ └── user1-128x128.jpg
│ └── js
│ │ ├── bootstrap-slider.min.js
│ │ ├── copilot.js
│ │ └── plugins
│ │ ├── AdminLTE
│ │ └── app.min.js
│ │ ├── bootstrap
│ │ └── bootstrap.min.js
│ │ ├── chartjs
│ │ ├── Chart.js
│ │ └── Chart.min.js
│ │ ├── datatables
│ │ ├── dataTables.bootstrap.css
│ │ ├── dataTables.bootstrap.js
│ │ ├── dataTables.bootstrap.min.js
│ │ ├── extensions
│ │ │ ├── AutoFill
│ │ │ │ ├── Readme.txt
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.autoFill.css
│ │ │ │ │ └── dataTables.autoFill.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── columns.html
│ │ │ │ │ ├── complete-callback.html
│ │ │ │ │ ├── fill-both.html
│ │ │ │ │ ├── fill-horizontal.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── scrolling.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ └── step-callback.html
│ │ │ │ ├── images
│ │ │ │ │ └── filler.png
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.autoFill.js
│ │ │ │ │ └── dataTables.autoFill.min.js
│ │ │ ├── ColReorder
│ │ │ │ ├── License.txt
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.colReorder.css
│ │ │ │ │ └── dataTables.colReorder.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── alt_insert.html
│ │ │ │ │ ├── col_filter.html
│ │ │ │ │ ├── colvis.html
│ │ │ │ │ ├── fixedcolumns.html
│ │ │ │ │ ├── fixedheader.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── jqueryui.html
│ │ │ │ │ ├── new_init.html
│ │ │ │ │ ├── predefined.html
│ │ │ │ │ ├── realtime.html
│ │ │ │ │ ├── reset.html
│ │ │ │ │ ├── scrolling.html
│ │ │ │ │ ├── server_side.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ └── state_save.html
│ │ │ │ ├── images
│ │ │ │ │ └── insert.png
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.colReorder.js
│ │ │ │ │ └── dataTables.colReorder.min.js
│ │ │ ├── ColVis
│ │ │ │ ├── License.txt
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.colVis.css
│ │ │ │ │ ├── dataTables.colVis.min.css
│ │ │ │ │ └── dataTables.colvis.jqueryui.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── button_order.html
│ │ │ │ │ ├── exclude_columns.html
│ │ │ │ │ ├── group_columns.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── jqueryui.html
│ │ │ │ │ ├── mouseover.html
│ │ │ │ │ ├── new_init.html
│ │ │ │ │ ├── restore.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ ├── text.html
│ │ │ │ │ ├── title_callback.html
│ │ │ │ │ ├── two_tables.html
│ │ │ │ │ └── two_tables_identical.html
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.colVis.js
│ │ │ │ │ └── dataTables.colVis.min.js
│ │ │ ├── FixedColumns
│ │ │ │ ├── License.txt
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.fixedColumns.css
│ │ │ │ │ └── dataTables.fixedColumns.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── bootstrap.html
│ │ │ │ │ ├── col_filter.html
│ │ │ │ │ ├── colvis.html
│ │ │ │ │ ├── css_size.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── index_column.html
│ │ │ │ │ ├── left_right_columns.html
│ │ │ │ │ ├── right_column.html
│ │ │ │ │ ├── rowspan.html
│ │ │ │ │ ├── server-side-processing.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ ├── size_fixed.html
│ │ │ │ │ ├── size_fluid.html
│ │ │ │ │ └── two_columns.html
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.fixedColumns.js
│ │ │ │ │ └── dataTables.fixedColumns.min.js
│ │ │ ├── FixedHeader
│ │ │ │ ├── Readme.txt
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.fixedHeader.css
│ │ │ │ │ └── dataTables.fixedHeader.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── header_footer.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ ├── top_left_right.html
│ │ │ │ │ ├── two_tables.html
│ │ │ │ │ └── zIndexes.html
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.fixedHeader.js
│ │ │ │ │ └── dataTables.fixedHeader.min.js
│ │ │ ├── KeyTable
│ │ │ │ ├── Readme.txt
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.keyTable.css
│ │ │ │ │ └── dataTables.keyTable.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── events.html
│ │ │ │ │ ├── html.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── scrolling.html
│ │ │ │ │ └── simple.html
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.keyTable.js
│ │ │ │ │ └── dataTables.keyTable.min.js
│ │ │ ├── Responsive
│ │ │ │ ├── License.txt
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.responsive.css
│ │ │ │ │ └── dataTables.responsive.scss
│ │ │ │ ├── examples
│ │ │ │ │ ├── child-rows
│ │ │ │ │ │ ├── column-control.html
│ │ │ │ │ │ ├── custom-renderer.html
│ │ │ │ │ │ ├── disable-child-rows.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── right-column.html
│ │ │ │ │ │ └── whole-row-control.html
│ │ │ │ │ ├── display-control
│ │ │ │ │ │ ├── auto.html
│ │ │ │ │ │ ├── classes.html
│ │ │ │ │ │ ├── complexHeader.html
│ │ │ │ │ │ ├── fixedHeader.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ └── init-classes.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── initialisation
│ │ │ │ │ │ ├── ajax.html
│ │ │ │ │ │ ├── className.html
│ │ │ │ │ │ ├── default.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ ├── new.html
│ │ │ │ │ │ └── option.html
│ │ │ │ │ └── styling
│ │ │ │ │ │ ├── bootstrap.html
│ │ │ │ │ │ ├── compact.html
│ │ │ │ │ │ ├── foundation.html
│ │ │ │ │ │ ├── index.html
│ │ │ │ │ │ └── scrolling.html
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.responsive.js
│ │ │ │ │ └── dataTables.responsive.min.js
│ │ │ ├── Scroller
│ │ │ │ ├── Readme.txt
│ │ │ │ ├── css
│ │ │ │ │ ├── dataTables.scroller.css
│ │ │ │ │ └── dataTables.scroller.min.css
│ │ │ │ ├── examples
│ │ │ │ │ ├── api_scrolling.html
│ │ │ │ │ ├── data
│ │ │ │ │ │ ├── 2500.txt
│ │ │ │ │ │ └── ssp.php
│ │ │ │ │ ├── index.html
│ │ │ │ │ ├── large_js_source.html
│ │ │ │ │ ├── server-side_processing.html
│ │ │ │ │ ├── simple.html
│ │ │ │ │ └── state_saving.html
│ │ │ │ ├── images
│ │ │ │ │ └── loading-background.png
│ │ │ │ └── js
│ │ │ │ │ ├── dataTables.scroller.js
│ │ │ │ │ └── dataTables.scroller.min.js
│ │ │ └── TableTools
│ │ │ │ ├── Readme.md
│ │ │ │ ├── css
│ │ │ │ ├── dataTables.tableTools.css
│ │ │ │ └── dataTables.tableTools.min.css
│ │ │ │ ├── examples
│ │ │ │ ├── ajax.html
│ │ │ │ ├── alter_buttons.html
│ │ │ │ ├── bootstrap.html
│ │ │ │ ├── button_text.html
│ │ │ │ ├── collection.html
│ │ │ │ ├── defaults.html
│ │ │ │ ├── index.html
│ │ │ │ ├── jqueryui.html
│ │ │ │ ├── multi_instance.html
│ │ │ │ ├── multiple_tables.html
│ │ │ │ ├── new_init.html
│ │ │ │ ├── pdf_message.html
│ │ │ │ ├── plug-in.html
│ │ │ │ ├── select_column.html
│ │ │ │ ├── select_multi.html
│ │ │ │ ├── select_os.html
│ │ │ │ ├── select_single.html
│ │ │ │ ├── simple.html
│ │ │ │ └── swf_path.html
│ │ │ │ ├── images
│ │ │ │ ├── collection.png
│ │ │ │ ├── collection_hover.png
│ │ │ │ ├── copy.png
│ │ │ │ ├── copy_hover.png
│ │ │ │ ├── csv.png
│ │ │ │ ├── csv_hover.png
│ │ │ │ ├── pdf.png
│ │ │ │ ├── pdf_hover.png
│ │ │ │ ├── print.png
│ │ │ │ ├── print_hover.png
│ │ │ │ ├── psd
│ │ │ │ │ ├── collection.psd
│ │ │ │ │ ├── copy document.psd
│ │ │ │ │ ├── file_types.psd
│ │ │ │ │ └── printer.psd
│ │ │ │ ├── xls.png
│ │ │ │ └── xls_hover.png
│ │ │ │ ├── js
│ │ │ │ ├── dataTables.tableTools.js
│ │ │ │ └── dataTables.tableTools.min.js
│ │ │ │ └── swf
│ │ │ │ ├── copy_csv_xls.swf
│ │ │ │ └── copy_csv_xls_pdf.swf
│ │ ├── images
│ │ │ ├── sort_asc.png
│ │ │ ├── sort_asc_disabled.png
│ │ │ ├── sort_both.png
│ │ │ ├── sort_desc.png
│ │ │ └── sort_desc_disabled.png
│ │ ├── jquery.dataTables.css
│ │ ├── jquery.dataTables.js
│ │ ├── jquery.dataTables.min.css
│ │ ├── jquery.dataTables.min.js
│ │ └── jquery.dataTables_themeroller.css
│ │ ├── datepicker
│ │ ├── bootstrap-datepicker.js
│ │ ├── datepicker3.css
│ │ └── locales
│ │ │ ├── bootstrap-datepicker.ar.js
│ │ │ ├── bootstrap-datepicker.az.js
│ │ │ ├── bootstrap-datepicker.bg.js
│ │ │ ├── bootstrap-datepicker.ca.js
│ │ │ ├── bootstrap-datepicker.cs.js
│ │ │ ├── bootstrap-datepicker.cy.js
│ │ │ ├── bootstrap-datepicker.da.js
│ │ │ ├── bootstrap-datepicker.de.js
│ │ │ ├── bootstrap-datepicker.el.js
│ │ │ ├── bootstrap-datepicker.es.js
│ │ │ ├── bootstrap-datepicker.et.js
│ │ │ ├── bootstrap-datepicker.fa.js
│ │ │ ├── bootstrap-datepicker.fi.js
│ │ │ ├── bootstrap-datepicker.fr.js
│ │ │ ├── bootstrap-datepicker.gl.js
│ │ │ ├── bootstrap-datepicker.he.js
│ │ │ ├── bootstrap-datepicker.hr.js
│ │ │ ├── bootstrap-datepicker.hu.js
│ │ │ ├── bootstrap-datepicker.id.js
│ │ │ ├── bootstrap-datepicker.is.js
│ │ │ ├── bootstrap-datepicker.it.js
│ │ │ ├── bootstrap-datepicker.ja.js
│ │ │ ├── bootstrap-datepicker.ka.js
│ │ │ ├── bootstrap-datepicker.kk.js
│ │ │ ├── bootstrap-datepicker.kr.js
│ │ │ ├── bootstrap-datepicker.lt.js
│ │ │ ├── bootstrap-datepicker.lv.js
│ │ │ ├── bootstrap-datepicker.mk.js
│ │ │ ├── bootstrap-datepicker.ms.js
│ │ │ ├── bootstrap-datepicker.nb.js
│ │ │ ├── bootstrap-datepicker.nl-BE.js
│ │ │ ├── bootstrap-datepicker.nl.js
│ │ │ ├── bootstrap-datepicker.no.js
│ │ │ ├── bootstrap-datepicker.pl.js
│ │ │ ├── bootstrap-datepicker.pt-BR.js
│ │ │ ├── bootstrap-datepicker.pt.js
│ │ │ ├── bootstrap-datepicker.ro.js
│ │ │ ├── bootstrap-datepicker.rs-latin.js
│ │ │ ├── bootstrap-datepicker.rs.js
│ │ │ ├── bootstrap-datepicker.ru.js
│ │ │ ├── bootstrap-datepicker.sk.js
│ │ │ ├── bootstrap-datepicker.sl.js
│ │ │ ├── bootstrap-datepicker.sq.js
│ │ │ ├── bootstrap-datepicker.sv.js
│ │ │ ├── bootstrap-datepicker.sw.js
│ │ │ ├── bootstrap-datepicker.th.js
│ │ │ ├── bootstrap-datepicker.tr.js
│ │ │ ├── bootstrap-datepicker.ua.js
│ │ │ ├── bootstrap-datepicker.vi.js
│ │ │ ├── bootstrap-datepicker.zh-CN.js
│ │ │ └── bootstrap-datepicker.zh-TW.js
│ │ ├── jQuery
│ │ └── jQuery-2.2.0.min.js
│ │ ├── jvectormap
│ │ ├── jquery-jvectormap-2.0.3.css
│ │ ├── jquery-jvectormap-2.0.3.min.js
│ │ └── jquery-jvectormap-world-mill.js
│ │ ├── pace
│ │ ├── pace.css
│ │ ├── pace.js
│ │ ├── pace.min.css
│ │ └── pace.min.js
│ │ └── select2
│ │ ├── i18n
│ │ ├── ar.js
│ │ ├── az.js
│ │ ├── bg.js
│ │ ├── ca.js
│ │ ├── cs.js
│ │ ├── da.js
│ │ ├── de.js
│ │ ├── en.js
│ │ ├── es.js
│ │ ├── et.js
│ │ ├── eu.js
│ │ ├── fa.js
│ │ ├── fi.js
│ │ ├── fr.js
│ │ ├── gl.js
│ │ ├── he.js
│ │ ├── hi.js
│ │ ├── hr.js
│ │ ├── hu.js
│ │ ├── id.js
│ │ ├── is.js
│ │ ├── it.js
│ │ ├── ja.js
│ │ ├── ko.js
│ │ ├── lt.js
│ │ ├── lv.js
│ │ ├── mk.js
│ │ ├── ms.js
│ │ ├── nb.js
│ │ ├── nl.js
│ │ ├── pl.js
│ │ ├── pt-BR.js
│ │ ├── pt.js
│ │ ├── ro.js
│ │ ├── ru.js
│ │ ├── sk.js
│ │ ├── sr-Cyrl.js
│ │ ├── sr.js
│ │ ├── sv.js
│ │ ├── th.js
│ │ ├── tr.js
│ │ ├── uk.js
│ │ ├── vi.js
│ │ ├── zh-CN.js
│ │ └── zh-TW.js
│ │ ├── select2.css
│ │ ├── select2.full.js
│ │ ├── select2.full.min.js
│ │ ├── select2.js
│ │ ├── select2.min.css
│ │ └── select2.min.js
└── test
│ ├── e2e
│ ├── custom-assertions
│ │ └── elementCount.js
│ ├── nightwatch.conf.js
│ ├── runner.js
│ └── specs
│ │ └── test.js
│ └── unit
│ ├── .eslintrc
│ ├── index.js
│ ├── karma.conf.js
│ └── specs
│ └── Hello.spec.js
├── doc
├── imagenet.md
├── server_dev_cpp.md
└── server_dev_js.md
├── docker-make-server.sh
├── examples
├── caffe
│ ├── README
│ ├── README.caffe
│ ├── mean.binaryproto
│ ├── solver.prototxt
│ ├── train.sh
│ └── train_val.prototxt
├── datasets
│ ├── picpac-import-cifar.cpp
│ └── picpac-import-nmist.cpp
├── keras
│ └── cifar10_cnn.py
├── lasagne
│ └── mnist.py
├── mxnet
│ ├── Dockerfile
│ ├── Makefile
│ ├── README
│ ├── find_mxnet.py
│ ├── symbol_alexnet.py
│ ├── symbol_googlenet.py
│ ├── symbol_inception-bn-28-small.py
│ ├── symbol_inception-bn-full.py
│ ├── symbol_inception-bn.py
│ ├── symbol_inception-v3.py
│ ├── symbol_resnet-28-small.py
│ ├── symbol_vgg.py
│ └── train.py
└── tensorflow
│ ├── Dockerfile
│ ├── Makefile
│ ├── README
│ ├── fcn-predict.py
│ ├── fcn-resnet.py
│ ├── fcn.py
│ ├── multipod.py
│ └── train-slim.py
├── legacy-python-api.cpp
├── load-caffe.cpp
├── lua-api.cpp
├── make-server.sh
├── mkdocs.yml
├── obsolete
└── picpac-proto.cpp
├── picpac-0.1.alpha-0.rockspec
├── picpac-annotate.cpp
├── picpac-crop.cpp
├── picpac-cv.cpp
├── picpac-cv.h
├── picpac-downsize.cpp
├── picpac-dumpvec.cpp
├── picpac-dupe.cpp
├── picpac-explorer.cpp
├── picpac-filter.cpp
├── picpac-image.cpp
├── picpac-image.h
├── picpac-import.cpp
├── picpac-kfold.cpp
├── picpac-merge.cpp
├── picpac-overview.h
├── picpac-point2ellipse.cpp
├── picpac-roi-scale.cpp
├── picpac-split-region.cpp
├── picpac-split.cpp
├── picpac-stat.cpp
├── picpac-stream.cpp
├── picpac-unpack.cpp
├── picpac-util.cpp
├── picpac-util.h
├── picpac.cpp
├── picpac.h
├── picpac_legacy
├── __init__.py
├── mxnet.py
└── neon.py
├── pydocs
├── config.md
├── import.md
├── index.md
├── picpac-flow.jpg
├── stream.md
└── topics.md
├── python-api.cpp
├── rfc3986.h
├── scripts
├── dump_yolo.py
└── visualize_dumped_masks.py
├── setup-static.py
├── setup.py
├── shapes.cpp
├── stress.cpp
├── tar.h
├── test.cpp
├── transforms-anchors.cpp
└── transforms.cpp
/.gitignore:
--------------------------------------------------------------------------------
1 | # Compiled Object files
2 | *.slo
3 | *.lo
4 | *.o
5 | *.obj
6 |
7 | # Precompiled Headers
8 | *.gch
9 | *.pch
10 |
11 | # Compiled Dynamic libraries
12 | *.so
13 | *.dylib
14 | *.dll
15 |
16 | # Fortran module files
17 | *.mod
18 |
19 | # Compiled Static libraries
20 | *.lai
21 | *.la
22 | *.a
23 | *.lib
24 |
25 | # Executables
26 | *.exe
27 | *.out
28 | *.app
29 |
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "json11"]
2 | path = json11
3 | url = https://github.com/dropbox/json11.git
4 | [submodule "Catch"]
5 | path = Catch
6 | url = https://github.com/philsquared/Catch.git
7 | [submodule "boostache"]
8 | path = boostache
9 | url = https://github.com/cierelabs/boostache.git
10 |
--------------------------------------------------------------------------------
/3rd/update.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | import sys
3 | import subprocess as sp
4 |
5 | MODULES = [
6 | ('https://github.com/pybind/pybind11.git',
7 | ['include', 'LICENSE']),
8 | ('https://github.com/fmtlib/fmt.git',
9 | ['include', 'LICENSE.rst']),
10 | ('https://github.com/gabime/spdlog.git',
11 | ['include', 'LICENSE']),
12 | #('https://github.com/xtensor-stack/xtensor.git',
13 | #['include', 'LICENSE']),
14 | #('https://github.com/xtensor-stack/xtl.git',
15 | #['include', 'LICENSE']),
16 | #('https://github.com/xtensor-stack/xtensor-python.git',
17 | #['include', 'LICENSE']),
18 | #('https://github.com/xtensor-stack/xtensor-blas.git',
19 | #['include', 'LICENSE']),
20 | ('https://github.com/nlohmann/json',
21 | ['single_include', 'LICENSE.MIT']),
22 | ('https://github.com/edmBernard/pybind11_opencv_numpy',
23 | ['ndarray_converter.h', 'ndarray_converter.cpp', 'LICENSE'])
24 | ]
25 |
26 | def call (cmd):
27 | sp.check_call(cmd, shell=True)
28 |
29 | call('mkdir -p tmp')
30 | for url, moves in MODULES:
31 | bname = url.rsplit('/', 1)[-1].split('.')[0]
32 | call(f'rm -rf {bname}; mkdir -p {bname}')
33 | call(f'if [ ! -d tmp/{bname} ]; then git clone --depth 1 {url} tmp/{bname}; fi')
34 | call(f'cd tmp/{bname}; git show | head -n 1 | cut -f 2 -d " " | cut -b 1-16 > ../../{bname}/commit')
35 | for move in moves:
36 | call(f'mv tmp/{bname}/{move} {bname}/')
37 | call('rm -rf tmp')
38 |
39 |
--------------------------------------------------------------------------------
/3rdparty/libjpeg.so.8.1.2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/3rdparty/libjpeg.so.8.1.2
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | Copyright (c) 2016, Wei Dong
2 | All rights reserved.
3 |
4 | Redistribution and use in source and binary forms, with or without
5 | modification, are permitted provided that the following conditions are met:
6 |
7 | * Redistributions of source code must retain the above copyright notice, this
8 | list of conditions and the following disclaimer.
9 |
10 | * Redistributions in binary form must reproduce the above copyright notice,
11 | this list of conditions and the following disclaimer in the documentation
12 | and/or other materials provided with the distribution.
13 |
14 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
15 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
17 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
18 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
20 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
21 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
22 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
23 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24 |
--------------------------------------------------------------------------------
/MANIFEST.in:
--------------------------------------------------------------------------------
1 | include picpac.h
2 | include picpac-cv.h
3 | include json11/json11.hpp
4 |
5 |
--------------------------------------------------------------------------------
/Makefile.lua:
--------------------------------------------------------------------------------
1 | CXXFLAGS_EXTRA = -Ijson11 -Wall -Wno-sign-compare -std=c++1y -g -O3 -pthread
2 | LDLIBS = -lopencv_highgui -lopencv_core -lboost_filesystem -lboost_system -lboost_python -lglog -lluaT -lTH -lluajit
3 |
4 | all: picpac.so
5 |
6 | clean:
7 | rm -rf *.o picpac.so
8 |
9 | picpac.so: lua-api.o picpac.o picpac-cv.o json11/json11.o
10 | g++ $(LDFLAGS) -o $@ $^ $(LDLIBS)
11 |
12 | .cpp.o:
13 | g++ -c -o $@ $(CXXFLAGS) $(CXXFLAGS_EXTRA) $<
14 |
15 | install: picpac.so
16 | cp picpac.so $(LIBDIR)/lib
17 |
18 |
--------------------------------------------------------------------------------
/Makefile.static:
--------------------------------------------------------------------------------
1 | CC=g++
2 | CXX=g++
3 | BUILD_INFO=-DPP_VERSION=\"$(shell git describe --always)\" -DPP_BUILD_ID=\"$(BUILD_ID)\" -DPP_BUILD_NUMBER=\"$(BUILD_NUMBER)\" -DPP_BUILD_TIME=\"$(shell date +%Y-%m-%dT%H:%M:%S)\"
4 | CFLAGS += -g -O3
5 | CXXFLAGS += -fPIC -Ijson11 -ICatch/include -ISimple-Web-Server -ISimple-Web-Extra -Wall -Wno-sign-compare -std=c++1y -fopenmp -g -O3 -pthread -msse4.2 $(BUILD_INFO)
6 | #CXXFLAGS += -DSUPPORT_AUDIO_SPECTROGRAM=1
7 | LDFLAGS += -fopenmp -static
8 | LDLIBS = libpicpac.a \
9 | -lopencv_highgui -lopencv_imgproc -lopencv_imgcodecs -lopencv_core \
10 | -lturbojpeg -ltiff -lpng -lwebp -llibjasper -lippicv \
11 | -lboost_timer -lboost_chrono -lboost_program_options -lboost_thread -lboost_filesystem -lboost_system \
12 | -lglog -lgflags \
13 | -lz -lrt -ldl
14 |
15 | HEADERS = picpac.h picpac-cv.h picpac-util.h
16 | COMMON = picpac-util.o picpac-cv.o picpac.o json11.o
17 |
18 | PROGS = picpac-unpack picpac-merge picpac-split picpac-downsize picpac-crop picpac-split-region picpac-dupe test stress picpac-import picpac-stream picpac-proto picpac-roi-scale picpac-stat picpac-point2ellipse #picpac-annotate picpac-dumpvec#load-caffe load-dir test test_tr server
19 |
20 | .PHONY: all release python upload_test upload sdist bfdfs
21 |
22 | all: libpicpac.a $(PROGS)
23 |
24 | libpicpac.a: $(COMMON)
25 | ar rvs $@ $^
26 |
27 | %.o: %.cpp $(HEADERS)
28 | $(CXX) $(CXXFLAGS) -c $*.cpp
29 |
30 | json11.o: json11/json11.cpp
31 | $(CXX) $(CXXFLAGS) -o $@ -c $^
32 |
33 | $(PROGS): %: %.o libpicpac.a
34 | $(CXX) $(LDFLAGS) -o $@ $^ $(LDLIBS)
35 |
36 | release:
37 | mkdir -p release
38 | cp $(PROGS) release
39 |
40 | clean:
41 | rm *.o $(PROGS)
42 |
43 |
--------------------------------------------------------------------------------
/copilot/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["es2015", "stage-2"],
3 | "plugins": ["transform-runtime"],
4 | "comments": false
5 | }
6 |
--------------------------------------------------------------------------------
/copilot/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/copilot/.eslintrc.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | root: true,
3 | // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
4 | extends: 'standard',
5 | // required to lint *.vue files
6 | plugins: [
7 | 'html'
8 | ],
9 | // add your custom rules here
10 | 'rules': {
11 | // allow paren-less arrow functions
12 | 'arrow-parens': 0,
13 | // allow debugger during development
14 | 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/copilot/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: all none
2 |
3 | all:
4 | if [ ! -d node_modules ] ; then npm install; fi
5 | npm run build --force
6 |
7 | none:
8 | true
9 |
--------------------------------------------------------------------------------
/copilot/build/build.js:
--------------------------------------------------------------------------------
1 | /* global env:true rm:true mkdir:true cp:true */
2 | // https://github.com/shelljs/shelljs
3 | require('./check-versions')()
4 | require('shelljs/global')
5 | env.NODE_ENV = 'production'
6 |
7 | var path = require('path')
8 | var config = require('../config')
9 | var ora = require('ora')
10 | var webpack = require('webpack')
11 | var webpackConfig = require('./webpack.prod.conf')
12 |
13 | console.log(
14 | ' Tip:\n' +
15 | ' Built files are meant to be served over an HTTP server.\n' +
16 | ' Opening index.html over file:// won\'t work.\n'
17 | )
18 |
19 | var spinner = ora('building for production...')
20 | spinner.start()
21 |
22 | var assetsPath = path.join(config.build.assetsRoot, config.build.assetsSubDirectory)
23 | rm('-rf', assetsPath)
24 | mkdir('-p', assetsPath)
25 | cp('-R', 'static/*', assetsPath)
26 |
27 | webpack(webpackConfig, function (err, stats) {
28 | spinner.stop()
29 | if (err) throw err
30 | process.stdout.write(stats.toString({
31 | colors: true,
32 | modules: false,
33 | children: false,
34 | chunks: false,
35 | chunkModules: false
36 | }) + '\n')
37 | })
38 |
--------------------------------------------------------------------------------
/copilot/build/check-versions.js:
--------------------------------------------------------------------------------
1 | var semver = require('semver')
2 | var chalk = require('chalk')
3 | var packageConfig = require('../package.json')
4 | var exec = function (cmd) {
5 | return require('child_process')
6 | .execSync(cmd).toString().trim()
7 | }
8 |
9 | var versionRequirements = [
10 | {
11 | name: 'node',
12 | currentVersion: semver.clean(process.version),
13 | versionRequirement: packageConfig.engines.node
14 | },
15 | {
16 | name: 'npm',
17 | currentVersion: exec('npm --version'),
18 | versionRequirement: packageConfig.engines.npm
19 | }
20 | ]
21 |
22 | module.exports = function () {
23 | var warnings = []
24 | for (var i = 0; i < versionRequirements.length; i++) {
25 | var mod = versionRequirements[i]
26 | if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
27 | warnings.push(mod.name + ': ' +
28 | chalk.red(mod.currentVersion) + ' should be ' +
29 | chalk.green(mod.versionRequirement)
30 | )
31 | }
32 | }
33 |
34 | if (warnings.length) {
35 | console.log('')
36 | console.log(chalk.yellow('To use this template, you must update following to modules:'))
37 | console.log()
38 | for (var i = 0; i < warnings.length; i++) {
39 | var warning = warnings[i]
40 | console.log(' ' + warning)
41 | }
42 | console.log()
43 | process.exit(1)
44 | }
45 | }
46 |
--------------------------------------------------------------------------------
/copilot/build/dev-client.js:
--------------------------------------------------------------------------------
1 | /* eslint-disable */
2 | require('eventsource-polyfill')
3 | var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true')
4 |
5 | hotClient.subscribe(function (event) {
6 | if (event.action === 'reload') {
7 | window.location.reload()
8 | }
9 | })
10 |
--------------------------------------------------------------------------------
/copilot/build/dev-server.js:
--------------------------------------------------------------------------------
1 | require('./check-versions')()
2 | var config = require('../config')
3 | if (!process.env.NODE_ENV) process.env.NODE_ENV = config.dev.env
4 | var path = require('path')
5 | var express = require('express')
6 | var webpack = require('webpack')
7 | var opn = require('opn')
8 | var proxyMiddleware = require('http-proxy-middleware')
9 | var webpackConfig = process.env.NODE_ENV === 'testing'
10 | ? require('./webpack.prod.conf')
11 | : require('./webpack.dev.conf')
12 |
13 | // default port where dev server listens for incoming traffic
14 | var port = process.env.PORT || config.dev.port
15 | // Define HTTP proxies to your custom API backend
16 | // https://github.com/chimurai/http-proxy-middleware
17 | var proxyTable = config.dev.proxyTable
18 |
19 | var app = express()
20 | var compiler = webpack(webpackConfig)
21 |
22 | var devMiddleware = require('webpack-dev-middleware')(compiler, {
23 | publicPath: webpackConfig.output.publicPath,
24 | stats: {
25 | colors: true,
26 | chunks: false
27 | }
28 | })
29 |
30 | var hotMiddleware = require('webpack-hot-middleware')(compiler)
31 | // force page reload when html-webpack-plugin template changes
32 | compiler.plugin('compilation', function (compilation) {
33 | compilation.plugin('html-webpack-plugin-after-emit', function (data, cb) {
34 | hotMiddleware.publish({ action: 'reload' })
35 | cb()
36 | })
37 | })
38 |
39 | // proxy api requests
40 | Object.keys(proxyTable).forEach(function (context) {
41 | var options = proxyTable[context]
42 | if (typeof options === 'string') {
43 | options = { target: options }
44 | }
45 | app.use(proxyMiddleware(context, options))
46 | })
47 |
48 | // handle fallback for HTML5 history API
49 | app.use(require('connect-history-api-fallback')())
50 |
51 | // serve webpack bundle output
52 | app.use(devMiddleware)
53 |
54 | // enable hot-reload and state-preserving
55 | // compilation error display
56 | app.use(hotMiddleware)
57 |
58 | // serve pure static assets
59 | var staticPath = path.posix.join(config.dev.assetsPublicPath, config.dev.assetsSubDirectory)
60 | app.use(staticPath, express.static('./static'))
61 |
62 | module.exports = app.listen(port, function (err) {
63 | if (err) {
64 | console.log(err)
65 | return
66 | }
67 | var uri = 'http://localhost:' + port
68 | console.log('Listening at ' + uri + '\n')
69 | opn(uri)
70 | })
71 |
--------------------------------------------------------------------------------
/copilot/build/utils.js:
--------------------------------------------------------------------------------
1 | var path = require('path')
2 | var config = require('../config')
3 | var ExtractTextPlugin = require('extract-text-webpack-plugin')
4 |
5 | exports.assetsPath = function (_path) {
6 | var assetsSubDirectory = process.env.NODE_ENV === 'production'
7 | ? config.build.assetsSubDirectory
8 | : config.dev.assetsSubDirectory
9 | return path.posix.join(assetsSubDirectory, _path)
10 | }
11 |
12 | exports.cssLoaders = function (options) {
13 | options = options || {}
14 | // generate loader string to be used with extract text plugin
15 | function generateLoaders (loaders) {
16 | var sourceLoader = loaders.map(function (loader) {
17 | var extraParamChar
18 | if (/\?/.test(loader)) {
19 | loader = loader.replace(/\?/, '-loader?')
20 | extraParamChar = '&'
21 | } else {
22 | loader = loader + '-loader'
23 | extraParamChar = '?'
24 | }
25 | return loader + (options.sourceMap ? extraParamChar + 'sourceMap' : '')
26 | }).join('!')
27 |
28 | // Extract CSS when that option is specified
29 | // (which is the case during production build)
30 | if (options.extract) {
31 | return ExtractTextPlugin.extract('vue-style-loader', sourceLoader)
32 | } else {
33 | return ['vue-style-loader', sourceLoader].join('!')
34 | }
35 | }
36 |
37 | // http://vuejs.github.io/vue-loader/en/configurations/extract-css.html
38 | return {
39 | css: generateLoaders(['css']),
40 | postcss: generateLoaders(['css']),
41 | less: generateLoaders(['css', 'less']),
42 | sass: generateLoaders(['css', 'sass?indentedSyntax']),
43 | scss: generateLoaders(['css', 'sass']),
44 | stylus: generateLoaders(['css', 'stylus']),
45 | styl: generateLoaders(['css', 'stylus'])
46 | }
47 | }
48 |
49 | // Generate loaders for standalone style files (outside of .vue)
50 | exports.styleLoaders = function (options) {
51 | var output = []
52 | var loaders = exports.cssLoaders(options)
53 | for (var extension in loaders) {
54 | var loader = loaders[extension]
55 | output.push({
56 | test: new RegExp('\\.' + extension + '$'),
57 | loader: loader
58 | })
59 | }
60 | return output
61 | }
62 |
--------------------------------------------------------------------------------
/copilot/build/webpack.dev.conf.js:
--------------------------------------------------------------------------------
1 | var config = require('../config')
2 | var webpack = require('webpack')
3 | var merge = require('webpack-merge')
4 | var utils = require('./utils')
5 | var baseWebpackConfig = require('./webpack.base.conf')
6 | var HtmlWebpackPlugin = require('html-webpack-plugin')
7 |
8 | // add hot-reload related code to entry chunks
9 | Object.keys(baseWebpackConfig.entry).forEach(function (name) {
10 | baseWebpackConfig.entry[name] = ['./build/dev-client'].concat(baseWebpackConfig.entry[name])
11 | })
12 |
13 | module.exports = merge(baseWebpackConfig, {
14 | module: {
15 | loaders: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap })
16 | },
17 | // eval-source-map is faster for development
18 | devtool: '#eval-source-map',
19 | plugins: [
20 | new webpack.DefinePlugin({
21 | 'process.env': config.dev.env
22 | }),
23 | // https://github.com/glenjamin/webpack-hot-middleware#installation--usage
24 | new webpack.optimize.OccurenceOrderPlugin(),
25 | new webpack.HotModuleReplacementPlugin(),
26 | new webpack.NoErrorsPlugin(),
27 | // https://github.com/ampedandwired/html-webpack-plugin
28 | new HtmlWebpackPlugin({
29 | filename: 'index.html',
30 | template: 'index.html',
31 | inject: true
32 | })
33 | ]
34 | })
35 |
--------------------------------------------------------------------------------
/copilot/config/dev.env.js:
--------------------------------------------------------------------------------
1 | var merge = require('webpack-merge')
2 | var prodEnv = require('./prod.env')
3 |
4 | module.exports = merge(prodEnv, {
5 | NODE_ENV: '"development"'
6 | })
7 |
--------------------------------------------------------------------------------
/copilot/config/index.js:
--------------------------------------------------------------------------------
1 | // see http://vuejs-templates.github.io/webpack for documentation.
2 | var path = require('path')
3 |
4 | module.exports = {
5 | build: {
6 | env: require('./prod.env'),
7 | index: path.resolve(__dirname, '../dist/index.html'),
8 | assetsRoot: path.resolve(__dirname, '../dist'),
9 | assetsSubDirectory: 'static',
10 | assetsPublicPath: '/',
11 | productionSourceMap: true,
12 | // Gzip off by default as many popular static hosts such as
13 | // Surge or Netlify already gzip all static assets for you.
14 | // Before setting to `true`, make sure to:
15 | // npm install --save-dev compression-webpack-plugin
16 | productionGzip: false,
17 | productionGzipExtensions: ['js', 'css']
18 | },
19 | dev: {
20 | env: require('./dev.env'),
21 | port: 8080,
22 | assetsSubDirectory: 'static',
23 | assetsPublicPath: '/',
24 | proxyTable: {'/api': {
25 | target: 'http://localhost:18888',
26 | logLevel: 'debug'
27 | }
28 | },
29 | // CSS Sourcemaps off by default because relative paths are "buggy"
30 | // with this option, according to the CSS-Loader README
31 | // (https://github.com/webpack/css-loader#sourcemaps)
32 | // In our experience, they generally work as expected,
33 | // just be aware of this issue when enabling this option.
34 | cssSourceMap: false
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/copilot/config/prod.env.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | NODE_ENV: '"production"'
3 | }
4 |
--------------------------------------------------------------------------------
/copilot/config/test.env.js:
--------------------------------------------------------------------------------
1 | var merge = require('webpack-merge')
2 | var devEnv = require('./dev.env')
3 |
4 | module.exports = merge(devEnv, {
5 | NODE_ENV: '"testing"'
6 | })
7 |
--------------------------------------------------------------------------------
/copilot/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | PicPac Explorer
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
48 |
49 |
50 |
--------------------------------------------------------------------------------
/copilot/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/src/assets/logo.png
--------------------------------------------------------------------------------
/copilot/src/components/404.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |

6 |
7 |
You are lost.
8 | This page doesn't exist.
9 | Take me home.
10 |
11 |
12 |
13 |
14 |
15 |
20 |
21 |
23 |
--------------------------------------------------------------------------------
/copilot/src/components/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
44 |
--------------------------------------------------------------------------------
/copilot/src/components/dash/Server.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
Our Environment
4 |
5 |
6 |
7 |
8 |
12 |
13 |
14 | {{server.description}}
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
62 |
63 |
65 |
--------------------------------------------------------------------------------
/copilot/src/filters/index.js:
--------------------------------------------------------------------------------
1 | const urlParser = document.createElement('a')
2 |
3 | export function domain (url) {
4 | urlParser.href = url
5 | return urlParser.hostname
6 | }
7 |
8 | export function count (arr) {
9 | return arr.length
10 | }
11 |
12 | export function prettyDate (date) {
13 | var a = new Date(date)
14 | return a.toDateString()
15 | }
16 |
17 | export function pluralize (time, label) {
18 | if (time === 1) {
19 | return time + label
20 | }
21 |
22 | return time + label + 's'
23 | }
24 |
--------------------------------------------------------------------------------
/copilot/src/main.js:
--------------------------------------------------------------------------------
1 | // Import System requirements
2 | import Vue from 'vue'
3 | import Resource from 'vue-resource'
4 | import VueRouter from 'vue-router'
5 |
6 | import routes from './routes'
7 | import store from './store'
8 |
9 | // Import Helpers for filters
10 | import { domain, count, prettyDate, pluralize } from './filters'
11 |
12 | // Import Views - Top level
13 |
14 | import AppView from './components/App.vue'
15 |
16 | // Import Install and register helper items
17 | Vue.filter('count', count)
18 | Vue.filter('domain', domain)
19 | Vue.filter('prettyDate', prettyDate)
20 | Vue.filter('pluralize', pluralize)
21 |
22 | // Resource logic
23 | Vue.use(Resource)
24 |
25 | Vue.use(VueRouter)
26 |
27 | Vue.http.interceptors.push((request, next) => {
28 | /*
29 | Enable this when you have a backend that you authenticate against
30 | var headers = request.headers
31 |
32 | if (window.location.pathname !== '/login' && !headers.hasOwnProperty('Authorization')) {
33 | headers.Authorization = this.$store.state.token
34 | }
35 | */
36 | // console.log(headers)
37 |
38 | // continue to next interceptor without modifying the response
39 | next()
40 | })
41 |
42 | // Routing logic
43 | var router = new VueRouter({
44 | routes: routes,
45 | mode: 'history',
46 | scrollBehavior: function (to, from, savedPosition) {
47 | return savedPosition || { x: 0, y: 0 }
48 | }
49 | })
50 |
51 | // Some middleware to help us ensure the user is authenticated.
52 | router.beforeEach((to, from, next) => {
53 | // window.console.log('Transition', transition)
54 | if (to.auth && (to.router.app.$store.state.token === 'null')) {
55 | window.console.log('Not authenticated')
56 | next({
57 | path: '/login',
58 | query: { redirect: to.fullPath }
59 | })
60 | } else {
61 | next()
62 | }
63 | })
64 |
65 | // Start out app!
66 | // eslint-disable-next-line no-new
67 | new Vue({
68 | el: '#root',
69 | router: router,
70 | store: store,
71 | render: h => h(AppView)
72 | })
73 |
74 | // Check local storage to handle refreshes
75 | if (window.localStorage) {
76 | if (store.state.user !== window.localStorage.getItem('user')) {
77 | store.dispatch('SET_USER', JSON.parse(window.localStorage.getItem('user')))
78 | store.dispatch('SET_TOKEN', window.localStorage.getItem('token'))
79 | }
80 | }
81 |
--------------------------------------------------------------------------------
/copilot/src/routes.js:
--------------------------------------------------------------------------------
1 | import DashView from './components/Dash.vue'
2 | import LoginView from './components/Login.vue'
3 | import NotFoundView from './components/404.vue'
4 |
5 | // Import Views - Dash
6 | // import DashboardView from './components/dash/Dashboard.vue'
7 | import OverviewView from './components/dash/Overview.vue'
8 | import SamplesView from './components/dash/Samples.vue'
9 | import StreamView from './components/dash/Stream.vue'
10 | /*
11 | import TasksView from './components/dash/Tasks.vue'
12 | import SettingView from './components/dash/Setting.vue'
13 | import AccessView from './components/dash/Access.vue'
14 | import ServerView from './components/dash/Server.vue'
15 | import ReposView from './components/dash/Repos.vue'
16 | */
17 |
18 | // Routes
19 | const routes = [
20 | {
21 | path: '/login',
22 | component: LoginView
23 | }, {
24 | path: '/',
25 | component: DashView,
26 | auth: true,
27 | children: [
28 | {
29 | path: '',
30 | component: OverviewView,
31 | name: 'Overview',
32 | description: 'Overview of environment'
33 | },
34 | {
35 | path: '/samples',
36 | component: SamplesView,
37 | name: 'Samples',
38 | description: 'Simple and advance table in CoPilot'
39 | },
40 | {
41 | path: '/stream',
42 | component: StreamView,
43 | name: 'Stream',
44 | description: 'Simple and advance table in CoPilot'
45 | }/* , {
46 | path: '/tasks',
47 | component: TasksView,
48 | name: 'Tasks',
49 | description: 'Tasks page in the form of a timeline'
50 | }, {
51 | path: '/setting',
52 | component: SettingView,
53 | name: 'Settings',
54 | description: 'User settings page'
55 | }, {
56 | path: '/access',
57 | component: AccessView,
58 | name: 'Access',
59 | description: 'Example of using maps'
60 | }, {
61 | path: '/server',
62 | component: ServerView,
63 | name: 'Servers',
64 | description: 'List of our servers'
65 | }, {
66 | path: '/repos',
67 | component: ReposView,
68 | name: 'Repository',
69 | description: 'List of popular javascript repos'
70 | } */
71 | ]
72 | }, {
73 | // not found handler
74 | path: '*',
75 | component: NotFoundView
76 | }
77 | ]
78 |
79 | export default routes
80 |
--------------------------------------------------------------------------------
/copilot/src/store.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 |
4 | Vue.use(Vuex)
5 |
6 | const state = {
7 | callingAPI: false,
8 | searching: '',
9 | serverURI: 'http://10.110.1.136:8080',
10 | user: null,
11 | token: null,
12 | userInfo: {
13 | messages: [{1: 'test', 2: 'test'}],
14 | notifications: [],
15 | tasks: []
16 | }
17 | }
18 |
19 | const mutations = {
20 | TOGGLE_LOADING (state) {
21 | state.callingAPI = !state.callingAPI
22 | },
23 | TOGGLE_SEARCHING (state) {
24 | state.searching = (state.searching === '') ? 'loading' : ''
25 | },
26 | SET_USER (state, user) {
27 | state.user = user
28 | },
29 | SET_TOKEN (state, token) {
30 | state.token = token
31 | }
32 | }
33 |
34 | export default new Vuex.Store({
35 | state,
36 | mutations
37 | })
38 |
--------------------------------------------------------------------------------
/copilot/static/css/bootstrap.min.css.map.css:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/copilot/static/img/banner.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/banner.jpg
--------------------------------------------------------------------------------
/copilot/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/favicon.ico
--------------------------------------------------------------------------------
/copilot/static/img/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/logo.png
--------------------------------------------------------------------------------
/copilot/static/img/logo_blk.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/logo_blk.png
--------------------------------------------------------------------------------
/copilot/static/img/logo_blk_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/logo_blk_sm.png
--------------------------------------------------------------------------------
/copilot/static/img/logo_sm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/logo_sm.png
--------------------------------------------------------------------------------
/copilot/static/img/screenshot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/screenshot.png
--------------------------------------------------------------------------------
/copilot/static/img/screenshotv2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/screenshotv2.png
--------------------------------------------------------------------------------
/copilot/static/img/stock/user1-128x128.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/img/stock/user1-128x128.jpg
--------------------------------------------------------------------------------
/copilot/static/js/copilot.js:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/copilot.js
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/dataTables.bootstrap.min.js:
--------------------------------------------------------------------------------
1 | /*!
2 | DataTables Bootstrap 3 integration
3 | ©2011-2014 SpryMedia Ltd - datatables.net/license
4 | */
5 | (function(l,q){var e=function(b,c){b.extend(!0,c.defaults,{dom:"<'row'<'col-sm-6'l><'col-sm-6'f>><'row'<'col-sm-12'tr>><'row'<'col-sm-5'i><'col-sm-7'p>>",renderer:"bootstrap"});b.extend(c.ext.classes,{sWrapper:"dataTables_wrapper form-inline dt-bootstrap",sFilterInput:"form-control input-sm",sLengthSelect:"form-control input-sm"});c.ext.renderer.pageButton.bootstrap=function(g,e,r,s,i,m){var t=new c.Api(g),u=g.oClasses,j=g.oLanguage.oPaginate,d,f,n=0,p=function(c,e){var k,h,o,a,l=function(a){a.preventDefault();
6 | b(a.currentTarget).hasClass("disabled")||t.page(a.data.action).draw(!1)};k=0;for(h=e.length;k",{"class":u.sPageButton+" "+
7 | f,id:0===r&&"string"===typeof a?g.sTableId+"_"+a:null}).append(b("",{href:"#","aria-controls":g.sTableId,"data-dt-idx":n,tabindex:g.iTabIndex}).html(d)).appendTo(c),g.oApi._fnBindAction(o,{action:a},l),n++)}},h;try{h=b(q.activeElement).data("dt-idx")}catch(l){}p(b(e).empty().html('').children("ul"),s);h&&b(e).find("[data-dt-idx="+h+"]").focus()};c.TableTools&&(b.extend(!0,c.TableTools.classes,{container:"DTTT btn-group",buttons:{normal:"btn btn-default",disabled:"disabled"},
8 | collection:{container:"DTTT_dropdown dropdown-menu",buttons:{normal:"",disabled:"disabled"}},print:{info:"DTTT_print_info"},select:{row:"active"}}),b.extend(!0,c.TableTools.DEFAULTS.oTags,{collection:{container:"ul",button:"li",liner:"a"}}))};"function"===typeof define&&define.amd?define(["jquery","datatables"],e):"object"===typeof exports?e(require("jquery"),require("datatables")):jQuery&&e(jQuery,jQuery.fn.dataTable)})(window,document);
9 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/AutoFill/Readme.txt:
--------------------------------------------------------------------------------
1 | # AutoFill
2 |
3 | AutoFill gives an Excel like option to a DataTable to click and drag over multiple cells, filling in information over the selected cells and incrementing numbers as needed. Key features include:
4 |
5 | * Click and drag cell content insertion
6 | * Automatic incrementing of numeric information
7 | * Enable and disable on any column
8 | * Detailed callback functions for customisation
9 | * Support for both DataTables and browser window scrolling
10 |
11 |
12 | # Installation
13 |
14 | To use AutoFill, first download DataTables ( http://datatables.net/download ) and place the unzipped AutoFill package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
15 |
16 |
17 | # Basic usage
18 |
19 | AutoFill is initialised using the `$.fn.dataTable.AutoFill` constructor. For example:
20 |
21 | ```js
22 | $(document).ready( function () {
23 | var table = $('#example').dataTable();
24 | new $.fn.dataTable.AutoFill( table );
25 | } );
26 | ```
27 |
28 |
29 | # Documentation / support
30 |
31 | * Documentation: http://datatables.net/extensions/autofill/
32 | * DataTables support forums: http://datatables.net/forums
33 |
34 |
35 | # GitHub
36 |
37 | If you fancy getting involved with the development of AutoFill and help make it better, please refer to its GitHub repo: https://github.com/DataTables/AutoFill
38 |
39 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/AutoFill/css/dataTables.autoFill.css:
--------------------------------------------------------------------------------
1 | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
2 | * AutoFill styles
3 | */
4 |
5 | div.AutoFill_filler {
6 | display: none;
7 | position: absolute;
8 | height: 14px;
9 | width: 14px;
10 | background: url(../images/filler.png) no-repeat center center;
11 | z-index: 1002;
12 | }
13 |
14 | div.AutoFill_border {
15 | display: none;
16 | position: absolute;
17 | background-color: #0063dc;
18 | z-index: 1001;
19 |
20 | box-shadow: 0px 0px 5px #76b4ff;
21 | -moz-box-shadow: 0px 0px 5px #76b4ff;
22 | -webkit-box-shadow: 0px 0px 5px #76b4ff;
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/AutoFill/css/dataTables.autoFill.min.css:
--------------------------------------------------------------------------------
1 | div.AutoFill_filler{display:none;position:absolute;height:14px;width:14px;background:url(../images/filler.png) no-repeat center center;z-index:1002}div.AutoFill_border{display:none;position:absolute;background-color:#0063dc;z-index:1001;box-shadow:0px 0px 5px #76b4ff;-moz-box-shadow:0px 0px 5px #76b4ff;-webkit-box-shadow:0px 0px 5px #76b4ff}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/AutoFill/images/filler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/AutoFill/images/filler.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColReorder/License.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2010-2015 SpryMedia Limited
2 | http://datatables.net
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in
12 | all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColReorder/Readme.md:
--------------------------------------------------------------------------------
1 | # ColReorder
2 |
3 | ColReorder adds the ability for the end user to click and drag column headers to reorder a table as they see fit, to DataTables. Key features include:
4 |
5 | * Very easy integration with DataTables
6 | * Tight integration with all other DataTables plug-ins
7 | * The ability to exclude the first (or more) column from being movable
8 | * Predefine a column order
9 | * Save staving integration with DataTables
10 |
11 |
12 | # Installation
13 |
14 | To use ColReorder, first download DataTables ( http://datatables.net/download ) and place the unzipped ColReorder package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
15 |
16 |
17 | # Basic usage
18 |
19 | ColReorder is initialised using the `$.fn.dataTable.ColReorder` constructor. For example:
20 |
21 | ```js
22 | $(document).ready( function () {
23 | $('#example').DataTable();
24 |
25 | new $.fn.dataTable.ColReorder( table );
26 | } );
27 | ```
28 |
29 |
30 | # Documentation / support
31 |
32 | * Documentation: http://datatables.net/extensions/colreorder/
33 | * DataTables support forums: http://datatables.net/forums
34 |
35 |
36 | # GitHub
37 |
38 | If you fancy getting involved with the development of ColReorder and help make it better, please refer to its GitHub repo: https://github.com/DataTables/ColReorder
39 |
40 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColReorder/css/dataTables.colReorder.css:
--------------------------------------------------------------------------------
1 | /*
2 | * Namespace DTCR - "DataTables ColReorder" plug-in
3 | */
4 |
5 | table.DTCR_clonedTable {
6 | background-color: rgba(255, 255, 255, 0.7);
7 | z-index: 202;
8 | }
9 |
10 | div.DTCR_pointer {
11 | width: 1px;
12 | background-color: #0259C4;
13 | z-index: 201;
14 | }
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColReorder/css/dataTables.colReorder.min.css:
--------------------------------------------------------------------------------
1 | table.DTCR_clonedTable{background-color:rgba(255,255,255,0.7);z-index:202}div.DTCR_pointer{width:1px;background-color:#0259C4;z-index:201}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColReorder/images/insert.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/ColReorder/images/insert.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColVis/License.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2010-2015 SpryMedia Limited
2 | http://datatables.net
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in
12 | all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColVis/Readme.md:
--------------------------------------------------------------------------------
1 | # ColVis
2 |
3 | ColVis adds a button to the toolbars around DataTables which gives the end user of the table the ability to dynamically change the visibility of the columns in the table:
4 |
5 | * Dynamically show and hide columns in a table
6 | * Very easy integration with DataTables
7 | * Ability to exclude columns from being either hidden or shown
8 | * Save saving integration with DataTables
9 |
10 |
11 | # Installation
12 |
13 | To use ColVis, first download DataTables ( http://datatables.net/download ) and place the unzipped ColVis package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
14 |
15 |
16 | # Basic usage
17 |
18 | ColVis is initialised using the `C` option that it adds to DataTables' `dom` option. For example:
19 |
20 | ```js
21 | $(document).ready( function () {
22 | $('#example').dataTable( {
23 | "dom": 'C<"clear">lfrtip'
24 | } );
25 | } );
26 | ```
27 |
28 |
29 | # Documentation / support
30 |
31 | * Documentation: http://datatables.net/extensions/colvis/
32 | * DataTables support forums: http://datatables.net/forums
33 |
34 |
35 | # GitHub
36 |
37 | If you fancy getting involved with the development of ColVis and help make it better, please refer to its GitHub repo: https://github.com/DataTables/ColVis
38 |
39 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/ColVis/css/dataTables.colvis.jqueryui.css:
--------------------------------------------------------------------------------
1 |
2 | button.ColVis_Button,
3 | ul.ColVis_collection li {
4 | padding: 0.5em;
5 | }
6 |
7 | ul.ColVis_collection {
8 | margin: 0;
9 | padding: 0;
10 | overflow: hidden;
11 | z-index: 2002;
12 | }
13 |
14 | ul.ColVis_collection li {
15 | clear: both;
16 | display: block;
17 | text-align: left;
18 | margin: -1px 0 0 0;
19 | }
20 |
21 | ul.ColVis_collection li span {
22 | display: inline-block;
23 | padding-left: 0.5em;
24 | cursor: pointer;
25 | }
26 |
27 | div.ColVis_collectionBackground {
28 | position: fixed;
29 | top: 0;
30 | left: 0;
31 | height: 100%;
32 | width: 100%;
33 | background-color: black;
34 | z-index: 1100;
35 | }
36 |
37 |
38 | div.ColVis_catcher {
39 | position: absolute;
40 | z-index: 1101;
41 | }
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedColumns/License.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2010-2015 SpryMedia Limited
2 | http://datatables.net
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in
12 | all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedColumns/Readme.md:
--------------------------------------------------------------------------------
1 | # FixedColumns
2 |
3 | When making use of DataTables' x-axis scrolling feature (`scrollX`), you may wish to fix the left or right most columns in place. This plug-in for DataTables provides exactly this option (for non-scrolling tables, please use the FixedHeader plug-in, which can fix headers, footers and columns). Key features include:
4 |
5 | * Freezes the left most column to the side of the table
6 | * Option to freeze two or more columns
7 | * Full integration with DataTables' scrolling options
8 |
9 |
10 | # Installation
11 |
12 | To use FixedColumns, first download DataTables ( http://datatables.net/download ) and place the unzipped FixedColumns package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
13 |
14 |
15 | # Basic usage
16 |
17 | FixedColumns is initialised using the `$.fn.dataTable.FixedColumns()` constructor. For example:
18 |
19 | ```js
20 | $(document).ready(function() {
21 | var table = $('#example').DataTable( {
22 | scrollY: "300px",
23 | scrollX: true,
24 | scrollCollapse: true,
25 | paging: false
26 | } );
27 |
28 | new $.fn.dataTable.FixedColumns( table );
29 | } );
30 | ```
31 |
32 |
33 | # Documentation / support
34 |
35 | * Documentation: http://datatables.net/extensions/FixedColumns/
36 | * DataTables support forums: http://datatables.net/forums
37 |
38 |
39 | # GitHub
40 |
41 | If you fancy getting involved with the development of FixedColumns and help make it better, please refer to its GitHub repo: https://github.com/DataTables/FixedColumns
42 |
43 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedColumns/css/dataTables.fixedColumns.css:
--------------------------------------------------------------------------------
1 |
2 |
3 | /* Block out what is behind the fixed column's header and footer */
4 | table.DTFC_Cloned thead,
5 | table.DTFC_Cloned tfoot {
6 | background-color: white;
7 | }
8 |
9 | /* Block out the gap above the scrollbar on the right, when there is a fixed
10 | * right column
11 | */
12 | div.DTFC_Blocker {
13 | background-color: white;
14 | }
15 |
16 | div.DTFC_LeftWrapper table.dataTable,
17 | div.DTFC_RightWrapper table.dataTable {
18 | margin-bottom: 0;
19 | z-index: 2;
20 | }
21 |
22 | div.DTFC_LeftWrapper table.dataTable.no-footer,
23 | div.DTFC_RightWrapper table.dataTable.no-footer {
24 | border-bottom: none;
25 | }
26 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedColumns/css/dataTables.fixedColumns.min.css:
--------------------------------------------------------------------------------
1 | table.DTFC_Cloned thead,table.DTFC_Cloned tfoot{background-color:white}div.DTFC_Blocker{background-color:white}div.DTFC_LeftWrapper table.dataTable,div.DTFC_RightWrapper table.dataTable{margin-bottom:0;z-index:2}div.DTFC_LeftWrapper table.dataTable.no-footer,div.DTFC_RightWrapper table.dataTable.no-footer{border-bottom:none}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedHeader/Readme.txt:
--------------------------------------------------------------------------------
1 | # FixedHeader
2 |
3 | At times it can be useful to ensure that column titles will remain always visible on a table, even when a user scrolls down a table. The FixedHeader plug-in for DataTables will float the 'thead' element above the table at all times to help address this issue. The column titles also remain click-able to perform sorting. Key features include:
4 |
5 | * Fix the header to the top of the window
6 | * Ability to fix the footer and left / right columns as well
7 | * z-Index ordering options
8 |
9 |
10 | # Installation
11 |
12 | To use FixedHeader, first download DataTables ( http://datatables.net/download ) and place the unzipped FixedHeader package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
13 |
14 |
15 | # Basic usage
16 |
17 | FixedHeader is initialised using the `$.fn.dataTable.FixedHeader()` object. For example:
18 |
19 | ```js
20 | $(document).ready( function () {
21 | var table = $('#example').dataTable();
22 | new $.fn.dataTable.FixedHeader( table );
23 | } );
24 | ```
25 |
26 |
27 | # Documentation / support
28 |
29 | * Documentation: http://datatables.net/extensions/FixedHeader/
30 | * DataTables support forums: http://datatables.net/forums
31 |
32 |
33 | # GitHub
34 |
35 | If you fancy getting involved with the development of FixedHeader and help make it better, please refer to its GitHub repo: https://github.com/DataTables/FixedHeader
36 |
37 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedHeader/css/dataTables.fixedHeader.css:
--------------------------------------------------------------------------------
1 |
2 |
3 | div.FixedHeader_Cloned th,
4 | div.FixedHeader_Cloned td {
5 | background-color: white !important;
6 | }
7 |
8 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/FixedHeader/css/dataTables.fixedHeader.min.css:
--------------------------------------------------------------------------------
1 | div.FixedHeader_Cloned th,div.FixedHeader_Cloned td{background-color:white !important}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/KeyTable/Readme.txt:
--------------------------------------------------------------------------------
1 | # KeyTable
2 |
3 | KeyTable provides enhanced accessibility and navigation options for DataTables enhanced tables, by allowing Excel like cell navigation on any table. Events (focus, blur, action etc) can be assigned to individual cells, columns, rows or all cells to allow advanced interaction options.. Key features include:
4 |
5 | * Easy to use spreadsheet like interaction
6 | * Fully integrated with DataTables
7 | * Wide range of supported events
8 |
9 |
10 | # Installation
11 |
12 | To use KeyTable, first download DataTables ( http://datatables.net/download ) and place the unzipped KeyTable package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
13 |
14 |
15 | # Basic usage
16 |
17 | KeyTable is initialised using the `C` option that it adds to DataTables' `dom` option. For example:
18 |
19 | ```js
20 | $(document).ready( function () {
21 | var table = $('#example').DataTable();
22 | new $.fn.dataTable.KeyTable( table );
23 | } );
24 | ```
25 |
26 |
27 | # Documentation / support
28 |
29 | * Documentation: http://datatables.net/extensions/keytable/
30 | * DataTables support forums: http://datatables.net/forums
31 |
32 |
33 | # GitHub
34 |
35 | If you fancy getting involved with the development of KeyTable and help make it better, please refer to its GitHub repo: https://github.com/DataTables/KeyTable
36 |
37 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/KeyTable/css/dataTables.keyTable.css:
--------------------------------------------------------------------------------
1 |
2 |
3 | table.KeyTable th.focus,
4 | table.KeyTable td.focus {
5 | outline: 3px solid #3366FF;
6 | outline-offset: -3px;
7 | }
8 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/KeyTable/css/dataTables.keyTable.min.css:
--------------------------------------------------------------------------------
1 | table.KeyTable th.focus,table.KeyTable td.focus{outline:3px solid #3366FF;outline-offset:-3px}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Responsive/License.txt:
--------------------------------------------------------------------------------
1 | Copyright (c) 2014-2015 SpryMedia Limited
2 | http://datatables.net
3 |
4 | Permission is hereby granted, free of charge, to any person obtaining a copy
5 | of this software and associated documentation files (the "Software"), to deal
6 | in the Software without restriction, including without limitation the rights
7 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
8 | copies of the Software, and to permit persons to whom the Software is
9 | furnished to do so, subject to the following conditions:
10 |
11 | The above copyright notice and this permission notice shall be included in
12 | all copies or substantial portions of the Software.
13 |
14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
17 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
19 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
20 | THE SOFTWARE.
21 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Responsive/Readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/Responsive/Readme.md
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Scroller/Readme.txt:
--------------------------------------------------------------------------------
1 | # Scroller
2 |
3 | Scroller is a virtual rendering plug-in for DataTables which allows large datasets to be drawn on screen every quickly. What the virtual rendering means is that only the visible portion of the table (and a bit to either side to make the scrolling smooth) is drawn, while the scrolling container gives the visual impression that the whole table is visible. This is done by making use of the pagination abilities of DataTables and moving the table around in the scrolling container DataTables adds to the page. The scrolling container is forced to the height it would be for the full table display using an extra element.
4 |
5 | Key features include:
6 |
7 | * Speed! The aim of Scroller for DataTables is to make rendering large data sets fast
8 | * Full compatibility with DataTables' deferred rendering for maximum speed
9 | * Integration with state saving in DataTables (scrolling position is saved)
10 | * Support for scrolling with millions of rows
11 | * Easy to use
12 |
13 |
14 | # Installation
15 |
16 | To use Scroller, first download DataTables ( http://datatables.net/download ) and place the unzipped Scroller package into a `extensions` directory in the DataTables package. This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
17 |
18 |
19 | # Basic usage
20 |
21 | Scroller is initialised by simply including the letter `dt-string S` in the `dt-init dom` for the table you want to have this feature enabled on. Note that the `dt-string S` must come after the `dt-string t` parameter in `dom`. For example:
22 |
23 | ```js
24 | $(document).ready( function () {
25 | $('#example').DataTable( {
26 | dom: 'lfrtipS'
27 | } );
28 | } );
29 | ```
30 |
31 | Note that rows in the table must all be the same height. Information in a cell which expands on to multiple lines will cause some odd behaviour in the scrolling. Additionally, the table's `cellspacing` parameter must be set to 0, again to ensure the information display is correct.
32 |
33 |
34 | # Documentation / support
35 |
36 | * Documentation: http://datatables.net/extensions/scroller/
37 | * DataTables support forums: http://datatables.net/forums
38 |
39 |
40 | # GitHub
41 |
42 | If you fancy getting involved with the development of Scroller and help make it better, please refer to its GitHub repo: https://github.com/DataTables/Scroller
43 |
44 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Scroller/css/dataTables.scroller.css:
--------------------------------------------------------------------------------
1 |
2 | /*
3 | * Namespace: DTS (DataTables Scroller)
4 | */
5 |
6 | div.DTS tbody th,
7 | div.DTS tbody td {
8 | white-space: nowrap;
9 | }
10 |
11 | div.DTS tbody tr.even {
12 | background-color: white;
13 | }
14 |
15 | div.DTS div.DTS_Loading {
16 | position: absolute;
17 | top: 50%;
18 | left: 50%;
19 | width: 200px;
20 | height: 20px;
21 | margin-top: -20px;
22 | margin-left: -100px;
23 | z-index: 1;
24 |
25 | border: 1px solid #999;
26 | padding: 20px 0;
27 | text-align: center;
28 | background-color: white;
29 | background-color: rgba(255, 255, 255, 0.5);
30 | }
31 |
32 | div.DTS div.dataTables_scrollHead,
33 | div.DTS div.dataTables_scrollFoot {
34 | background-color: white;
35 | }
36 |
37 | div.DTS div.dataTables_scrollBody {
38 | z-index: 2;
39 | }
40 |
41 | div.DTS div.dataTables_scroll {
42 | background: url('../images/loading-background.png') repeat 0 0;
43 | }
44 |
45 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Scroller/css/dataTables.scroller.min.css:
--------------------------------------------------------------------------------
1 | div.DTS tbody th,div.DTS tbody td{white-space:nowrap}div.DTS tbody tr.even{background-color:white}div.DTS div.DTS_Loading{position:absolute;top:50%;left:50%;width:200px;height:20px;margin-top:-20px;margin-left:-100px;z-index:1;border:1px solid #999;padding:20px 0;text-align:center;background-color:white;background-color:rgba(255,255,255,0.5)}div.DTS div.dataTables_scrollHead,div.DTS div.dataTables_scrollFoot{background-color:white}div.DTS div.dataTables_scrollBody{z-index:2}div.DTS div.dataTables_scroll{background:url("../images/loading-background.png") repeat 0 0}
2 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Scroller/examples/data/ssp.php:
--------------------------------------------------------------------------------
1 | 'id', 'dt' => 0 ),
33 | array( 'db' => 'firstname', 'dt' => 1 ),
34 | array( 'db' => 'surname', 'dt' => 2 ),
35 | array( 'db' => 'zip', 'dt' => 3 ),
36 | array( 'db' => 'country', 'dt' => 4 )
37 | );
38 |
39 | // SQL server connection information
40 | $sql_details = array(
41 | 'user' => '',
42 | 'pass' => '',
43 | 'db' => '',
44 | 'host' => ''
45 | );
46 |
47 |
48 | /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
49 | * If you just want to use the basic configuration for DataTables with PHP
50 | * server-side, there is no need to edit below this line.
51 | */
52 |
53 | require( '../../../../examples/server_side/scripts/ssp.class.php' );
54 |
55 | echo json_encode(
56 | SSP::simple( $_GET, $sql_details, $table, $primaryKey, $columns )
57 | );
58 |
59 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/Scroller/images/loading-background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/Scroller/images/loading-background.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/Readme.md:
--------------------------------------------------------------------------------
1 | # TableTools
2 |
3 | TableTools is a plug-in for the DataTables HTML table enhancer, which adds a highly customisable button toolbar to a DataTable. Key features include:
4 |
5 | * Copy to clipboard
6 | * Save table data as CSV, XLS or PDF files
7 | * Print view for clean printing
8 | * Row selection options
9 | * Easy use predefined buttons
10 | * Simple customisation of buttons
11 | * Well defined API for advanced control
12 |
13 |
14 | # Installation
15 |
16 | To use TableTools, first download DataTables ( http://datatables.net/download ) and place the unzipped TableTools package into a `extensions` directory in the DataTables package (in DataTables 1.9- use the `extras` directory). This will allow the pages in the examples to operate correctly. To see the examples running, open the `examples` directory in your web-browser.
17 |
18 |
19 | # Basic usage
20 |
21 | TableTools is initialised using the `T` option that it adds to DataTables' `dom` option. For example:
22 |
23 | ```js
24 | $(document).ready( function () {
25 | $('#example').DataTable( {
26 | dom: 'T<"clear">lfrtip'
27 | } );
28 | } );
29 | ```
30 |
31 |
32 | # Documentation / support
33 |
34 | * Documentation: http://datatables.net/extensions/tabletools/
35 | * DataTables support forums: http://datatables.net/forums
36 |
37 |
38 | # GitHub
39 |
40 | If you fancy getting involved with the development of TableTools and help make it better, please refer to its GitHub repo: https://github.com/DataTables/TableTools
41 |
42 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/collection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/collection.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/collection_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/collection_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/copy.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/copy_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/copy_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/csv.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/csv.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/csv_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/csv_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/pdf.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/pdf.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/pdf_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/pdf_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/print.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/print.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/print_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/print_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/collection.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/collection.psd
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/copy document.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/copy document.psd
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/file_types.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/file_types.psd
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/printer.psd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/psd/printer.psd
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/xls.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/xls.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/images/xls_hover.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/images/xls_hover.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/swf/copy_csv_xls.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/swf/copy_csv_xls.swf
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/extensions/TableTools/swf/copy_csv_xls_pdf.swf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/extensions/TableTools/swf/copy_csv_xls_pdf.swf
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/images/sort_asc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/images/sort_asc.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/images/sort_asc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/images/sort_asc_disabled.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/images/sort_both.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/images/sort_both.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/images/sort_desc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/images/sort_desc.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datatables/images/sort_desc_disabled.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/copilot/static/js/plugins/datatables/images/sort_desc_disabled.png
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ar.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Arabic translation for bootstrap-datepicker
3 | * Mohammed Alshehri
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ar'] = {
7 | days: ["الأحد", "الاثنين", "الثلاثاء", "الأربعاء", "الخميس", "الجمعة", "السبت", "الأحد"],
8 | daysShort: ["أحد", "اثنين", "ثلاثاء", "أربعاء", "خميس", "جمعة", "سبت", "أحد"],
9 | daysMin: ["ح", "ن", "ث", "ع", "خ", "ج", "س", "ح"],
10 | months: ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"],
11 | monthsShort: ["يناير", "فبراير", "مارس", "أبريل", "مايو", "يونيو", "يوليو", "أغسطس", "سبتمبر", "أكتوبر", "نوفمبر", "ديسمبر"],
12 | today: "هذا اليوم",
13 | rtl: true
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.az.js:
--------------------------------------------------------------------------------
1 | // Azerbaijani
2 | ;(function($){
3 | $.fn.datepicker.dates['az'] = {
4 | days: ["Bazar", "Bazar ertəsi", "Çərşənbə axşamı", "Çərşənbə", "Cümə axşamı", "Cümə", "Şənbə", "Bazar"],
5 | daysShort: ["B.", "B.e", "Ç.a", "Ç.", "C.a", "C.", "Ş.", "B."],
6 | daysMin: ["B.", "B.e", "Ç.a", "Ç.", "C.a", "C.", "Ş.", "B."],
7 | months: ["Yanvar", "Fevral", "Mart", "Aprel", "May", "İyun", "İyul", "Avqust", "Sentyabr", "Oktyabr", "Noyabr", "Dekabr"],
8 | monthsShort: ["Yan", "Fev", "Mar", "Apr", "May", "İyun", "İyul", "Avq", "Sen", "Okt", "Noy", "Dek"],
9 | today: "Bu gün",
10 | weekStart: 1
11 | };
12 | }(jQuery));
13 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.bg.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Bulgarian translation for bootstrap-datepicker
3 | * Apostol Apostolov
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['bg'] = {
7 | days: ["Неделя", "Понеделник", "Вторник", "Сряда", "Четвъртък", "Петък", "Събота", "Неделя"],
8 | daysShort: ["Нед", "Пон", "Вто", "Сря", "Чет", "Пет", "Съб", "Нед"],
9 | daysMin: ["Н", "П", "В", "С", "Ч", "П", "С", "Н"],
10 | months: ["Януари", "Февруари", "Март", "Април", "Май", "Юни", "Юли", "Август", "Септември", "Октомври", "Ноември", "Декември"],
11 | monthsShort: ["Ян", "Фев", "Мар", "Апр", "Май", "Юни", "Юли", "Авг", "Сеп", "Окт", "Ное", "Дек"],
12 | today: "днес"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ca.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Catalan translation for bootstrap-datepicker
3 | * J. Garcia
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ca'] = {
7 | days: ["Diumenge", "Dilluns", "Dimarts", "Dimecres", "Dijous", "Divendres", "Dissabte", "Diumenge"],
8 | daysShort: ["Diu", "Dil", "Dmt", "Dmc", "Dij", "Div", "Dis", "Diu"],
9 | daysMin: ["dg", "dl", "dt", "dc", "dj", "dv", "ds", "dg"],
10 | months: ["Gener", "Febrer", "Març", "Abril", "Maig", "Juny", "Juliol", "Agost", "Setembre", "Octubre", "Novembre", "Desembre"],
11 | monthsShort: ["Gen", "Feb", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Oct", "Nov", "Des"],
12 | today: "Avui"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.cs.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Czech translation for bootstrap-datepicker
3 | * Matěj Koubík
4 | * Fixes by Michal Remiš
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates['cs'] = {
8 | days: ["Neděle", "Pondělí", "Úterý", "Středa", "Čtvrtek", "Pátek", "Sobota", "Neděle"],
9 | daysShort: ["Ned", "Pon", "Úte", "Stř", "Čtv", "Pát", "Sob", "Ned"],
10 | daysMin: ["Ne", "Po", "Út", "St", "Čt", "Pá", "So", "Ne"],
11 | months: ["Leden", "Únor", "Březen", "Duben", "Květen", "Červen", "Červenec", "Srpen", "Září", "Říjen", "Listopad", "Prosinec"],
12 | monthsShort: ["Led", "Úno", "Bře", "Dub", "Kvě", "Čer", "Čnc", "Srp", "Zář", "Říj", "Lis", "Pro"],
13 | today: "Dnes"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.cy.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Welsh translation for bootstrap-datepicker
3 | * S. Morris
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['cy'] = {
7 | days: ["Sul", "Llun", "Mawrth", "Mercher", "Iau", "Gwener", "Sadwrn", "Sul"],
8 | daysShort: ["Sul", "Llu", "Maw", "Mer", "Iau", "Gwe", "Sad", "Sul"],
9 | daysMin: ["Su", "Ll", "Ma", "Me", "Ia", "Gwe", "Sa", "Su"],
10 | months: ["Ionawr", "Chewfror", "Mawrth", "Ebrill", "Mai", "Mehefin", "Gorfennaf", "Awst", "Medi", "Hydref", "Tachwedd", "Rhagfyr"],
11 | monthsShort: ["Ion", "Chw", "Maw", "Ebr", "Mai", "Meh", "Gor", "Aws", "Med", "Hyd", "Tach", "Rha"],
12 | today: "Heddiw"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.da.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Danish translation for bootstrap-datepicker
3 | * Christian Pedersen
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['da'] = {
7 | days: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag", "Søndag"],
8 | daysShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør", "Søn"],
9 | daysMin: ["Sø", "Ma", "Ti", "On", "To", "Fr", "Lø", "Sø"],
10 | months: ["Januar", "Februar", "Marts", "April", "Maj", "Juni", "Juli", "August", "September", "Oktober", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
12 | today: "I Dag",
13 | clear: "Nulstil"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.de.js:
--------------------------------------------------------------------------------
1 | /**
2 | * German translation for bootstrap-datepicker
3 | * Sam Zurcher
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['de'] = {
7 | days: ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag", "Sonntag"],
8 | daysShort: ["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam", "Son"],
9 | daysMin: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa", "So"],
10 | months: ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"],
11 | monthsShort: ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"],
12 | today: "Heute",
13 | clear: "Löschen",
14 | weekStart: 1,
15 | format: "dd.mm.yyyy"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.el.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Greek translation for bootstrap-datepicker
3 | */
4 | ;(function($){
5 | $.fn.datepicker.dates['el'] = {
6 | days: ["Κυριακή", "Δευτέρα", "Τρίτη", "Τετάρτη", "Πέμπτη", "Παρασκευή", "Σάββατο", "Κυριακή"],
7 | daysShort: ["Κυρ", "Δευ", "Τρι", "Τετ", "Πεμ", "Παρ", "Σαβ", "Κυρ"],
8 | daysMin: ["Κυ", "Δε", "Τρ", "Τε", "Πε", "Πα", "Σα", "Κυ"],
9 | months: ["Ιανουάριος", "Φεβρουάριος", "Μάρτιος", "Απρίλιος", "Μάιος", "Ιούνιος", "Ιούλιος", "Αύγουστος", "Σεπτέμβριος", "Οκτώβριος", "Νοέμβριος", "Δεκέμβριος"],
10 | monthsShort: ["Ιαν", "Φεβ", "Μαρ", "Απρ", "Μάι", "Ιουν", "Ιουλ", "Αυγ", "Σεπ", "Οκτ", "Νοε", "Δεκ"],
11 | today: "Σήμερα"
12 | };
13 | }(jQuery));
14 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.es.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Spanish translation for bootstrap-datepicker
3 | * Bruno Bonamin
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['es'] = {
7 | days: ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado", "Domingo"],
8 | daysShort: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb", "Dom"],
9 | daysMin: ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa", "Do"],
10 | months: ["Enero", "Febrero", "Marzo", "Abril", "Mayo", "Junio", "Julio", "Agosto", "Septiembre", "Octubre", "Noviembre", "Diciembre"],
11 | monthsShort: ["Ene", "Feb", "Mar", "Abr", "May", "Jun", "Jul", "Ago", "Sep", "Oct", "Nov", "Dic"],
12 | today: "Hoy"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.et.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Estonian translation for bootstrap-datepicker
3 | * Ando Roots
4 | * Fixes by Illimar Tambek <
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates['et'] = {
8 | days: ["Pühapäev", "Esmaspäev", "Teisipäev", "Kolmapäev", "Neljapäev", "Reede", "Laupäev", "Pühapäev"],
9 | daysShort: ["Pühap", "Esmasp", "Teisip", "Kolmap", "Neljap", "Reede", "Laup", "Pühap"],
10 | daysMin: ["P", "E", "T", "K", "N", "R", "L", "P"],
11 | months: ["Jaanuar", "Veebruar", "Märts", "Aprill", "Mai", "Juuni", "Juuli", "August", "September", "Oktoober", "November", "Detsember"],
12 | monthsShort: ["Jaan", "Veebr", "Märts", "Apr", "Mai", "Juuni", "Juuli", "Aug", "Sept", "Okt", "Nov", "Dets"],
13 | today: "Täna",
14 | clear: "Tühjenda",
15 | weekStart: 1,
16 | format: "dd.mm.yyyy"
17 | };
18 | }(jQuery));
19 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.fa.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Persian translation for bootstrap-datepicker
3 | * Mostafa Rokooie
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['fa'] = {
7 | days: ["یکشنبه", "دوشنبه", "سهشنبه", "چهارشنبه", "پنجشنبه", "جمعه", "شنبه", "یکشنبه"],
8 | daysShort: ["یک", "دو", "سه", "چهار", "پنج", "جمعه", "شنبه", "یک"],
9 | daysMin: ["ی", "د", "س", "چ", "پ", "ج", "ش", "ی"],
10 | months: ["ژانویه", "فوریه", "مارس", "آوریل", "مه", "ژوئن", "ژوئیه", "اوت", "سپتامبر", "اکتبر", "نوامبر", "دسامبر"],
11 | monthsShort: ["ژان", "فور", "مار", "آور", "مه", "ژون", "ژوی", "اوت", "سپت", "اکت", "نوا", "دسا"],
12 | today: "امروز",
13 | clear: "پاک کن",
14 | weekStart: 1,
15 | format: "yyyy/mm/dd"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.fi.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Finnish translation for bootstrap-datepicker
3 | * Jaakko Salonen
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['fi'] = {
7 | days: ["sunnuntai", "maanantai", "tiistai", "keskiviikko", "torstai", "perjantai", "lauantai", "sunnuntai"],
8 | daysShort: ["sun", "maa", "tii", "kes", "tor", "per", "lau", "sun"],
9 | daysMin: ["su", "ma", "ti", "ke", "to", "pe", "la", "su"],
10 | months: ["tammikuu", "helmikuu", "maaliskuu", "huhtikuu", "toukokuu", "kesäkuu", "heinäkuu", "elokuu", "syyskuu", "lokakuu", "marraskuu", "joulukuu"],
11 | monthsShort: ["tam", "hel", "maa", "huh", "tou", "kes", "hei", "elo", "syy", "lok", "mar", "jou"],
12 | today: "tänään",
13 | weekStart: 1,
14 | format: "d.m.yyyy"
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.fr.js:
--------------------------------------------------------------------------------
1 | /**
2 | * French translation for bootstrap-datepicker
3 | * Nico Mollet
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['fr'] = {
7 | days: ["Dimanche", "Lundi", "Mardi", "Mercredi", "Jeudi", "Vendredi", "Samedi", "Dimanche"],
8 | daysShort: ["Dim", "Lun", "Mar", "Mer", "Jeu", "Ven", "Sam", "Dim"],
9 | daysMin: ["D", "L", "Ma", "Me", "J", "V", "S", "D"],
10 | months: ["Janvier", "Février", "Mars", "Avril", "Mai", "Juin", "Juillet", "Août", "Septembre", "Octobre", "Novembre", "Décembre"],
11 | monthsShort: ["Jan", "Fév", "Mar", "Avr", "Mai", "Jui", "Jul", "Aou", "Sep", "Oct", "Nov", "Déc"],
12 | today: "Aujourd'hui",
13 | clear: "Effacer",
14 | weekStart: 1,
15 | format: "dd/mm/yyyy"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.gl.js:
--------------------------------------------------------------------------------
1 | ;(function($){
2 | $.fn.datepicker.dates['gl'] = {
3 | days: ["Domingo", "Luns", "Martes", "Mércores", "Xoves", "Venres", "Sábado", "Domingo"],
4 | daysShort: ["Dom", "Lun", "Mar", "Mér", "Xov", "Ven", "Sáb", "Dom"],
5 | daysMin: ["Do", "Lu", "Ma", "Me", "Xo", "Ve", "Sa", "Do"],
6 | months: ["Xaneiro", "Febreiro", "Marzo", "Abril", "Maio", "Xuño", "Xullo", "Agosto", "Setembro", "Outubro", "Novembro", "Decembro"],
7 | monthsShort: ["Xan", "Feb", "Mar", "Abr", "Mai", "Xun", "Xul", "Ago", "Sep", "Out", "Nov", "Dec"],
8 | today: "Hoxe",
9 | clear: "Limpar"
10 | };
11 | }(jQuery));
12 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.he.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Hebrew translation for bootstrap-datepicker
3 | * Sagie Maoz
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['he'] = {
7 | days: ["ראשון", "שני", "שלישי", "רביעי", "חמישי", "שישי", "שבת", "ראשון"],
8 | daysShort: ["א", "ב", "ג", "ד", "ה", "ו", "ש", "א"],
9 | daysMin: ["א", "ב", "ג", "ד", "ה", "ו", "ש", "א"],
10 | months: ["ינואר", "פברואר", "מרץ", "אפריל", "מאי", "יוני", "יולי", "אוגוסט", "ספטמבר", "אוקטובר", "נובמבר", "דצמבר"],
11 | monthsShort: ["ינו", "פבר", "מרץ", "אפר", "מאי", "יונ", "יול", "אוג", "ספט", "אוק", "נוב", "דצמ"],
12 | today: "היום",
13 | rtl: true
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.hr.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Croatian localisation
3 | */
4 | ;(function($){
5 | $.fn.datepicker.dates['hr'] = {
6 | days: ["Nedjelja", "Ponedjeljak", "Utorak", "Srijeda", "Četvrtak", "Petak", "Subota", "Nedjelja"],
7 | daysShort: ["Ned", "Pon", "Uto", "Sri", "Čet", "Pet", "Sub", "Ned"],
8 | daysMin: ["Ne", "Po", "Ut", "Sr", "Če", "Pe", "Su", "Ne"],
9 | months: ["Siječanj", "Veljača", "Ožujak", "Travanj", "Svibanj", "Lipanj", "Srpanj", "Kolovoz", "Rujan", "Listopad", "Studeni", "Prosinac"],
10 | monthsShort: ["Sij", "Velj", "Ožu", "Tra", "Svi", "Lip", "Srp", "Kol", "Ruj", "Lis", "Stu", "Pro"],
11 | today: "Danas"
12 | };
13 | }(jQuery));
14 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.hu.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Hungarian translation for bootstrap-datepicker
3 | * Sotus László
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['hu'] = {
7 | days: ["Vasárnap", "Hétfő", "Kedd", "Szerda", "Csütörtök", "Péntek", "Szombat", "Vasárnap"],
8 | daysShort: ["Vas", "Hét", "Ked", "Sze", "Csü", "Pén", "Szo", "Vas"],
9 | daysMin: ["Va", "Hé", "Ke", "Sz", "Cs", "Pé", "Sz", "Va"],
10 | months: ["Január", "Február", "Március", "Április", "Május", "Június", "Július", "Augusztus", "Szeptember", "Október", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Már", "Ápr", "Máj", "Jún", "Júl", "Aug", "Sze", "Okt", "Nov", "Dec"],
12 | today: "Ma",
13 | weekStart: 1,
14 | format: "yyyy.mm.dd"
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.id.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Bahasa translation for bootstrap-datepicker
3 | * Azwar Akbar
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['id'] = {
7 | days: ["Minggu", "Senin", "Selasa", "Rabu", "Kamis", "Jumat", "Sabtu", "Minggu"],
8 | daysShort: ["Mgu", "Sen", "Sel", "Rab", "Kam", "Jum", "Sab", "Mgu"],
9 | daysMin: ["Mg", "Sn", "Sl", "Ra", "Ka", "Ju", "Sa", "Mg"],
10 | months: ["Januari", "Februari", "Maret", "April", "Mei", "Juni", "Juli", "Agustus", "September", "Oktober", "November", "Desember"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ags", "Sep", "Okt", "Nov", "Des"],
12 | today: "Hari Ini",
13 | clear: "Kosongkan"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.is.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Icelandic translation for bootstrap-datepicker
3 | * Hinrik Örn Sigurðsson
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['is'] = {
7 | days: ["Sunnudagur", "Mánudagur", "Þriðjudagur", "Miðvikudagur", "Fimmtudagur", "Föstudagur", "Laugardagur", "Sunnudagur"],
8 | daysShort: ["Sun", "Mán", "Þri", "Mið", "Fim", "Fös", "Lau", "Sun"],
9 | daysMin: ["Su", "Má", "Þr", "Mi", "Fi", "Fö", "La", "Su"],
10 | months: ["Janúar", "Febrúar", "Mars", "Apríl", "Maí", "Júní", "Júlí", "Ágúst", "September", "Október", "Nóvember", "Desember"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maí", "Jún", "Júl", "Ágú", "Sep", "Okt", "Nóv", "Des"],
12 | today: "Í Dag"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.it.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Italian translation for bootstrap-datepicker
3 | * Enrico Rubboli
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['it'] = {
7 | days: ["Domenica", "Lunedì", "Martedì", "Mercoledì", "Giovedì", "Venerdì", "Sabato", "Domenica"],
8 | daysShort: ["Dom", "Lun", "Mar", "Mer", "Gio", "Ven", "Sab", "Dom"],
9 | daysMin: ["Do", "Lu", "Ma", "Me", "Gi", "Ve", "Sa", "Do"],
10 | months: ["Gennaio", "Febbraio", "Marzo", "Aprile", "Maggio", "Giugno", "Luglio", "Agosto", "Settembre", "Ottobre", "Novembre", "Dicembre"],
11 | monthsShort: ["Gen", "Feb", "Mar", "Apr", "Mag", "Giu", "Lug", "Ago", "Set", "Ott", "Nov", "Dic"],
12 | today: "Oggi",
13 | clear: "Cancella",
14 | weekStart: 1,
15 | format: "dd/mm/yyyy"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ja.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Japanese translation for bootstrap-datepicker
3 | * Norio Suzuki
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ja'] = {
7 | days: ["日曜", "月曜", "火曜", "水曜", "木曜", "金曜", "土曜", "日曜"],
8 | daysShort: ["日", "月", "火", "水", "木", "金", "土", "日"],
9 | daysMin: ["日", "月", "火", "水", "木", "金", "土", "日"],
10 | months: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
11 | monthsShort: ["1月", "2月", "3月", "4月", "5月", "6月", "7月", "8月", "9月", "10月", "11月", "12月"],
12 | today: "今日",
13 | format: "yyyy/mm/dd"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ka.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Georgian translation for bootstrap-datepicker
3 | * Levan Melikishvili
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ka'] = {
7 | days: ["კვირა", "ორშაბათი", "სამშაბათი", "ოთხშაბათი", "ხუთშაბათი", "პარასკევი", "შაბათი", "კვირა"],
8 | daysShort: ["კვი", "ორშ", "სამ", "ოთხ", "ხუთ", "პარ", "შაბ", "კვი"],
9 | daysMin: ["კვ", "ორ", "სა", "ოთ", "ხუ", "პა", "შა", "კვ"],
10 | months: ["იანვარი", "თებერვალი", "მარტი", "აპრილი", "მაისი", "ივნისი", "ივლისი", "აგვისტო", "სექტემბერი", "ოქტომები", "ნოემბერი", "დეკემბერი"],
11 | monthsShort: ["იან", "თებ", "მარ", "აპრ", "მაი", "ივნ", "ივლ", "აგვ", "სექ", "ოქტ", "ნოე", "დეკ"],
12 | today: "დღეს",
13 | clear: "გასუფთავება",
14 | weekStart: 1,
15 | format: "dd.mm.yyyy"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.kk.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Kazakh translation for bootstrap-datepicker
3 | * Yerzhan Tolekov
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['kk'] = {
7 | days: ["Жексенбі", "Дүйсенбі", "Сейсенбі", "Сәрсенбі", "Бейсенбі", "Жұма", "Сенбі", "Жексенбі"],
8 | daysShort: ["Жек", "Дүй", "Сей", "Сәр", "Бей", "Жұм", "Сен", "Жек"],
9 | daysMin: ["Жк", "Дс", "Сс", "Ср", "Бс", "Жм", "Сн", "Жк"],
10 | months: ["Қаңтар", "Ақпан", "Наурыз", "Сәуір", "Мамыр", "Маусым", "Шілде", "Тамыз", "Қыркүйек", "Қазан", "Қараша", "Желтоқсан"],
11 | monthsShort: ["Қаң", "Ақп", "Нау", "Сәу", "Мамыр", "Мау", "Шлд", "Тмз", "Қыр", "Қзн", "Қар", "Жел"],
12 | today: "Бүгін",
13 | weekStart: 1
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.kr.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Korean translation for bootstrap-datepicker
3 | * Gu Youn
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['kr'] = {
7 | days: ["일요일", "월요일", "화요일", "수요일", "목요일", "금요일", "토요일", "일요일"],
8 | daysShort: ["일", "월", "화", "수", "목", "금", "토", "일"],
9 | daysMin: ["일", "월", "화", "수", "목", "금", "토", "일"],
10 | months: ["1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월"],
11 | monthsShort: ["1월", "2월", "3월", "4월", "5월", "6월", "7월", "8월", "9월", "10월", "11월", "12월"]
12 | };
13 | }(jQuery));
14 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.lt.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Lithuanian translation for bootstrap-datepicker
3 | * Šarūnas Gliebus
4 | */
5 |
6 | ;(function($){
7 | $.fn.datepicker.dates['lt'] = {
8 | days: ["Sekmadienis", "Pirmadienis", "Antradienis", "Trečiadienis", "Ketvirtadienis", "Penktadienis", "Šeštadienis", "Sekmadienis"],
9 | daysShort: ["S", "Pr", "A", "T", "K", "Pn", "Š", "S"],
10 | daysMin: ["Sk", "Pr", "An", "Tr", "Ke", "Pn", "Št", "Sk"],
11 | months: ["Sausis", "Vasaris", "Kovas", "Balandis", "Gegužė", "Birželis", "Liepa", "Rugpjūtis", "Rugsėjis", "Spalis", "Lapkritis", "Gruodis"],
12 | monthsShort: ["Sau", "Vas", "Kov", "Bal", "Geg", "Bir", "Lie", "Rugp", "Rugs", "Spa", "Lap", "Gru"],
13 | today: "Šiandien",
14 | weekStart: 1
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.lv.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Latvian translation for bootstrap-datepicker
3 | * Artis Avotins
4 | */
5 |
6 | ;(function($){
7 | $.fn.datepicker.dates['lv'] = {
8 | days: ["Svētdiena", "Pirmdiena", "Otrdiena", "Trešdiena", "Ceturtdiena", "Piektdiena", "Sestdiena", "Svētdiena"],
9 | daysShort: ["Sv", "P", "O", "T", "C", "Pk", "S", "Sv"],
10 | daysMin: ["Sv", "Pr", "Ot", "Tr", "Ce", "Pk", "Se", "Sv"],
11 | months: ["Janvāris", "Februāris", "Marts", "Aprīlis", "Maijs", "Jūnijs", "Jūlijs", "Augusts", "Septembris", "Oktobris", "Novembris", "Decembris"],
12 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mai", "Jūn", "Jūl", "Aug", "Sep", "Okt", "Nov", "Dec"],
13 | today: "Šodien",
14 | weekStart: 1
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.mk.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Macedonian translation for bootstrap-datepicker
3 | * Marko Aleksic
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['mk'] = {
7 | days: ["Недела", "Понеделник", "Вторник", "Среда", "Четврток", "Петок", "Сабота", "Недела"],
8 | daysShort: ["Нед", "Пон", "Вто", "Сре", "Чет", "Пет", "Саб", "Нед"],
9 | daysMin: ["Не", "По", "Вт", "Ср", "Че", "Пе", "Са", "Не"],
10 | months: ["Јануари", "Февруари", "Март", "Април", "Мај", "Јуни", "Јули", "Август", "Септември", "Октомври", "Ноември", "Декември"],
11 | monthsShort: ["Јан", "Фев", "Мар", "Апр", "Мај", "Јун", "Јул", "Авг", "Сеп", "Окт", "Ное", "Дек"],
12 | today: "Денес",
13 | format: "dd.mm.yyyy"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ms.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Malay translation for bootstrap-datepicker
3 | * Ateman Faiz
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ms'] = {
7 | days: ["Ahad", "Isnin", "Selasa", "Rabu", "Khamis", "Jumaat", "Sabtu", "Ahad"],
8 | daysShort: ["Aha", "Isn", "Sel", "Rab", "Kha", "Jum", "Sab", "Aha"],
9 | daysMin: ["Ah", "Is", "Se", "Ra", "Kh", "Ju", "Sa", "Ah"],
10 | months: ["Januari", "Februari", "Mac", "April", "Mei", "Jun", "Julai", "Ogos", "September", "Oktober", "November", "Disember"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mei", "Jun", "Jul", "Ogo", "Sep", "Okt", "Nov", "Dis"],
12 | today: "Hari Ini"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.nb.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Norwegian (bokmål) translation for bootstrap-datepicker
3 | * Fredrik Sundmyhr
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['nb'] = {
7 | days: ["Søndag", "Mandag", "Tirsdag", "Onsdag", "Torsdag", "Fredag", "Lørdag", "Søndag"],
8 | daysShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør", "Søn"],
9 | daysMin: ["Sø", "Ma", "Ti", "On", "To", "Fr", "Lø", "Sø"],
10 | months: ["Januar", "Februar", "Mars", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Desember"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Des"],
12 | today: "I Dag"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.nl-BE.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Belgium-Dutch translation for bootstrap-datepicker
3 | * Julien Poulin
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['nl-BE'] = {
7 | days: ["Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag", "Zondag"],
8 | daysShort: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
9 | daysMin: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
10 | months: ["Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Mrt", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
12 | today: "Vandaag",
13 | clear: "Leegmaken",
14 | weekStart: 1,
15 | format: "dd/mm/yyyy"
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.nl.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Dutch translation for bootstrap-datepicker
3 | * Reinier Goltstein
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['nl'] = {
7 | days: ["Zondag", "Maandag", "Dinsdag", "Woensdag", "Donderdag", "Vrijdag", "Zaterdag", "Zondag"],
8 | daysShort: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
9 | daysMin: ["Zo", "Ma", "Di", "Wo", "Do", "Vr", "Za", "Zo"],
10 | months: ["Januari", "Februari", "Maart", "April", "Mei", "Juni", "Juli", "Augustus", "September", "Oktober", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Mrt", "Apr", "Mei", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
12 | today: "Vandaag"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.no.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Norwegian translation for bootstrap-datepicker
3 | **/
4 | ;(function($){
5 | $.fn.datepicker.dates['no'] = {
6 | days: ['Søndag','Mandag','Tirsdag','Onsdag','Torsdag','Fredag','Lørdag'],
7 | daysShort: ['Søn','Man','Tir','Ons','Tor','Fre','Lør'],
8 | daysMin: ['Sø','Ma','Ti','On','To','Fr','Lø'],
9 | months: ['Januar','Februar','Mars','April','Mai','Juni','Juli','August','September','Oktober','November','Desember'],
10 | monthsShort: ['Jan','Feb','Mar','Apr','Mai','Jun','Jul','Aug','Sep','Okt','Nov','Des'],
11 | today: 'I dag',
12 | clear: 'Nullstill',
13 | weekStart: 1,
14 | format: 'dd.mm.yyyy'
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.pl.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Polish translation for bootstrap-datepicker
3 | * Robert
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['pl'] = {
7 | days: ["Niedziela", "Poniedziałek", "Wtorek", "Środa", "Czwartek", "Piątek", "Sobota", "Niedziela"],
8 | daysShort: ["Nie", "Pn", "Wt", "Śr", "Czw", "Pt", "So", "Nie"],
9 | daysMin: ["N", "Pn", "Wt", "Śr", "Cz", "Pt", "So", "N"],
10 | months: ["Styczeń", "Luty", "Marzec", "Kwiecień", "Maj", "Czerwiec", "Lipiec", "Sierpień", "Wrzesień", "Październik", "Listopad", "Grudzień"],
11 | monthsShort: ["Sty", "Lu", "Mar", "Kw", "Maj", "Cze", "Lip", "Sie", "Wrz", "Pa", "Lis", "Gru"],
12 | today: "Dzisiaj",
13 | weekStart: 1
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.pt-BR.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Brazilian translation for bootstrap-datepicker
3 | * Cauan Cabral
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['pt-BR'] = {
7 | days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado", "Domingo"],
8 | daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb", "Dom"],
9 | daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa", "Do"],
10 | months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
11 | monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
12 | today: "Hoje",
13 | clear: "Limpar"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.pt.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Portuguese translation for bootstrap-datepicker
3 | * Original code: Cauan Cabral
4 | * Tiago Melo
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates['pt'] = {
8 | days: ["Domingo", "Segunda", "Terça", "Quarta", "Quinta", "Sexta", "Sábado", "Domingo"],
9 | daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb", "Dom"],
10 | daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa", "Do"],
11 | months: ["Janeiro", "Fevereiro", "Março", "Abril", "Maio", "Junho", "Julho", "Agosto", "Setembro", "Outubro", "Novembro", "Dezembro"],
12 | monthsShort: ["Jan", "Fev", "Mar", "Abr", "Mai", "Jun", "Jul", "Ago", "Set", "Out", "Nov", "Dez"],
13 | today: "Hoje",
14 | clear: "Limpar"
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ro.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Romanian translation for bootstrap-datepicker
3 | * Cristian Vasile
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ro'] = {
7 | days: ["Duminică", "Luni", "Marţi", "Miercuri", "Joi", "Vineri", "Sâmbătă", "Duminică"],
8 | daysShort: ["Dum", "Lun", "Mar", "Mie", "Joi", "Vin", "Sâm", "Dum"],
9 | daysMin: ["Du", "Lu", "Ma", "Mi", "Jo", "Vi", "Sâ", "Du"],
10 | months: ["Ianuarie", "Februarie", "Martie", "Aprilie", "Mai", "Iunie", "Iulie", "August", "Septembrie", "Octombrie", "Noiembrie", "Decembrie"],
11 | monthsShort: ["Ian", "Feb", "Mar", "Apr", "Mai", "Iun", "Iul", "Aug", "Sep", "Oct", "Nov", "Dec"],
12 | today: "Astăzi",
13 | clear: "Șterge",
14 | weekStart: 1
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.rs-latin.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Serbian latin translation for bootstrap-datepicker
3 | * Bojan Milosavlević
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['rs-latin'] = {
7 | days: ["Nedelja","Ponedeljak", "Utorak", "Sreda", "Četvrtak", "Petak", "Subota", "Nedelja"],
8 | daysShort: ["Ned", "Pon", "Uto", "Sre", "Čet", "Pet", "Sub", "Ned"],
9 | daysMin: ["N", "Po", "U", "Sr", "Č", "Pe", "Su", "N"],
10 | months: ["Januar", "Februar", "Mart", "April", "Maj", "Jun", "Jul", "Avgust", "Septembar", "Oktobar", "Novembar", "Decembar"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
12 | today: "Danas"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.rs.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Serbian cyrillic translation for bootstrap-datepicker
3 | * Bojan Milosavlević
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['rs'] = {
7 | days: ["Недеља","Понедељак", "Уторак", "Среда", "Четвртак", "Петак", "Субота", "Недеља"],
8 | daysShort: ["Нед", "Пон", "Уто", "Сре", "Чет", "Пет", "Суб", "Нед"],
9 | daysMin: ["Н", "По", "У", "Ср", "Ч", "Пе", "Су", "Н"],
10 | months: ["Јануар", "Фебруар", "Март", "Април", "Мај", "Јун", "Јул", "Август", "Септембар", "Октобар", "Новембар", "Децембар"],
11 | monthsShort: ["Јан", "Феб", "Мар", "Апр", "Мај", "Јун", "Јул", "Авг", "Сеп", "Окт", "Нов", "Дец"],
12 | today: "Данас"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ru.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Russian translation for bootstrap-datepicker
3 | * Victor Taranenko
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ru'] = {
7 | days: ["Воскресенье", "Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота", "Воскресенье"],
8 | daysShort: ["Вск", "Пнд", "Втр", "Срд", "Чтв", "Птн", "Суб", "Вск"],
9 | daysMin: ["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Вс"],
10 | months: ["Январь", "Февраль", "Март", "Апрель", "Май", "Июнь", "Июль", "Август", "Сентябрь", "Октябрь", "Ноябрь", "Декабрь"],
11 | monthsShort: ["Янв", "Фев", "Мар", "Апр", "Май", "Июн", "Июл", "Авг", "Сен", "Окт", "Ноя", "Дек"],
12 | today: "Сегодня",
13 | weekStart: 1
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.sk.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Slovak translation for bootstrap-datepicker
3 | * Marek Lichtner
4 | * Fixes by Michal Remiš
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates["sk"] = {
8 | days: ["Nedeľa", "Pondelok", "Utorok", "Streda", "Štvrtok", "Piatok", "Sobota", "Nedeľa"],
9 | daysShort: ["Ned", "Pon", "Uto", "Str", "Štv", "Pia", "Sob", "Ned"],
10 | daysMin: ["Ne", "Po", "Ut", "St", "Št", "Pia", "So", "Ne"],
11 | months: ["Január", "Február", "Marec", "Apríl", "Máj", "Jún", "Júl", "August", "September", "Október", "November", "December"],
12 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Máj", "Jún", "Júl", "Aug", "Sep", "Okt", "Nov", "Dec"],
13 | today: "Dnes"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.sl.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Slovene translation for bootstrap-datepicker
3 | * Gregor Rudolf
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['sl'] = {
7 | days: ["Nedelja", "Ponedeljek", "Torek", "Sreda", "Četrtek", "Petek", "Sobota", "Nedelja"],
8 | daysShort: ["Ned", "Pon", "Tor", "Sre", "Čet", "Pet", "Sob", "Ned"],
9 | daysMin: ["Ne", "Po", "To", "Sr", "Če", "Pe", "So", "Ne"],
10 | months: ["Januar", "Februar", "Marec", "April", "Maj", "Junij", "Julij", "Avgust", "September", "Oktober", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Avg", "Sep", "Okt", "Nov", "Dec"],
12 | today: "Danes"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.sq.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Albanian translation for bootstrap-datepicker
3 | * Tomor Pupovci
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['sq'] = {
7 | days: ["E Diel", "E Hënë", "E martē", "E mërkurë", "E Enjte", "E Premte", "E Shtunë", "E Diel"],
8 | daysShort: ["Die", "Hën", "Mar", "Mër", "Enj", "Pre", "Shtu", "Die"],
9 | daysMin: ["Di", "Hë", "Ma", "Më", "En", "Pr", "Sht", "Di"],
10 | months: ["Janar", "Shkurt", "Mars", "Prill", "Maj", "Qershor", "Korrik", "Gusht", "Shtator", "Tetor", "Nëntor", "Dhjetor"],
11 | monthsShort: ["Jan", "Shk", "Mar", "Pri", "Maj", "Qer", "Korr", "Gu", "Sht", "Tet", "Nën", "Dhjet"],
12 | today: "Sot"
13 | };
14 | }(jQuery));
15 |
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.sv.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Swedish translation for bootstrap-datepicker
3 | * Patrik Ragnarsson
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['sv'] = {
7 | days: ["Söndag", "Måndag", "Tisdag", "Onsdag", "Torsdag", "Fredag", "Lördag", "Söndag"],
8 | daysShort: ["Sön", "Mån", "Tis", "Ons", "Tor", "Fre", "Lör", "Sön"],
9 | daysMin: ["Sö", "Må", "Ti", "On", "To", "Fr", "Lö", "Sö"],
10 | months: ["Januari", "Februari", "Mars", "April", "Maj", "Juni", "Juli", "Augusti", "September", "Oktober", "November", "December"],
11 | monthsShort: ["Jan", "Feb", "Mar", "Apr", "Maj", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dec"],
12 | today: "Idag",
13 | format: "yyyy-mm-dd",
14 | weekStart: 1
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.sw.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Swahili translation for bootstrap-datepicker
3 | * Edwin Mugendi
4 | * Source: http://scriptsource.org/cms/scripts/page.php?item_id=entry_detail&uid=xnfaqyzcku
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates['sw'] = {
8 | days: ["Jumapili", "Jumatatu", "Jumanne", "Jumatano", "Alhamisi", "Ijumaa", "Jumamosi", "Jumapili"],
9 | daysShort: ["J2", "J3", "J4", "J5", "Alh", "Ij", "J1", "J2"],
10 | daysMin: ["2", "3", "4", "5", "A", "I", "1", "2"],
11 | months: ["Januari", "Februari", "Machi", "Aprili", "Mei", "Juni", "Julai", "Agosti", "Septemba", "Oktoba", "Novemba", "Desemba"],
12 | monthsShort: ["Jan", "Feb", "Mac", "Apr", "Mei", "Jun", "Jul", "Ago", "Sep", "Okt", "Nov", "Des"],
13 | today: "Leo"
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.th.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Thai translation for bootstrap-datepicker
3 | * Suchau Jiraprapot
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['th'] = {
7 | days: ["อาทิตย์", "จันทร์", "อังคาร", "พุธ", "พฤหัส", "ศุกร์", "เสาร์", "อาทิตย์"],
8 | daysShort: ["อา", "จ", "อ", "พ", "พฤ", "ศ", "ส", "อา"],
9 | daysMin: ["อา", "จ", "อ", "พ", "พฤ", "ศ", "ส", "อา"],
10 | months: ["มกราคม", "กุมภาพันธ์", "มีนาคม", "เมษายน", "พฤษภาคม", "มิถุนายน", "กรกฎาคม", "สิงหาคม", "กันยายน", "ตุลาคม", "พฤศจิกายน", "ธันวาคม"],
11 | monthsShort: ["ม.ค.", "ก.พ.", "มี.ค.", "เม.ย.", "พ.ค.", "มิ.ย.", "ก.ค.", "ส.ค.", "ก.ย.", "ต.ค.", "พ.ย.", "ธ.ค."],
12 | today: "วันนี้"
13 | };
14 | }(jQuery));
15 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.tr.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Turkish translation for bootstrap-datepicker
3 | * Serkan Algur
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['tr'] = {
7 | days: ["Pazar", "Pazartesi", "Salı", "Çarşamba", "Perşembe", "Cuma", "Cumartesi", "Pazar"],
8 | daysShort: ["Pz", "Pzt", "Sal", "Çrş", "Prş", "Cu", "Cts", "Pz"],
9 | daysMin: ["Pz", "Pzt", "Sa", "Çr", "Pr", "Cu", "Ct", "Pz"],
10 | months: ["Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık"],
11 | monthsShort: ["Oca", "Şub", "Mar", "Nis", "May", "Haz", "Tem", "Ağu", "Eyl", "Eki", "Kas", "Ara"],
12 | today: "Bugün",
13 | format: "dd.mm.yyyy"
14 | };
15 | }(jQuery));
16 |
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.ua.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Ukrainian translation for bootstrap-datepicker
3 | * Igor Polynets
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['ua'] = {
7 | days: ["Неділя", "Понеділок", "Вівторок", "Середа", "Четвер", "П'ятница", "Субота", "Неділя"],
8 | daysShort: ["Нед", "Пнд", "Втр", "Срд", "Чтв", "Птн", "Суб", "Нед"],
9 | daysMin: ["Нд", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб", "Нд"],
10 | months: ["Cічень", "Лютий", "Березень", "Квітень", "Травень", "Червень", "Липень", "Серпень", "Вересень", "Жовтень", "Листопад", "Грудень"],
11 | monthsShort: ["Січ", "Лют", "Бер", "Кві", "Тра", "Чер", "Лип", "Сер", "Вер", "Жов", "Лис", "Гру"],
12 | today: "Сьогодні",
13 | weekStart: 1
14 | };
15 | }(jQuery));
16 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.vi.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Vietnamese translation for bootstrap-datepicker
3 | * An Vo
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['vi'] = {
7 | days: ["Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy", "Chủ nhật"],
8 | daysShort: ["CN", "Thứ 2", "Thứ 3", "Thứ 4", "Thứ 5", "Thứ 6", "Thứ 7", "CN"],
9 | daysMin: ["CN", "T2", "T3", "T4", "T5", "T6", "T7", "CN"],
10 | months: ["Tháng 1", "Tháng 2", "Tháng 3", "Tháng 4", "Tháng 5", "Tháng 6", "Tháng 7", "Tháng 8", "Tháng 9", "Tháng 10", "Tháng 11", "Tháng 12"],
11 | monthsShort: ["Th1", "Th2", "Th3", "Th4", "Th5", "Th6", "Th7", "Th8", "Th9", "Th10", "Th11", "Th12"],
12 | today: "Hôm nay",
13 | clear: "Xóa",
14 | format: "dd/mm/yyyy"
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.zh-CN.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Simplified Chinese translation for bootstrap-datepicker
3 | * Yuan Cheung
4 | */
5 | ;(function($){
6 | $.fn.datepicker.dates['zh-CN'] = {
7 | days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"],
8 | daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六", "周日"],
9 | daysMin: ["日", "一", "二", "三", "四", "五", "六", "日"],
10 | months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
11 | monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
12 | today: "今日",
13 | format: "yyyy年mm月dd日",
14 | weekStart: 1
15 | };
16 | }(jQuery));
17 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/datepicker/locales/bootstrap-datepicker.zh-TW.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Traditional Chinese translation for bootstrap-datepicker
3 | * Rung-Sheng Jang
4 | * FrankWu Fix more appropriate use of Traditional Chinese habit
5 | */
6 | ;(function($){
7 | $.fn.datepicker.dates['zh-TW'] = {
8 | days: ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日"],
9 | daysShort: ["週日", "週一", "週二", "週三", "週四", "週五", "週六", "週日"],
10 | daysMin: ["日", "一", "二", "三", "四", "五", "六", "日"],
11 | months: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
12 | monthsShort: ["一月", "二月", "三月", "四月", "五月", "六月", "七月", "八月", "九月", "十月", "十一月", "十二月"],
13 | today: "今天",
14 | format: "yyyy年mm月dd日",
15 | weekStart: 1
16 | };
17 | }(jQuery));
18 |
--------------------------------------------------------------------------------
/copilot/static/js/plugins/pace/pace.min.css:
--------------------------------------------------------------------------------
1 | .pace{-webkit-pointer-events:none;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.pace-inactive{display:none}.pace .pace-progress{background:#fff;position:fixed;z-index:2000;top:0;right:100%;width:100%;height:2px}.pace .pace-progress-inner{display:block;position:absolute;right:0;width:100px;height:100%;box-shadow:0 0 10px #fff,0 0 5px #fff;opacity:1;-webkit-transform:rotate(3deg) translate(0px,-4px);-moz-transform:rotate(3deg) translate(0px,-4px);-ms-transform:rotate(3deg) translate(0px,-4px);-o-transform:rotate(3deg) translate(0px,-4px);transform:rotate(3deg) translate(0px,-4px)}.pace .pace-activity{display:block;position:fixed;z-index:2000;top:15px;right:50%;width:14px;height:14px;border:solid 2px transparent;border-top-color:#fff;border-left-color:#fff;border-radius:10px;-webkit-animation:pace-spinner 400ms linear infinite;-moz-animation:pace-spinner 400ms linear infinite;-ms-animation:pace-spinner 400ms linear infinite;-o-animation:pace-spinner 400ms linear infinite;animation:pace-spinner 400ms linear infinite}@media (max-width: 767px){.pace .pace-activity{top:15px;right:15px;width:14px;height:14px}}@-webkit-keyframes pace-spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes pace-spinner{0%{-moz-transform:rotate(0deg);transform:rotate(0deg)}100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}@-o-keyframes pace-spinner{0%{-o-transform:rotate(0deg);transform:rotate(0deg)}100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes pace-spinner{0%{-ms-transform:rotate(0deg);transform:rotate(0deg)}100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes pace-spinner{0%{transform:rotate(0deg);transform:rotate(0deg)}100%{transform:rotate(360deg);transform:rotate(360deg)}}
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ar.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ar",[],function(){return{errorLoading:function(){return"لا يمكن تحميل النتائج"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="الرجاء حذف "+t+" عناصر";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="الرجاء إضافة "+t+" عناصر";return n},loadingMore:function(){return"جاري تحميل نتائج إضافية..."},maximumSelected:function(e){var t="تستطيع إختيار "+e.maximum+" بنود فقط";return t},noResults:function(){return"لم يتم العثور على أي نتائج"},searching:function(){return"جاري البحث…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/az.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/az",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return t+" simvol silin"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(e){return"Sadəcə "+e.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/bg.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bg",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Моля въведете с "+t+" по-малко символ";return t>1&&(n+="a"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Моля въведете още "+t+" символ";return t>1&&(n+="a"),n},loadingMore:function(){return"Зареждат се още…"},maximumSelected:function(e){var t="Можете да направите до "+e.maximum+" ";return e.maximum>1?t+="избора":t+="избор",t},noResults:function(){return"Няма намерени съвпадения"},searching:function(){return"Търсене…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ca.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ca",[],function(){return{errorLoading:function(){return"La càrrega ha fallat"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Si us plau, elimina "+t+" car";return t==1?n+="àcter":n+="àcters",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Si us plau, introdueix "+t+" car";return t==1?n+="àcter":n+="àcters",n},loadingMore:function(){return"Carregant més resultats…"},maximumSelected:function(e){var t="Només es pot seleccionar "+e.maximum+" element";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No s'han trobat resultats"},searching:function(){return"Cercant…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/cs.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/cs",[],function(){function e(e,t){switch(e){case 2:return t?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím zadejte o jeden znak méně":n<=4?"Prosím zadejte o "+e(n,!0)+" znaky méně":"Prosím zadejte o "+n+" znaků méně"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím zadejte ještě jeden znak":n<=4?"Prosím zadejte ještě další "+e(n,!0)+" znaky":"Prosím zadejte ještě dalších "+n+" znaků"},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(t){var n=t.maximum;return n==1?"Můžete zvolit jen jednu položku":n<=4?"Můžete zvolit maximálně "+e(n,!1)+" položky":"Můžete zvolit maximálně "+n+" položek"},noResults:function(){return"Nenalezeny žádné položky"},searching:function(){return"Vyhledávání…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/da.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/da",[],function(){return{errorLoading:function(){return"Resultaterne kunne ikke indlæses."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Angiv venligst "+t+" tegn mindre";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Angiv venligst "+t+" tegn mere";return n},loadingMore:function(){return"Indlæser flere resultater…"},maximumSelected:function(e){var t="Du kan kun vælge "+e.maximum+" emne";return e.maximum!=1&&(t+="r"),t},noResults:function(){return"Ingen resultater fundet"},searching:function(){return"Søger…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/de.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/de",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Bitte "+t+" Zeichen weniger eingeben"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Bitte "+t+" Zeichen mehr eingeben"},loadingMore:function(){return"Lade mehr Ergebnisse…"},maximumSelected:function(e){var t="Sie können nur "+e.maximum+" Eintr";return e.maximum===1?t+="ag":t+="äge",t+=" auswählen",t},noResults:function(){return"Keine Übereinstimmungen gefunden"},searching:function(){return"Suche…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/en.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more characters";return n},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/es.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/es",[],function(){return{errorLoading:function(){return"La carga falló"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor, elimine "+t+" car";return t==1?n+="ácter":n+="acteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Por favor, introduzca "+t+" car";return t==1?n+="ácter":n+="acteres",n},loadingMore:function(){return"Cargando más resultados…"},maximumSelected:function(e){var t="Sólo puede seleccionar "+e.maximum+" elemento";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No se encontraron resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/et.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/et",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" vähem",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" rohkem",n},loadingMore:function(){return"Laen tulemusi…"},maximumSelected:function(e){var t="Saad vaid "+e.maximum+" tulemus";return e.maximum==1?t+="e":t+="t",t+=" valida",t},noResults:function(){return"Tulemused puuduvad"},searching:function(){return"Otsin…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/eu.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/eu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gutxiago",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gehiago",n},loadingMore:function(){return"Emaitza gehiago kargatzen…"},maximumSelected:function(e){return e.maximum===1?"Elementu bakarra hauta dezakezu":e.maximum+" elementu hauta ditzakezu soilik"},noResults:function(){return"Ez da bat datorrenik aurkitu"},searching:function(){return"Bilatzen…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/fa.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fa",[],function(){return{errorLoading:function(){return"امکان بارگذاری نتایج وجود ندارد."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="لطفاً "+t+" کاراکتر را حذف نمایید";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لطفاً تعداد "+t+" کاراکتر یا بیشتر وارد نمایید";return n},loadingMore:function(){return"در حال بارگذاری نتایج بیشتر..."},maximumSelected:function(e){var t="شما تنها میتوانید "+e.maximum+" آیتم را انتخاب نمایید";return t},noResults:function(){return"هیچ نتیجهای یافت نشد"},searching:function(){return"در حال جستجو..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/fi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Ole hyvä ja anna "+t+" merkkiä vähemmän"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Ole hyvä ja anna "+t+" merkkiä lisää"},loadingMore:function(){return"Ladataan lisää tuloksia…"},maximumSelected:function(e){return"Voit valita ainoastaan "+e.maximum+" kpl"},noResults:function(){return"Ei tuloksia"},searching:function(){}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/fr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fr",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Supprimez "+t+" caractère";return t!==1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Saisissez "+t+" caractère";return t!==1&&(n+="s"),n},loadingMore:function(){return"Chargement de résultats supplémentaires…"},maximumSelected:function(e){var t="Vous pouvez seulement sélectionner "+e.maximum+" élément";return e.maximum!==1&&(t+="s"),t},noResults:function(){return"Aucun résultat trouvé"},searching:function(){return"Recherche en cours…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/gl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/gl",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Elimine ";return t===1?n+="un carácter":n+=t+" caracteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Engada ";return t===1?n+="un carácter":n+=t+" caracteres",n},loadingMore:function(){return"Cargando máis resultados…"},maximumSelected:function(e){var t="Só pode ";return e.maximum===1?t+="un elemento":t+=e.maximum+" elementos",t},noResults:function(){return"Non se atoparon resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/he.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/he",[],function(){return{errorLoading:function(){return"שגיאה בטעינת התוצאות"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="נא למחוק ";return t===1?n+="תו אחד":n+=t+" תווים",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="נא להכניס ";return t===1?n+="תו אחד":n+=t+" תווים",n+=" או יותר",n},loadingMore:function(){return"טוען תוצאות נוספות…"},maximumSelected:function(e){var t="באפשרותך לבחור עד ";return e.maximum===1?t+="פריט אחד":t+=e.maximum+" פריטים",t},noResults:function(){return"לא נמצאו תוצאות"},searching:function(){return"מחפש…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/hi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hi",[],function(){return{errorLoading:function(){return"परिणामों को लोड नहीं किया जा सका।"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" अक्षर को हटा दें";return t>1&&(n=t+" अक्षरों को हटा दें "),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="कृपया "+t+" या अधिक अक्षर दर्ज करें";return n},loadingMore:function(){return"अधिक परिणाम लोड हो रहे है..."},maximumSelected:function(e){var t="आप केवल "+e.maximum+" आइटम का चयन कर सकते हैं";return t},noResults:function(){return"कोई परिणाम नहीं मिला"},searching:function(){return"खोज रहा है..."}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/hr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hr",[],function(){function e(e){var t=" "+e+" znak";return e%10<5&&e%10>0&&(e%100<5||e%100>19)?e%10>1&&(t+="a"):t+="ova",t}return{errorLoading:function(){return"Preuzimanje nije uspjelo."},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Unesite "+e(n)},inputTooShort:function(t){var n=t.minimum-t.input.length;return"Unesite još "+e(n)},loadingMore:function(){return"Učitavanje rezultata…"},maximumSelected:function(e){return"Maksimalan broj odabranih stavki je "+e.maximum},noResults:function(){return"Nema rezultata"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/hu.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Túl hosszú. "+t+" karakterrel több, mint kellene."},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Túl rövid. Még "+t+" karakter hiányzik."},loadingMore:function(){return"Töltés…"},maximumSelected:function(e){return"Csak "+e.maximum+" elemet lehet kiválasztani."},noResults:function(){return"Nincs találat."},searching:function(){return"Keresés…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/id.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/id",[],function(){return{errorLoading:function(){return"Data tidak boleh diambil."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Hapuskan "+t+" huruf"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Masukkan "+t+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(e){return"Anda hanya dapat memilih "+e.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/is.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/is",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vinsamlegast styttið texta um "+t+" staf";return t<=1?n:n+"i"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vinsamlegast skrifið "+t+" staf";return t>1&&(n+="i"),n+=" í viðbót",n},loadingMore:function(){return"Sæki fleiri niðurstöður…"},maximumSelected:function(e){return"Þú getur aðeins valið "+e.maximum+" atriði"},noResults:function(){return"Ekkert fannst"},searching:function(){return"Leita…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/it.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/it",[],function(){return{errorLoading:function(){return"I risultati non possono essere caricati."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Per favore cancella "+t+" caratter";return t!==1?n+="i":n+="e",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Per favore inserisci "+t+" o più caratteri";return n},loadingMore:function(){return"Caricando più risultati…"},maximumSelected:function(e){var t="Puoi selezionare solo "+e.maximum+" element";return e.maximum!==1?t+="i":t+="o",t},noResults:function(){return"Nessun risultato trovato"},searching:function(){return"Sto cercando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ja.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ja",[],function(){return{errorLoading:function(){return"結果が読み込まれませんでした"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" 文字を削除してください";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="少なくとも "+t+" 文字を入力してください";return n},loadingMore:function(){return"読み込み中…"},maximumSelected:function(e){var t=e.maximum+" 件しか選択できません";return t},noResults:function(){return"対象が見つかりません"},searching:function(){return"検索しています…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ko.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ko",[],function(){return{errorLoading:function(){return"결과를 불러올 수 없습니다."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="너무 깁니다. "+t+" 글자 지워주세요.";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="너무 짧습니다. "+t+" 글자 더 입력해주세요.";return n},loadingMore:function(){return"불러오는 중…"},maximumSelected:function(e){var t="최대 "+e.maximum+"개까지만 선택 가능합니다.";return t},noResults:function(){return"결과가 없습니다."},searching:function(){return"검색 중…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/lt.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lt",[],function(){function e(e,t,n,r){return e%100>9&&e%100<21||e%10===0?e%10>1?n:r:t}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Pašalinkite "+n+" simbol";return r+=e(n,"ių","ius","į"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Įrašykite dar "+n+" simbol";return r+=e(n,"ių","ius","į"),r},loadingMore:function(){return"Kraunama daugiau rezultatų…"},maximumSelected:function(t){var n="Jūs galite pasirinkti tik "+t.maximum+" element";return n+=e(t.maximum,"ų","us","ą"),n},noResults:function(){return"Atitikmenų nerasta"},searching:function(){return"Ieškoma…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/lv.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lv",[],function(){function e(e,t,n,r){return e===11?t:e%10===1?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Lūdzu ievadiet par "+n;return r+=" simbol"+e(n,"iem","u","iem"),r+" mazāk"},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Lūdzu ievadiet vēl "+n;return r+=" simbol"+e(n,"us","u","us"),r},loadingMore:function(){return"Datu ielāde…"},maximumSelected:function(t){var n="Jūs varat izvēlēties ne vairāk kā "+t.maximum;return n+=" element"+e(t.maximum,"us","u","us"),n},noResults:function(){return"Sakritību nav"},searching:function(){return"Meklēšana…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/mk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/mk",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Ве молиме внесете "+e.maximum+" помалку карактер";return e.maximum!==1&&(n+="и"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Ве молиме внесете уште "+e.maximum+" карактер";return e.maximum!==1&&(n+="и"),n},loadingMore:function(){return"Вчитување резултати…"},maximumSelected:function(e){var t="Можете да изберете само "+e.maximum+" ставк";return e.maximum===1?t+="а":t+="и",t},noResults:function(){return"Нема пронајдено совпаѓања"},searching:function(){return"Пребарување…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ms.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ms",[],function(){return{errorLoading:function(){return"Keputusan tidak berjaya dimuatkan."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Sila hapuskan "+t+" aksara"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Sila masukkan "+t+" atau lebih aksara"},loadingMore:function(){return"Sedang memuatkan keputusan…"},maximumSelected:function(e){return"Anda hanya boleh memilih "+e.maximum+" pilihan"},noResults:function(){return"Tiada padanan yang ditemui"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/nb.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nb",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return"Vennligst fjern "+t+" tegn"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vennligst skriv inn ";return t>1?n+=" flere tegn":n+=" tegn til",n},loadingMore:function(){return"Laster flere resultater…"},maximumSelected:function(e){return"Du kan velge maks "+e.maximum+" elementer"},noResults:function(){return"Ingen treff"},searching:function(){return"Søker…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/nl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nl",[],function(){return{errorLoading:function(){return"De resultaten konden niet worden geladen."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Gelieve "+t+" karakters te verwijderen";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Gelieve "+t+" of meer karakters in te voeren";return n},loadingMore:function(){return"Meer resultaten laden…"},maximumSelected:function(e){var t=e.maximum==1?"kan":"kunnen",n="Er "+t+" maar "+e.maximum+" item";return e.maximum!=1&&(n+="s"),n+=" worden geselecteerd",n},noResults:function(){return"Geen resultaten gevonden…"},searching:function(){return"Zoeken…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/pl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pl",[],function(){var e=["znak","znaki","znaków"],t=["element","elementy","elementów"],n=function(t,n){if(t===1)return n[0];if(t>1&&t<=4)return n[1];if(t>=5)return n[2]};return{errorLoading:function(){return"Nie można załadować wyników."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Usuń "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Podaj przynajmniej "+r+" "+n(r,e)},loadingMore:function(){return"Trwa ładowanie…"},maximumSelected:function(e){return"Możesz zaznaczyć tylko "+e.maximum+" "+n(e.maximum,t)},noResults:function(){return"Brak wyników"},searching:function(){return"Trwa wyszukiwanie…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/pt-BR.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt-BR",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Apague "+t+" caracter";return t!=1&&(n+="es"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Digite "+t+" ou mais caracteres";return n},loadingMore:function(){return"Carregando mais resultados…"},maximumSelected:function(e){var t="Você só pode selecionar "+e.maximum+" ite";return e.maximum==1?t+="m":t+="ns",t},noResults:function(){return"Nenhum resultado encontrado"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/pt.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor apague "+t+" ";return n+=t!=1?"caracteres":"carácter",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Introduza "+t+" ou mais caracteres";return n},loadingMore:function(){return"A carregar mais resultados…"},maximumSelected:function(e){var t="Apenas pode seleccionar "+e.maximum+" ";return t+=e.maximum!=1?"itens":"item",t},noResults:function(){return"Sem resultados"},searching:function(){return"A procurar…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ro.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ro",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vă rugăm să introduceți mai puțin de "+t;return n+=" caracter",n!==1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vă rugăm să introduceți incă "+t;return n+=" caracter",n!==1&&(n+="e"),n},loadingMore:function(){return"Se încarcă…"},maximumSelected:function(e){var t="Aveți voie să selectați cel mult "+e.maximum;return t+=" element",t!==1&&(t+="e"),t},noResults:function(){return"Nu a fost găsit nimic"},searching:function(){return"Căutare…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/ru.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ru",[],function(){function e(e,t,n,r){return e%10<5&&e%10>0&&e%100<5||e%100>20?e%10>1?n:t:r}return{errorLoading:function(){return"Невозможно загрузить результаты"},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Пожалуйста, введите на "+n+" символ";return r+=e(n,"","a","ов"),r+=" меньше",r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Пожалуйста, введите еще хотя бы "+n+" символ";return r+=e(n,"","a","ов"),r},loadingMore:function(){return"Загрузка данных…"},maximumSelected:function(t){var n="Вы можете выбрать не более "+t.maximum+" элемент";return n+=e(t.maximum,"","a","ов"),n},noResults:function(){return"Совпадений не найдено"},searching:function(){return"Поиск…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/sk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sk",[],function(){var e={2:function(e){return e?"dva":"dve"},3:function(){return"tri"},4:function(){return"štyri"}};return{inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadajte o jeden znak menej":n>=2&&n<=4?"Prosím, zadajte o "+e[n](!0)+" znaky menej":"Prosím, zadajte o "+n+" znakov menej"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadajte ešte jeden znak":n<=4?"Prosím, zadajte ešte ďalšie "+e[n](!0)+" znaky":"Prosím, zadajte ešte ďalších "+n+" znakov"},loadingMore:function(){return"Loading more results…"},maximumSelected:function(t){return t.maximum==1?"Môžete zvoliť len jednu položku":t.maximum>=2&&t.maximum<=4?"Môžete zvoliť najviac "+e[t.maximum](!1)+" položky":"Môžete zvoliť najviac "+t.maximum+" položiek"},noResults:function(){return"Nenašli sa žiadne položky"},searching:function(){return"Vyhľadávanie…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/sr-Cyrl.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr-Cyrl",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Преузимање није успело."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Обришите "+n+" симбол";return r+=e(n,"","а","а"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Укуцајте бар још "+n+" симбол";return r+=e(n,"","а","а"),r},loadingMore:function(){return"Преузимање још резултата…"},maximumSelected:function(t){var n="Можете изабрати само "+t.maximum+" ставк";return n+=e(t.maximum,"у","е","и"),n},noResults:function(){return"Ништа није пронађено"},searching:function(){return"Претрага…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/sr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Preuzimanje nije uspelo."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/sv.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sv",[],function(){return{errorLoading:function(){return"Resultat kunde inte laddas."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vänligen sudda ut "+t+" tecken";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vänligen skriv in "+t+" eller fler tecken";return n},loadingMore:function(){return"Laddar fler resultat…"},maximumSelected:function(e){var t="Du kan max välja "+e.maximum+" element";return t},noResults:function(){return"Inga träffar"},searching:function(){return"Söker…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/th.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/th",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="โปรดลบออก "+t+" ตัวอักษร";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="โปรดพิมพ์เพิ่มอีก "+t+" ตัวอักษร";return n},loadingMore:function(){return"กำลังค้นข้อมูลเพิ่ม…"},maximumSelected:function(e){var t="คุณสามารถเลือกได้ไม่เกิน "+e.maximum+" รายการ";return t},noResults:function(){return"ไม่พบข้อมูล"},searching:function(){return"กำลังค้นข้อมูล…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/tr.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/tr",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" karakter daha girmelisiniz";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="En az "+t+" karakter daha girmelisiniz";return n},loadingMore:function(){return"Daha fazla…"},maximumSelected:function(e){var t="Sadece "+e.maximum+" seçim yapabilirsiniz";return t},noResults:function(){return"Sonuç bulunamadı"},searching:function(){return"Aranıyor…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/uk.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/uk",[],function(){function e(e,t,n,r){return e%100>10&&e%100<15?r:e%10===1?t:e%10>1&&e%10<5?n:r}return{errorLoading:function(){return"Неможливо завантажити результати"},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Будь ласка, видаліть "+n+" "+e(t.maximum,"літеру","літери","літер")},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Будь ласка, введіть "+t+" або більше літер"},loadingMore:function(){return"Завантаження інших результатів…"},maximumSelected:function(t){return"Ви можете вибрати лише "+t.maximum+" "+e(t.maximum,"пункт","пункти","пунктів")},noResults:function(){return"Нічого не знайдено"},searching:function(){return"Пошук…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/vi.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/vi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vui lòng nhập ít hơn "+t+" ký tự";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vui lòng nhập nhiều hơn "+t+' ký tự"';return n},loadingMore:function(){return"Đang lấy thêm kết quả…"},maximumSelected:function(e){var t="Chỉ có thể chọn được "+e.maximum+" lựa chọn";return t},noResults:function(){return"Không tìm thấy kết quả"},searching:function(){return"Đang tìm…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/zh-CN.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-CN",[],function(){return{errorLoading:function(){return"无法载入结果。"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="请删除"+t+"个字符";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="请再输入至少"+t+"个字符";return n},loadingMore:function(){return"载入更多结果…"},maximumSelected:function(e){var t="最多只能选择"+e.maximum+"个项目";return t},noResults:function(){return"未找到结果"},searching:function(){return"搜索中…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/static/js/plugins/select2/i18n/zh-TW.js:
--------------------------------------------------------------------------------
1 | /*! Select2 4.0.1 | https://github.com/select2/select2/blob/master/LICENSE.md */
2 |
3 | (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-TW",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="請刪掉"+t+"個字元";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="請再輸入"+t+"個字元";return n},loadingMore:function(){return"載入中…"},maximumSelected:function(e){var t="你只能選擇最多"+e.maximum+"項";return t},noResults:function(){return"沒有找到相符的項目"},searching:function(){return"搜尋中…"}}}),{define:e.define,require:e.require}})();
--------------------------------------------------------------------------------
/copilot/test/e2e/custom-assertions/elementCount.js:
--------------------------------------------------------------------------------
1 | // A custom Nightwatch assertion.
2 | // the name of the method is the filename.
3 | // can be used in tests like this:
4 | //
5 | // browser.assert.elementCount(selector, count)
6 | //
7 | // for how to write custom assertions see
8 | // http://nightwatchjs.org/guide#writing-custom-assertions
9 | exports.assertion = function (selector, count) {
10 | this.message = 'Testing if element <' + selector + '> has count: ' + count
11 | this.expected = count
12 | this.pass = function (val) {
13 | return val === this.expected
14 | }
15 | this.value = function (res) {
16 | return res.value
17 | }
18 | this.command = function (cb) {
19 | var self = this
20 | return this.api.execute(function (selector) {
21 | return document.querySelectorAll(selector).length
22 | }, [selector], function (res) {
23 | cb.call(self, res)
24 | })
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/copilot/test/e2e/nightwatch.conf.js:
--------------------------------------------------------------------------------
1 | // http://nightwatchjs.org/guide#settings-file
2 | module.exports = {
3 | "src_folders": ["test/e2e/specs"],
4 | "output_folder": "test/e2e/reports",
5 | "custom_assertions_path": ["test/e2e/custom-assertions"],
6 |
7 | "selenium": {
8 | "start_process": true,
9 | "server_path": "node_modules/selenium-server/lib/runner/selenium-server-standalone-2.53.0.jar",
10 | "host": "127.0.0.1",
11 | "port": 4444,
12 | "cli_args": {
13 | "webdriver.chrome.driver": require('chromedriver').path
14 | }
15 | },
16 |
17 | "test_settings": {
18 | "default": {
19 | "selenium_port": 4444,
20 | "selenium_host": "localhost",
21 | "silent": true
22 | },
23 |
24 | "chrome": {
25 | "desiredCapabilities": {
26 | "browserName": "chrome",
27 | "javascriptEnabled": true,
28 | "acceptSslCerts": true
29 | }
30 | },
31 |
32 | "firefox": {
33 | "desiredCapabilities": {
34 | "browserName": "firefox",
35 | "javascriptEnabled": true,
36 | "acceptSslCerts": true
37 | }
38 | }
39 | }
40 | }
41 |
--------------------------------------------------------------------------------
/copilot/test/e2e/runner.js:
--------------------------------------------------------------------------------
1 | // 1. start the dev server
2 | var server = require('../../build/dev-server.js')
3 |
4 | // 2. run the nightwatch test suite against it
5 | // to run in additional browsers:
6 | // 1. add an entry in test/e2e/nightwatch.conf.json under "test_settings"
7 | // 2. add it to the --env flag below
8 | // For more information on Nightwatch's config file, see
9 | // http://nightwatchjs.org/guide#settings-file
10 | var spawn = require('cross-spawn')
11 | var runner = spawn(
12 | './node_modules/.bin/nightwatch',
13 | [
14 | '--config', 'test/e2e/nightwatch.conf.js',
15 | '--env', 'chrome,firefox'
16 | ],
17 | {
18 | stdio: 'inherit'
19 | }
20 | )
21 |
22 | runner.on('exit', function (code) {
23 | server.close()
24 | process.exit(code)
25 | })
26 |
27 | runner.on('error', function (err) {
28 | server.close()
29 | throw err
30 | })
31 |
--------------------------------------------------------------------------------
/copilot/test/e2e/specs/test.js:
--------------------------------------------------------------------------------
1 | // For authoring Nightwatch tests, see
2 | // http://nightwatchjs.org/guide#usage
3 |
4 | module.exports = {
5 | 'default e2e tests': function (browser) {
6 | browser
7 | .url('http://localhost:8080')
8 | .waitForElementVisible('#app', 5000)
9 | .assert.elementPresent('.logo')
10 | .assert.containsText('h1', 'Hello World!')
11 | .assert.elementCount('p', 3)
12 | .end()
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/copilot/test/unit/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "env": {
3 | "jasmine": true
4 | }
5 | }
6 |
--------------------------------------------------------------------------------
/copilot/test/unit/index.js:
--------------------------------------------------------------------------------
1 | // Polyfill fn.bind() for PhantomJS
2 | /* eslint-disable no-extend-native */
3 | Function.prototype.bind = require('function-bind')
4 |
5 | // require all test files (files that ends with .spec.js)
6 | var testsContext = require.context('./specs', true, /\.spec$/)
7 | testsContext.keys().forEach(testsContext)
8 |
9 | // require all src files except main.js for coverage.
10 | // you can also change this to match only the subset of files that
11 | // you want coverage for.
12 | var srcContext = require.context('../../src', true, /^\.\/(?!main(\.js)?$)/)
13 | srcContext.keys().forEach(srcContext)
14 |
--------------------------------------------------------------------------------
/copilot/test/unit/karma.conf.js:
--------------------------------------------------------------------------------
1 | // This is a karma config file. For more details see
2 | // http://karma-runner.github.io/0.13/config/configuration-file.html
3 | // we are also using it with karma-webpack
4 | // https://github.com/webpack/karma-webpack
5 |
6 | var path = require('path')
7 | var merge = require('webpack-merge')
8 | var baseConfig = require('../../build/webpack.base.conf')
9 | var projectRoot = path.resolve(__dirname, '../../')
10 |
11 | var webpackConfig = merge(baseConfig, {
12 | // use inline sourcemap for karma-sourcemap-loader
13 | devtool: '#inline-source-map',
14 | vue: {
15 | loaders: {
16 | js: 'isparta'
17 | }
18 | }
19 | })
20 |
21 | // no need for app entry during tests
22 | delete webpackConfig.entry
23 |
24 | // make sure isparta loader is applied before eslint
25 | webpackConfig.module.preLoaders.unshift({
26 | test: /\.js$/,
27 | loader: 'isparta',
28 | include: projectRoot,
29 | exclude: /test\/unit|node_modules/
30 | })
31 |
32 | // only apply babel for test files when using isparta
33 | webpackConfig.module.loaders.some(function (loader, i) {
34 | if (loader.loader === 'babel') {
35 | loader.include = /test\/unit/
36 | return true
37 | }
38 | })
39 |
40 | module.exports = function (config) {
41 | config.set({
42 | // to run in additional browsers:
43 | // 1. install corresponding karma launcher
44 | // http://karma-runner.github.io/0.13/config/browsers.html
45 | // 2. add it to the `browsers` array below.
46 | browsers: ['PhantomJS'],
47 | frameworks: ['jasmine'],
48 | reporters: ['spec', 'coverage'],
49 | files: ['./index.js'],
50 | preprocessors: {
51 | './index.js': ['webpack', 'sourcemap']
52 | },
53 | webpack: webpackConfig,
54 | webpackMiddleware: {
55 | noInfo: true
56 | },
57 | coverageReporter: {
58 | dir: './coverage',
59 | reporters: [
60 | { type: 'lcov', subdir: '.' },
61 | { type: 'text-summary' }
62 | ]
63 | }
64 | })
65 | }
66 |
--------------------------------------------------------------------------------
/copilot/test/unit/specs/Hello.spec.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Hello from 'src/components/Hello'
3 |
4 | describe('Hello.vue', () => {
5 | it('should render correct contents', () => {
6 | const vm = new Vue({
7 | template: '
',
8 | components: { Hello }
9 | }).$mount()
10 | expect(vm.$el.querySelector('.hello h1').textContent).toBe('Hello World!')
11 | })
12 | })
13 |
14 | // also see example testing a component with mocks at
15 | // https://github.com/vuejs/vue-loader-example/blob/master/test/unit/a.spec.js#L24-L49
16 |
--------------------------------------------------------------------------------
/doc/imagenet.md:
--------------------------------------------------------------------------------
1 | Imagenet is delivered as a bunch of tar files.
2 | picpac-import has a special mode to support such format.
3 | To import the full imagenet, generate a list file
4 | containing all the tar paths (using ```find -name '*.tar'```).
5 | The full imagenet is huge and typically images are down-sized
6 | for training. The recommended setting for importing is below:
7 |
8 | ```
9 | LD_PRELOAD=./libjpeg.so.8.1.2 ~/picpac/picpac-import -f 6 list imagenet.db
10 | --max 256 --encode .jpg --compact --jpeg_quality 60
11 | ```
12 |
13 | In the above command the [mozjpeg](https://github.com/mozilla/mozjpeg)
14 | library is used to achieve high compression ratio without breaking
15 | compatibility. It's also possible to build picpac with a custom-built
16 | OpenCV library with webp support for even better compression ratio.
17 |
18 | After importing the database should occupy about 12GB for the
19 | ILSVRC 1000 category dataset, or 150-200GB for the full
20 | 20000+ category dataset.
21 |
22 |
--------------------------------------------------------------------------------
/doc/server_dev_cpp.md:
--------------------------------------------------------------------------------
1 | C++ Server Development Guide
2 | ============================
3 |
4 | The C++ server has so many dependencies that
5 | a dockerized building environment is needed.
6 |
7 | After docker is properly installed, type the
8 | following command to build.
9 |
10 | ```
11 | ./make-server.sh
12 | ```
13 |
14 | This will download the docker image if it
15 | does not already exist in the system.
16 | It will also pull in all the node.js
17 | dependencies and build the frontend code.
18 |
19 | The front-end code building is also lengthy.
20 | If one is paying attention solely to the
21 | C++ part, it is recommened to download a
22 | pre-built front-end object file
23 | [html_static.o.bz2](http://aaalgo.com/picpac/server/html_static.o.bz2)
24 | and put it in the picpac directory. When
25 | this file presents, the making process directly
26 | uses this file without building the front-end
27 | from scratch.
28 |
--------------------------------------------------------------------------------
/doc/server_dev_js.md:
--------------------------------------------------------------------------------
1 | JS Server Development Guide
2 | ============================
3 |
4 | The JS development code is contained in the
5 | copilot subdirectory. The UI is based on
6 | [CoPilot](https://github.com/misterGF/CoPilot)
7 | which is a [Vue](https://vuejs.org/)
8 | implementation of AdminLTE.
9 | As many AJAX APIs are
10 | provided by the C++ server, JS cannot be
11 | independently developed. One needs to
12 | build/download an existing [server binary](http://aaalgo.com/picpac/server/picpac-server)
13 | and some [dataset](http://aaalgo.com/picpac/datasets/)
14 | to assist JS development.
15 |
16 | Start the server with the following and keep it running.
17 | ```
18 | picpac-server --no-browser any_dataset_file
19 | ```
20 | This server will listen at the port 18888.
21 |
22 | Then use the regular ```npm run dev``` to develop the
23 | JS part. C++ API calls are automatically forwarded
24 | to the C++ server port 18888. The JS frontend will be at the port
25 | 8080.
26 |
--------------------------------------------------------------------------------
/docker-make-server.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | . /etc/profile
4 | cd /picpac
5 | make picpac-explorer
6 |
--------------------------------------------------------------------------------
/examples/caffe/README:
--------------------------------------------------------------------------------
1 | This model is modified from the public Caffenet model.
2 |
3 | It is supposed to work with a dataset named with "db" in the current directory,
4 | with images of 2 classes. For different number of classes, edit train_val.prototxt.
5 |
6 | Run ./train.sh to train.
7 |
8 | A fork of Caffe with PicPac support is needed:
9 | https://github.com/aaalgo/caffe
10 |
--------------------------------------------------------------------------------
/examples/caffe/README.caffe:
--------------------------------------------------------------------------------
1 | ---
2 | name: BVLC CaffeNet Model
3 | caffemodel: bvlc_reference_caffenet.caffemodel
4 | caffemodel_url: http://dl.caffe.berkeleyvision.org/bvlc_reference_caffenet.caffemodel
5 | license: unrestricted
6 | sha1: 4c8d77deb20ea792f84eb5e6d0a11ca0a8660a46
7 | caffe_commit: 709dc15af4a06bebda027c1eb2b3f3e3375d5077
8 | ---
9 |
10 | This model is the result of following the Caffe [ImageNet model training instructions](http://caffe.berkeleyvision.org/gathered/examples/imagenet.html).
11 | It is a replication of the model described in the [AlexNet](http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks) publication with some differences:
12 |
13 | - not training with the relighting data-augmentation;
14 | - the order of pooling and normalization layers is switched (in CaffeNet, pooling is done before normalization).
15 |
16 | This model is snapshot of iteration 310,000.
17 | The best validation performance during training was iteration 313,000 with validation accuracy 57.412% and loss 1.82328.
18 | This model obtains a top-1 accuracy 57.4% and a top-5 accuracy 80.4% on the validation set, using just the center crop.
19 | (Using the average of 10 crops, (4 + 1 center) * 2 mirror, should obtain a bit higher accuracy still.)
20 |
21 | This model was trained by Jeff Donahue @jeffdonahue
22 |
23 | ## License
24 |
25 | This model is released for unrestricted use.
26 |
--------------------------------------------------------------------------------
/examples/caffe/mean.binaryproto:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/aaalgo/picpac/28de073b2b0c471b5d75946b322d8aaec69d219d/examples/caffe/mean.binaryproto
--------------------------------------------------------------------------------
/examples/caffe/solver.prototxt:
--------------------------------------------------------------------------------
1 | net: "train_val.prototxt"
2 | base_lr: 0.001
3 | lr_policy: "step"
4 | gamma: 0.1
5 | stepsize: 20000
6 | display: 200
7 | max_iter: 10000
8 | momentum: 0.9
9 | weight_decay: 0.0005
10 | snapshot: 100
11 | snapshot_prefix: "snapshots/x"
12 | solver_mode: GPU
13 |
--------------------------------------------------------------------------------
/examples/caffe/train.sh:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env sh
2 |
3 | export GLOG_log_dir=log
4 | export GLOG_logtostderr=1
5 |
6 | mkdir -p snapshots
7 |
8 | SNAP=$1
9 | if [ -z "$SNAP" ]
10 | then
11 | nice caffe train --solver solver.prototxt $* | tee log
12 | else
13 | shift
14 | nice caffe train -solver solver.prototxt -snapshot $SNAP $* | tee log
15 | fi
16 |
17 |
--------------------------------------------------------------------------------
/examples/datasets/picpac-import-cifar.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include "picpac.h"
3 | #include "picpac-cv.h"
4 | #include "picpac-util.h"
5 |
6 | using namespace std;
7 | using namespace picpac;
8 |
9 | static size_t constexpr WIDTH = 32;
10 | static size_t constexpr HEIGHT = 32;
11 | static size_t constexpr AREA = WIDTH * HEIGHT;
12 | static size_t constexpr CHANNELS = 3;
13 | static size_t constexpr DIM = WIDTH * HEIGHT * CHANNELS;
14 |
15 | void load (string const &path, FileWriter &writer) {
16 | ImageEncoder encoder(".png");
17 | ifstream is(path.c_str(), ios::binary);
18 | size_t sz = 1 + DIM;
19 | is.seekg(0, ios::end);
20 | size_t total = is.tellg();
21 | is.seekg(0, ios::beg);
22 | BOOST_VERIFY(total % sz == 0);
23 | total /= sz;
24 | //cv::Mat image(HEIGHT, WIDTH,
25 | vector channels(3);
26 | for (auto &m: channels) {
27 | m.create(HEIGHT, WIDTH, CV_8UC1);
28 | }
29 | cv::Mat image;
30 | string buf;
31 | for (unsigned i = 0; i < total; ++i) {
32 | uint8_t label;
33 | is.read((char *)&label, sizeof(label));
34 | is.read(channels[2].ptr(0), AREA);
35 | is.read(channels[1].ptr(0), AREA);
36 | is.read(channels[0].ptr(0), AREA);
37 | CHECK(is);
38 | cv::merge(channels, image);
39 | encoder.encode(image, &buf);
40 | picpac::Record rec((int)label, buf);
41 | writer.append(rec);
42 | }
43 | }
44 |
45 | int main(int argc, char **argv) {
46 | google::InitGoogleLogging(argv[0]);
47 | {
48 | picpac::FileWriter writer("train.db", FileWriter::COMPACT);
49 | load("cifar-10-batches-bin/data_batch_1.bin", writer);
50 | load("cifar-10-batches-bin/data_batch_2.bin", writer);
51 | load("cifar-10-batches-bin/data_batch_3.bin", writer);
52 | load("cifar-10-batches-bin/data_batch_4.bin", writer);
53 | load("cifar-10-batches-bin/data_batch_5.bin", writer);
54 | }
55 | {
56 | picpac::FileWriter writer("test.db", FileWriter::COMPACT);
57 | load("cifar-10-batches-bin/test_batch.bin", writer);
58 | }
59 |
60 | return 0;
61 | }
62 |
63 |
64 |
--------------------------------------------------------------------------------
/examples/datasets/picpac-import-nmist.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 | #include "picpac.h"
4 | #include "picpac-cv.h"
5 | #include "picpac-util.h"
6 |
7 | using namespace std;
8 | using namespace boost;
9 | using namespace picpac;
10 |
11 | void load (fs::path const &images_path,
12 | fs::path const &labels_path,
13 | fs::path const &output_path) {
14 | ImageEncoder encoder(".png");
15 | picpac::FileWriter write(output_path, FileWriter::COMPACT);
16 | fs::ifstream images(images_path, ios::binary);
17 | fs::ifstream labels(labels_path, ios::binary);
18 | CHECK(images);
19 | CHECK(labels);
20 | int32_t magic;
21 | images.read((char *)&magic, sizeof(magic));
22 | magic = ntohl(magic);
23 | CHECK(magic == 0x00000803);
24 | labels.read((char *)&magic, sizeof(magic));
25 | magic = ntohl(magic);
26 | CHECK(magic == 0x00000801);
27 | int32_t n, n1;
28 | images.read((char *)&n, sizeof(n));
29 | n = ntohl(n);
30 | labels.read((char *)&n1, sizeof(n1));
31 | n1 = ntohl(n1);
32 | CHECK(n == n1);
33 | int32_t rows, cols;
34 | images.read((char *)&rows, sizeof(rows));
35 | rows = ntohl(rows);
36 | images.read((char *)&cols, sizeof(cols));
37 | cols = ntohl(cols);
38 | CHECK(rows == 28);
39 | CHECK(cols == 28);
40 | cv::Mat image(rows, cols, CV_8UC1);
41 | char label;
42 | string buf;
43 | for (int i = 0; i < n; ++i) {
44 | images.read(image.ptr(0), image.total());
45 | CHECK(images);
46 | labels.read(&label, sizeof(label));
47 | CHECK(labels);
48 | encoder.encode(image, &buf);
49 | picpac::Record rec((int)label, buf);
50 | write.append(rec);
51 | }
52 | }
53 |
54 | int main(int argc, char **argv) {
55 | load("train-images-idx3-ubyte", "train-labels-idx1-ubyte", "train.db");
56 | load("t10k-images-idx3-ubyte", "t10k-labels-idx1-ubyte", "test.db");
57 | return 0;
58 | }
59 |
60 |
61 |
--------------------------------------------------------------------------------
/examples/mxnet/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM kaixhin/cuda-mxnet:8.0
2 | LABEL maintainer "Wei Dong "
3 | RUN apt-get update && apt-get install -y libboost-all-dev python-opencv libgoogle-glog-dev libgflags-dev
4 | RUN apt-get install -y python-pip
5 | RUN pip install -i https://testpypi.python.org/pypi picpac
6 | WORKDIR /root/picpac
7 |
--------------------------------------------------------------------------------
/examples/mxnet/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: help docker run
2 |
3 | help:
4 | @echo "Usage:"
5 | @echo " make docker # build docker"
6 | @echo " make run # run docker with current directory mounted at /picpac"
7 |
8 | docker:
9 | nvidia-docker build -t aaalgo/mxnet-picpac .
10 |
11 | run:
12 | nvidia-docker run -it -v $(PWD):/root/picpac aaalgo/mxnet-picpac /bin/bash
13 |
--------------------------------------------------------------------------------
/examples/mxnet/README:
--------------------------------------------------------------------------------
1 | train.py: ./train.py --db db --classes 2 --epoch-size 10
2 | see more from comment in code.
3 |
4 |
--------------------------------------------------------------------------------
/examples/mxnet/find_mxnet.py:
--------------------------------------------------------------------------------
1 | try:
2 | import mxnet as mx
3 | except ImportError:
4 | import os, sys
5 | curr_path = os.path.abspath(os.path.dirname(__file__))
6 | sys.path.append(os.path.join(curr_path, "../../../python"))
7 | import mxnet as mx
8 |
--------------------------------------------------------------------------------
/examples/mxnet/symbol_alexnet.py:
--------------------------------------------------------------------------------
1 | """
2 | Reference:
3 |
4 | Krizhevsky, Alex, Ilya Sutskever, and Geoffrey E. Hinton. "Imagenet classification with deep convolutional neural networks." Advances in neural information processing systems. 2012.
5 | """
6 | import find_mxnet
7 | import mxnet as mx
8 |
9 | def get_symbol(num_classes = 1000):
10 | input_data = mx.symbol.Variable(name="data")
11 | # stage 1
12 | conv1 = mx.symbol.Convolution(
13 | data=input_data, kernel=(11, 11), stride=(4, 4), num_filter=96)
14 | relu1 = mx.symbol.Activation(data=conv1, act_type="relu")
15 | pool1 = mx.symbol.Pooling(
16 | data=relu1, pool_type="max", kernel=(3, 3), stride=(2,2))
17 | lrn1 = mx.symbol.LRN(data=pool1, alpha=0.0001, beta=0.75, knorm=1, nsize=5)
18 | # stage 2
19 | conv2 = mx.symbol.Convolution(
20 | data=lrn1, kernel=(5, 5), pad=(2, 2), num_filter=256)
21 | relu2 = mx.symbol.Activation(data=conv2, act_type="relu")
22 | pool2 = mx.symbol.Pooling(data=relu2, kernel=(3, 3), stride=(2, 2), pool_type="max")
23 | lrn2 = mx.symbol.LRN(data=pool2, alpha=0.0001, beta=0.75, knorm=1, nsize=5)
24 | # stage 3
25 | conv3 = mx.symbol.Convolution(
26 | data=lrn2, kernel=(3, 3), pad=(1, 1), num_filter=384)
27 | relu3 = mx.symbol.Activation(data=conv3, act_type="relu")
28 | conv4 = mx.symbol.Convolution(
29 | data=relu3, kernel=(3, 3), pad=(1, 1), num_filter=384)
30 | relu4 = mx.symbol.Activation(data=conv4, act_type="relu")
31 | conv5 = mx.symbol.Convolution(
32 | data=relu4, kernel=(3, 3), pad=(1, 1), num_filter=256)
33 | relu5 = mx.symbol.Activation(data=conv5, act_type="relu")
34 | pool3 = mx.symbol.Pooling(data=relu5, kernel=(3, 3), stride=(2, 2), pool_type="max")
35 | # stage 4
36 | flatten = mx.symbol.Flatten(data=pool3)
37 | fc1 = mx.symbol.FullyConnected(data=flatten, num_hidden=4096)
38 | relu6 = mx.symbol.Activation(data=fc1, act_type="relu")
39 | dropout1 = mx.symbol.Dropout(data=relu6, p=0.5)
40 | # stage 5
41 | fc2 = mx.symbol.FullyConnected(data=dropout1, num_hidden=4096)
42 | relu7 = mx.symbol.Activation(data=fc2, act_type="relu")
43 | dropout2 = mx.symbol.Dropout(data=relu7, p=0.5)
44 | # stage 6
45 | fc3 = mx.symbol.FullyConnected(data=dropout2, num_hidden=num_classes)
46 | softmax = mx.symbol.SoftmaxOutput(data=fc3, name='softmax')
47 | return softmax
48 |
--------------------------------------------------------------------------------
/examples/mxnet/symbol_inception-bn-28-small.py:
--------------------------------------------------------------------------------
1 | """
2 | simplified inception-bn.py for images has size around 28 x 28
3 | """
4 |
5 | import find_mxnet
6 | import mxnet as mx
7 |
8 | # Basic Conv + BN + ReLU factory
9 | def ConvFactory(data, num_filter, kernel, stride=(1,1), pad=(0, 0), act_type="relu"):
10 | conv = mx.symbol.Convolution(data=data, num_filter=num_filter, kernel=kernel, stride=stride, pad=pad)
11 | bn = mx.symbol.BatchNorm(data=conv)
12 | act = mx.symbol.Activation(data = bn, act_type=act_type)
13 | return act
14 |
15 | # A Simple Downsampling Factory
16 | def DownsampleFactory(data, ch_3x3):
17 | # conv 3x3
18 | conv = ConvFactory(data=data, kernel=(3, 3), stride=(2, 2), num_filter=ch_3x3, pad=(1, 1))
19 | # pool
20 | pool = mx.symbol.Pooling(data=data, kernel=(3, 3), stride=(2, 2), pool_type='max')
21 | # concat
22 | concat = mx.symbol.Concat(*[conv, pool])
23 | return concat
24 |
25 | # A Simple module
26 | def SimpleFactory(data, ch_1x1, ch_3x3):
27 | # 1x1
28 | conv1x1 = ConvFactory(data=data, kernel=(1, 1), pad=(0, 0), num_filter=ch_1x1)
29 | # 3x3
30 | conv3x3 = ConvFactory(data=data, kernel=(3, 3), pad=(1, 1), num_filter=ch_3x3)
31 | #concat
32 | concat = mx.symbol.Concat(*[conv1x1, conv3x3])
33 | return concat
34 |
35 | def get_symbol(num_classes = 10):
36 | data = mx.symbol.Variable(name="data")
37 | conv1 = ConvFactory(data=data, kernel=(3,3), pad=(1,1), num_filter=96, act_type="relu")
38 | in3a = SimpleFactory(conv1, 32, 32)
39 | in3b = SimpleFactory(in3a, 32, 48)
40 | in3c = DownsampleFactory(in3b, 80)
41 | in4a = SimpleFactory(in3c, 112, 48)
42 | in4b = SimpleFactory(in4a, 96, 64)
43 | in4c = SimpleFactory(in4b, 80, 80)
44 | in4d = SimpleFactory(in4c, 48, 96)
45 | in4e = DownsampleFactory(in4d, 96)
46 | in5a = SimpleFactory(in4e, 176, 160)
47 | in5b = SimpleFactory(in5a, 176, 160)
48 | pool = mx.symbol.Pooling(data=in5b, pool_type="avg", kernel=(7,7), name="global_pool")
49 | flatten = mx.symbol.Flatten(data=pool, name="flatten1")
50 | fc = mx.symbol.FullyConnected(data=flatten, num_hidden=num_classes, name="fc1")
51 | softmax = mx.symbol.SoftmaxOutput(data=fc, name="softmax")
52 | return softmax
53 |
--------------------------------------------------------------------------------
/examples/tensorflow/Dockerfile:
--------------------------------------------------------------------------------
1 | FROM tensorflow/tensorflow:0.12.1-devel-gpu
2 | LABEL maintainer "Wei Dong "
3 | RUN apt-get update && apt-get install -y libboost-all-dev python-opencv libopencv-dev libgoogle-glog-dev libgflags-dev
4 | RUN pip install -i https://testpypi.python.org/pypi picpac
5 | WORKDIR /root/picpac
6 |
--------------------------------------------------------------------------------
/examples/tensorflow/Makefile:
--------------------------------------------------------------------------------
1 | .PHONY: help docker run
2 |
3 | help:
4 | @echo "Usage:"
5 | @echo " make docker # build docker"
6 | @echo " make run # run docker with current directory mounted at /picpac"
7 |
8 | docker:
9 | nvidia-docker build -t aaalgo/tensorflow-picpac .
10 |
11 | run:
12 | nvidia-docker run -it -v $(PWD):/root/picpac aaalgo/tensorflow-picpac /bin/bash
13 |
--------------------------------------------------------------------------------
/examples/tensorflow/README:
--------------------------------------------------------------------------------
1 | Dockerfile: nvidia-docker for running the above. Need cuda-8.0 & cudnn 5.
2 |
3 | train-slim.py: train one of the tensorflow.contrib.slim.nets models
4 | ./train-slim.py --net=inception_v3.inception_v3
5 | see more from comment in code.
6 |
7 | fcn.py, fcn-predict:
8 | train/apply a very basic version of FCN model.
9 | some filenames are hard-coded.
10 |
--------------------------------------------------------------------------------
/make-server.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | if [ ! -f json11/json11.cpp ]
4 | then
5 | git submodule init
6 | git submodule update
7 | fi
8 | docker run -it -v $PWD:/picpac aaalgo/cbox:latest /picpac/docker-make-server.sh
9 |
--------------------------------------------------------------------------------
/mkdocs.yml:
--------------------------------------------------------------------------------
1 | site_name: PicPac Documentation
2 | theme: readthedocs
3 | docs_dir: pydocs
4 | repo_url: https://github.com/aaalgo/picpac
5 | site_description: 'Documentation for PicPac, an image streamer for deep learning.'
6 |
7 | dev_addr: '0.0.0.0:8600'
8 |
9 | pages:
10 | - Home: index.md
11 | - Importing Data: import.md
12 | - Streaming: stream.md
13 | - Other Topics: topics.md
14 | - Configuration: config.md
15 |
16 |
--------------------------------------------------------------------------------
/obsolete/picpac-proto.cpp:
--------------------------------------------------------------------------------
1 | #include
2 | #include