Full Code of thedevdojo/voyager for AI

1.7 7e7e0f4f0e11 cached
1553 files
21.9 MB
5.8M tokens
5947 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (23,244K chars total). Download the full file to get everything.
Repository: thedevdojo/voyager
Branch: 1.7
Commit: 7e7e0f4f0e11
Files: 1553
Total size: 21.9 MB

Directory structure:
gitextract_9r53jt7k/

├── .gitattributes
├── .gitbook.yaml
├── .github/
│   ├── FUNDING.yml
│   ├── ISSUE_TEMPLATE/
│   │   ├── BUG-REPORT.yml
│   │   ├── FEATURE-REQUEST.yml
│   │   └── config.yml
│   ├── SECURITY.yml
│   └── workflows/
│       ├── automerge.yml
│       ├── compile-assets.yml
│       ├── coverage.yml
│       ├── lock.yml
│       └── test.yml
├── .gitignore
├── .php_cs
├── ISSUE_TEMPLATE
├── README.md
├── composer.json
├── docs/
│   ├── bread/
│   │   ├── formfields/
│   │   │   ├── checkbox.md
│   │   │   ├── coordinates.md
│   │   │   ├── date-time.md
│   │   │   ├── dropdown.md
│   │   │   ├── images.md
│   │   │   ├── introduction.md
│   │   │   ├── media-picker.md
│   │   │   ├── number.md
│   │   │   └── tinymce.md
│   │   ├── introduction.md
│   │   └── relationships.md
│   ├── core-concepts/
│   │   ├── compass.md
│   │   ├── database-manager.md
│   │   ├── helper-methods.md
│   │   ├── media-manager.md
│   │   ├── menus-and-menu-builder.md
│   │   ├── multilanguage.md
│   │   ├── roles-and-permissions.md
│   │   ├── routing.md
│   │   └── settings.md
│   ├── customization/
│   │   ├── action-buttons.md
│   │   ├── adding-custom-formfields.md
│   │   ├── additional-css-js.md
│   │   ├── bread-accessors.md
│   │   ├── coordinates.md
│   │   ├── custom-guard.md
│   │   ├── custom-realtionship-attributes.md
│   │   ├── enabling-soft-delete.md
│   │   ├── overriding-files.md
│   │   └── overriding-routes.md
│   ├── getting-started/
│   │   ├── configurations.md
│   │   ├── installation.md
│   │   ├── prerequisites.md
│   │   ├── upgrading.md
│   │   └── what-is-voyager.md
│   ├── introduction.md
│   ├── summary.md
│   └── troubleshooting/
│       ├── missing-required-parameter.md
│       └── using-https.md
├── license
├── migrations/
│   ├── 2016_01_01_000000_add_voyager_user_fields.php
│   ├── 2016_01_01_000000_create_data_types_table.php
│   ├── 2016_05_19_173453_create_menu_table.php
│   ├── 2016_10_21_190000_create_roles_table.php
│   ├── 2016_10_21_190000_create_settings_table.php
│   ├── 2016_11_30_135954_create_permission_table.php
│   ├── 2016_11_30_141208_create_permission_role_table.php
│   ├── 2016_12_26_201236_data_types__add__server_side.php
│   ├── 2017_01_13_000000_add_route_to_menu_items_table.php
│   ├── 2017_01_14_005015_create_translations_table.php
│   ├── 2017_01_15_000000_make_table_name_nullable_in_permissions_table.php
│   ├── 2017_03_06_000000_add_controller_to_data_types_table.php
│   ├── 2017_04_21_000000_add_order_to_data_rows_table.php
│   ├── 2017_07_05_210000_add_policyname_to_data_types_table.php
│   ├── 2017_08_05_000000_add_group_to_settings_table.php
│   ├── 2017_11_26_013050_add_user_role_relationship.php
│   ├── 2017_11_26_015000_create_user_roles_table.php
│   ├── 2018_03_11_000000_add_user_settings.php
│   ├── 2018_03_14_000000_add_details_to_data_types_table.php
│   └── 2018_03_16_000000_make_settings_value_nullable.php
├── mix-manifest.json
├── mix.js
├── package.json
├── phpunit.xml
├── publishable/
│   ├── assets/
│   │   ├── css/
│   │   │   ├── app.css
│   │   │   └── rtl.css
│   │   ├── fonts/
│   │   │   └── icons-reference.html
│   │   ├── images/
│   │   │   └── voyager-character.sketch
│   │   └── js/
│   │       ├── ace/
│   │       │   └── libs/
│   │       │       ├── ace.js
│   │       │       ├── ext-beautify.js
│   │       │       ├── ext-code_lens.js
│   │       │       ├── ext-elastic_tabstops_lite.js
│   │       │       ├── ext-emmet.js
│   │       │       ├── ext-error_marker.js
│   │       │       ├── ext-hardwrap.js
│   │       │       ├── ext-keybinding_menu.js
│   │       │       ├── ext-language_tools.js
│   │       │       ├── ext-linking.js
│   │       │       ├── ext-modelist.js
│   │       │       ├── ext-options.js
│   │       │       ├── ext-prompt.js
│   │       │       ├── ext-rtl.js
│   │       │       ├── ext-searchbox.js
│   │       │       ├── ext-settings_menu.js
│   │       │       ├── ext-spellcheck.js
│   │       │       ├── ext-split.js
│   │       │       ├── ext-static_highlight.js
│   │       │       ├── ext-statusbar.js
│   │       │       ├── ext-textarea.js
│   │       │       ├── ext-themelist.js
│   │       │       ├── ext-whitespace.js
│   │       │       ├── keybinding-emacs.js
│   │       │       ├── keybinding-sublime.js
│   │       │       ├── keybinding-vim.js
│   │       │       ├── keybinding-vscode.js
│   │       │       ├── mode-abap.js
│   │       │       ├── mode-abc.js
│   │       │       ├── mode-actionscript.js
│   │       │       ├── mode-ada.js
│   │       │       ├── mode-alda.js
│   │       │       ├── mode-apache_conf.js
│   │       │       ├── mode-apex.js
│   │       │       ├── mode-applescript.js
│   │       │       ├── mode-aql.js
│   │       │       ├── mode-asciidoc.js
│   │       │       ├── mode-asl.js
│   │       │       ├── mode-assembly_x86.js
│   │       │       ├── mode-autohotkey.js
│   │       │       ├── mode-batchfile.js
│   │       │       ├── mode-bibtex.js
│   │       │       ├── mode-c9search.js
│   │       │       ├── mode-c_cpp.js
│   │       │       ├── mode-cirru.js
│   │       │       ├── mode-clojure.js
│   │       │       ├── mode-cobol.js
│   │       │       ├── mode-coffee.js
│   │       │       ├── mode-coldfusion.js
│   │       │       ├── mode-crystal.js
│   │       │       ├── mode-csharp.js
│   │       │       ├── mode-csound_document.js
│   │       │       ├── mode-csound_orchestra.js
│   │       │       ├── mode-csound_score.js
│   │       │       ├── mode-csp.js
│   │       │       ├── mode-css.js
│   │       │       ├── mode-curly.js
│   │       │       ├── mode-d.js
│   │       │       ├── mode-dart.js
│   │       │       ├── mode-diff.js
│   │       │       ├── mode-django.js
│   │       │       ├── mode-dockerfile.js
│   │       │       ├── mode-dot.js
│   │       │       ├── mode-drools.js
│   │       │       ├── mode-edifact.js
│   │       │       ├── mode-eiffel.js
│   │       │       ├── mode-ejs.js
│   │       │       ├── mode-elixir.js
│   │       │       ├── mode-elm.js
│   │       │       ├── mode-erlang.js
│   │       │       ├── mode-forth.js
│   │       │       ├── mode-fortran.js
│   │       │       ├── mode-fsharp.js
│   │       │       ├── mode-fsl.js
│   │       │       ├── mode-ftl.js
│   │       │       ├── mode-gcode.js
│   │       │       ├── mode-gherkin.js
│   │       │       ├── mode-gitignore.js
│   │       │       ├── mode-glsl.js
│   │       │       ├── mode-gobstones.js
│   │       │       ├── mode-golang.js
│   │       │       ├── mode-graphqlschema.js
│   │       │       ├── mode-groovy.js
│   │       │       ├── mode-haml.js
│   │       │       ├── mode-handlebars.js
│   │       │       ├── mode-haskell.js
│   │       │       ├── mode-haskell_cabal.js
│   │       │       ├── mode-haxe.js
│   │       │       ├── mode-hjson.js
│   │       │       ├── mode-html.js
│   │       │       ├── mode-html_elixir.js
│   │       │       ├── mode-html_ruby.js
│   │       │       ├── mode-ini.js
│   │       │       ├── mode-io.js
│   │       │       ├── mode-ion.js
│   │       │       ├── mode-jack.js
│   │       │       ├── mode-jade.js
│   │       │       ├── mode-java.js
│   │       │       ├── mode-javascript.js
│   │       │       ├── mode-json.js
│   │       │       ├── mode-json5.js
│   │       │       ├── mode-jsoniq.js
│   │       │       ├── mode-jsp.js
│   │       │       ├── mode-jssm.js
│   │       │       ├── mode-jsx.js
│   │       │       ├── mode-julia.js
│   │       │       ├── mode-kotlin.js
│   │       │       ├── mode-latex.js
│   │       │       ├── mode-latte.js
│   │       │       ├── mode-less.js
│   │       │       ├── mode-liquid.js
│   │       │       ├── mode-lisp.js
│   │       │       ├── mode-livescript.js
│   │       │       ├── mode-logiql.js
│   │       │       ├── mode-logtalk.js
│   │       │       ├── mode-lsl.js
│   │       │       ├── mode-lua.js
│   │       │       ├── mode-luapage.js
│   │       │       ├── mode-lucene.js
│   │       │       ├── mode-makefile.js
│   │       │       ├── mode-markdown.js
│   │       │       ├── mode-mask.js
│   │       │       ├── mode-matlab.js
│   │       │       ├── mode-maze.js
│   │       │       ├── mode-mediawiki.js
│   │       │       ├── mode-mel.js
│   │       │       ├── mode-mips.js
│   │       │       ├── mode-mixal.js
│   │       │       ├── mode-mushcode.js
│   │       │       ├── mode-mysql.js
│   │       │       ├── mode-nginx.js
│   │       │       ├── mode-nim.js
│   │       │       ├── mode-nix.js
│   │       │       ├── mode-nsis.js
│   │       │       ├── mode-nunjucks.js
│   │       │       ├── mode-objectivec.js
│   │       │       ├── mode-ocaml.js
│   │       │       ├── mode-partiql.js
│   │       │       ├── mode-pascal.js
│   │       │       ├── mode-perl.js
│   │       │       ├── mode-pgsql.js
│   │       │       ├── mode-php.js
│   │       │       ├── mode-php_laravel_blade.js
│   │       │       ├── mode-pig.js
│   │       │       ├── mode-plain_text.js
│   │       │       ├── mode-powershell.js
│   │       │       ├── mode-praat.js
│   │       │       ├── mode-prisma.js
│   │       │       ├── mode-prolog.js
│   │       │       ├── mode-properties.js
│   │       │       ├── mode-protobuf.js
│   │       │       ├── mode-puppet.js
│   │       │       ├── mode-python.js
│   │       │       ├── mode-qml.js
│   │       │       ├── mode-r.js
│   │       │       ├── mode-raku.js
│   │       │       ├── mode-razor.js
│   │       │       ├── mode-rdoc.js
│   │       │       ├── mode-red.js
│   │       │       ├── mode-redshift.js
│   │       │       ├── mode-rhtml.js
│   │       │       ├── mode-robot.js
│   │       │       ├── mode-rst.js
│   │       │       ├── mode-ruby.js
│   │       │       ├── mode-rust.js
│   │       │       ├── mode-sac.js
│   │       │       ├── mode-sass.js
│   │       │       ├── mode-scad.js
│   │       │       ├── mode-scala.js
│   │       │       ├── mode-scheme.js
│   │       │       ├── mode-scrypt.js
│   │       │       ├── mode-scss.js
│   │       │       ├── mode-sh.js
│   │       │       ├── mode-sjs.js
│   │       │       ├── mode-slim.js
│   │       │       ├── mode-smarty.js
│   │       │       ├── mode-smithy.js
│   │       │       ├── mode-snippets.js
│   │       │       ├── mode-soy_template.js
│   │       │       ├── mode-space.js
│   │       │       ├── mode-sparql.js
│   │       │       ├── mode-sql.js
│   │       │       ├── mode-sqlserver.js
│   │       │       ├── mode-stylus.js
│   │       │       ├── mode-svg.js
│   │       │       ├── mode-swift.js
│   │       │       ├── mode-tcl.js
│   │       │       ├── mode-terraform.js
│   │       │       ├── mode-tex.js
│   │       │       ├── mode-text.js
│   │       │       ├── mode-textile.js
│   │       │       ├── mode-toml.js
│   │       │       ├── mode-tsx.js
│   │       │       ├── mode-turtle.js
│   │       │       ├── mode-twig.js
│   │       │       ├── mode-typescript.js
│   │       │       ├── mode-vala.js
│   │       │       ├── mode-vbscript.js
│   │       │       ├── mode-velocity.js
│   │       │       ├── mode-verilog.js
│   │       │       ├── mode-vhdl.js
│   │       │       ├── mode-visualforce.js
│   │       │       ├── mode-wollok.js
│   │       │       ├── mode-xml.js
│   │       │       ├── mode-xquery.js
│   │       │       ├── mode-yaml.js
│   │       │       ├── mode-zeek.js
│   │       │       ├── snippets/
│   │       │       │   ├── abap.js
│   │       │       │   ├── abc.js
│   │       │       │   ├── actionscript.js
│   │       │       │   ├── ada.js
│   │       │       │   ├── alda.js
│   │       │       │   ├── apache_conf.js
│   │       │       │   ├── apex.js
│   │       │       │   ├── applescript.js
│   │       │       │   ├── aql.js
│   │       │       │   ├── asciidoc.js
│   │       │       │   ├── asl.js
│   │       │       │   ├── assembly_x86.js
│   │       │       │   ├── autohotkey.js
│   │       │       │   ├── batchfile.js
│   │       │       │   ├── bibtex.js
│   │       │       │   ├── c9search.js
│   │       │       │   ├── c_cpp.js
│   │       │       │   ├── cirru.js
│   │       │       │   ├── clojure.js
│   │       │       │   ├── cobol.js
│   │       │       │   ├── coffee.js
│   │       │       │   ├── coldfusion.js
│   │       │       │   ├── crystal.js
│   │       │       │   ├── csharp.js
│   │       │       │   ├── csound_document.js
│   │       │       │   ├── csound_orchestra.js
│   │       │       │   ├── csound_score.js
│   │       │       │   ├── csp.js
│   │       │       │   ├── css.js
│   │       │       │   ├── curly.js
│   │       │       │   ├── d.js
│   │       │       │   ├── dart.js
│   │       │       │   ├── diff.js
│   │       │       │   ├── django.js
│   │       │       │   ├── dockerfile.js
│   │       │       │   ├── dot.js
│   │       │       │   ├── drools.js
│   │       │       │   ├── edifact.js
│   │       │       │   ├── eiffel.js
│   │       │       │   ├── ejs.js
│   │       │       │   ├── elixir.js
│   │       │       │   ├── elm.js
│   │       │       │   ├── erlang.js
│   │       │       │   ├── forth.js
│   │       │       │   ├── fortran.js
│   │       │       │   ├── fsharp.js
│   │       │       │   ├── fsl.js
│   │       │       │   ├── ftl.js
│   │       │       │   ├── gcode.js
│   │       │       │   ├── gherkin.js
│   │       │       │   ├── gitignore.js
│   │       │       │   ├── glsl.js
│   │       │       │   ├── gobstones.js
│   │       │       │   ├── golang.js
│   │       │       │   ├── graphqlschema.js
│   │       │       │   ├── groovy.js
│   │       │       │   ├── haml.js
│   │       │       │   ├── handlebars.js
│   │       │       │   ├── haskell.js
│   │       │       │   ├── haskell_cabal.js
│   │       │       │   ├── haxe.js
│   │       │       │   ├── hjson.js
│   │       │       │   ├── html.js
│   │       │       │   ├── html_elixir.js
│   │       │       │   ├── html_ruby.js
│   │       │       │   ├── ini.js
│   │       │       │   ├── io.js
│   │       │       │   ├── ion.js
│   │       │       │   ├── jack.js
│   │       │       │   ├── jade.js
│   │       │       │   ├── java.js
│   │       │       │   ├── javascript.js
│   │       │       │   ├── json.js
│   │       │       │   ├── json5.js
│   │       │       │   ├── jsoniq.js
│   │       │       │   ├── jsp.js
│   │       │       │   ├── jssm.js
│   │       │       │   ├── jsx.js
│   │       │       │   ├── julia.js
│   │       │       │   ├── kotlin.js
│   │       │       │   ├── latex.js
│   │       │       │   ├── latte.js
│   │       │       │   ├── less.js
│   │       │       │   ├── liquid.js
│   │       │       │   ├── lisp.js
│   │       │       │   ├── livescript.js
│   │       │       │   ├── logiql.js
│   │       │       │   ├── logtalk.js
│   │       │       │   ├── lsl.js
│   │       │       │   ├── lua.js
│   │       │       │   ├── luapage.js
│   │       │       │   ├── lucene.js
│   │       │       │   ├── makefile.js
│   │       │       │   ├── markdown.js
│   │       │       │   ├── mask.js
│   │       │       │   ├── matlab.js
│   │       │       │   ├── maze.js
│   │       │       │   ├── mediawiki.js
│   │       │       │   ├── mel.js
│   │       │       │   ├── mips.js
│   │       │       │   ├── mixal.js
│   │       │       │   ├── mushcode.js
│   │       │       │   ├── mysql.js
│   │       │       │   ├── nginx.js
│   │       │       │   ├── nim.js
│   │       │       │   ├── nix.js
│   │       │       │   ├── nsis.js
│   │       │       │   ├── nunjucks.js
│   │       │       │   ├── objectivec.js
│   │       │       │   ├── ocaml.js
│   │       │       │   ├── partiql.js
│   │       │       │   ├── pascal.js
│   │       │       │   ├── perl.js
│   │       │       │   ├── pgsql.js
│   │       │       │   ├── php.js
│   │       │       │   ├── php_laravel_blade.js
│   │       │       │   ├── pig.js
│   │       │       │   ├── plain_text.js
│   │       │       │   ├── powershell.js
│   │       │       │   ├── praat.js
│   │       │       │   ├── prisma.js
│   │       │       │   ├── prolog.js
│   │       │       │   ├── properties.js
│   │       │       │   ├── protobuf.js
│   │       │       │   ├── puppet.js
│   │       │       │   ├── python.js
│   │       │       │   ├── qml.js
│   │       │       │   ├── r.js
│   │       │       │   ├── raku.js
│   │       │       │   ├── razor.js
│   │       │       │   ├── rdoc.js
│   │       │       │   ├── red.js
│   │       │       │   ├── redshift.js
│   │       │       │   ├── rhtml.js
│   │       │       │   ├── robot.js
│   │       │       │   ├── rst.js
│   │       │       │   ├── ruby.js
│   │       │       │   ├── rust.js
│   │       │       │   ├── sac.js
│   │       │       │   ├── sass.js
│   │       │       │   ├── scad.js
│   │       │       │   ├── scala.js
│   │       │       │   ├── scheme.js
│   │       │       │   ├── scrypt.js
│   │       │       │   ├── scss.js
│   │       │       │   ├── sh.js
│   │       │       │   ├── sjs.js
│   │       │       │   ├── slim.js
│   │       │       │   ├── smarty.js
│   │       │       │   ├── smithy.js
│   │       │       │   ├── snippets.js
│   │       │       │   ├── soy_template.js
│   │       │       │   ├── space.js
│   │       │       │   ├── sparql.js
│   │       │       │   ├── sql.js
│   │       │       │   ├── sqlserver.js
│   │       │       │   ├── stylus.js
│   │       │       │   ├── svg.js
│   │       │       │   ├── swift.js
│   │       │       │   ├── tcl.js
│   │       │       │   ├── terraform.js
│   │       │       │   ├── tex.js
│   │       │       │   ├── text.js
│   │       │       │   ├── textile.js
│   │       │       │   ├── toml.js
│   │       │       │   ├── tsx.js
│   │       │       │   ├── turtle.js
│   │       │       │   ├── twig.js
│   │       │       │   ├── typescript.js
│   │       │       │   ├── vala.js
│   │       │       │   ├── vbscript.js
│   │       │       │   ├── velocity.js
│   │       │       │   ├── verilog.js
│   │       │       │   ├── vhdl.js
│   │       │       │   ├── visualforce.js
│   │       │       │   ├── wollok.js
│   │       │       │   ├── xml.js
│   │       │       │   ├── xquery.js
│   │       │       │   ├── yaml.js
│   │       │       │   └── zeek.js
│   │       │       ├── theme-ambiance.js
│   │       │       ├── theme-chaos.js
│   │       │       ├── theme-chrome.js
│   │       │       ├── theme-cloud9_day.js
│   │       │       ├── theme-cloud9_night.js
│   │       │       ├── theme-cloud9_night_low_color.js
│   │       │       ├── theme-clouds.js
│   │       │       ├── theme-clouds_midnight.js
│   │       │       ├── theme-cobalt.js
│   │       │       ├── theme-crimson_editor.js
│   │       │       ├── theme-dawn.js
│   │       │       ├── theme-dracula.js
│   │       │       ├── theme-dreamweaver.js
│   │       │       ├── theme-eclipse.js
│   │       │       ├── theme-github.js
│   │       │       ├── theme-gob.js
│   │       │       ├── theme-gruvbox.js
│   │       │       ├── theme-gruvbox_dark_hard.js
│   │       │       ├── theme-gruvbox_light_hard.js
│   │       │       ├── theme-idle_fingers.js
│   │       │       ├── theme-iplastic.js
│   │       │       ├── theme-katzenmilch.js
│   │       │       ├── theme-kr_theme.js
│   │       │       ├── theme-kuroir.js
│   │       │       ├── theme-merbivore.js
│   │       │       ├── theme-merbivore_soft.js
│   │       │       ├── theme-mono_industrial.js
│   │       │       ├── theme-monokai.js
│   │       │       ├── theme-nord_dark.js
│   │       │       ├── theme-one_dark.js
│   │       │       ├── theme-pastel_on_dark.js
│   │       │       ├── theme-solarized_dark.js
│   │       │       ├── theme-solarized_light.js
│   │       │       ├── theme-sqlserver.js
│   │       │       ├── theme-terminal.js
│   │       │       ├── theme-textmate.js
│   │       │       ├── theme-tomorrow.js
│   │       │       ├── theme-tomorrow_night.js
│   │       │       ├── theme-tomorrow_night_blue.js
│   │       │       ├── theme-tomorrow_night_bright.js
│   │       │       ├── theme-tomorrow_night_eighties.js
│   │       │       ├── theme-twilight.js
│   │       │       ├── theme-vibrant_ink.js
│   │       │       ├── theme-xcode.js
│   │       │       ├── worker-base.js
│   │       │       ├── worker-coffee.js
│   │       │       ├── worker-css.js
│   │       │       ├── worker-html.js
│   │       │       ├── worker-javascript.js
│   │       │       ├── worker-json.js
│   │       │       ├── worker-lua.js
│   │       │       ├── worker-php.js
│   │       │       ├── worker-xml.js
│   │       │       ├── worker-xquery.js
│   │       │       └── worker-yaml.js
│   │       ├── app.js
│   │       ├── app.js.LICENSE.txt
│   │       ├── icons/
│   │       │   └── default/
│   │       │       ├── icons.js
│   │       │       └── index.js
│   │       ├── models/
│   │       │   └── dom/
│   │       │       ├── index.js
│   │       │       └── model.js
│   │       ├── skins/
│   │       │   ├── content/
│   │       │   │   ├── dark/
│   │       │   │   │   └── content.css
│   │       │   │   ├── default/
│   │       │   │   │   └── content.css
│   │       │   │   ├── document/
│   │       │   │   │   └── content.css
│   │       │   │   ├── tinymce-5/
│   │       │   │   │   └── content.css
│   │       │   │   ├── tinymce-5-dark/
│   │       │   │   │   └── content.css
│   │       │   │   └── writer/
│   │       │   │       └── content.css
│   │       │   ├── ui/
│   │       │   │   ├── oxide/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── content.mobile.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   ├── skin.mobile.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   ├── oxide-dark/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── content.mobile.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   ├── skin.mobile.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   ├── tinymce-5/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   └── tinymce-5-dark/
│   │       │   │       ├── content.css
│   │       │   │       ├── content.inline.css
│   │       │   │       ├── skin.css
│   │       │   │       └── skin.shadowdom.css
│   │       │   └── voyager/
│   │       │       ├── Variables.less
│   │       │       ├── fonts/
│   │       │       │   ├── readme.md
│   │       │       │   ├── tinymce-small.json
│   │       │       │   └── tinymce.json
│   │       │       └── skin.json
│   │       └── themes/
│   │           └── silver/
│   │               ├── index.js
│   │               └── theme.js
│   ├── config/
│   │   ├── voyager.php
│   │   └── voyager_dummy.php
│   ├── database/
│   │   ├── dummy_seeders/
│   │   │   ├── CategoriesTableSeeder.php
│   │   │   ├── PagesTableSeeder.php
│   │   │   ├── PostsTableSeeder.php
│   │   │   └── UsersTableSeeder.php
│   │   ├── migrations/
│   │   │   ├── 2016_01_01_000000_create_pages_table.php
│   │   │   ├── 2016_01_01_000000_create_posts_table.php
│   │   │   ├── 2016_02_15_204651_create_categories_table.php
│   │   │   └── 2017_04_11_000000_alter_post_nullable_fields_table.php
│   │   └── seeders/
│   │       ├── DataRowsTableSeeder.php
│   │       ├── DataTypesTableSeeder.php
│   │       ├── MenuItemsTableSeeder.php
│   │       ├── MenusTableSeeder.php
│   │       ├── PermissionRoleTableSeeder.php
│   │       ├── PermissionsTableSeeder.php
│   │       ├── RolesTableSeeder.php
│   │       ├── SettingsTableSeeder.php
│   │       ├── TranslationsTableSeeder.php
│   │       ├── VoyagerDatabaseSeeder.php
│   │       └── VoyagerDummyDatabaseSeeder.php
│   └── lang/
│       ├── al/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── am/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ar/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   ├── theme.php
│       │   └── voyager.php
│       ├── az/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── bg/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── databale.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ca/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── cs/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── de/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── el/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── en/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── es/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fa/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fi/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fr/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── gl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── id/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── it/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ja/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── km/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ku/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── mm/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── my/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── nl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pt/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pt_br/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ro/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ru/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── sv/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── tr/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── uk/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── vi/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── zh_CN/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       └── zh_TW/
│           ├── analytics.php
│           ├── bread.php
│           ├── compass.php
│           ├── database.php
│           ├── datatable.php
│           ├── date.php
│           ├── dimmer.php
│           ├── error.php
│           ├── form.php
│           ├── generic.php
│           ├── json.php
│           ├── login.php
│           ├── media.php
│           ├── menu_builder.php
│           ├── post.php
│           ├── profile.php
│           ├── seeders.php
│           ├── settings.php
│           └── theme.php
├── resources/
│   ├── assets/
│   │   ├── js/
│   │   │   ├── app.js
│   │   │   ├── components/
│   │   │   │   └── admin_menu.vue
│   │   │   ├── helpers.js
│   │   │   ├── multilingual.js
│   │   │   ├── skins/
│   │   │   │   └── voyager/
│   │   │   │       ├── Variables.less
│   │   │   │       ├── fonts/
│   │   │   │       │   ├── readme.md
│   │   │   │       │   ├── tinymce-small.json
│   │   │   │       │   └── tinymce.json
│   │   │   │       └── skin.json
│   │   │   ├── slugify.js
│   │   │   ├── voyager_ace_editor.js
│   │   │   ├── voyager_tinymce.js
│   │   │   └── voyager_tinymce_config.js
│   │   └── sass/
│   │       ├── _variables.scss
│   │       ├── app.scss
│   │       └── fonts.css
│   └── views/
│       ├── alerts.blade.php
│       ├── auth/
│       │   └── master.blade.php
│       ├── bread/
│       │   ├── browse.blade.php
│       │   ├── edit-add.blade.php
│       │   ├── order.blade.php
│       │   ├── partials/
│       │   │   └── actions.blade.php
│       │   └── read.blade.php
│       ├── compass/
│       │   ├── includes/
│       │   │   ├── commands.blade.php
│       │   │   ├── fonts.blade.php
│       │   │   ├── logs.blade.php
│       │   │   └── styles.blade.php
│       │   └── index.blade.php
│       ├── dashboard/
│       │   ├── navbar.blade.php
│       │   └── sidebar.blade.php
│       ├── dimmer.blade.php
│       ├── dimmers.blade.php
│       ├── formfields/
│       │   ├── checkbox.blade.php
│       │   ├── code_editor.blade.php
│       │   ├── color.blade.php
│       │   ├── coordinates.blade.php
│       │   ├── date.blade.php
│       │   ├── file.blade.php
│       │   ├── hidden.blade.php
│       │   ├── image.blade.php
│       │   ├── markdown_editor.blade.php
│       │   ├── media_picker.blade.php
│       │   ├── multiple_checkbox.blade.php
│       │   ├── multiple_images.blade.php
│       │   ├── number.blade.php
│       │   ├── password.blade.php
│       │   ├── radio_btn.blade.php
│       │   ├── relationship.blade.php
│       │   ├── rich_text_box.blade.php
│       │   ├── select_dropdown.blade.php
│       │   ├── select_multiple.blade.php
│       │   ├── text.blade.php
│       │   ├── text_area.blade.php
│       │   ├── time.blade.php
│       │   └── timestamp.blade.php
│       ├── index.blade.php
│       ├── login.blade.php
│       ├── master.blade.php
│       ├── media/
│       │   ├── index.blade.php
│       │   └── manager.blade.php
│       ├── menu/
│       │   ├── admin.blade.php
│       │   ├── bootstrap.blade.php
│       │   └── default.blade.php
│       ├── menus/
│       │   ├── browse.blade.php
│       │   ├── builder.blade.php
│       │   └── partial/
│       │       └── notice.blade.php
│       ├── multilingual/
│       │   ├── input-hidden-bread-browse.blade.php
│       │   ├── input-hidden-bread-edit-add.blade.php
│       │   ├── input-hidden-bread-read.blade.php
│       │   ├── input-hidden.blade.php
│       │   └── language-selector.blade.php
│       ├── partials/
│       │   ├── app-footer.blade.php
│       │   ├── bulk-delete.blade.php
│       │   ├── coordinates-static-image.blade.php
│       │   └── coordinates.blade.php
│       ├── posts/
│       │   └── edit-add.blade.php
│       ├── profile.blade.php
│       ├── roles/
│       │   └── edit-add.blade.php
│       ├── settings/
│       │   └── index.blade.php
│       ├── tools/
│       │   ├── bread/
│       │   │   ├── edit-add.blade.php
│       │   │   ├── index.blade.php
│       │   │   ├── relationship-new-modal.blade.php
│       │   │   └── relationship-partial.blade.php
│       │   └── database/
│       │       ├── edit-add.blade.php
│       │       ├── index.blade.php
│       │       └── vue-components/
│       │           ├── database-column-default.blade.php
│       │           ├── database-column.blade.php
│       │           ├── database-table-editor.blade.php
│       │           ├── database-table-helper-buttons.blade.php
│       │           └── database-types.blade.php
│       └── users/
│           └── edit-add.blade.php
├── routes/
│   └── voyager.php
├── src/
│   ├── Actions/
│   │   ├── AbstractAction.php
│   │   ├── ActionInterface.php
│   │   ├── DeleteAction.php
│   │   ├── EditAction.php
│   │   ├── RestoreAction.php
│   │   └── ViewAction.php
│   ├── Alert/
│   │   └── Components/
│   │       ├── AbstractComponent.php
│   │       ├── ButtonComponent.php
│   │       ├── ComponentInterface.php
│   │       ├── TextComponent.php
│   │       └── TitleComponent.php
│   ├── Alert.php
│   ├── Commands/
│   │   ├── AdminCommand.php
│   │   ├── ControllersCommand.php
│   │   ├── InstallCommand.php
│   │   └── MakeModelCommand.php
│   ├── Contracts/
│   │   └── User.php
│   ├── Database/
│   │   ├── DatabaseUpdater.php
│   │   ├── Platforms/
│   │   │   ├── Mysql.php
│   │   │   ├── Platform.php
│   │   │   ├── Postgresql.php
│   │   │   └── Sqlite.php
│   │   ├── Schema/
│   │   │   ├── Column.php
│   │   │   ├── ForeignKey.php
│   │   │   ├── Identifier.php
│   │   │   ├── Index.php
│   │   │   ├── SchemaManager.php
│   │   │   └── Table.php
│   │   └── Types/
│   │       ├── Common/
│   │       │   ├── CharType.php
│   │       │   ├── DoubleType.php
│   │       │   ├── JsonType.php
│   │       │   ├── NumericType.php
│   │       │   ├── TextType.php
│   │       │   └── VarCharType.php
│   │       ├── Mysql/
│   │       │   ├── BinaryType.php
│   │       │   ├── BitType.php
│   │       │   ├── BlobType.php
│   │       │   ├── EnumType.php
│   │       │   ├── FloatType.php
│   │       │   ├── GeometryCollectionType.php
│   │       │   ├── GeometryType.php
│   │       │   ├── LineStringType.php
│   │       │   ├── LongBlobType.php
│   │       │   ├── LongTextType.php
│   │       │   ├── MediumBlobType.php
│   │       │   ├── MediumIntType.php
│   │       │   ├── MediumTextType.php
│   │       │   ├── MultiLineStringType.php
│   │       │   ├── MultiPointType.php
│   │       │   ├── MultiPolygonType.php
│   │       │   ├── PointType.php
│   │       │   ├── PolygonType.php
│   │       │   ├── SetType.php
│   │       │   ├── TimeStampType.php
│   │       │   ├── TinyBlobType.php
│   │       │   ├── TinyIntType.php
│   │       │   ├── TinyTextType.php
│   │       │   ├── VarBinaryType.php
│   │       │   └── YearType.php
│   │       ├── Postgresql/
│   │       │   ├── BitType.php
│   │       │   ├── BitVaryingType.php
│   │       │   ├── ByteaType.php
│   │       │   ├── CharacterType.php
│   │       │   ├── CharacterVaryingType.php
│   │       │   ├── CidrType.php
│   │       │   ├── DoublePrecisionType.php
│   │       │   ├── GeometryType.php
│   │       │   ├── InetType.php
│   │       │   ├── IntervalType.php
│   │       │   ├── JsonbType.php
│   │       │   ├── MacAddrType.php
│   │       │   ├── MoneyType.php
│   │       │   ├── RealType.php
│   │       │   ├── SmallIntType.php
│   │       │   ├── TimeStampType.php
│   │       │   ├── TimeStampTzType.php
│   │       │   ├── TimeTzType.php
│   │       │   ├── TsQueryType.php
│   │       │   ├── TsVectorType.php
│   │       │   ├── TxidSnapshotType.php
│   │       │   ├── UuidType.php
│   │       │   └── XmlType.php
│   │       ├── Sqlite/
│   │       │   └── RealType.php
│   │       └── Type.php
│   ├── Events/
│   │   ├── AlertsCollection.php
│   │   ├── BreadAdded.php
│   │   ├── BreadChanged.php
│   │   ├── BreadDataAdded.php
│   │   ├── BreadDataChanged.php
│   │   ├── BreadDataDeleted.php
│   │   ├── BreadDataRestored.php
│   │   ├── BreadDataUpdated.php
│   │   ├── BreadDeleted.php
│   │   ├── BreadImagesDeleted.php
│   │   ├── BreadUpdated.php
│   │   ├── FileDeleted.php
│   │   ├── FormFieldsRegistered.php
│   │   ├── MediaFileAdded.php
│   │   ├── MenuDisplay.php
│   │   ├── Routing.php
│   │   ├── RoutingAdmin.php
│   │   ├── RoutingAdminAfter.php
│   │   ├── RoutingAfter.php
│   │   ├── SettingUpdated.php
│   │   ├── TableAdded.php
│   │   ├── TableChanged.php
│   │   ├── TableDeleted.php
│   │   └── TableUpdated.php
│   ├── Facades/
│   │   └── Voyager.php
│   ├── FormFields/
│   │   ├── AbstractHandler.php
│   │   ├── After/
│   │   │   ├── AbstractHandler.php
│   │   │   ├── DescriptionHandler.php
│   │   │   └── HandlerInterface.php
│   │   ├── CheckboxHandler.php
│   │   ├── CodeEditorHandler.php
│   │   ├── ColorHandler.php
│   │   ├── CoordinatesHandler.php
│   │   ├── DateHandler.php
│   │   ├── FileHandler.php
│   │   ├── HandlerInterface.php
│   │   ├── HiddenHandler.php
│   │   ├── ImageHandler.php
│   │   ├── MarkdownEditorHandler.php
│   │   ├── MediaPickerHandler.php
│   │   ├── MultipleCheckboxHandler.php
│   │   ├── MultipleImagesHandler.php
│   │   ├── NumberHandler.php
│   │   ├── PasswordHandler.php
│   │   ├── RadioBtnHandler.php
│   │   ├── RichTextBoxHandler.php
│   │   ├── SelectDropdownHandler.php
│   │   ├── SelectMultipleHandler.php
│   │   ├── TextAreaHandler.php
│   │   ├── TextHandler.php
│   │   ├── TimeHandler.php
│   │   └── TimestampHandler.php
│   ├── Helpers/
│   │   ├── Reflection.php
│   │   ├── helperSlugify.php
│   │   ├── helperTranslations.php
│   │   ├── helpers.php
│   │   └── helpersi18n.php
│   ├── Http/
│   │   ├── Controllers/
│   │   │   ├── ContentTypes/
│   │   │   │   ├── BaseType.php
│   │   │   │   ├── Checkbox.php
│   │   │   │   ├── Coordinates.php
│   │   │   │   ├── File.php
│   │   │   │   ├── Image.php
│   │   │   │   ├── MultipleCheckbox.php
│   │   │   │   ├── MultipleImage.php
│   │   │   │   ├── Password.php
│   │   │   │   ├── Relationship.php
│   │   │   │   ├── SelectMultiple.php
│   │   │   │   ├── Text.php
│   │   │   │   └── Timestamp.php
│   │   │   ├── Controller.php
│   │   │   ├── Traits/
│   │   │   │   └── BreadRelationshipParser.php
│   │   │   ├── VoyagerAuthController.php
│   │   │   ├── VoyagerBaseController.php
│   │   │   ├── VoyagerBreadController.php
│   │   │   ├── VoyagerCompassController.php
│   │   │   ├── VoyagerController.php
│   │   │   ├── VoyagerDatabaseController.php
│   │   │   ├── VoyagerMediaController.php
│   │   │   ├── VoyagerMenuController.php
│   │   │   ├── VoyagerRoleController.php
│   │   │   ├── VoyagerSettingsController.php
│   │   │   └── VoyagerUserController.php
│   │   └── Middleware/
│   │       └── VoyagerAdminMiddleware.php
│   ├── Listeners/
│   │   ├── AddBreadMenuItem.php
│   │   ├── AddBreadPermission.php
│   │   ├── ClearCachedSettingValue.php
│   │   └── DeleteBreadMenuItem.php
│   ├── Models/
│   │   ├── Category.php
│   │   ├── DataRow.php
│   │   ├── DataType.php
│   │   ├── Menu.php
│   │   ├── MenuItem.php
│   │   ├── Page.php
│   │   ├── Permission.php
│   │   ├── Post.php
│   │   ├── Role.php
│   │   ├── Setting.php
│   │   ├── Translation.php
│   │   └── User.php
│   ├── Policies/
│   │   ├── BasePolicy.php
│   │   ├── MenuItemPolicy.php
│   │   ├── PostPolicy.php
│   │   ├── SettingPolicy.php
│   │   └── UserPolicy.php
│   ├── Providers/
│   │   ├── VoyagerDummyServiceProvider.php
│   │   └── VoyagerEventServiceProvider.php
│   ├── Traits/
│   │   ├── AlertsMessages.php
│   │   ├── Renderable.php
│   │   ├── Resizable.php
│   │   ├── Seedable.php
│   │   ├── Spatial.php
│   │   ├── Translatable.php
│   │   └── VoyagerUser.php
│   ├── Translator/
│   │   └── Collection.php
│   ├── Translator.php
│   ├── Voyager.php
│   ├── VoyagerServiceProvider.php
│   └── Widgets/
│       ├── BaseDimmer.php
│       ├── PageDimmer.php
│       ├── PostDimmer.php
│       └── UserDimmer.php
├── stubs/
│   ├── controller.stub
│   └── model.stub
├── tests/
│   ├── AlertTest.php
│   ├── AssetsTest.php
│   ├── BreadMediaUploadTest.php
│   ├── CompassTest.php
│   ├── DatabaseTest.php
│   ├── DisabledTestException.php
│   ├── EventTest.php
│   ├── Feature/
│   │   ├── DashboardTest.php
│   │   └── SeederTest.php
│   ├── FormfieldsTest.php
│   ├── LoginTest.php
│   ├── MenuTest.php
│   ├── Models/
│   │   ├── CategoryTest.php
│   │   ├── PageTest.php
│   │   └── PostTest.php
│   ├── MultilingualTest.php
│   ├── PermissionTest.php
│   ├── RolesTest.php
│   ├── RouteTest.php
│   ├── SearchTest.php
│   ├── SettingsTest.php
│   ├── Stubs/
│   │   └── Widgets/
│   │       ├── AccessibleDimmer.php
│   │       └── InAccessibleDimmer.php
│   ├── TestCase.php
│   ├── Unit/
│   │   ├── Actions/
│   │   │   └── AbstractActionTest.php
│   │   └── VoyagerTest.php
│   ├── UserProfileTest.php
│   ├── ViewEventTest.php
│   ├── bootstrap.php
│   ├── database/
│   │   └── factories/
│   │       ├── RoleFactory.php
│   │       └── UserFactory.php
│   ├── rendered_alerts.html
│   └── views/
│       ├── foo.blade.php
│       ├── hello.blade.php
│       └── test.blade.php
├── versioning.md
└── webpack.mix.js

================================================
FILE CONTENTS
================================================

================================================
FILE: .gitattributes
================================================
*.php linguist-language=PHP
*.js linguist-language=PHP

================================================
FILE: .gitbook.yaml
================================================
root: ./docs/

structure:
  readme: ./introduction.md
  summary: ./summary.md


================================================
FILE: .github/FUNDING.yml
================================================
# These are supported funding model platforms

github: [tnylea, fletch3555, emptynick]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
otechie: # Replace with a single Otechie username
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']


================================================
FILE: .github/ISSUE_TEMPLATE/BUG-REPORT.yml
================================================
name: Bug Report
description: Create a report to help us improve
labels: [possible bug]
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this bug report!
  - type: input
    id: laravel_version
    attributes:
      label: Laravel version
      description: The full Laravel version including minor and patch version
      placeholder: ex. 8.2.2
    validations:
      required: true
  - type: input
    id: php_version
    attributes:
      label: PHP version
      description: Your PHP version
      placeholder: ex. 7.4.21
    validations:
      required: true
  - type: input
    id: voyager_version
    attributes:
      label: Voyager version
      description: The full Voyager version including minor and patch version. When using the dev-version please attach the commit-id (1.x-dev#abcdef)
      placeholder: ex. 1.4.3
    validations:
      required: true
  - type: input
    id: database_version
    attributes:
      label: Database
      description: Your database type and version
      placeholder: ex. MySQL 8.0
    validations:
      required: true
  - type: textarea
    id: description
    attributes:
      label: Description
      description: A clear and concise description of what the bug is.
    validations:
      required: true
  - type: textarea
    id: steps
    attributes:
      label: Steps to reproduce
      description: Steps to reproduce the behavior
    validations:
      required: true
  - type: textarea
    id: expected_behaviour
    attributes:
      label: Expected behavior
      description: A clear and concise description of what you expected to happen.
    validations:
      required: true
  - type: textarea
    id: screenshots
    attributes:
      label: Screenshots
      description: If applicable, add screenshots to help explain your problem.
    validations:
      required: false
  - type: textarea
    id: additional_context
    attributes:
      label: Additional context
      description: Add any other context about the problem here.
    validations:
      required: false

================================================
FILE: .github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml
================================================
name: Feature request
description: Suggest an idea for Voyager
labels: [feature]
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to fill out this feature request!
  - type: input
    id: laravel_version
    attributes:
      label: Laravel version
      description: The full Laravel version including minor and patch version
      placeholder: ex. 8.2.2
    validations:
      required: false
  - type: input
    id: php_version
    attributes:
      label: PHP version
      description: Your PHP version
      placeholder: ex. 7.4.21
    validations:
      required: false
  - type: input
    id: voyager_version
    attributes:
      label: Voyager version
      description: The full Voyager version including minor and patch version. When using the dev-version please attach the commit-id (1.x-dev#abcdef)
      placeholder: ex. 1.4.3
    validations:
      required: false
  - type: textarea
    id: description
    attributes:
      label: Description of problem
      description: A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
    validations:
      required: true
  - type: textarea
    id: solution
    attributes:
      label: Proposed solution
      description: A clear and concise description of what you want to happen.
    validations:
      required: true
  - type: textarea
    id: alternatives
    attributes:
      label: Alternatives considered
      description: A clear and concise description of any alternative solutions or features you've considered.
    validations:
      required: false
  - type: textarea
    id: additional_context
    attributes:
      label: Additional context
      description: Add any other context about the problem here.
    validations:
      required: false

================================================
FILE: .github/ISSUE_TEMPLATE/config.yml
================================================
blank_issues_enabled: false
contact_links:
  - name: Ask a question
    url: https://voyager-slack-invitation.herokuapp.com/
    about: Please ask and answer questions here

================================================
FILE: .github/SECURITY.yml
================================================
If you have a potential security concern to report, please message @fletch3555 or @emptynick directly in our slack group:

https://voyager-slack-invitation.herokuapp.com/

We request that you do NOT report it publicly until we've had a chance to confirm the issue and provide a fix.


================================================
FILE: .github/workflows/automerge.yml
================================================
name: automerge

on:
  push:
    branches-ignore: '*' # ignore everything
#  pull_request:
#    types:
#      - labeled
#      - unlabeled
#      - synchronize
#      - opened
#      - edited
#      - ready_for_review
#      - reopened
#      - unlocked
#  pull_request_review:
#    types:
#      - submitted
#  status: {}

jobs:
  automerge:
    runs-on: ubuntu-latest
    steps:
      - name: 'Wait for status checks'
        id: waitforstatuschecks
        uses: "WyriHaximus/github-action-wait-for-status@f8bbe3bb321919ec6a009bc98121f39874dc8ee0"
        with:
          ignoreActions: automerge
          checkInterval: 30
        env:
          GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
      - name: 'Merge'
        uses: pascalgn/automerge-action@v0.6.1
        if: steps.waitforstatuschecks.outputs.status == 'success'
        env:
          GITHUB_TOKEN: "${{ secrets.GITHUB_TOKEN }}"
          MERGE_LABELS: "automerge,!wip"
          MERGE_METHOD: "squash"
          MERGE_COMMIT_MESSAGE: "pull-request-description"
          MERGE_FORKS: "false"
          MERGE_RETRIES: "6"
          MERGE_RETRY_SLEEP: "10000"
          UPDATE_LABELS: ""
          UPDATE_METHOD: "rebase"


================================================
FILE: .github/workflows/compile-assets.yml
================================================
name: Compile Assets

on:
  push:
    branches:
      - '1.*'
    paths:
      - 'resources/assets/**'
      - 'package.json'

jobs:
  compile-assets:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2

      - uses: actions/setup-node@v1
        with:
          node-version: '16.x'

      - name: Install Dependencies
        run: npm install

      - name: Compile Assets
        run: npm run prod

      - name: Create Pull Request
        uses: peter-evans/create-pull-request@v3
        id: cpr
        with:
          token: ${{ secrets.GITHUB_TOKEN }}
          title: Compile Assets
          commit-message: 'Automatic assets compilation'
          labels: automerge


================================================
FILE: .github/workflows/coverage.yml
================================================
name: Coverage

on:
  push:
    branches:
      - '1.*'
  pull_request:
    types:
      - synchronize
      - opened
      - edited
      - reopened

jobs:
  coverage:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@master

      # Configure PHP
      - name: Select PHP version
        uses: shivammathur/setup-php@master
        with:
          php-version: '8.1'
          extensions: mbstring, pdo_sqlite, fileinfo, gd
          coverage: pcov

      # Configure NPM
      - uses: actions/setup-node@v1
        with:
          node-version: '16.x'

      # Install PHP dependencies
      - name: Install Composer dependencies
        run: composer require "illuminate/support:9.*" --no-ansi

      # Install NPM dependencies
      - name: Install Dependencies
        run: npm install

      # Build static assets
      - name: Compile Assets
        run: npm run prod

      # Run phpunit tests to generate coverage report
      - name: Run tests for coverage
        run: php -d pcov.enabled=1 ./vendor/bin/phpunit --coverage-clover=coverage.xml

      # Upload coverage report to codecov.io
      - name: Upload coverage
        run: bash <(curl -s https://codecov.io/bash)


================================================
FILE: .github/workflows/lock.yml
================================================
name: 'Lock issues'

on:
  schedule:
    - cron: '0 0 * * *'

jobs:
  lock:
    runs-on: ubuntu-latest
    steps:
      - uses: dessant/lock-threads@v2
        with:
          github-token: ${{ github.token }}
          issue-lock-inactive-days: '180'
          issue-exclude-created-before: ''
          issue-exclude-labels: ''
          issue-lock-labels: ''
          issue-lock-reason: 'resolved'
          issue-lock-comment: >
            This issue has been automatically locked since there has not been	
            any recent activity after it was closed.	
            If you have further questions please ask in our Slack group.
          process-only: 'issues'


================================================
FILE: .github/workflows/test.yml
================================================
name: Tests

on:
  push:
    branches:
      - '1.*'
  pull_request:
    types:
      - synchronize
      - opened
      - edited
      - reopened

jobs:
  test:
    runs-on: ubuntu-latest

    strategy:
      fail-fast: false
      matrix:
        php: [7.3, 7.4, 8.0, 8.1, 8.2]
        laravel: ['8.*', '9.*', '10.*']
        exclude:
          - php: 8.2
            laravel: 8.*
          - php: 7.3
            laravel: 9.*
          - php: 7.4
            laravel: 9.*
          - php: 8.2
            laravel: 9.*
          - php: 7.3
            laravel: 10.*
          - php: 7.4
            laravel: 10.*
          - php: 8.0
            laravel: 10.*

    name: 'PHP ${{ matrix.php }} / Laravel ${{ matrix.laravel }}'

    steps:
      - uses: actions/checkout@master

      # Configure PHP
      - name: Select PHP version
        uses: shivammathur/setup-php@master
        with:
          php-version: '${{ matrix.php }}'
          extensions: mbstring, pdo_sqlite, fileinfo, gd
          coverage: none

      # Configure NPM
      - uses: actions/setup-node@v1
        with:
          node-version: '16.x'

      # Install PHP dependencies
      - name: Install Composer dependencies
        run: composer require "illuminate/support:${{ matrix.laravel }}"

      # Display installed laravel version
      - name: Show laravel version
        run: composer show laravel/framework

      # Generate vendor symlink
      - name: Generate vendor symlink
        run: ./vendor/bin/testbench

      # Install NPM dependencies
      - name: Install Dependencies
        run: npm install

      # Build static assets
      - name: Compile Assets
        run: npm run prod

      # Run phpunit tests
      - name: Run tests
        run: ./vendor/bin/phpunit --no-coverage



================================================
FILE: .gitignore
================================================
/node_modules
.DS_Store
.idea
vendor
build
.lock
composer.lock
.phpunit.result.cache
.phpunit.cache


================================================
FILE: .php_cs
================================================
<?php
$excluded_folders = [
    'node_modules',
    'storage',
    'vendor'
];
$finder = PhpCsFixer\Finder::create()
    ->exclude($excluded_folders)
    ->in(__DIR__);

return PhpCsFixer\Config::create()
    ->setRules(array(
        '@PSR2' => true,
        'lowercase_constants' => false,
        'method_argument_space' => false,
    ))
    ->setFinder($finder);

================================================
FILE: ISSUE_TEMPLATE
================================================
<!---
IF YOU'RE POSTING A QUESTION ABOUT HOW TO USE VOYAGER, PLEASE CONSIDER ASKING IN SLACK FIRST

PLEASE CONSIDER USING ONE OF THE DEFINED TEMPLATES INSTEAD
--->
## Version information
<!--- The following information is strongly encouraged --->
 - Laravel: v#.#.#
 - Voyager: v#.#.#
 - PHP: #.#
 - Database: [type] [version] (e.g. MySQL 8.0)

## Description:
A clear and concise description of what the problem is.  Please also explain why this doesn't fit into the defined issue templates

## Additional context
Add any other context or screenshots about the feature request here.


================================================
FILE: README.md
================================================
<p align="center"><a href="https://voyager.devdojo.com" target="_blank"><img width="400" src="https://s3.amazonaws.com/thecontrolgroup/voyager.png"></a></p>

> [!Warning]
> We have decided to archive Voyager as there are many more modern options available. You may still use Voyager, but it will not be receiving any more updates. Here are some alternatives that we recommend:

- [Wave SaaS Starter Kit](https://devdojo.com/wave)
- [FilamentPHP Admin Panel & More](https://filamentphp.com)
- [Genesis Starter Kit](https://github.com/thedevdojo/genesis)

Of course, you may also wish to reach for Laravels admin panel [Nova](https://nova.laravel.com/), or you may want to reach for one of their many [Starter Kits](https://laravel.com/docs/starter-kits).

Thanks for all the wonderful times 🕺

> Voyager is built with Vue and Bootstrap. If you are looking for a Laravel Starter Kit built that uses Livewire and Tailwind, you may be interested in checking out [Genesis](https://github.com/thedevdojo/genesis)

<p align="center"><a href="https://github.com/thedevdojo/genesis" target="_blank"><img src="https://github.com/thedevdojo/voyager/assets/601261/6ffa6ac4-ea1e-4c8a-8360-b347377b8201" height="auto" width="100%"></a></p>

<p align="center">
<a href="https://packagist.org/packages/tcg/voyager"><img src="https://poser.pugx.org/tcg/voyager/downloads.svg?format=flat" alt="Total Downloads"></a>
<a href="https://packagist.org/packages/tcg/voyager"><img src="https://poser.pugx.org/tcg/voyager/v/stable.svg?format=flat" alt="Latest Stable Version"></a>
<a href="https://packagist.org/packages/tcg/voyager"><img src="https://poser.pugx.org/tcg/voyager/license.svg?format=flat" alt="License"></a>
<a href="https://github.com/larapack/awesome-voyager"><img src="https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg" alt="Awesome Voyager"></a>
</p>

# **V**oyager - The Missing Laravel Admin
Made with ❤️ by [The Control Group](https://www.thecontrolgroup.com)

![Voyager Screenshot](https://s3.amazonaws.com/thecontrolgroup/voyager-screenshot.png)

Website & Documentation: https://voyager.devdojo.com/

Video Tutorial Here: https://voyager.devdojo.com/academy/

Join our Slack chat: https://voyager-slack-invitation.herokuapp.com/

View the Voyager Cheat Sheet: https://voyager-cheatsheet.ulties.com/

<hr>

Laravel Admin & BREAD System (Browse, Read, Edit, Add, & Delete), supporting Laravel 8 and newer!

> Want to use Laravel 6 or 7? Use [Voyager 1.5](https://github.com/the-control-group/voyager/tree/1.5)

## Installation Steps

### 1. Require the Package

After creating your new Laravel application you can include the Voyager package with the following command:

```bash
composer require tcg/voyager
```

> If you are installing this on Laravel 10, we are working on getting a permanent release available; however, you can still use this with Larvel 10 by requiring the following:

```bash
composer require tcg/voyager dev-1.6-l10
```

### 2. Add the DB Credentials & APP_URL

Next make sure to create a new database and add your database credentials to your .env file:

```
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
```

You will also want to update your website URL inside of the `APP_URL` variable inside the .env file:

```
APP_URL=http://localhost:8000
```

### 3. Run The Installer

Lastly, we can install voyager. You can do this either with or without dummy data.
The dummy data will include 1 admin account (if no users already exists), 1 demo page, 4 demo posts, 2 categories and 7 settings.

To install Voyager without dummy simply run

```bash
php artisan voyager:install
```

If you prefer installing it with dummy run

```bash
php artisan voyager:install --with-dummy
```

And we're all good to go!

Start up a local development server with `php artisan serve` And, visit [http://localhost:8000/admin](http://localhost:8000/admin).

## Creating an Admin User

If you did go ahead with the dummy data, a user should have been created for you with the following login credentials:

>**email:** `admin@admin.com`   
>**password:** `password`

NOTE: Please note that a dummy user is **only** created if there are no current users in your database.

If you did not go with the dummy user, you may wish to assign admin privileges to an existing user.
This can easily be done by running this command:

```bash
php artisan voyager:admin your@email.com
```

If you did not install the dummy data and you wish to create a new admin user, you can pass the `--create` flag, like so:

```bash
php artisan voyager:admin your@email.com --create
```

And you will be prompted for the user's name and password.

## Sponsors

Voyager is proudly supported by our amazing sponsors. A big thank you to:

[![DigitalOcean Referral Badge](https://web-platforms.sfo2.cdn.digitaloceanspaces.com/WWW/Badge%203.svg)](https://www.digitalocean.com/?refcode=dc19b9819d06&utm_campaign=Referral_Invite&utm_medium=Referral_Program&utm_source=badge)



================================================
FILE: composer.json
================================================
{
  "name": "tcg/voyager",
  "description": "A Laravel Admin Package for The Control Group to make your life easier and steer your project in the right direction",
  "keywords": [
    "laravel",
    "admin",
    "panel"
  ],
  "license": "MIT",
  "homepage": "https://voyager.devdojo.com/",
  "support": {
    "issues": "https://github.com/the-control-group/voyager/issues",
    "source": "https://github.com/the-control-group/voyager"
  },
  "authors": [
    {
      "name": "Tony Lea",
      "email": "tony.lea@thecontrolgroup.com"
    }
  ],
  "require": {
    "php": "^7.3|^7.4|^8.0|^8.1|^8.2|^8.3",
    "illuminate/support": "~8.0|~9.0|~10.0|~11.0",
    "intervention/image": "^2.7|^3.0",
    "doctrine/dbal": "^3.1|^3.5|^4.0",
    "laravel/ui": ">=1.0",
    "arrilot/laravel-widgets": "^3.7",
    "league/flysystem": "~1.1|~2.0|~3.0",
    "ext-json": "*"
  },
  "require-dev": {
    "phpunit/phpcov": ">=6.0",
    "phpunit/phpunit": ">=8.0",
    "laravel/framework": "~8.0|~9.0|~10.0",
    "orchestra/testbench": ">=6.0",
    "laravel/browser-kit-testing": ">=6.1.0",
    "orchestra/testbench-browser-kit": ">=4.0"
  },
  "autoload": {
    "psr-4": {
      "TCG\\Voyager\\": "src/"
    }
  },
  "autoload-dev": {
    "psr-4": {
      "TCG\\Voyager\\Tests\\": "tests/",
      "TCG\\Voyager\\Tests\\Database\\Factories\\": "tests/database/factories/",
      "Database\\Seeders\\": "vendor/orchestra/testbench-core/laravel/database/seeders"
    }
  },
  "minimum-stability": "stable",
  "extra": {
    "laravel": {
      "providers": [
        "TCG\\Voyager\\VoyagerServiceProvider",
        "TCG\\Voyager\\Providers\\VoyagerDummyServiceProvider"
      ]
    }
  },
  "scripts": {
    "post-autoload-dump": [
      "@php vendor/bin/testbench package:discover --ansi"
    ]
  }
}


================================================
FILE: docs/bread/formfields/checkbox.md
================================================
# Checkbox

```php
{
    "on" : "On Text",
    "off" : "Off Text",
    "checked" : true
}
```

In Voyager a Checkbox is converted into a toggle switch, and as you can see above the `on` key will contain the value when the toggle switch is on, and the `off` will contain the value that is set when the switch is off. If `checked` is set to _true_ the checkbox will be toggle on; otherwise by default it will be off.

# Multiple Checkbox

```php
{
    "checked" : true,
    "options": {
        "checkbox1": "Checkbox 1 Text",
        "checkbox2": "Checkbox 2 Text"
    }
}
```

You can create as many checkboxes as you want.  

# Radio Button

```php
{
    "default" : "radio1",
    "options" : {
        "radio1": "Radio Button 1 Text",
        "radio2": "Radio Button 2 Text"
    }
}
```

The Radio button is exactly the same as the dropdown. You can specify a `default` if one has not been set and in the `options` object you will specify the _value_ of the option on the **left** and the _text_ to be displayed on the **right**.


================================================
FILE: docs/bread/formfields/coordinates.md
================================================
# Coordinates

## Optional Details

Set these in the Edit BREAD interface

### showLatLngInput / showAutocompleteInput

Set either of these to `false` to not include that input. Both default to `true`.

```json
{
  "showAutocompleteInput": false,
  "showLatLngInput": false
}
```

### onChange

```json
{
  "onChange": "myFunction"
}
```

Defines an onChange callback so that you can perform subsequent actions (such as using the Autocomplete Place address to populate another field) after the user changes any of the inputs in this formfield.

onChange callback is debounced at 300ms.

First parameter is `eventType` ("mapDragged", "latLngChanged", or "placeChanged"). Second parameter is `data` object containing `lat`, `lng`, and `place` properties.

```javascript
function myFunction(eventType, data) {
  console.log('eventType', eventType);
  console.log('data.lat', data.lat);
  console.log('data.lng', data.lng);
  console.log('data.place', data.place);
}
```


================================================
FILE: docs/bread/formfields/date-time.md
================================================
# Date & Timestamp

```php
{
    "format" : "%Y-%m-%d"
}
```

The date & timestamp input field is where you can input a date. In the JSON above you can specify the `format` value of the output of the date. It allows you to display a formatted `date` in browse and read views, using Carbon's `formatLocalized()` method


================================================
FILE: docs/bread/formfields/dropdown.md
================================================
# Dropdown

```php
{
    "default" : "option1",
    "options" : {
        "option1": "Option 1 Text",
        "option2": "Option 2 Text"
    }
}
```

When specifying that an input type should be a dropdown you will need to specify the values of that dropdown. In the JSON above you can specify the `default` value of the dropdown if it does not have a value. Additionally, in the `options` object you will specify the _value_ of the option on the **left** and the _text_ to be displayed on the **right**.


================================================
FILE: docs/bread/formfields/images.md
================================================
# Images

```php
{
    "resize": {
        "width": "1000",
        "height": null
    },
    "quality" : "70%",
    "upsize" : true,
    "thumbnails": [
        {
            "name": "medium",
            "scale": "50%"
        },
        {
            "name": "small",
            "scale": "25%"
        },
        {
            "name": "cropped",
            "crop": {
                "width": "300",
                "height": "250"
            }
        }
    ]
}
```

The image input has many options. By default if you do not specify any options no problem... Your image will still be uploaded. But, if you want to resize an image, set the quality of the image, or specify thumbnails for the uploaded image you will need to specify those details.

**resize** If you want to specify a size you will need to include that in the `resize` object. If you set either **height** or **width** to null it will keep the aspect ratio based on the width or height that is set. So, for the example above the `width` is set to `1000` pixels and since the `height` is set to `null` it will resize the image width to 1000 pixels and resize the height based on the current aspect ratio.

**quality** If you wish to compress the image with a percentage quality you can specify that percentage in the `quality` key. Typically between 70 and 100% there is little notice of image quality, but the image size may be dramatically lower.

**upsize** This is only valid if you have set your image to be resized. If you specify your image to resized to 1000 pixels and the image is smaller than 1000 pixels by default it will not upsize that image to the 1000 pixels; however, if you set `upsize` to true. It will upsize all images to your specified resize values.

**thumbnails** Thumbnails takes an array of objects. Each object is a new thumbnail that is created. Each object contains 2 values, the `name` and `scale` percentage. The `name` will be attached to your thumbnail image \(as an example say the image you uploaded was ABC.jpg a thumbnail with the `name` of `medium` would now be created at ABC-medium.jpg\). The `scale` is the percentage amount you want that thumbnail to scale. This value will be a percentage of the _resize_ width and height if specified.


================================================
FILE: docs/bread/formfields/introduction.md
================================================
# Formfields

Formfields are the hearth of Voyagers BREAD-system.  
Each formfield represents a field in your database-table and one input (or output) in BREAD.  
To tweak your formfields you can insert JSON options which are described in the following pages.  

All formfields share a handful options:

## Description

All types can include a description in order to help your future self or other users using your Voyager admin panel to understand exactly what a specific BREAD input field is for, this can be defined in the `Optional Details` JSON input field:

```php
{
    "description": "A helpful description text here for your future self."
}
```

## Display options

There are also a few options that you can include to change the way your BREAD is displayed. You can add a `display` key to your json object and change the width of the particular field and even specify a custom ID.

```php
{
    "display": {
        "width": "3",
        "id": "custom_id"
    }
}
```

The width is displayed on a 12-grid system. Setting it with a width of 3 will span 25% of the width.

The **id** will let you specify a custom id wrapper around your element. example:

```markup
<div id="custom_id">
    <!-- Your field element -->
</div>
```

## Default value

Most formfields allow you to define a default value when adding an entry:

```php
{
    "default" : "Default text"
}
```

## Null Values

You might want to save an input field into the database as a `null` value instead of an empty string.

Simply enough, inside the BREAD you can include the following _Optional Details_ for the field:

```php
{
    "null": ""
}
```

This will turn an empty string into a `null` value. However you might want to be able to add both an empty string and a `null` value to the database for that field. However you have to choose a replacement for the `null` value, but it can be anything you wish. For example, if you want a field to change a string \(ex. `Nothing`\) into a `null` value you could include the following _Optional Details_ for that field:

```php
{
    "null": "Nothing"
}
```

Now entering `Nothing` into the field will end up as a `null` value in the database.

## Generating Slugs

Using the bread builder you may wish to automatically generate slugs of a certain input. Lets say you have some posts, which have a title and a slug. If you want to automatically generate the slug from the title attribute, you may include the following _Optional Details_:

```php
{
    "slugify": {
        "origin": "title",
        "forceUpdate": true
    }
}
```

This will automatically generate the slug from the input of the `title` field. If a slug does already exists, it will only be updated if `forceUpdate` is set enabled, by default this is disabled.

## Custom view

You can specify a custom view to be used for a formfield.  
To do so, you have to specify the `view` attribute for your desired field:

```text
{
    "view": "my_view"
}
```

This will then load `my_view` from `resources/views` instead of the formfield.

You get plenty of data passed to your view for you to use:

* `$view` can be `browse`, `read`, `edit`, `add` or `order`
* `$content` the content for this field
* `$dataType` the DataType
* `$dataTypeContent` the whole model-instance
* `$row` the DataRow
* `$options` the DataRow details

You can also use a custom field view for a specific action (browse, edit, etc) or for similar actions (browse and read).  
The custom views are:

```text
{
    "view_browse": "my_browse_view",
    "view_read": "my_read_view",
    "view_add": "my_add_view",
    "view_edit": "my_edit_view",
    "view_order": "my_order_view"
}
```

The same variables as above will be passed to your custom action view.

{% hint style="info" %}
**Developing a custom formfield?**  
If you are developing a custom formfield and want to customize any of the views, you can do so by merging `view` into `$options` in your formfields `createContent()` method.
{% endhint %}


================================================
FILE: docs/bread/formfields/media-picker.md
================================================
# Media Picker

The media picker formfield allows you to upload/delete/select files directly from the media-manager.  
You can customize the behaviour with the following options:

```php
{
    "max": 10,
    "min": 0,
    "expanded": true,
    "show_folders": true,
    "show_toolbar": true,
    "allow_upload": true,
    "allow_move": true,
    "allow_delete": true,
    "allow_create_folder": true,
    "allow_rename": true,
    "allow_crop": true,
    "allowed": [],
    "hide_thumbnails": false,
    "quality": 90,
    "watermark": {
        "source": "...",
        "position": "top-left",
        "x": 0,
        "y": 0
    }
}
```

<table>
  <thead>
    <tr>
      <th style="text-align:left">Name</th>
      <th style="text-align:left">Description</th>
      <th style="text-align:left">Type</th>
      <th style="text-align:left">Default</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td style="text-align:left">base_path</td>
      <td style="text-align:left">The start path relative to the filesystem</td>
      <td style="text-align:left">String</td>
      <td style="text-align:left">/bread-slug/</td>
    </tr>
    <tr>
      <td style="text-align:left">rename</td>
      <td style="text-align:left">Rename uploaded files to a given string/expression</td>
      <td style="text-align:left">String</td>
      <td style="text-align:left">Original name</td>
    </tr>
    <tr>
      <td style="text-align:left">delete_files</td>
      <td style="text-align:left">
        <p>Delete files if the BREAD entry is deleted.</p>
        <p>Use with caution!</p>
      </td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">false</td>
    </tr>
    <tr>
      <td style="text-align:left">show_as_images</td>
      <td style="text-align:left">Shows stored data as images when browsing</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">false</td>
    </tr>
    <tr>
      <td style="text-align:left">min</td>
      <td style="text-align:left">The minimum amount of files that can be selected</td>
      <td style="text-align:left">int</td>
      <td style="text-align:left">0</td>
    </tr>
    <tr>
      <td style="text-align:left">max</td>
      <td style="text-align:left">
        <p>The maximum amount of files that can be selected.</p>
        <p>0 means infinite</p>
      </td>
      <td style="text-align:left">int</td>
      <td style="text-align:left">0</td>
    </tr>
    <tr>
      <td style="text-align:left">expanded</td>
      <td style="text-align:left">If the media-picker should be expanded by default</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">show_folders</td>
      <td style="text-align:left">Show subfolders</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">show_toolbar</td>
      <td style="text-align:left">Shows/hides the whole toolbar</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">false</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_upload</td>
      <td style="text-align:left">Allow users to upload new files</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_move</td>
      <td style="text-align:left">Allow users to move files/folders</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_delete</td>
      <td style="text-align:left">Allow users to delete files</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_create_folder</td>
      <td style="text-align:left">Allow users to create new folders</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_rename</td>
      <td style="text-align:left">
        <p>Allow users to rename files.</p>
        <p>Use with caution!</p>
      </td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">allow_crop</td>
      <td style="text-align:left">Allow users to crop images</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">hide_thumbnails</td>
      <td style="text-align:left">Hides known thumbnails and shows them as children of the parent image</td>
      <td style="text-align:left">bool</td>
      <td style="text-align:left">true</td>
    </tr>
    <tr>
      <td style="text-align:left">quality</td>
      <td style="text-align:left">Sets the quality of uploaded images and thumbnails</td>
      <td style="text-align:left">int</td>
      <td style="text-align:left">90</td>
    </tr>
    <tr>
      <td style="text-align:left">allowed</td>
      <td style="text-align:left">
        <p>The allowed types to be uploaded/selected.</p>
        <p>Empty object means all types.</p>
        <p>Files with other types won&apos;t be displayed.</p>
      </td>
      <td style="text-align:left">Object</td>
      <td style="text-align:left">[]</td>
    </tr>
  </tbody>
</table>

### Allowed types

If you want your users to only be able to upload specific file-types you can do so by passing an object with mime-types to the \`allowed\` prop, for example:

```text
["image", "audio", "video"]
```

or

```text
["image/jpeg", "image/png", "image/bmp"]
```

### Expressions

The `base_path` and `rename` can contain the following placeholders:

* `{pk}` the primary-key of the entry \(only for `base_path`\)
* `{uid}` the user-id of the current logged-in user
* `{date:format}` the current date in the format defined in `format`. For example `{date:d.m.Y}`
* `{random:10}` random string with N characters

So a `base_path` can, for example, look like the following:

```text
{
    "base_path": "/my-bread/{pk}/{date:Y}/{date:m}/"
}
```

### Watermark
A watermark can be added to uploaded images. To do so, you need to define a `source` property relative to Voyagers storage-disk.
There are a few optional arguments you can use:  
**position** the position where the watermark is placed. Can be:
- top-left (default)
- top
- top-right
- left
- center
- right
- bottom-left
- bottom
- bottom-right

**x** Relative offset to the position on the x-axis. Defaults to 0

**y** Relative offset to the position on the y-axis. Defaults to 0

**size** the size (in percent) of the watermark relative to the image. Defaults to 15

### Thumbnails
You can generate thumbnails for each uploaded image.  
A thumbnail can be one of three types:
#### Fit
Fit combines cropping and resizing to find the best way to generate a thumbnail matching your dimensions.  
You have to pass `width` and can pass `height` and `position`.  
An example for `fit` would be:
```
{
    "thumbnails": [
        {
            "type": "fit",
            "name": "fit-500",
            "width": 500, // Required
            "height": 500, // Optional
            "position": "center" // Optional. Refer to http://image.intervention.io/api/fit
        }
    ]
}
```
#### Crop
Crop an image by given dimensions and position.
You have to pass `width` and `height` and can pass `x` and `y`.  
An example for `crop` would be:
```
{
    "thumbnails": [
        {
            "type": "crop",
            "name": "crop-500-500",
            "width": 500, // Required
            "height": 500, // Required
            "x": 50, // Optional. Left offset
            "y": 50, // Optional. Top offset
        }
    ]
}
```

#### Resize
Resize the image to the given dimensions.
You have to pass `width` and/or `height`.  
Some examples for `resize`:
```
{
    "thumbnails": [
        // Width will be 500px, height will be calculated based on the aspect-ratio
        {
            "type": "resize",
            "name": "resize-500",
            "width": 500,
            "upsize": true, // Optional. Set to false to prevent upsizing
        },
        // Resizes the image to 500x500px
        {
            "type": "resize",
            "name": "resize-500-500",
            "width": 500,
            "height": 500
        },
        // Height will be 500px, width will be auto-calculated
        {
            "type": "resize",
            "name": "resize-500",
            "width": null,
            "height": 500
        }
    ]
}
```

A watermark can also be inserted into each thumbnail. Just define the [watermark-options](#watermark) on the parent and set `watermark` to `true` for each thumbnail you want to insert the watermark to.


================================================
FILE: docs/bread/formfields/number.md
================================================
# Number

```php
{
    "step" : 0.1,
    "min" : 0,
    "max" : 10,
    "default": 1,
}
```

These are standard attributes for number input field, default value for step is any if not defined.


================================================
FILE: docs/bread/formfields/tinymce.md
================================================
# TinyMCE

If you want to customize TinyMCE within Voyager, you can do so by adding a [additional JS file](../../customization/additional-css-js.md) to your config.

In this file you have to define a function like

```javascript
function tinymce_init_callback(editor)
{
    //...
}
```

If you need to manipulate TinyMCE **before** it was initialized, you can use

```javascript
function tinymce_setup_callback(editor)
{
    //...
}
```

If you want to customize TinyMCE init configuration Options you can merge your custom options in BREAD details as follow:

```php
{
    "tinymceOptions" : {
        "name": "value"
    }
}
```

If you want to use tinyMCE outside it's default template `rich_text_box` you'll need initialize it with:

```javascript
tinymce.init(window.voyagerTinyMCE.getConfig());
```

For all possible variables, functions and configuration Options please refer to the [TinyMCE documentation](https://www.tinymce.com/docs/api/tinymce/tinymce.editor/).


================================================
FILE: docs/bread/introduction.md
================================================
# Introduction

When adding or editing the current BREAD for a database table you will first see the BREAD info which allows you to set the Display Names, slug, icon, `Model` and Controller Namespace, Policy Name. You can also choose if you would like to Generate permissions for that BREAD type.

![](../.gitbook/assets/bread_details.png)

When you scroll down you will see each of the rows that are associated with that table where you can select where in your views you want to see each of those fields:

* BROWSE \(field will show up when you browse the current data\)
* READ \(field will show when you click to view the current data\)
* EDIT \(field will be visible and allow you to edit the data\)
* ADD \(field will be visible when you choose to create a new data type\)
* DELETE \(doesn't pertain to delete so this can be checked or unchecked\)

![](../.gitbook/assets/bread_fields.png)

You may also choose to specify what form type you want to use for each field. This can be a TextBox, TextArea, Checkbox, Image, and many other types of form elements.

Each field also has additional details or options that can be included. These types are checkbox, dropdown, radio button, and image.

## Validation

Inside of the _Optional Details_ section for each row in your BREAD you can also specify validation rules with some simple JSON. Here is an example of how to add a validation rule for _required_ and _max length of 12_

```php
{
    "validation": {
        "rule": "required|max:12"
    }
}
```

Additionally, you may wish to add some custom error messages which can be accomplished like so:

```php
{
    "validation": {
        "rule": "required|max:12",
        "messages": {
            "required": "This :attribute field is a must.",
            "max": "This :attribute field maximum :max."
        }
    }
}
```

You can also define multiple rules the following way:

```php
{
    "validation": {
        "rule": [
            "required",
            "max:12"
        ]
    }
}
```

### Action specific rules

You can define separate validation rules for edit and add:

```text
{
    "validation": {
        "rule": "min:3",
        "edit": {
            "rule": "nullable"
        },
        "add": {
            "rule": "required"
        }
    }
}
```

You can find a list of all available validation rules in the [Laravel docs](https://laravel.com/docs/validation#available-validation-rules).

## Tagging

Tagging gives you the possibility to add new items to a Belongs-To-Many relationship directly when editing or adding a BREAD.

To activate this function, you simply have to enable `Tagging` in the relationship details

![](../.gitbook/assets/tagging.jpg)

After that you can enter a free-text into the select and hit enter to save a new relationship.

{% hint style="info" %}
**Be aware:**

This only stores the `display-column` so you have to make sure that all other fields are either nullable or have a default value.
{% endhint %}

## Ordering Bread Items

You can define the default order for browsing BREADs and order your BREAD items with drag-and-drop.  
For this you need to change the settings for your BREAD first:

![](../.gitbook/assets/bread_settings_order.png)

**Order column** is the field in your table where the order is stored as an integer.  
**Order display column** is the field which is shown in the drag-drop list.  
**Order direction** the direction in which the field is ordered.

After this you can go to your BREAD-browse page and you will see a button **Order.**  
Clicking this button will bring you to the page where you can re-arrange your items:

![](../.gitbook/assets/bread_order.png)

## Scope browse-results

If you want to filter the browse results for a BREAD you can do so by creating a [Scope](https://laravel.com/docs/eloquent#local-scopes) in your model. For example if you want to only show posts that were created by the current user, define a Scope like the following:

```php
<?php
public function scopeCurrentUser($query)
{
    return $query->where('author_id', Auth::user()->id);
}
```

Next, go to the BREAD-settings for `posts` and look for the `Scope` input and select `currentUser`:

![](../.gitbook/assets/bread_scope.jpg)

After hitting `Submit` you will only see your own posts.


================================================
FILE: docs/bread/relationships.md
================================================
# Relationships

## Adding a relationship

Using the BREAD builder you can easily create Relationships between tables. At the bottom of the page you will see a new button that says 'Create Relationship'

![](../.gitbook/assets/bread_relationship.png)

{% hint style="info" %}
**Notice**  
If you have not yet created the BREAD for the table yet, it will need to be created first and then you can come back after creating the BREAD to add the relationship. Otherwise you'll end up with a notification which looks like the following.
{% endhint %}

![](../.gitbook/assets/bread_relationship_no_bread.png)

So, after the BREAD has already been created you will then be able to create a new relationship. After you click on the 'Create a Relationship' button. You will see a new Modal window that looks like the following:

![](../.gitbook/assets/bread_relationship_form.png)

You will first specify which type of relationship this is going to be, then you will select the table you are referencing and which Namespace that belongs to that table. You will then select which row combines those tables.

You can also specify which columns you would like to see in the dropdown or the multi-select.

Now, you can easily create `belongsTo`, `belongsToMany`, `hasOne`, and `hasMany` relationships directly in Voyager.

## Advanced options

If you need to set advanced options for `belongsToMany` relationship you can set, after saving relationship, these parameters in details field:

```php
{
    "foreign_pivot_key": "user_id",
    "related_pivot_key": "role_id",
    "parent_key": "id"
}
```

## Sorting relationships

You can sort the results of a relationship by setting the `sort` object in the relationship options:

```php
{
    "sort": {
        "field": "my_field",
        "direction": "asc"
    }
}
```

Or

```php
{
    "sort": {
        "field": "my_field",
        "direction": "desc"
    }
}
```
To sort by `my_field` descending.


## Scoping relationships

You can easily filter the shown relationship options by defining a [local scope](https://laravel.com/docs/eloquent#local-scopes) in the foreign model.  
For example, if you want to only show active entries, create a scope like:

```php
public function scopeActive($query)
{
    return $query->where('active', 1);
}
```

And add the following to the relationship options:

```php
{
    "scope": "active",
}
```

The value is the name of your scope-method without the word `scope`.  
The value for `scopeActive()` is `active`. For `scopeSomeUsers()` it is `someUsers`.

{% hint style="info" %}
In a BelongsTo relationship the foreign key field decides if value can be saved on add or edit and applies validation rules for everything else, like visibility in browse and edit, the relationship field is used.
{% endhint %}


================================================
FILE: docs/core-concepts/compass.md
================================================
# Compass

The Compass section is a quick place for you to go for some link references, font references, run some commands or view some logs.

In the first tab you will see a few link resources and you will see all the fonts that you can use inside of Voyager.

![](../.gitbook/assets/compass_1.png)

In the Command section you can actually run some artisan commands directly from Voyager.

![](../.gitbook/assets/compass_2.png)

And Lastly, under the Logs tab you will be able to view all your application logs.

![](../.gitbook/assets/compass_3.png)



================================================
FILE: docs/core-concepts/database-manager.md
================================================
# Database Manager

Voyager has some awesome database tools which allow you to Add/Edit/Delete or view current database tables. The other cool part of Voyager is that you can add BREAD or \(Browse, Read, Edit, Add, & Delete\) functionality to any of your tables.

![](../.gitbook/assets/database-manager.png)

Inside of your admin panel you can visit Tools-&gt;Database and you'll be able to view all your current tables in your database. You may also click on 'Create a New Table' to create a new table in your database. All newly created tables will use the charset defined in your [default database connection](https://laravel.com/docs/database#configuration).

![](../.gitbook/assets/database_new_table.png)

If you click the table name you can view the current schema. Additionally you can click on the View, Edit, or Delete buttons to perform that action for that table.

You may also choose to Add BREAD \(Browse, Read, Edit, Add, & Delete\) for any of your database tables. Once a table already has BREAD you may choose to edit the current BREAD or Delete the BREAD for that table.

Read on further about the BREAD builder in the next section.



================================================
FILE: docs/core-concepts/helper-methods.md
================================================
# Helper methods

Voyager has several helper functions that are ready to use. Here you can find the list of available function that may speed up your development.

## Thumbnails URL

Voyager will generate thumbnails for Image field type when you specify the [additional field options](../bread/introduction.md#additional-field-options).

After you have your thumbnails generated, you may want to display the thumbnails in your view or get the thumbnail URL. In order to do that you need to add `Resizable` traits to your model.

```php
use TCG\Voyager\Traits\Resizable;

class Post extends Model
{
    use Resizable;
}
```

### Display a single image

```php
@foreach($posts as $post)
    <img src="{{Voyager::image($post->thumbnail('small'))}}" />
@endforeach
```

Or you can specify the optional image field name \(attribute\), default to `image`

```php
@foreach($posts as $post)
    <img src="{{Voyager::image($post->thumbnail('small', 'photo'))}}" />
@endforeach
```

### Display multiple images

```php
@foreach($posts as $post)
    $images = json_decode($post->images);
    @foreach($images as $image)
        <img src="{{ Voyager::image($post->getThumbnail($image, 'small')) }}" />
    @endforeach
@endforeach
```



================================================
FILE: docs/core-concepts/media-manager.md
================================================
# Media Manager

Voyager has a full-fledged Media Manager which allows you to upload files, re-name files, and delete files. You can also add new folders and move files/folders. Basically anything that you would be able to do in any type of Media Manager you can do so in the Voyager Media Manager.

![](../.gitbook/assets/media_manager.png)

You may also drag and drop files onto the 'upload' button to upload multiple files.  
The media manager allows you to create thumbnails and add watermarks to uploaded images through the configuration file.  
Please visit the [media-picker documentation](../bread/formfields/media-picker.md#watermark) to learn about the configuration options.  

{% hint style="info" %}
**Notice on File Upload Size**  
If you are getting an error when trying to upload large files, this may be a setting that needs to be changed in your PHP. Be sure to check `max_file_upload` and `file_upload_size`
{% endhint %}


================================================
FILE: docs/core-concepts/menus-and-menu-builder.md
================================================
# Menus and Menu Builder

With Voyager you can easily create menus for your application. In fact the Voyager admin is using the menu builder for the navigation you use on the left hand side.

You can view your current Menus by clicking on the _Tools-&gt;Menu Builder_ button. You can add, edit, or delete any current menu. This means that you can create a new menu for the header, sidebar, or footer of your site. Create as many menus as you would like.

When you are ready to add menu items to your menu you can click on the builder button of the corresponding menu:

![](../.gitbook/assets/menu_1.jpg)

This will take you to the Menu Builder where you can add, edit, and delete menu items.

![](../.gitbook/assets/menu_2.jpg)

After creating and configuring your menu, you can easily implement that menu in your application. Say that we have a menu called `main`. Inside of any view file we could now output the menu by using the following code:

```php
menu('main');
```

This will output your menu in an unstyled unordered list. If you do use bootstrap to stylize your web app you can pass a second argument to the menu display method telling it that you want to stylize the menu with bootstrap styles like so:

```php
menu('main', 'bootstrap');
```

Taking it one more step further you can even specify your own view and stylize your menu however you would like. Say for instance that we had a file located at `resources/views/my_menu.blade.php`, which contained the following code:

```markup
<ul>
    @foreach($items as $menu_item)
        <li><a href="{{ $menu_item->link() }}">{{ $menu_item->title }}</a></li>
    @endforeach
</ul>
```

Then anywhere you wanted to display your menu you can now call:

```php
menu('main', 'my_menu');
```

And your custom menu will now be output.

## Menu as JSON

If you dont want to render your menu but get an array instead, you can pass `_json` as the second parameter. For example:

```php
menu('main', '_json')
```

This will give you a collection of menu-items.



================================================
FILE: docs/core-concepts/multilanguage.md
================================================
# Multilanguage

Voyager supports multiple languages for your models.To get started, you need to configure some things first.

## Setup

First you need to define some `locales` in your `config/voyager.php` file and `enable` multilanguage:

```php
'multilingual' => [
        'enabled' => true,
        'default' => 'en',
        'locales' => [
            'en',
            'da',
        ],
    ],
```

After that you need to include the `Translatable` Trait in your model and define the translatable attributes:

```php
use TCG\Voyager\Traits\Translatable;
class Post extends Model
{
    use Translatable;
    protected $translatable = ['title', 'body'];
}
```

Now you will see a language-selection in your Pages BREAD.

## Usage

### Eager-load translations

```php
// Loads all translations
$posts = Post::with('translations')->get();

// Loads all translations
$posts = Post::all();
$posts->load('translations');

// Loads all translations
$posts = Post::withTranslations()->get();

// Loads specific locales translations
$posts = Post::withTranslations(['en', 'da'])->get();

// Loads specific locale translations
$posts = Post::withTranslation('da')->get();

// Loads current locale translations
$posts = Post::withTranslation('da')->get();
```

### Get default language value

```php
echo $post->title;
```

### Get translated value

```php
echo $post->getTranslatedAttribute('title', 'locale', 'fallbackLocale');
```

If you do not define locale, the current application locale will be used. You can pass in your own locale as a string. If you do not define fallbackLocale, the current application fallback locale will be used. You can pass your own locale as a string. If you want to turn the fallback locale off, pass false. If no values are found for the model for a specific attribute, either for the locale or the fallback, it will set that attribute to null.

### Translate the whole model

```php
$post = $post->translate('locale', 'fallbackLocale');
echo $post->title;
echo $post->body;

// You can also run the `translate` method on the Eloquent collection
// to translate all models in the collection.
$posts = $posts->translate('locale', 'fallbackLocale');
echo $posts[0]->title;
```

If you do not define locale, the current application locale will be used. You can pass in your own locale as a string. If you do not define fallbackLocale, the current application fallback locale will be used. You can pass in your own locale as a string. If you want to turn the fallback locale off, pass false. If no values are found for the model for a specific attribute, either for the locale or the fallback, it will set that attribute to null.

### Check if model is translatable

```php
// with string
if (Voyager::translatable(Post::class)) {
    // it's translatable
}

// with object of Model or Collection
if (Voyager::translatable($post)) {
    // it's translatable
}
```

### Set attribute translations

```php
$post = $post->translate('da');
$post->title = 'foobar';
$post->save();
```

This will update or create the translation for title of the post with the locale da. Please note that if a modified attribute is not translatable, then it will make the changes directly to the model itself. Meaning that it will overwrite the attribute in the language set as default.

### Query translatable Models

To search for a translated value, you can use the `whereTranslation` method.  
For example, to search for the slug of a post, you'd use

```php
$page = Page::whereTranslation('slug', 'my-translated-slug');
// Is the same as
$page = Page::whereTranslation('slug', '=', 'my-translated-slug');
// Search only locale en, de and the default locale
$page = Page::whereTranslation('slug', '=', 'my-translated-slug', ['en', 'de']);
// Search only locale en and de
$page = Page::whereTranslation('slug', '=', 'my-translated-slug', ['en', 'de'], false);
```

`whereTranslation` accepts the following parameter:

* `field` the field you want to search in
* `operator` the operator. Defaults to `=`. Also can be the value \(Same as [where](https://laravel.com/docs/queries#where-clauses)\)
* `value` the value you want to search for
* `locales` the locales you want to search in as an array. Leave as `null` if you want to search all locales
* `default` also search in the default value/locale. Defaults to true.



================================================
FILE: docs/core-concepts/roles-and-permissions.md
================================================
# Roles and Permissions

Voyager comes with Roles and Permissions out of the box. Each _User_ has a _Role_ which has a set of _Permissions_.

Inside of the dashboard you can choose to Add, Edit, or delete the current Roles. Additionally when you click to edit a particular role you can specify the BREAD permissions.

![](../.gitbook/assets/role.png)

New in version 1.0, we've changed Voyager's authorization system to be [more in line with Laravel](https://laravel.com/docs/authorization#authorizing-actions-using-policies)! This means that you can check for permissions in the following ways:

```php
// via user object
$canViewPost = $user->can('read', $post);
$canViewPost = Auth::user()->can('read', $post);

// via controller
$canViewPost = $this->authorize('read', $post);
```

Out of the box there are some permissions you can use by default:

* `browse_admin`: Whether or not the user may browse the Voyager admin panel.
* `browse_database`: Whether or not the user may browse the Voyager database menu section.
* `browse_bread`: Whether or not the user may browse the Voyager BREAD menu section.
* `browse_media`: Whether or not the user may browse the Voyager media section.
* `browse_menu`: Whether or not the user may browse the Voyager menu section.
* `browse_settings`: Whether or not the user may browse the Voyager settings section.
* `read_settings`: Whether or not the user can view or see a particular setting.
* `edit_settings`: Whether or not the user can edit a particular setting.
* `add_settings`: Whether or not the user can add a new setting.
* `delete_settings`: Whether or not the user can delete a particular setting.

Additionally you can `Generate permissions` for every BREAD type you create. This will create the `browse`, `read`, `edit`, `add` and `delete` permission.

As an example, perhaps we are creating a new BREAD type from a `products` table. If we choose to `Generate permissions` for our `products` table. Our permission keys will be `browse_products`, `read_products`, `edit_products`, `add_products` and `delete_products`.

{% hint style="info" %}
**Notice**  
If a menu item is associated with any kind of BREAD, then it will check for the `browse` permission, for example for the `Posts` BREAD menu item, it will check for the `browse_posts` permission. If the user does not have the required permission, that menu item will be hidden.
{% endhint %}

## Creating permissions for custom page

If you create a custom page and you want only allow specific user roles to access it, you may use permissions.

This only works if your slug comes directly after `/admin/`. So for a custom page of the form `/admin/sub/foo` the menu item will not be hidden from  the menu.

### Create permission
First, create a permission in the permissions table (you could use BREAD for example, model name is `TCG\Voyager\Models\Permission`). The column `table_name` should be set to null. The column `key` should be of the form `browse_slug` where `slug` has to be replaced with  the actual slug of your custom page. For example, to restrict access to your custom page with url `/admin/create_bill` you may create the permission `browse_create_bill`.

### Set role
Check the permission for each role that you wish to grant access to the site at `admin/roles`. In the above example you would find a new checkbox called "Browse Create Bill". If a user does not have the required permission, the menu item leading to your custom page will be hidden.

### Customize controller
You may create your own [gate](https://laravel.com/docs/authorization#gates) 

```php
Gate::define('browse_create_bill', function ($user) {
    return $user->hasPermission(`browse_create_bill`);
});
```
    
to use `authorize` in your controller:

```php
public function index()
{
  $this->authorize('browse_create_bill');
  //..
```

If you do so, make sure add the custom guard to your controller:

```php
  /**
   * Get the guard to be used during authentication.
   *
   * @return \Illuminate\Contracts\Auth\StatefulGuard
   */
  protected function guard()
  {
      return Auth::guard(app('VoyagerGuard'));
  }
```



## Using Permissions in your Blade Template files

You can also check for permissions using blade syntax. Let's say for instance that you want to check if a user can `browse_posts`, simple enough we can use the following syntax:

```php
@can('browse', $post)
    I can browse posts
@endcan
```

Or perhaps you need to run an else condition for a permission. That's simple enough:

```php
@can('browse', $post)
    I can browse posts
@else
    I cannot browse posts
@endcan
```

Couldn't be easier, right ;\)



================================================
FILE: docs/core-concepts/routing.md
================================================
# Routing

After running the voyager installer you will see a few new routes that have been added to your `routes/web.php` file which look like the following:

```php
Route::group(['prefix' => 'admin'], function () {
    Voyager::routes();
});
```

This is where the Voyager routes will be rendered. You can change the `admin` prefix if you desire, or set any other route configuration you need, such as `middleware` or `domain`.

When creating a new BREAD type and specifying a slug for that BREAD, you can then visit that route from the following link:

```text
URL/admin/slug-name
```

As an example, if we have a `products` table and we specified the slug to be `products`. You will now be able to visit the following URL:

```text
URL/admin/products
```

{% hint style="info" %}
**Notice**  
You may not see a link to your newly created routes or BREAD inside your admin menu. To create a new link in your admin menu visit the documentation for the [menu section](menus-and-menu-builder.md).
{% endhint %}



================================================
FILE: docs/core-concepts/settings.md
================================================
# Settings

The Settings section allows you to add any site wide settings you would like. You can add an image upload setting for your site logo or a text box for the main headline on your homepage.

![](../.gitbook/assets/settings.png)

In this new version you have the ability to add different groups for different settings. So, if you created a new setting inside of the `site` group and it had a key of `title` you would then be able to reference that setting any where on your site by doing the following:

```php
<?php
echo setting('site.title');
```

Or inside of any blade template like:

```text
{{ setting('site.title') }}
```

So, now you can add all kinds of settings in Voyager and reference them in your application.



================================================
FILE: docs/customization/action-buttons.md
================================================
# Action buttons

## Action Buttons

Action buttons are displayed when browsing a BREAD next to each row

![](../.gitbook/assets/action_buttons.jpg)

You can add your own buttons very easily. First we will create an Action-class which extends Voyagers AbstractAction in app/Actions/MyAction.php

```php
<?php

namespace App\Actions;

use TCG\Voyager\Actions\AbstractAction;

class MyAction extends AbstractAction
{
    public function getTitle()
    {
        return 'My Action';
    }

    public function getIcon()
    {
        return 'voyager-eye';
    }

    public function getPolicy()
    {
        return 'read';
    }

    public function getAttributes()
    {
        return [
            'class' => 'btn btn-sm btn-primary pull-right',
        ];
    }

    public function getDefaultRoute()
    {
        return route('my.route');
    }
}
```

Next we need to tell Voyager that we want to use this action. For this open your `app/Providers/AppServiceProvider.php` and search for the `boot()` method

```php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Events\Dispatcher;
use TCG\Voyager\Facades\Voyager;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        Voyager::addAction(\App\Actions\MyAction::class);
    }
}
```

After that you will see your new button when browsing any BREAD ![](../.gitbook/assets/action_buttons_custom.jpg)

### Showing/hiding actions

If you only want to show your action for special datatypes you can implement a function `shouldActionDisplayOnDataType()` in your action:

```php
<?php

public function shouldActionDisplayOnDataType()
{
    return $this->dataType->slug == 'posts';
}
```

If you want to show your action-button on a per-row-base, simply implement a method `shouldActionDisplayOnRow($row)` and add your condition(s)

```php
<?php

public function shouldActionDisplayOnRow($row)
{
    return $row->id > 10;
}
```

## Mass Actions

Mass actions are called for multiple instances of a model.  
If you want your action to be a mass action, just implement the following method:

```php
<?php

public function massAction($ids, $comingFrom)
{
    // Do something with the IDs
    return redirect($comingFrom);
}
```



================================================
FILE: docs/customization/adding-custom-formfields.md
================================================
# Adding custom Formfields

You can easily add a new Formfield to Voyager. In the example below we will add a number form field \(which is already included by default in Voyager\).

First we create a new class in our project \(it doesn't matter where it is placed\) called `NumberFormField`

```php
<?php

namespace App\FormFields;

use TCG\Voyager\FormFields\AbstractHandler;

class NumberFormField extends AbstractHandler
{
    protected $codename = 'number';

    public function createContent($row, $dataType, $dataTypeContent, $options)
    {
        return view('formfields.number', [
            'row' => $row,
            'options' => $options,
            'dataType' => $dataType,
            'dataTypeContent' => $dataTypeContent
        ]);
    }
}
```

The `codename` variable is used in the dropdown you see in the BREAD builder. In the `createContent` method we are returning the view that is used to display our form field.

Next, we will create the view specified above.

```markup
<input type="number"
       class="form-control"
       name="{{ $row->field }}"
       data-name="{{ $row->display_name }}"
       @if($row->required == 1) required @endif
             step="any"
       placeholder="{{ isset($options->placeholder)? old($row->field, $options->placeholder): $row->display_name }}"
       value="@if(isset($dataTypeContent->{$row->field})){{ old($row->field, $dataTypeContent->{$row->field}) }}@else{{old($row->field)}}@endif">
```

In the view we can add whatever logic we want.

When we are done with our view, we will tell Voyager that we have a new form field. We will do this in a service provider \(in the example below we use the `AppServiceProvider`.

```php
<?php

namespace App\Providers;

use TCG\Voyager\Facades\Voyager;
use App\FormFields\NumberFormField;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    //..

    public function register()
    {
        Voyager::addFormField(NumberFormField::class);
    }
}
```



================================================
FILE: docs/customization/additional-css-js.md
================================================
# Additional CSS and JS

As of the latest version you can now add additional CSS and JS files to the voyager master blade without having to copy or modify the blade file itself removing potential manual migration headaches later on. The CSS and JS files are added _after_ any Voyager assets so you can override styles and functionality comfortably.

This is all handled via the `voyager.php` config file:

```php
// Here you can specify additional assets you would like to be included in the master.blade
'additional_css' => [
    //'css/custom.css',
],
'additional_js' => [
   //'js/custom.js',
],
```

{% hint style="info" %}
The path will be passed to Laravels [asset](https://laravel.com/docs/helpers#method-asset) function.
{% endhint %}



================================================
FILE: docs/customization/bread-accessors.md
================================================
# BREAD accessors

Sometimes you want to format an attribute only for one \(or some\) of the BREAD-actions.  
For example if you have a `name` field and on the browse-page you want to display something when the field is empty, you define the following in your model:

```php
<?php

public function getNameBrowseAttribute()
{
    return $this->name ?? 'Empty';
}
```

This will display "Empty" if the actual field is empty, or return the value if not.

Likewise you can do the same for the other BREAD-actions:

```php
<?php

public function getNameReadAttribute()
{
    //
}

public function getNameEditAttribute()
{
    //
}

public function getNameAddAttribute()
{
    //
}
```



================================================
FILE: docs/customization/coordinates.md
================================================
# Coordinates

With Voyager you are able to store coordinates and select them from a map.  
To do so, you first need to make sure that the column in your table is either `GEOMETRY` or `POINT`.

After that you have to include the Spatial-Trait in your Model and define the column:

```php
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use TCG\Voyager\Traits\Spatial;

class Category extends Model
{
    use Spatial;

    protected $spatial = ['your_column'];
}
```

Now you can go to the tables BREAD-settings and set your field to be `Coordinates`.

After that you will get a Map where you can select your Coordinates.

{% hint style="info" %}
Make sure to set the Google Maps API-Key in your [configuration](../getting-started/configurations.md#google-maps).  
This is also the place where you can define the default location of your map.
{% endhint %}

## Getting the coordinates

You can get the coordinates from your model by calling

```php
$model->getCoordinates();
```

This will return an array of coordinates with `lat` as the latitude and `lng` as the longitude.



================================================
FILE: docs/customization/custom-guard.md
================================================
# Custom guard

Starting with Voyager 1.2 you can define a \(custom\) guard which is used throughout Voyager.  
To do so, just bind the name of your auth-guard to `VoyagerGuard`.  
First, make sure you have defined a guard as per the [Laravel documentation](https://laravel.com/docs/authentication#adding-custom-guards).  
After that open your `AuthServiceProvider` and add the following to the register method:

```php
$this->app->singleton('VoyagerGuard', function () {
    return 'your-custom-guard-name';
});
```

Now this guard is used instead of the default guard.


# Example - using a different model and table for Admins

First you have to create a new table. Let's call it `admins`:  
```php
<?php
Schema::create('admins', function (Blueprint $table) {
    $table->bigIncrements('id');
    $table->bigInteger('role_id')->unsigned()->nullable();
    $table->string('name');
    $table->string('email')->unique();
    $table->string('avatar')->nullable()->default('users/default.png');
    $table->string('password')->nullable();
    $table->string('remember_token')->nullable();
    $table->text('settings')->nullable()->default(null);
    $table->timestamps();
    $table->foreign('role_id')->references('id')->on('roles');
});
```

and a model which extends Voyagers user-model:

```php
<?php

namespace App;

class Admin extends \TCG\Voyager\Models\User
{

}
```

Next, create a guard named `admin` in your `config/auth.php`:
```php
'guards' => [
    'admin' => [
        'driver' => 'session',
        'provider' => 'admins',
    ],

    // ...
],
```
And a user provider called `admins`:
```php
'providers' => [
    'admins' => [
        'driver' => 'eloquent',
        'model' => App\Admin::class,
    ],

    // ...
],
```

Next you have to tell Voyager to use your new guard.  
Open you `AppServiceProvider.php` and add the following to the `register` method:

```php
public function register()
{
    $this->app->singleton('VoyagerGuard', function () {
        return 'admin';
    });
}
```

{% hint style="info" %}
Please note that the user-bread is still responsible to edit users - not admins.  
Create a BREAD for the `admins` table if you want to change Admins.
{% endhint %}

================================================
FILE: docs/customization/custom-realtionship-attributes.md
================================================
# Custom relationship attributes

With Voyager 1.1 you are able to define additional attributes which you can show in a relationship.

For example a `Post` has an `Author` and you want to display the `Users` full-name. To do so, we first need to [define an Accessor](https://laravel.com/docs/eloquent-mutators#defining-an-accessor)

```php
public function getFullNameAttribute()
{
    return "{$this->first_name} {$this->last_name}";
}
```

After that we need to tell Voyager that there is an accessor we want to use:

```php
public $additional_attributes = ['full_name'];
```

Thats it! You can now select `full_name` in your Relationship.



================================================
FILE: docs/customization/enabling-soft-delete.md
================================================
# Enabling Soft-Delete

This is only to assist with enabling soft-deletion for your models within Voyager. Please refer to the [Laravel documentation](https://laravel.com/docs/eloquent#soft-deleting) for specifics.

## Table Configurations in Voyager

When creating a table using the Database Manager you've selected the 'Add Soft Deletes' button and then when adding the BREAD functionality to that table you've added a Model Name, you only have to edit your Model file to fully enable Soft-Delete on that table.

## Editing the Table's Model

A default model will look like this:

```php
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;


class YourModelName extends Model
{

}
```

Just turn it into:

```php
<?php

namespace App;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\SoftDeletes;


class Documento extends Model
{
    use SoftDeletes;
    protected $dates = ['deleted_at'];
}
```

And from now on, every time you delete a record from that table, it won't actually be deleted, only the `deleted_at` column will be written with the current timestamp.



================================================
FILE: docs/customization/overriding-files.md
================================================
# Overriding files

## Overriding BREAD Views

You can override any of the BREAD views for a **single** BREAD by creating a new folder in `resources/views/vendor/voyager/slug-name` where _slug-name_ is the _slug_ that you have assigned for that table. There are 4 files that you can override:

* browse.blade.php
* edit-add.blade.php
* read.blade.php
* order.blade.php

Alternatively you can override the views for **all** BREADs by creating any of the above files under `resources/views/vendor/voyager/bread`

## Overriding submit button:
You can override the submit button without the need to override the whole `edit-add.blade.php` by extending the `submit-buttons` section:  
```blade
@extends('voyager::bread.edit-add')
@section('submit-buttons')
    @parent
    <button type="submit" class="btn btn-primary save">Save And Publish</button>
@endsection
```

## Using custom Controllers

You can override the controller for a single BREAD by creating a controller which extends Voyagers controller, for example:

```php
<?php

namespace App\Http\Controllers;

class VoyagerCategoriesController extends \TCG\Voyager\Http\Controllers\VoyagerBaseController
{
    //...
}
```

After that go to the BREAD-settings and fill in the Controller Name with your fully-qualified class-name:

![](../.gitbook/assets/bread_controller.png)

You can now override all methods from the [VoyagerBaseController](https://github.com/the-control-group/voyager/blob/1.6/src/Http/Controllers/VoyagerBaseController.php)

## Overriding Voyagers Controllers

{% hint style="danger" %}
**Only use this method if you know what you are doing**  
We don't recommend or support overriding all controllers as you won't get any code-changes made in future updates.
{% endhint %}

If you want to override any of Voyagers core controllers you first have to change your config file `config/voyager.php`:

```php
/*
|--------------------------------------------------------------------------
| Controllers config
|--------------------------------------------------------------------------
|
| Here you can specify voyager controller settings
|
*/

'controllers' => [
    'namespace' => 'App\\Http\\Controllers\\Voyager',
],
```

Then run `php artisan voyager:controllers`, Voyager will now use the child controllers which will be created at `App/Http/Controllers/Voyager`

## Overriding Voyager-Models

You are also able to override Voyagers models if you need to.  
To do so, you need to add the following to your AppServiceProviders register method:

```php
Voyager::useModel($name, $object);
```

Where **name** is the class-name of the model and **object** the fully-qualified name of your custom model. For example:

```php
<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use Illuminate\Events\Dispatcher;
use TCG\Voyager\Facades\Voyager;

class AppServiceProvider extends ServiceProvider
{
    public function boot()
    {
        Voyager::useModel('DataRow', \App\DataRow::class);
    }
    // ...
}
```

The next step is to create your model and make it extend the original model. In case of `DataRow`:

```php
<?php

namespace App;

class DataRow extends \TCG\Voyager\Models\DataRow
{
    // ...
}
```

If the model you are overriding has an associated BREAD, go to the BREAD settings for the model you are overriding
and replace the Model Name with your fully-qualified class-name. For example, if you are overriding the Voyager `Menu`
model with your own `App\Menu` model:

![](../.gitbook/assets/bread_override_voyager_models.png)



================================================
FILE: docs/customization/overriding-routes.md
================================================
# Overriding Routes

You can override any Voyager routes by writing the routes you want to overwrite below `Voyager::routes()`. For example if you want to override your post LoginController:

```php
Route::group(['prefix' => 'admin'], function () {
   Voyager::routes();

   // Your overwrites here
   Route::post('login', ['uses' => 'MyAuthController@postLogin', 'as' => 'postlogin']);
});
```



================================================
FILE: docs/getting-started/configurations.md
================================================
# Configurations

With the installation of Voyager you will find a new configuration file located at `config/voyager.php`.  
In this file you can find various options to change the configuration of your Voyager installation.

{% hint style="info" %}
If you cache your configuration files please make sure to run `php artisan config:clear` after you changed something.
{% endhint %}

Below we will take a deep dive into the configuration file and give a detailed description of each configuration set.

## Users

```php
<?php

'user' => [
    'add_default_role_on_register' => true,
    'default_role'                 => 'user',
    'admin_permission'             => 'browse_admin',
    'namespace'                    => App\User::class,
    'redirect'                     => '/admin'
],
```

**add\_default\_role\_on\_register:** Specify whether you would like to add the default role to any new user that is created.  
**default\_role:** You can also specify what the **default\_role** is of the user.  
**admin\_permission:** The permission needed to view the admin dashboard.  
**namespace:** The namespace of your apps User Class.  
**redirect:** Redirect path after the user logged in.

## Controller

```php
<?php

'controllers' => [
    'namespace' => 'TCG\\Voyager\\Http\\Controllers',
],
```

You can specify the default `controller` namespace of Voyager. If you ever wish to override any of the core functionality of Voyager you can do so by duplicating the Voyager controllers and specifying the location of your custom controllers.

{% hint style="info" %}
**Overwrite a single controller**  
If you only want to overwrite a single controller, you might consider adding the following piece of code to your `AppServiceProvider` class in the `register` method.  
`$this->app->bind(VoyagerBreadController::class, MyBreadController::class);`
{% endhint %}

## Model

```php
<?php

'models' => [
    //'namespace' => 'App\\',
],
```

You can specify the namespace or location of your models. This is used when creating the Models from the database section of Voyager. If not defined the default application namespace will be used.

## Assets

```php
<?php

'assets_path' => '/vendor/tcg/voyager/assets',
```

You may wish to specify a different asset path. If your site lives in a subfolder you may need to include that directory to the beginning of the path. This may also be used in case you wish to duplicate the published assets and customize your own.

{% hint style="info" %}
When upgrading to new version of voyager the assets located in the `/vendor/tcg/voyager/assets` directory may need to be overwritten, so if you wish to customize any styles you will want to duplicate that directory and specify the new location of your asset\_path.
{% endhint %}

## Storage

```php
<?php

'storage' => [
    'disk' => 'public',
],
```

By default Voyager is going to use the `public` local storage. You can additionally use any driver inside of your `config/filesystems.php`. This means you can use S3, Google Cloud Storage, or any other file storage system you would like.

## Database

```php
<?php

'database' => [
    'tables' => [
        'hidden' => ['migrations', 'data_rows', 'data_types', 'menu_items', 'password_resets', 'permission_role', 'personal_access_tokens', 'settings'],
    ],
    'autoload_migrations' => true,
],
```

You may wish to hide some database tables in the Voyager database section. In the database config you can choose which tables would like to hide.  
`autoload_migrations` allows you to exclude Voyagers migration-files from loading when running `php artisan migrate`.

## Multilingual

```php
<?php

'multilingual' => [
    'enabled' => false,
    'default' => 'en',
    'locales' => [
        'en',
        //'pt',
    ],
],
```

You can specify whether or not you want to **enable** mutliple languages. You can then specify your **default** language and all the support languages \(**locales**\)

Read more about multilanguage [here](../core-concepts/multilanguage.md).

## Dashboard

```php
<?php

'dashboard' => [
    'navbar_items' => [
        'Profile' => [
            'route'         => 'voyager.profile',
            'classes'       => 'class-full-of-rum',
            'icon_class'    => 'voyager-person',
        ],
        'Home' => [
            'route'         => '/',
            'icon_class'    => 'voyager-home',
            'target_blank'  => true,
        ],
        'Logout' => [
            'route'      => 'voyager.logout',
            'icon_class' => 'voyager-power',
        ],
    ],
    'widgets' => [
        'TCG\\Voyager\\Widgets\\UserDimmer',
        'TCG\\Voyager\\Widgets\\PostDimmer',
        'TCG\\Voyager\\Widgets\\PageDimmer',
    ],
],
```

In the dashboard config you can add **navbar\_items**, make the **data\_tables** responsive, and manage your dashboard **widgets**.

**navbar\_items** Include a new route in the main user navbar dropdown by including a 'route', 'icon\_class', and 'target\_blank'.

**data\_tables** If you set 'responsive' to true the datatables will be responsive.

**widgets** Here you can manage the widgets that live on your dashboard. You can take a look at an example widget class by viewing the current widgets inside of `tcg/voyager/src/Widgets`.

## Primary color

```php
<?php

'primary_color' => '#22A7F0',
```

The default primary color for the Voyager admin dashboard is a light blue color. You can change that primary color by changing the value of this config.

## Show developer tips

```php
<?php

'show_dev_tips' => true,
```

In the Voyager admin there are developer tips or notifications that will show you how to reference certain values from Voyager. You can choose to hide these notifications by setting this configuration value to false.

## Additional stylesheets

```php
<?php

'additional_css' => [
    //'css/custom.css',
],
```

You can add your own custom stylesheets that will be included in the Voyager admin dashboard. This means you could technically create a whole new theme for Voyager by adding your own custom stylesheet.

Read more [here](../customization/additional-css-js.md).

{% hint style="info" %}
The path will be passed to Laravels [asset](https://laravel.com/docs/helpers#method-asset) function.
{% endhint %}

## Additional Javascript

```php
<?php

'additional_js' => [
    //'js/custom.js',
],
```

The same goes for this configuration. You can add your own javascript that will be executed in the Voyager admin dashboard. Add as many javascript files as needed.

Read more [here](../customization/additional-css-js.md).

## Google Maps

```php
<?php

'googlemaps' => [
    'key'    => env('GOOGLE_MAPS_KEY', ''),
    'center' => [
        'lat' => env('GOOGLE_MAPS_DEFAULT_CENTER_LAT', '32.715738'),
        'lng' => env('GOOGLE_MAPS_DEFAULT_CENTER_LNG', '-117.161084'),
    ],
    'zoom' => env('GOOGLE_MAPS_DEFAULT_ZOOM', 11),
],
```

There is a new data type called **coordinates** that allow you to add a google map as a datatype. The user can then drag and drop a pin in the Google Maps to save a longitude and latitude value in the database.

In this config you can set the default Google Maps Keys and center location. This can also be added to your .env file.

## Allowed Mimetypes

To allow/disallow mimetypes to be uploaded through the media-manager you can define an array `allowed_mimetypes`:

```php
<?php

'allowed_mimetypes' => [
     'image/jpeg',
     'image/png',
     'image/gif',
     'image/bmp',
     'video/mp4',
],
```

The user can only upload files with the given mimetypes. If you want to allow all types to be uploaded you can use the following:

```php
<?php

'allowed_mimetypes' => '*',
```



================================================
FILE: docs/getting-started/installation.md
================================================
# Installation

Voyager is super easy to install. After creating your new Laravel application you can include the Voyager package with the following command:

```bash
composer require tcg/voyager
```

Next make sure to create a new database and add your database credentials to your .env file, you will also want to add your application URL in the `APP_URL` variable:

```text
APP_URL=http://localhost
DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret
```

Finally, we can install Voyager. You can choose to install Voyager with dummy data or without the dummy data. The dummy data will include 1 admin account \(if no users already exist\), 1 demo page, 4 demo posts, 2 categories and 7 settings.

To install Voyager without dummy data simply run

```bash
php artisan voyager:install
```

If you prefer installing it with the dummy data run the following command:

```bash
php artisan voyager:install --with-dummy
```

{% hint style="danger" %}
**Specified key was too long error**  
If you see this error message you have an outdated version of MySQL, use the following solution: [https://laravel-news.com/laravel-5-4-key-too-long-error](https://laravel-news.com/laravel-5-4-key-too-long-error)
{% endhint %}

And we're all good to go!

Start up a local development server with `php artisan serve` And, visit the URL [http://localhost:8000/admin](http://localhost:8000/admin) in your browser.

If you installed with the dummy data, a user has been created for you with the following login credentials:

> **email:** `admin@admin.com`  
> **password:** `password`

{% hint style="info" %}
**Quick note**  
A dummy user is **only** created if there are no current users in your database.
{% endhint %}

If you did not go with the dummy user, you may wish to assign admin privileges to an existing user. This can easily be done by running this command:

```bash
php artisan voyager:admin your@email.com
```

If you wish to create a new admin user you can pass the `--create` flag, like so:

```bash
php artisan voyager:admin your@email.com --create
```

And you will be prompted for the users name and password.

## Advanced

This section is meant for users who are installing Voyager on an already existing Laravel installation or for users who want to perform a manual install. If this is not the case, you should go back to the [installation](installation.md) documentation or skip this section.

The first thing you should do is publish the assets that come with Voyager. You can do that by running the following commands:

```bash
php artisan vendor:publish --provider="TCG\Voyager\VoyagerServiceProvider"
php artisan vendor:publish --provider="Intervention\Image\ImageServiceProviderLaravelRecent"
```

Next, call `php artisan migrate` to migrate all Voyager table.

{% hint style="info" %}
If you want to change migrations, for example to use a different table for users, don't migrate. Instead copy Voyagers migrations to `database/migrations`, make your changes, turn off the config option `database.autoload_migrations` and then migrate.
{% endhint %}

Now, open your User-Model \(usually `app/User.php`\) and make the class extend `\TCG\Voyager\Models\User` instead of `Authenticatable`.

```php
<?php

class User extends \TCG\Voyager\Models\User
{
    // ...
}
```

The next step is to add Voyagers routes to your `routes/web.php` file:

```php
<?php

Route::group(['prefix' => 'admin'], function () {
    Voyager::routes();
});
```

Now run  
`php artisan db:seed --class=VoyagerDatabaseSeeder`  
to seed some necessary data to your database, and  
`php artisan storage:link`  
to create the storage symlink to your public folder.

After that, run `composer dump-autoload` to finish your installation!



================================================
FILE: docs/getting-started/prerequisites.md
================================================
# Prerequisites

Before installing Voyager make sure you have installed one of the following versions of Laravel:
- Laravel 8
- Laravel 9

Additionally Voyager requires you to use PHP 7.3 or newer. Laravel requires you to use PHP 8 or newer when using Laravel 9.

================================================
FILE: docs/getting-started/upgrading.md
================================================
# Upgrading

## Upgrading 1.5 to 1.6

### Update your Composer.json

To update to the latest version inside of your composer.json file make sure to update the version of Voyager inside the require declaration of your composer.json to:

`tcg/voyager": "1.6.*`

And then run `composer update`

### Check your TinyMCE configuration

TinyMCE was updated to version 6 and with that, a lot of configurations have changed.  
If there are any errors in the console and you changed the TinyMCE configuration, make sure you are using the latest options and values from their docs.

### Troubleshooting

Be sure to ask us on our slack channel if you are experiencing any issues and we will try and assist. Thanks.


================================================
FILE: docs/getting-started/what-is-voyager.md
================================================
# What is Voyager

Before installing Voyager it is very important to take a quick moment to learn _what it is_ & _what it isn't_.

## What it is

* An admin interface for your Laravel app
* An easy way to add/edit/delete data for your app
* A menu builder \(build menus in Voyager for your app\)
* A media manager for your files
* CRUD/BREAD generator \([learn more about BREAD here](../bread/introduction.md)\)

Voyager is simply an admin for your Laravel app. Whatever you want your app to do on the front-end is completely up to you. You are in control of your application and you can use Voyager to make your life easier by adding data, editing users, creating menus, and many other administrative tasks.

## What it isn't

* A content management system \(CMS\)
* A blogging platform
* Wordpress \(Bleh! 😜\)

Voyager is not a CMS or a blogging platform. But it can be used to create a CMS or a blogging platform, but out of the box it is neither of those. As stated in the previous section you have full control on what your application will do and how it will function.

With Laravel & Voyager you can create any kind of application your heart desires. Laravel & Voyager are simply tools to make it easier to build.



================================================
FILE: docs/introduction.md
================================================
# Introduction

Welcome to the Voyager documentation for version 1.6. This documentation will teach you how to install, configure, and use Voyager so that way you can create some kick ass stuff!

Hm Hm \(cough\)… I mean… Arrgg! Ye young scallywag! What say we learn how to steer this ship!

![Voyager Screenshot](https://s3.amazonaws.com/thecontrolgroup/voyager-screenshot.png)

Before installing Voyager you may want to take a quick moment to learn what it is and what it isn't, we'll do that in the next section.



================================================
FILE: docs/summary.md
================================================
# Table of contents

* [Introduction](introduction.md)

## Getting started

* [What is Voyager](getting-started/what-is-voyager.md)
* [Prerequisites](getting-started/prerequisites.md)
* [Installation](getting-started/installation.md)
* [Upgrading](getting-started/upgrading.md)
* [Configurations](getting-started/configurations.md)

## BREAD

* [Introduction](bread/introduction.md)
* [Relationships](bread/relationships.md)
* [Formfields](bread/formfields/introduction.md)
  * [Checkbox/Multiple Checkbox/Radio](bread/formfields/checkbox.md)
  * [Coordinates](bread/formfields/coordinates.md)
  * [Date & Time](bread/formfields/date-time.md)
  * [Dropdown](bread/formfields/dropdown.md)
  * [Images](bread/formfields/images.md)
  * [Media Picker](bread/formfields/media-picker.md)
  * [Number](bread/formfields/number.md)
  * [TinyMCE](bread/formfields/tinymce.md)

## Core concepts

* [Routing](core-concepts/routing.md)
* [Media Manager](core-concepts/media-manager.md)
* [Menus and Menu Builder](core-concepts/menus-and-menu-builder.md)
* [Database Manager](core-concepts/database-manager.md)
* [Settings](core-concepts/settings.md)
* [Compass](core-concepts/compass.md)
* [Roles and Permissions](core-concepts/roles-and-permissions.md)
* [Helper methods](core-concepts/helper-methods.md)
* [Multilanguage](core-concepts/multilanguage.md)

## Customization

* [Overriding files](customization/overriding-files.md)
* [Overriding Routes](customization/overriding-routes.md)
* [Additional CSS and JS](customization/additional-css-js.md)
* [Enabling Soft-Delete](customization/enabling-soft-delete.md)
* [Custom relationship attributes](customization/custom-realtionship-attributes.md)
* [Adding custom Formfields](customization/adding-custom-formfields.md)
* [Coordinates](customization/coordinates.md)
* [BREAD accessors](customization/bread-accessors.md)
* [Custom guard](customization/custom-guard.md)
* [Action buttons](customization/action-buttons.md)

## Troubleshooting

* [Using HTTPS on yours site](troubleshooting/using-https.md)
* [Missing required parameter](troubleshooting/missing-required-parameter.md)


================================================
FILE: docs/troubleshooting/missing-required-parameter.md
================================================
# Missing required parameter

**Symptom:** You get an error page saying

```text
Missing required parameters for [Route...]
```

**Cause:** There are two possible causes:  
1. You dont have a primary-key for your table  
2. You have a primary-key but it's **not** called `id`

**Solution:** As there are two causes, there are also two solutions: 1. Simply create a field `id` for the table  
2. Tell your model about your primary-key: `protected $primaryKey = 'your_primary_key';`

Please consider following [Eloquents model conventions](https://laravel.com/docs/eloquent#eloquent-model-conventions)



================================================
FILE: docs/troubleshooting/using-https.md
================================================
# Using HTTPS on yours site

**Symptom:** When visiting your site with HTTPS, images within Voyager fail to load.

**Cause:** Images urls are generated by Voyager using

```php
Storage::disk(config('voyager.storage.disk'))->url($file);
```

If voyager.storage.disk is set to public, and the public disk is the default from Laravel, then the url property in the disk configuration is set to

```php
'url' => env('APP_URL').'/storage',
```

which uses the non-HTTPS APP\_URL value to build an absolute url to the image.

**Solution:** If you remove env\('APP\_URL'\). from the public disk configuration, then it will render a domain-relative url, which will always use the current domain and protocol.

As an aside, if you need a fully-qualified URL, you could wrap the call to `Voyager::image('...')` with `asset()`, so it would be

```php
asset(Voyager::image('...'))
```

This will return the current protocol, domain, and correct path to that image.



================================================
FILE: license
================================================
MIT License

Copyright (c) 2016 The Control Group

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.


================================================
FILE: migrations/2016_01_01_000000_add_voyager_user_fields.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;

class AddVoyagerUserFields extends Migration
{
    /**
     * Run the migrations.
     */
    public function up()
    {
        Schema::table('users', function ($table) {
            if (!Schema::hasColumn('users', 'avatar')) {
                $table->string('avatar')->nullable()->after('email')->default('users/default.png');
            }
            $table->bigInteger('role_id')->nullable()->after('id');
        });
    }

    /**
     * Reverse the migrations.
     */
    public function down()
    {
        if (Schema::hasColumn('users', 'avatar')) {
            Schema::table('users', function ($table) {
                $table->dropColumn('avatar');
            });
        }
        if (Schema::hasColumn('users', 'role_id')) {
            Schema::table('users', function ($table) {
                $table->dropColumn('role_id');
            });
        }
    }
}


================================================
FILE: migrations/2016_01_01_000000_create_data_types_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;

class CreateDataTypesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        // Create table for storing roles
        Schema::create('data_types', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name')->unique();
            $table->string('slug')->unique();
            $table->string('display_name_singular');
            $table->string('display_name_plural');
            $table->string('icon')->nullable();
            $table->string('model_name')->nullable();
            $table->string('description')->nullable();
            $table->boolean('generate_permissions')->default(false);
            $table->timestamps();
        });

        // Create table for storing roles
        Schema::create('data_rows', function (Blueprint $table) {
            $table->increments('id');
            $table->integer('data_type_id')->unsigned();
            $table->string('field');
            $table->string('type');
            $table->string('display_name');
            $table->boolean('required')->default(false);
            $table->boolean('browse')->default(true);
            $table->boolean('read')->default(true);
            $table->boolean('edit')->default(true);
            $table->boolean('add')->default(true);
            $table->boolean('delete')->default(true);
            $table->text('details')->nullable();

            $table->foreign('data_type_id')->references('id')->on('data_types')
                ->onUpdate('cascade')->onDelete('cascade');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::drop('data_rows');
        Schema::drop('data_types');
    }
}


================================================
FILE: migrations/2016_05_19_173453_create_menu_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;

class CreateMenuTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('menus', function (Blueprint $table) {
            $table->increments('id');
            $table->string('name')->unique();
            $table->timestamps();
        });

        Schema::create('menu_items', function (Blueprint $table) {
            $table->increments('id');
            $table->unsignedInteger('menu_id')->nullable();
            $table->string('title');
            $table->string('url');
            $table->string('target')->default('_self');
            $table->string('icon_class')->nullable();
            $table->string('color')->nullable();
            $table->integer('parent_id')->nullable();
            $table->integer('order');
            $table->timestamps();
        });

        Schema::table('menu_items', function (Blueprint $table) {
            $table->foreign('menu_id')->references('id')->on('menus')->onDelete('cascade');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::drop('menu_items');
        Schema::drop('menus');
    }
}


================================================
FILE: migrations/2016_10_21_190000_create_roles_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateRolesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('roles', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('name')->unique();
            $table->string('display_name');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::drop('roles');
    }
}


================================================
FILE: migrations/2016_10_21_190000_create_settings_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateSettingsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('settings', function (Blueprint $table) {
            $table->increments('id');
            $table->string('key')->unique();
            $table->string('display_name');
            $table->text('value');
            $table->text('details')->nullable()->default(null);
            $table->string('type');
            $table->integer('order')->default('1');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('settings');
    }
}


================================================
FILE: migrations/2016_11_30_135954_create_permission_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreatePermissionTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('permissions', function (Blueprint $table) {
            $table->bigIncrements('id');
            $table->string('key')->index();
            $table->string('table_name');
            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('permissions');
    }
}


================================================
FILE: migrations/2016_11_30_141208_create_permission_role_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreatePermissionRoleTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('permission_role', function (Blueprint $table) {
            $table->bigInteger('permission_id')->unsigned()->index();
            $table->foreign('permission_id')->references('id')->on('permissions')->onDelete('cascade');
            $table->bigInteger('role_id')->unsigned()->index();
            $table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
            $table->primary(['permission_id', 'role_id']);
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('permission_role');
    }
}


================================================
FILE: migrations/2016_12_26_201236_data_types__add__server_side.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class DataTypesAddServerSide extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->tinyInteger('server_side')->default(0)->after('generate_permissions');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->dropColumn('server_side');
        });
    }
}


================================================
FILE: migrations/2017_01_13_000000_add_route_to_menu_items_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddRouteToMenuItemsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('menu_items', function (Blueprint $table) {
            $table->string('route')->nullable()->default(null);
            $table->text('parameters')->nullable()->default(null);
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        if (Schema::hasColumn('menu_items', 'route')) {
            Schema::table('menu_items', function (Blueprint $table) {
                $table->dropColumn('route');
            });
        }

        if (Schema::hasColumn('menu_items', 'parameters')) {
            Schema::table('menu_items', function (Blueprint $table) {
                $table->dropColumn('parameters');
            });
        }
    }
}


================================================
FILE: migrations/2017_01_14_005015_create_translations_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateTranslationsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('translations', function (Blueprint $table) {
            $table->increments('id');

            $table->string('table_name');
            $table->string('column_name');
            $table->integer('foreign_key')->unsigned();
            $table->string('locale');

            $table->text('value');

            $table->unique(['table_name', 'column_name', 'foreign_key', 'locale']);

            $table->timestamps();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('translations');
    }
}


================================================
FILE: migrations/2017_01_15_000000_make_table_name_nullable_in_permissions_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class MakeTableNameNullableInPermissionsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('permissions', function (Blueprint $table) {
            $table->string('table_name')->nullable()->default(null)->change();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        //
    }
}


================================================
FILE: migrations/2017_03_06_000000_add_controller_to_data_types_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddControllerToDataTypesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->string('controller')->nullable()->after('model_name');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->dropColumn('controller');
        });
    }
}


================================================
FILE: migrations/2017_04_21_000000_add_order_to_data_rows_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddOrderToDataRowsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('data_rows', function (Blueprint $table) {
            $table->integer('order')->default(1)->after('details');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('data_rows', function (Blueprint $table) {
            $table->dropColumn('order');
        });
    }
}


================================================
FILE: migrations/2017_07_05_210000_add_policyname_to_data_types_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;

class AddPolicyNameToDataTypesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->string('policy_name')->nullable()->after('model_name');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->dropColumn('policy_name');
        });
    }
}


================================================
FILE: migrations/2017_08_05_000000_add_group_to_settings_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddGroupToSettingsTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('settings', function (Blueprint $table) {
            $table->string('group')->nullable()->after('order');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('settings', function (Blueprint $table) {
            $table->dropColumn('group');
        });
    }
}


================================================
FILE: migrations/2017_11_26_013050_add_user_role_relationship.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddUserRoleRelationship extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->bigInteger('role_id')->unsigned()->change();
            $table->foreign('role_id')->references('id')->on('roles');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropForeign(['role_id']);
        });

        Schema::table('users', function (Blueprint $table) {
            $table->bigInteger('role_id')->change();
        });
    }
}


================================================
FILE: migrations/2017_11_26_015000_create_user_roles_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class CreateUserRolesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::create('user_roles', function (Blueprint $table) {
            $type = DB::connection()->getDoctrineColumn(DB::getTablePrefix().'users', 'id')->getType()->getName();
            if ($type == 'bigint') {
                $table->bigInteger('user_id')->unsigned()->index();
            } else {
                $table->integer('user_id')->unsigned()->index();
            }

            $table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
            $table->bigInteger('role_id')->unsigned()->index();
            $table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
            $table->primary(['user_id', 'role_id']);
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::dropIfExists('user_roles');
    }
}


================================================
FILE: migrations/2018_03_11_000000_add_user_settings.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddUserSettings extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->text('settings')->nullable()->default(null)->after('remember_token');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('users', function (Blueprint $table) {
            $table->dropColumn('settings');
        });
    }
}


================================================
FILE: migrations/2018_03_14_000000_add_details_to_data_types_table.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

class AddDetailsToDatatypesTable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->text('details')->nullable()->after('server_side');
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        Schema::table('data_types', function (Blueprint $table) {
            $table->dropColumn('details');
        });
    }
}


================================================
FILE: migrations/2018_03_16_000000_make_settings_value_nullable.php
================================================
<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Schema;

class MakeSettingsValueNullable extends Migration
{
    /**
     * Run the migrations.
     *
     * @return void
     */
    public function up()
    {
        Schema::table('settings', function (Blueprint $table) {
            $table->text('value')->nullable()->change();
        });
    }

    /**
     * Reverse the migrations.
     *
     * @return void
     */
    public function down()
    {
        DB::table('settings')->whereNull('value')->update(['value' => '']);

        Schema::table('settings', function (Blueprint $table) {
            $table->text('value')->nullable(false)->change();
        });
    }
}


================================================
FILE: mix-manifest.json
================================================
{
    "/publishable/assets/js/app.js": "/publishable/assets/js/app.js",
    "/publishable/assets/css/app.css": "/publishable/assets/css/app.css",
    "/publishable/assets/js/skins/content/dark/content.css": "/publishable/assets/js/skins/content/dark/content.css",
    "/publishable/assets/js/skins/content/dark/content.min.css": "/publishable/assets/js/skins/content/dark/content.min.css",
    "/publishable/assets/js/skins/content/default/content.css": "/publishable/assets/js/skins/content/default/content.css",
    "/publishable/assets/js/skins/content/default/content.min.css": "/publishable/assets/js/skins/content/default/content.min.css",
    "/publishable/assets/js/skins/content/document/content.css": "/publishable/assets/js/skins/content/document/content.css",
    "/publishable/assets/js/skins/content/document/content.min.css": "/publishable/assets/js/skins/content/document/content.min.css",
    "/publishable/assets/js/skins/content/tinymce-5/content.css": "/publishable/assets/js/skins/content/tinymce-5/content.css",
    "/publishable/assets/js/skins/content/tinymce-5/content.min.css": "/publishable/assets/js/skins/content/tinymce-5/content.min.css",
    "/publishable/assets/js/skins/content/tinymce-5-dark/content.css": "/publishable/assets/js/skins/content/tinymce-5-dark/content.css",
    "/publishable/assets/js/skins/content/tinymce-5-dark/content.min.css": "/publishable/assets/js/skins/content/tinymce-5-dark/content.min.css",
    "/publishable/assets/js/skins/content/writer/content.css": "/publishable/assets/js/skins/content/writer/content.css",
    "/publishable/assets/js/skins/content/writer/content.min.css": "/publishable/assets/js/skins/content/writer/content.min.css",
    "/publishable/assets/js/skins/ui/oxide/content.css": "/publishable/assets/js/skins/ui/oxide/content.css",
    "/publishable/assets/js/skins/ui/oxide/content.inline.css": "/publishable/assets/js/skins/ui/oxide/content.inline.css",
    "/publishable/assets/js/skins/ui/oxide/content.inline.min.css": "/publishable/assets/js/skins/ui/oxide/content.inline.min.css",
    "/publishable/assets/js/skins/ui/oxide/content.min.css": "/publishable/assets/js/skins/ui/oxide/content.min.css",
    "/publishable/assets/js/skins/ui/oxide/content.mobile.css": "/publishable/assets/js/skins/ui/oxide/content.mobile.css",
    "/publishable/assets/js/skins/ui/oxide/content.mobile.min.css": "/publishable/assets/js/skins/ui/oxide/content.mobile.min.css",
    "/publishable/assets/js/skins/ui/oxide/fonts/tinymce-mobile.woff": "/publishable/assets/js/skins/ui/oxide/fonts/tinymce-mobile.woff",
    "/publishable/assets/js/skins/ui/oxide/skin.css": "/publishable/assets/js/skins/ui/oxide/skin.css",
    "/publishable/assets/js/skins/ui/oxide/skin.min.css": "/publishable/assets/js/skins/ui/oxide/skin.min.css",
    "/publishable/assets/js/skins/ui/oxide/skin.mobile.css": "/publishable/assets/js/skins/ui/oxide/skin.mobile.css",
    "/publishable/assets/js/skins/ui/oxide/skin.mobile.min.css": "/publishable/assets/js/skins/ui/oxide/skin.mobile.min.css",
    "/publishable/assets/js/skins/ui/oxide/skin.shadowdom.css": "/publishable/assets/js/skins/ui/oxide/skin.shadowdom.css",
    "/publishable/assets/js/skins/ui/oxide/skin.shadowdom.min.css": "/publishable/assets/js/skins/ui/oxide/skin.shadowdom.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.css": "/publishable/assets/js/skins/ui/oxide-dark/content.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.inline.css": "/publishable/assets/js/skins/ui/oxide-dark/content.inline.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.inline.min.css": "/publishable/assets/js/skins/ui/oxide-dark/content.inline.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.min.css": "/publishable/assets/js/skins/ui/oxide-dark/content.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.mobile.css": "/publishable/assets/js/skins/ui/oxide-dark/content.mobile.css",
    "/publishable/assets/js/skins/ui/oxide-dark/content.mobile.min.css": "/publishable/assets/js/skins/ui/oxide-dark/content.mobile.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/fonts/tinymce-mobile.woff": "/publishable/assets/js/skins/ui/oxide-dark/fonts/tinymce-mobile.woff",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.css",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.min.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.mobile.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.mobile.css",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.mobile.min.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.mobile.min.css",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.shadowdom.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.shadowdom.css",
    "/publishable/assets/js/skins/ui/oxide-dark/skin.shadowdom.min.css": "/publishable/assets/js/skins/ui/oxide-dark/skin.shadowdom.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5/content.css": "/publishable/assets/js/skins/ui/tinymce-5/content.css",
    "/publishable/assets/js/skins/ui/tinymce-5/content.inline.css": "/publishable/assets/js/skins/ui/tinymce-5/content.inline.css",
    "/publishable/assets/js/skins/ui/tinymce-5/content.inline.min.css": "/publishable/assets/js/skins/ui/tinymce-5/content.inline.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5/content.min.css": "/publishable/assets/js/skins/ui/tinymce-5/content.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5/skin.css": "/publishable/assets/js/skins/ui/tinymce-5/skin.css",
    "/publishable/assets/js/skins/ui/tinymce-5/skin.min.css": "/publishable/assets/js/skins/ui/tinymce-5/skin.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5/skin.shadowdom.css": "/publishable/assets/js/skins/ui/tinymce-5/skin.shadowdom.css",
    "/publishable/assets/js/skins/ui/tinymce-5/skin.shadowdom.min.css": "/publishable/assets/js/skins/ui/tinymce-5/skin.shadowdom.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/content.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/content.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/content.inline.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/content.inline.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/content.inline.min.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/content.inline.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/content.min.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/content.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.min.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.min.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.shadowdom.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.shadowdom.css",
    "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.shadowdom.min.css": "/publishable/assets/js/skins/ui/tinymce-5-dark/skin.shadowdom.min.css",
    "/publishable/assets/js/skins/voyager/Variables.less": "/publishable/assets/js/skins/voyager/Variables.less",
    "/publishable/assets/js/skins/voyager/content.inline.min.css": "/publishable/assets/js/skins/voyager/content.inline.min.css",
    "/publishable/assets/js/skins/voyager/content.min.css": "/publishable/assets/js/skins/voyager/content.min.css",
    "/publishable/assets/js/skins/voyager/fonts/readme.md": "/publishable/assets/js/skins/voyager/fonts/readme.md",
    "/publishable/assets/js/skins/voyager/fonts/tinymce-small.eot": "/publishable/assets/js/skins/voyager/fonts/tinymce-small.eot",
    "/publishable/assets/js/skins/voyager/fonts/tinymce-small.json": "/publishable/assets/js/skins/voyager/fonts/tinymce-small.json",
    "/publishable/assets/js/skins/voyager/fonts/tinymce-small.svg": "/publishable/assets/js/skins/voyager/fonts/tinymce-small.svg",
    "/publishable/assets/js/skins/voyager/fonts/tinymce-small.ttf": "/publishable/assets/js/skins/voyager/fonts/tinymce-small.ttf",
    "/publishable/assets/js/skins/voyager/fonts/tinymce-small.woff": "/publishable/assets/js/skins/voyager/fonts/tinymce-small.woff",
    "/publishable/assets/js/skins/voyager/fonts/tinymce.eot": "/publishable/assets/js/skins/voyager/fonts/tinymce.eot",
    "/publishable/assets/js/skins/voyager/fonts/tinymce.json": "/publishable/assets/js/skins/voyager/fonts/tinymce.json",
    "/publishable/assets/js/skins/voyager/fonts/tinymce.svg": "/publishable/assets/js/skins/voyager/fonts/tinymce.svg",
    "/publishable/assets/js/skins/voyager/fonts/tinymce.ttf": "/publishable/assets/js/skins/voyager/fonts/tinymce.ttf",
    "/publishable/assets/js/skins/voyager/fonts/tinymce.woff": "/publishable/assets/js/skins/voyager/fonts/tinymce.woff",
    "/publishable/assets/js/skins/voyager/img/anchor.gif": "/publishable/assets/js/skins/voyager/img/anchor.gif",
    "/publishable/assets/js/skins/voyager/img/loader.gif": "/publishable/assets/js/skins/voyager/img/loader.gif",
    "/publishable/assets/js/skins/voyager/img/object.gif": "/publishable/assets/js/skins/voyager/img/object.gif",
    "/publishable/assets/js/skins/voyager/img/trans.gif": "/publishable/assets/js/skins/voyager/img/trans.gif",
    "/publishable/assets/js/skins/voyager/skin.ie7.min.css": "/publishable/assets/js/skins/voyager/skin.ie7.min.css",
    "/publishable/assets/js/skins/voyager/skin.json": "/publishable/assets/js/skins/voyager/skin.json",
    "/publishable/assets/js/skins/voyager/skin.min.css": "/publishable/assets/js/skins/voyager/skin.min.css",
    "/publishable/assets/js/themes/silver/index.js": "/publishable/assets/js/themes/silver/index.js",
    "/publishable/assets/js/themes/silver/theme.js": "/publishable/assets/js/themes/silver/theme.js",
    "/publishable/assets/js/themes/silver/theme.min.js": "/publishable/assets/js/themes/silver/theme.min.js",
    "/publishable/assets/js/models/dom/index.js": "/publishable/assets/js/models/dom/index.js",
    "/publishable/assets/js/models/dom/model.js": "/publishable/assets/js/models/dom/model.js",
    "/publishable/assets/js/models/dom/model.min.js": "/publishable/assets/js/models/dom/model.min.js",
    "/publishable/assets/js/icons/default/icons.js": "/publishable/assets/js/icons/default/icons.js",
    "/publishable/assets/js/icons/default/icons.min.js": "/publishable/assets/js/icons/default/icons.min.js",
    "/publishable/assets/js/icons/default/index.js": "/publishable/assets/js/icons/default/index.js",
    "/publishable/assets/js/ace/libs/ace.js": "/publishable/assets/js/ace/libs/ace.js",
    "/publishable/assets/js/ace/libs/ext-beautify.js": "/publishable/assets/js/ace/libs/ext-beautify.js",
    "/publishable/assets/js/ace/libs/ext-code_lens.js": "/publishable/assets/js/ace/libs/ext-code_lens.js",
    "/publishable/assets/js/ace/libs/ext-elastic_tabstops_lite.js": "/publishable/assets/js/ace/libs/ext-elastic_tabstops_lite.js",
    "/publishable/assets/js/ace/libs/ext-emmet.js": "/publishable/assets/js/ace/libs/ext-emmet.js",
    "/publishable/assets/js/ace/libs/ext-error_marker.js": "/publishable/assets/js/ace/libs/ext-error_marker.js",
    "/publishable/assets/js/ace/libs/ext-hardwrap.js": "/publishable/assets/js/ace/libs/ext-hardwrap.js",
    "/publishable/assets/js/ace/libs/ext-keybinding_menu.js": "/publishable/assets/js/ace/libs/ext-keybinding_menu.js",
    "/publishable/assets/js/ace/libs/ext-language_tools.js": "/publishable/assets/js/ace/libs/ext-language_tools.js",
    "/publishable/assets/js/ace/libs/ext-linking.js": "/publishable/assets/js/ace/libs/ext-linking.js",
    "/publishable/assets/js/ace/libs/ext-modelist.js": "/publishable/assets/js/ace/libs/ext-modelist.js",
    "/publishable/assets/js/ace/libs/ext-options.js": "/publishable/assets/js/ace/libs/ext-options.js",
    "/publishable/assets/js/ace/libs/ext-prompt.js": "/publishable/assets/js/ace/libs/ext-prompt.js",
    "/publishable/assets/js/ace/libs/ext-rtl.js": "/publishable/assets/js/ace/libs/ext-rtl.js",
    "/publishable/assets/js/ace/libs/ext-searchbox.js": "/publishable/assets/js/ace/libs/ext-searchbox.js",
    "/publishable/assets/js/ace/libs/ext-settings_menu.js": "/publishable/assets/js/ace/libs/ext-settings_menu.js",
    "/publishable/assets/js/ace/libs/ext-spellcheck.js": "/publishable/assets/js/ace/libs/ext-spellcheck.js",
    "/publishable/assets/js/ace/libs/ext-split.js": "/publishable/assets/js/ace/libs/ext-split.js",
    "/publishable/assets/js/ace/libs/ext-static_highlight.js": "/publishable/assets/js/ace/libs/ext-static_highlight.js",
    "/publishable/assets/js/ace/libs/ext-statusbar.js": "/publishable/assets/js/ace/libs/ext-statusbar.js",
    "/publishable/assets/js/ace/libs/ext-textarea.js": "/publishable/assets/js/ace/libs/ext-textarea.js",
    "/publishable/assets/js/ace/libs/ext-themelist.js": "/publishable/assets/js/ace/libs/ext-themelist.js",
    "/publishable/assets/js/ace/libs/ext-whitespace.js": "/publishable/assets/js/ace/libs/ext-whitespace.js",
    "/publishable/assets/js/ace/libs/keybinding-emacs.js": "/publishable/assets/js/ace/libs/keybinding-emacs.js",
    "/publishable/assets/js/ace/libs/keybinding-sublime.js": "/publishable/assets/js/ace/libs/keybinding-sublime.js",
    "/publishable/assets/js/ace/libs/keybinding-vim.js": "/publishable/assets/js/ace/libs/keybinding-vim.js",
    "/publishable/assets/js/ace/libs/keybinding-vscode.js": "/publishable/assets/js/ace/libs/keybinding-vscode.js",
    "/publishable/assets/js/ace/libs/mode-abap.js": "/publishable/assets/js/ace/libs/mode-abap.js",
    "/publishable/assets/js/ace/libs/mode-abc.js": "/publishable/assets/js/ace/libs/mode-abc.js",
    "/publishable/assets/js/ace/libs/mode-actionscript.js": "/publishable/assets/js/ace/libs/mode-actionscript.js",
    "/publishable/assets/js/ace/libs/mode-ada.js": "/publishable/assets/js/ace/libs/mode-ada.js",
    "/publishable/assets/js/ace/libs/mode-alda.js": "/publishable/assets/js/ace/libs/mode-alda.js",
    "/publishable/assets/js/ace/libs/mode-apache_conf.js": "/publishable/assets/js/ace/libs/mode-apache_conf.js",
    "/publishable/assets/js/ace/libs/mode-apex.js": "/publishable/assets/js/ace/libs/mode-apex.js",
    "/publishable/assets/js/ace/libs/mode-applescript.js": "/publishable/assets/js/ace/libs/mode-applescript.js",
    "/publishable/assets/js/ace/libs/mode-aql.js": "/publishable/assets/js/ace/libs/mode-aql.js",
    "/publishable/assets/js/ace/libs/mode-asciidoc.js": "/publishable/assets/js/ace/libs/mode-asciidoc.js",
    "/publishable/assets/js/ace/libs/mode-asl.js": "/publishable/assets/js/ace/libs/mode-asl.js",
    "/publishable/assets/js/ace/libs/mode-assembly_x86.js": "/publishable/assets/js/ace/libs/mode-assembly_x86.js",
    "/publishable/assets/js/ace/libs/mode-autohotkey.js": "/publishable/assets/js/ace/libs/mode-autohotkey.js",
    "/publishable/assets/js/ace/libs/mode-batchfile.js": "/publishable/assets/js/ace/libs/mode-batchfile.js",
    "/publishable/assets/js/ace/libs/mode-bibtex.js": "/publishable/assets/js/ace/libs/mode-bibtex.js",
    "/publishable/assets/js/ace/libs/mode-c9search.js": "/publishable/assets/js/ace/libs/mode-c9search.js",
    "/publishable/assets/js/ace/libs/mode-c_cpp.js": "/publishable/assets/js/ace/libs/mode-c_cpp.js",
    "/publishable/assets/js/ace/libs/mode-cirru.js": "/publishable/assets/js/ace/libs/mode-cirru.js",
    "/publishable/assets/js/ace/libs/mode-clojure.js": "/publishable/assets/js/ace/libs/mode-clojure.js",
    "/publishable/assets/js/ace/libs/mode-cobol.js": "/publishable/assets/js/ace/libs/mode-cobol.js",
    "/publishable/assets/js/ace/libs/mode-coffee.js": "/publishable/assets/js/ace/libs/mode-coffee.js",
    "/publishable/assets/js/ace/libs/mode-coldfusion.js": "/publishable/assets/js/ace/libs/mode-coldfusion.js",
    "/publishable/assets/js/ace/libs/mode-crystal.js": "/publishable/assets/js/ace/libs/mode-crystal.js",
    "/publishable/assets/js/ace/libs/mode-csharp.js": "/publishable/assets/js/ace/libs/mode-csharp.js",
    "/publishable/assets/js/ace/libs/mode-csound_document.js": "/publishable/assets/js/ace/libs/mode-csound_document.js",
    "/publishable/assets/js/ace/libs/mode-csound_orchestra.js": "/publishable/assets/js/ace/libs/mode-csound_orchestra.js",
    "/publishable/assets/js/ace/libs/mode-csound_score.js": "/publishable/assets/js/ace/libs/mode-csound_score.js",
    "/publishable/assets/js/ace/libs/mode-csp.js": "/publishable/assets/js/ace/libs/mode-csp.js",
    "/publishable/assets/js/ace/libs/mode-css.js": "/publishable/assets/js/ace/libs/mode-css.js",
    "/publishable/assets/js/ace/libs/mode-curly.js": "/publishable/assets/js/ace/libs/mode-curly.js",
    "/publishable/assets/js/ace/libs/mode-d.js": "/publishable/assets/js/ace/libs/mode-d.js",
    "/publishable/assets/js/ace/libs/mode-dart.js": "/publishable/assets/js/ace/libs/mode-dart.js",
    "/publishable/assets/js/ace/libs/mode-diff.js": "/publishable/assets/js/ace/libs/mode-diff.js",
    "/publishable/assets/js/ace/libs/mode-django.js": "/publishable/assets/js/ace/libs/mode-django.js",
    "/publishable/assets/js/ace/libs/mode-dockerfile.js": "/publishable/assets/js/ace/libs/mode-dockerfile.js",
    "/publishable/assets/js/ace/libs/mode-dot.js": "/publishable/assets/js/ace/libs/mode-dot.js",
    "/publishable/assets/js/ace/libs/mode-drools.js": "/publishable/assets/js/ace/libs/mode-drools.js",
    "/publishable/assets/js/ace/libs/mode-edifact.js": "/publishable/assets/js/ace/libs/mode-edifact.js",
    "/publishable/assets/js/ace/libs/mode-eiffel.js": "/publishable/assets/js/ace/libs/mode-eiffel.js",
    "/publishable/assets/js/ace/libs/mode-ejs.js": "/publishable/assets/js/ace/libs/mode-ejs.js",
    "/publishable/assets/js/ace/libs/mode-elixir.js": "/publishable/assets/js/ace/libs/mode-elixir.js",
    "/publishable/assets/js/ace/libs/mode-elm.js": "/publishable/assets/js/ace/libs/mode-elm.js",
    "/publishable/assets/js/ace/libs/mode-erlang.js": "/publishable/assets/js/ace/libs/mode-erlang.js",
    "/publishable/assets/js/ace/libs/mode-forth.js": "/publishable/assets/js/ace/libs/mode-forth.js",
    "/publishable/assets/js/ace/libs/mode-fortran.js": "/publishable/assets/js/ace/libs/mode-fortran.js",
    "/publishable/assets/js/ace/libs/mode-fsharp.js": "/publishable/assets/js/ace/libs/mode-fsharp.js",
    "/publishable/assets/js/ace/libs/mode-fsl.js": "/publishable/assets/js/ace/libs/mode-fsl.js",
    "/publishable/assets/js/ace/libs/mode-ftl.js": "/publishable/assets/js/ace/libs/mode-ftl.js",
    "/publishable/assets/js/ace/libs/mode-gcode.js": "/publishable/assets/js/ace/libs/mode-gcode.js",
    "/publishable/assets/js/ace/libs/mode-gherkin.js": "/publishable/assets/js/ace/libs/mode-gherkin.js",
    "/publishable/assets/js/ace/libs/mode-gitignore.js": "/publishable/assets/js/ace/libs/mode-gitignore.js",
    "/publishable/assets/js/ace/libs/mode-glsl.js": "/publishable/assets/js/ace/libs/mode-glsl.js",
    "/publishable/assets/js/ace/libs/mode-gobstones.js": "/publishable/assets/js/ace/libs/mode-gobstones.js",
    "/publishable/assets/js/ace/libs/mode-golang.js": "/publishable/assets/js/ace/libs/mode-golang.js",
    "/publishable/assets/js/ace/libs/mode-graphqlschema.js": "/publishable/assets/js/ace/libs/mode-graphqlschema.js",
    "/publishable/assets/js/ace/libs/mode-groovy.js": "/publishable/assets/js/ace/libs/mode-groovy.js",
    "/publishable/assets/js/ace/libs/mode-haml.js": "/publishable/assets/js/ace/libs/mode-haml.js",
    "/publishable/assets/js/ace/libs/mode-handlebars.js": "/publishable/assets/js/ace/libs/mode-handlebars.js",
    "/publishable/assets/js/ace/libs/mode-haskell.js": "/publishable/assets/js/ace/libs/mode-haskell.js",
    "/publishable/assets/js/ace/libs/mode-haskell_cabal.js": "/publishable/assets/js/ace/libs/mode-haskell_cabal.js",
    "/publishable/assets/js/ace/libs/mode-haxe.js": "/publishable/assets/js/ace/libs/mode-haxe.js",
    "/publishable/assets/js/ace/libs/mode-hjson.js": "/publishable/assets/js/ace/libs/mode-hjson.js",
    "/publishable/assets/js/ace/libs/mode-html.js": "/publishable/assets/js/ace/libs/mode-html.js",
    "/publishable/assets/js/ace/libs/mode-html_elixir.js": "/publishable/assets/js/ace/libs/mode-html_elixir.js",
    "/publishable/assets/js/ace/libs/mode-html_ruby.js": "/publishable/assets/js/ace/libs/mode-html_ruby.js",
    "/publishable/assets/js/ace/libs/mode-ini.js": "/publishable/assets/js/ace/libs/mode-ini.js",
    "/publishable/assets/js/ace/libs/mode-io.js": "/publishable/assets/js/ace/libs/mode-io.js",
    "/publishable/assets/js/ace/libs/mode-ion.js": "/publishable/assets/js/ace/libs/mode-ion.js",
    "/publishable/assets/js/ace/libs/mode-jack.js": "/publishable/assets/js/ace/libs/mode-jack.js",
    "/publishable/assets/js/ace/libs/mode-jade.js": "/publishable/assets/js/ace/libs/mode-jade.js",
    "/publishable/assets/js/ace/libs/mode-java.js": "/publishable/assets/js/ace/libs/mode-java.js",
    "/publishable/assets/js/ace/libs/mode-javascript.js": "/publishable/assets/js/ace/libs/mode-javascript.js",
    "/publishable/assets/js/ace/libs/mode-json.js": "/publishable/assets/js/ace/libs/mode-json.js",
    "/publishable/assets/js/ace/libs/mode-json5.js": "/publishable/assets/js/ace/libs/mode-json5.js",
    "/publishable/assets/js/ace/libs/mode-jsoniq.js": "/publishable/assets/js/ace/libs/mode-jsoniq.js",
    "/publishable/assets/js/ace/libs/mode-jsp.js": "/publishable/assets/js/ace/libs/mode-jsp.js",
    "/publishable/assets/js/ace/libs/mode-jssm.js": "/publishable/assets/js/ace/libs/mode-jssm.js",
    "/publishable/assets/js/ace/libs/mode-jsx.js": "/publishable/assets/js/ace/libs/mode-jsx.js",
    "/publishable/assets/js/ace/libs/mode-julia.js": "/publishable/assets/js/ace/libs/mode-julia.js",
    "/publishable/assets/js/ace/libs/mode-kotlin.js": "/publishable/assets/js/ace/libs/mode-kotlin.js",
    "/publishable/assets/js/ace/libs/mode-latex.js": "/publishable/assets/js/ace/libs/mode-latex.js",
    "/publishable/assets/js/ace/libs/mode-latte.js": "/publishable/assets/js/ace/libs/mode-latte.js",
    "/publishable/assets/js/ace/libs/mode-less.js": "/publishable/assets/js/ace/libs/mode-less.js",
    "/publishable/assets/js/ace/libs/mode-liquid.js": "/publishable/assets/js/ace/libs/mode-liquid.js",
    "/publishable/assets/js/ace/libs/mode-lisp.js": "/publishable/assets/js/ace/libs/mode-lisp.js",
    "/publishable/assets/js/ace/libs/mode-livescript.js": "/publishable/assets/js/ace/libs/mode-livescript.js",
    "/publishable/assets/js/ace/libs/mode-logiql.js": "/publishable/assets/js/ace/libs/mode-logiql.js",
    "/publishable/assets/js/ace/libs/mode-logtalk.js": "/publishable/assets/js/ace/libs/mode-logtalk.js",
    "/publishable/assets/js/ace/libs/mode-lsl.js": "/publishable/assets/js/ace/libs/mode-lsl.js",
    "/publishable/assets/js/ace/libs/mode-lua.js": "/publishable/assets/js/ace/libs/mode-lua.js",
    "/publishable/assets/js/ace/libs/mode-luapage.js": "/publishable/assets/js/ace/libs/mode-luapage.js",
    "/publishable/assets/js/ace/libs/mode-lucene.js": "/publishable/assets/js/ace/libs/mode-lucene.js",
    "/publishable/assets/js/ace/libs/mode-makefile.js": "/publishable/assets/js/ace/libs/mode-makefile.js",
    "/publishable/assets/js/ace/libs/mode-markdown.js": "/publishable/assets/js/ace/libs/mode-markdown.js",
    "/publishable/assets/js/ace/libs/mode-mask.js": "/publishable/assets/js/ace/libs/mode-mask.js",
    "/publishable/assets/js/ace/libs/mode-matlab.js": "/publishable/assets/js/ace/libs/mode-matlab.js",
    "/publishable/assets/js/ace/libs/mode-maze.js": "/publishable/assets/js/ace/libs/mode-maze.js",
    "/publishable/assets/js/ace/libs/mode-mediawiki.js": "/publishable/assets/js/ace/libs/mode-mediawiki.js",
    "/publishable/assets/js/ace/libs/mode-mel.js": "/publishable/assets/js/ace/libs/mode-mel.js",
    "/publishable/assets/js/ace/libs/mode-mips.js": "/publishable/assets/js/ace/libs/mode-mips.js",
    "/publishable/assets/js/ace/libs/mode-mixal.js": "/publishable/assets/js/ace/libs/mode-mixal.js",
    "/publishable/assets/js/ace/libs/mode-mushcode.js": "/publishable/assets/js/ace/libs/mode-mushcode.js",
    "/publishable/assets/js/ace/libs/mode-mysql.js": "/publishable/assets/js/ace/libs/mode-mysql.js",
    "/publishable/assets/js/ace/libs/mode-nginx.js": "/publishable/assets/js/ace/libs/mode-nginx.js",
    "/publishable/assets/js/ace/libs/mode-nim.js": "/publishable/assets/js/ace/libs/mode-nim.js",
    "/publishable/assets/js/ace/libs/mode-nix.js": "/publishable/assets/js/ace/libs/mode-nix.js",
    "/publishable/assets/js/ace/libs/mode-nsis.js": "/publishable/assets/js/ace/libs/mode-nsis.js",
    "/publishable/assets/js/ace/libs/mode-nunjucks.js": "/publishable/assets/js/ace/libs/mode-nunjucks.js",
    "/publishable/assets/js/ace/libs/mode-objectivec.js": "/publishable/assets/js/ace/libs/mode-objectivec.js",
    "/publishable/assets/js/ace/libs/mode-ocaml.js": "/publishable/assets/js/ace/libs/mode-ocaml.js",
    "/publishable/assets/js/ace/libs/mode-partiql.js": "/publishable/assets/js/ace/libs/mode-partiql.js",
    "/publishable/assets/js/ace/libs/mode-pascal.js": "/publishable/assets/js/ace/libs/mode-pascal.js",
    "/publishable/assets/js/ace/libs/mode-perl.js": "/publishable/assets/js/ace/libs/mode-perl.js",
    "/publishable/assets/js/ace/libs/mode-pgsql.js": "/publishable/assets/js/ace/libs/mode-pgsql.js",
    "/publishable/assets/js/ace/libs/mode-php.js": "/publishable/assets/js/ace/libs/mode-php.js",
    "/publishable/assets/js/ace/libs/mode-php_laravel_blade.js": "/publishable/assets/js/ace/libs/mode-php_laravel_blade.js",
    "/publishable/assets/js/ace/libs/mode-pig.js": "/publishable/assets/js/ace/libs/mode-pig.js",
    "/publishable/assets/js/ace/libs/mode-plain_text.js": "/publishable/assets/js/ace/libs/mode-plain_text.js",
    "/publishable/assets/js/ace/libs/mode-powershell.js": "/publishable/assets/js/ace/libs/mode-powershell.js",
    "/publishable/assets/js/ace/libs/mode-praat.js": "/publishable/assets/js/ace/libs/mode-praat.js",
    "/publishable/assets/js/ace/libs/mode-prisma.js": "/publishable/assets/js/ace/libs/mode-prisma.js",
    "/publishable/assets/js/ace/libs/mode-prolog.js": "/publishable/assets/js/ace/libs/mode-prolog.js",
    "/publishable/assets/js/ace/libs/mode-properties.js": "/publishable/assets/js/ace/libs/mode-properties.js",
    "/publishable/assets/js/ace/libs/mode-protobuf.js": "/publishable/assets/js/ace/libs/mode-protobuf.js",
    "/publishable/assets/js/ace/libs/mode-puppet.js": "/publishable/assets/js/ace/libs/mode-puppet.js",
    "/publishable/assets/js/ace/libs/mode-python.js": "/publishable/assets/js/ace/libs/mode-python.js",
    "/publishable/assets/js/ace/libs/mode-qml.js": "/publishable/assets/js/ace/libs/mode-qml.js",
    "/publishable/assets/js/ace/libs/mode-r.js": "/publishable/assets/js/ace/libs/mode-r.js",
    "/publishable/assets/js/ace/libs/mode-raku.js": "/publishable/assets/js/ace/libs/mode-raku.js",
    "/publishable/assets/js/ace/libs/mode-razor.js": "/publishable/assets/js/ace/libs/mode-razor.js",
    "/publishable/assets/js/ace/libs/mode-rdoc.js": "/publishable/assets/js/ace/libs/mode-rdoc.js",
    "/publishable/assets/js/ace/libs/mode-red.js": "/publishable/assets/js/ace/libs/mode-red.js",
    "/publishable/assets/js/ace/libs/mode-redshift.js": "/publishable/assets/js/ace/libs/mode-redshift.js",
    "/publishable/assets/js/ace/libs/mode-rhtml.js": "/publishable/assets/js/ace/libs/mode-rhtml.js",
    "/publishable/assets/js/ace/libs/mode-robot.js": "/publishable/assets/js/ace/libs/mode-robot.js",
    "/publishable/assets/js/ace/libs/mode-rst.js": "/publishable/assets/js/ace/libs/mode-rst.js",
    "/publishable/assets/js/ace/libs/mode-ruby.js": "/publishable/assets/js/ace/libs/mode-ruby.js",
    "/publishable/assets/js/ace/libs/mode-rust.js": "/publishable/assets/js/ace/libs/mode-rust.js",
    "/publishable/assets/js/ace/libs/mode-sac.js": "/publishable/assets/js/ace/libs/mode-sac.js",
    "/publishable/assets/js/ace/libs/mode-sass.js": "/publishable/assets/js/ace/libs/mode-sass.js",
    "/publishable/assets/js/ace/libs/mode-scad.js": "/publishable/assets/js/ace/libs/mode-scad.js",
    "/publishable/assets/js/ace/libs/mode-scala.js": "/publishable/assets/js/ace/libs/mode-scala.js",
    "/publishable/assets/js/ace/libs/mode-scheme.js": "/publishable/assets/js/ace/libs/mode-scheme.js",
    "/publishable/assets/js/ace/libs/mode-scrypt.js": "/publishable/assets/js/ace/libs/mode-scrypt.js",
    "/publishable/assets/js/ace/libs/mode-scss.js": "/publishable/assets/js/ace/libs/mode-scss.js",
    "/publishable/assets/js/ace/libs/mode-sh.js": "/publishable/assets/js/ace/libs/mode-sh.js",
    "/publishable/assets/js/ace/libs/mode-sjs.js": "/publishable/assets/js/ace/libs/mode-sjs.js",
    "/publishable/assets/js/ace/libs/mode-slim.js": "/publishable/assets/js/ace/libs/mode-slim.js",
    "/publishable/assets/js/ace/libs/mode-smarty.js": "/publishable/assets/js/ace/libs/mode-smarty.js",
    "/publishable/assets/js/ace/libs/mode-smithy.js": "/publishable/assets/js/ace/libs/mode-smithy.js",
    "/publishable/assets/js/ace/libs/mode-snippets.js": "/publishable/assets/js/ace/libs/mode-snippets.js",
    "/publishable/assets/js/ace/libs/mode-soy_template.js": "/publishable/assets/js/ace/libs/mode-soy_template.js",
    "/publishable/assets/js/ace/libs/mode-space.js": "/publishable/assets/js/ace/libs/mode-space.js",
    "/publishable/assets/js/ace/libs/mode-sparql.js": "/publishable/assets/js/ace/libs/mode-sparql.js",
    "/publishable/assets/js/ace/libs/mode-sql.js": "/publishable/assets/js/ace/libs/mode-sql.js",
    "/publishable/assets/js/ace/libs/mode-sqlserver.js": "/publishable/assets/js/ace/libs/mode-sqlserver.js",
    "/publishable/assets/js/ace/libs/mode-stylus.js": "/publishable/assets/js/ace/libs/mode-stylus.js",
    "/publishable/assets/js/ace/libs/mode-svg.js": "/publishable/assets/js/ace/libs/mode-svg.js",
    "/publishable/assets/js/ace/libs/mode-swift.js": "/publishable/assets/js/ace/libs/mode-swift.js",
    "/publishable/assets/js/ace/libs/mode-tcl.js": "/publishable/assets/js/ace/libs/mode-tcl.js",
    "/publishable/assets/js/ace/libs/mode-terraform.js": "/publishable/assets/js/ace/libs/mode-terraform.js",
    "/publishable/assets/js/ace/libs/mode-tex.js": "/publishable/assets/js/ace/libs/mode-tex.js",
    "/publishable/assets/js/ace/libs/mode-text.js": "/publishable/assets/js/ace/libs/mode-text.js",
    "/publishable/assets/js/ace/libs/mode-textile.js": "/publishable/assets/js/ace/libs/mode-textile.js",
    "/publishable/assets/js/ace/libs/mode-toml.js": "/publishable/assets/js/ace/libs/mode-toml.js",
    "/publishable/assets/js/ace/libs/mode-tsx.js": "/publishable/assets/js/ace/libs/mode-tsx.js",
    "/publishable/assets/js/ace/libs/mode-turtle.js": "/publishable/assets/js/ace/libs/mode-turtle.js",
    "/publishable/assets/js/ace/libs/mode-twig.js": "/publishable/assets/js/ace/libs/mode-twig.js",
    "/publishable/assets/js/ace/libs/mode-typescript.js": "/publishable/assets/js/ace/libs/mode-typescript.js",
    "/publishable/assets/js/ace/libs/mode-vala.js": "/publishable/assets/js/ace/libs/mode-vala.js",
    "/publishable/assets/js/ace/libs/mode-vbscript.js": "/publishable/assets/js/ace/libs/mode-vbscript.js",
    "/publishable/assets/js/ace/libs/mode-velocity.js": "/publishable/assets/js/ace/libs/mode-velocity.js",
    "/publishable/assets/js/ace/libs/mode-verilog.js": "/publishable/assets/js/ace/libs/mode-verilog.js",
    "/publishable/assets/js/ace/libs/mode-vhdl.js": "/publishable/assets/js/ace/libs/mode-vhdl.js",
    "/publishable/assets/js/ace/libs/mode-visualforce.js": "/publishable/assets/js/ace/libs/mode-visualforce.js",
    "/publishable/assets/js/ace/libs/mode-wollok.js": "/publishable/assets/js/ace/libs/mode-wollok.js",
    "/publishable/assets/js/ace/libs/mode-xml.js": "/publishable/assets/js/ace/libs/mode-xml.js",
    "/publishable/assets/js/ace/libs/mode-xquery.js": "/publishable/assets/js/ace/libs/mode-xquery.js",
    "/publishable/assets/js/ace/libs/mode-yaml.js": "/publishable/assets/js/ace/libs/mode-yaml.js",
    "/publishable/assets/js/ace/libs/mode-zeek.js": "/publishable/assets/js/ace/libs/mode-zeek.js",
    "/publishable/assets/js/ace/libs/snippets/abap.js": "/publishable/assets/js/ace/libs/snippets/abap.js",
    "/publishable/assets/js/ace/libs/snippets/abc.js": "/publishable/assets/js/ace/libs/snippets/abc.js",
    "/publishable/assets/js/ace/libs/snippets/actionscript.js": "/publishable/assets/js/ace/libs/snippets/actionscript.js",
    "/publishable/assets/js/ace/libs/snippets/ada.js": "/publishable/assets/js/ace/libs/snippets/ada.js",
    "/publishable/assets/js/ace/libs/snippets/alda.js": "/publishable/assets/js/ace/libs/snippets/alda.js",
    "/publishable/assets/js/ace/libs/snippets/apache_conf.js": "/publishable/assets/js/ace/libs/snippets/apache_conf.js",
    "/publishable/assets/js/ace/libs/snippets/apex.js": "/publishable/assets/js/ace/libs/snippets/apex.js",
    "/publishable/assets/js/ace/libs/snippets/applescript.js": "/publishable/assets/js/ace/libs/snippets/applescript.js",
    "/publishable/assets/js/ace/libs/snippets/aql.js": "/publishable/assets/js/ace/libs/snippets/aql.js",
    "/publishable/assets/js/ace/libs/snippets/asciidoc.js": "/publishable/assets/js/ace/libs/snippets/asciidoc.js",
    "/publishable/assets/js/ace/libs/snippets/asl.js": "/publishable/assets/js/ace/libs/snippets/asl.js",
    "/publishable/assets/js/ace/libs/snippets/assembly_x86.js": "/publishable/assets/js/ace/libs/snippets/assembly_x86.js",
    "/publishable/assets/js/ace/libs/snippets/autohotkey.js": "/publishable/assets/js/ace/libs/snippets/autohotkey.js",
    "/publishable/assets/js/ace/libs/snippets/batchfile.js": "/publishable/assets/js/ace/libs/snippets/batchfile.js",
    "/publishable/assets/js/ace/libs/snippets/bibtex.js": "/publishable/assets/js/ace/libs/snippets/bibtex.js",
    "/publishable/assets/js/ace/libs/snippets/c9search.js": "/publishable/assets/js/ace/libs/snippets/c9search.js",
    "/publishable/assets/js/ace/libs/snippets/c_cpp.js": "/publishable/assets/js/ace/libs/snippets/c_cpp.js",
    "/publishable/assets/js/ace/libs/snippets/cirru.js": "/publishable/assets/js/ace/libs/snippets/cirru.js",
    "/publishable/assets/js/ace/libs/snippets/clojure.js": "/publishable/assets/js/ace/libs/snippets/clojure.js",
    "/publishable/assets/js/ace/libs/snippets/cobol.js": "/publishable/assets/js/ace/libs/snippets/cobol.js",
    "/publishable/assets/js/ace/libs/snippets/coffee.js": "/publishable/assets/js/ace/libs/snippets/coffee.js",
    "/publishable/assets/js/ace/libs/snippets/coldfusion.js": "/publishable/assets/js/ace/libs/snippets/coldfusion.js",
    "/publishable/assets/js/ace/libs/snippets/crystal.js": "/publishable/assets/js/ace/libs/snippets/crystal.js",
    "/publishable/assets/js/ace/libs/snippets/csharp.js": "/publishable/assets/js/ace/libs/snippets/csharp.js",
    "/publishable/assets/js/ace/libs/snippets/csound_document.js": "/publishable/assets/js/ace/libs/snippets/csound_document.js",
    "/publishable/assets/js/ace/libs/snippets/csound_orchestra.js": "/publishable/assets/js/ace/libs/snippets/csound_orchestra.js",
    "/publishable/assets/js/ace/libs/snippets/csound_score.js": "/publishable/assets/js/ace/libs/snippets/csound_score.js",
    "/publishable/assets/js/ace/libs/snippets/csp.js": "/publishable/assets/js/ace/libs/snippets/csp.js",
    "/publishable/assets/js/ace/libs/snippets/css.js": "/publishable/assets/js/ace/libs/snippets/css.js",
    "/publishable/assets/js/ace/libs/snippets/curly.js": "/publishable/assets/js/ace/libs/snippets/curly.js",
    "/publishable/assets/js/ace/libs/snippets/d.js": "/publishable/assets/js/ace/libs/snippets/d.js",
    "/publishable/assets/js/ace/libs/snippets/dart.js": "/publishable/assets/js/ace/libs/snippets/dart.js",
    "/publishable/assets/js/ace/libs/snippets/diff.js": "/publishable/assets/js/ace/libs/snippets/diff.js",
    "/publishable/assets/js/ace/libs/snippets/django.js": "/publishable/assets/js/ace/libs/snippets/django.js",
    "/publishable/assets/js/ace/libs/snippets/dockerfile.js": "/publishable/assets/js/ace/libs/snippets/dockerfile.js",
    "/publishable/assets/js/ace/libs/snippets/dot.js": "/publishable/assets/js/ace/libs/snippets/dot.js",
    "/publishable/assets/js/ace/libs/snippets/drools.js": "/publishable/assets/js/ace/libs/snippets/drools.js",
    "/publishable/assets/js/ace/libs/snippets/edifact.js": "/publishable/assets/js/ace/libs/snippets/edifact.js",
    "/publishable/assets/js/ace/libs/snippets/eiffel.js": "/publishable/assets/js/ace/libs/snippets/eiffel.js",
    "/publishable/assets/js/ace/libs/snippets/ejs.js": "/publishable/assets/js/ace/libs/snippets/ejs.js",
    "/publishable/assets/js/ace/libs/snippets/elixir.js": "/publishable/assets/js/ace/libs/snippets/elixir.js",
    "/publishable/assets/js/ace/libs/snippets/elm.js": "/publishable/assets/js/ace/libs/snippets/elm.js",
    "/publishable/assets/js/ace/libs/snippets/erlang.js": "/publishable/assets/js/ace/libs/snippets/erlang.js",
    "/publishable/assets/js/ace/libs/snippets/forth.js": "/publishable/assets/js/ace/libs/snippets/forth.js",
    "/publishable/assets/js/ace/libs/snippets/fortran.js": "/publishable/assets/js/ace/libs/snippets/fortran.js",
    "/publishable/assets/js/ace/libs/snippets/fsharp.js": "/publishable/assets/js/ace/libs/snippets/fsharp.js",
    "/publishable/assets/js/ace/libs/snippets/fsl.js": "/publishable/assets/js/ace/libs/snippets/fsl.js",
    "/publishable/assets/js/ace/libs/snippets/ftl.js": "/publishable/assets/js/ace/libs/snippets/ftl.js",
    "/publishable/assets/js/ace/libs/snippets/gcode.js": "/publishable/assets/js/ace/libs/snippets/gcode.js",
    "/publishable/assets/js/ace/libs/snippets/gherkin.js": "/publishable/assets/js/ace/libs/snippets/gherkin.js",
    "/publishable/assets/js/ace/libs/snippets/gitignore.js": "/publishable/assets/js/ace/libs/snippets/gitignore.js",
    "/publishable/assets/js/ace/libs/snippets/glsl.js": "/publishable/assets/js/ace/libs/snippets/glsl.js",
    "/publishable/assets/js/ace/libs/snippets/gobstones.js": "/publishable/assets/js/ace/libs/snippets/gobstones.js",
    "/publishable/assets/js/ace/libs/snippets/golang.js": "/publishable/assets/js/ace/libs/snippets/golang.js",
    "/publishable/assets/js/ace/libs/snippets/graphqlschema.js": "/publishable/assets/js/ace/libs/snippets/graphqlschema.js",
    "/publishable/assets/js/ace/libs/snippets/groovy.js": "/publishable/assets/js/ace/libs/snippets/groovy.js",
    "/publishable/assets/js/ace/libs/snippets/haml.js": "/publishable/assets/js/ace/libs/snippets/haml.js",
    "/publishable/assets/js/ace/libs/snippets/handlebars.js": "/publishable/assets/js/ace/libs/snippets/handlebars.js",
    "/publishable/assets/js/ace/libs/snippets/haskell.js": "/publishable/assets/js/ace/libs/snippets/haskell.js",
    "/publishable/assets/js/ace/libs/snippets/haskell_cabal.js": "/publishable/assets/js/ace/libs/snippets/haskell_cabal.js",
    "/publishable/assets/js/ace/libs/snippets/haxe.js": "/publishable/assets/js/ace/libs/snippets/haxe.js",
    "/publishable/assets/js/ace/libs/snippets/hjson.js": "/publishable/assets/js/ace/libs/snippets/hjson.js",
    "/publishable/assets/js/ace/libs/snippets/html.js": "/publishable/assets/js/ace/libs/snippets/html.js",
    "/publishable/assets/js/ace/libs/snippets/html_elixir.js": "/publishable/assets/js/ace/libs/snippets/html_elixir.js",
    "/publishable/assets/js/ace/libs/snippets/html_ruby.js": "/publishable/assets/js/ace/libs/snippets/html_ruby.js",
    "/publishable/assets/js/ace/libs/snippets/ini.js": "/publishable/assets/js/ace/libs/snippets/ini.js",
    "/publishable/assets/js/ace/libs/snippets/io.js": "/publishable/assets/js/ace/libs/snippets/io.js",
    "/publishable/assets/js/ace/libs/snippets/ion.js": "/publishable/assets/js/ace/libs/snippets/ion.js",
    "/publishable/assets/js/ace/libs/snippets/jack.js": "/publishable/assets/js/ace/libs/snippets/jack.js",
    "/publishable/assets/js/ace/libs/snippets/jade.js": "/publishable/assets/js/ace/libs/snippets/jade.js",
    "/publishable/assets/js/ace/libs/snippets/java.js": "/publishable/assets/js/ace/libs/snippets/java.js",
    "/publishable/assets/js/ace/libs/snippets/javascript.js": "/publishable/assets/js/ace/libs/snippets/javascript.js",
    "/publishable/assets/js/ace/libs/snippets/json.js": "/publishable/assets/js/ace/libs/snippets/json.js",
    "/publishable/assets/js/ace/libs/snippets/json5.js": "/publishable/assets/js/ace/libs/snippets/json5.js",
    "/publishable/assets/js/ace/libs/snippets/jsoniq.js": "/publishable/assets/js/ace/libs/snippets/jsoniq.js",
    "/publishable/assets/js/ace/libs/snippets/jsp.js": "/publishable/assets/js/ace/libs/snippets/jsp.js",
    "/publishable/assets/js/ace/libs/snippets/jssm.js": "/publishable/assets/js/ace/libs/snippets/jssm.js",
    "/publishable/assets/js/ace/libs/snippets/jsx.js": "/publishable/assets/js/ace/libs/snippets/jsx.js",
    "/publishable/assets/js/ace/libs/snippets/julia.js": "/publishable/assets/js/ace/libs/snippets/julia.js",
    "/publishable/assets/js/ace/libs/snippets/kotlin.js": "/publishable/assets/js/ace/libs/snippets/kotlin.js",
    "/publishable/assets/js/ace/libs/snippets/latex.js": "/publishable/assets/js/ace/libs/snippets/latex.js",
    "/publishable/assets/js/ace/libs/snippets/latte.js": "/publishable/assets/js/ace/libs/snippets/latte.js",
    "/publishable/assets/js/ace/libs/snippets/less.js": "/publishable/assets/js/ace/libs/snippets/less.js",
    "/publishable/assets/js/ace/libs/snippets/liquid.js": "/publishable/assets/js/ace/libs/snippets/liquid.js",
    "/publishable/assets/js/ace/libs/snippets/lisp.js": "/publishable/assets/js/ace/libs/snippets/lisp.js",
    "/publishable/assets/js/ace/libs/snippets/livescript.js": "/publishable/assets/js/ace/libs/snippets/livescript.js",
    "/publishable/assets/js/ace/libs/snippets/logiql.js": "/publishable/assets/js/ace/libs/snippets/logiql.js",
    "/publishable/assets/js/ace/libs/snippets/logtalk.js": "/publishable/assets/js/ace/libs/snippets/logtalk.js",
    "/publishable/assets/js/ace/libs/snippets/lsl.js": "/publishable/assets/js/ace/libs/snippets/lsl.js",
    "/publishable/assets/js/ace/libs/snippets/lua.js": "/publishable/assets/js/ace/libs/snippets/lua.js",
    "/publishable/assets/js/ace/libs/snippets/luapage.js": "/publishable/assets/js/ace/libs/snippets/luapage.js",
    "/publishable/assets/js/ace/libs/snippets/lucene.js": "/publishable/assets/js/ace/libs/snippets/lucene.js",
    "/publishable/assets/js/ace/libs/snippets/makefile.js": "/publishable/assets/js/ace/libs/snippets/makefile.js",
    "/publishable/assets/js/ace/libs/snippets/markdown.js": "/publishable/assets/js/ace/libs/snippets/markdown.js",
    "/publishable/assets/js/ace/libs/snippets/mask.js": "/publishable/assets/js/ace/libs/snippets/mask.js",
    "/publishable/assets/js/ace/libs/snippets/matlab.js": "/publishable/assets/js/ace/libs/snippets/matlab.js",
    "/publishable/assets/js/ace/libs/snippets/maze.js": "/publishable/assets/js/ace/libs/snippets/maze.js",
    "/publishable/assets/js/ace/libs/snippets/mediawiki.js": "/publishable/assets/js/ace/libs/snippets/mediawiki.js",
    "/publishable/assets/js/ace/libs/snippets/mel.js": "/publishable/assets/js/ace/libs/snippets/mel.js",
    "/publishable/assets/js/ace/libs/snippets/mips.js": "/publishable/assets/js/ace/libs/snippets/mips.js",
    "/publishable/assets/js/ace/libs/snippets/mixal.js": "/publishable/assets/js/ace/libs/snippets/mixal.js",
    "/publishable/assets/js/ace/libs/snippets/mushcode.js": "/publishable/assets/js/ace/libs/snippets/mushcode.js",
    "/publishable/assets/js/ace/libs/snippets/mysql.js": "/publishable/assets/js/ace/libs/snippets/mysql.js",
    "/publishable/assets/js/ace/libs/snippets/nginx.js": "/publishable/assets/js/ace/libs/snippets/nginx.js",
    "/publishable/assets/js/ace/libs/snippets/nim.js": "/publishable/assets/js/ace/libs/snippets/nim.js",
    "/publishable/assets/js/ace/libs/snippets/nix.js": "/publishable/assets/js/ace/libs/snippets/nix.js",
    "/publishable/assets/js/ace/libs/snippets/nsis.js": "/publishable/assets/js/ace/libs/snippets/nsis.js",
    "/publishable/assets/js/ace/libs/snippets/nunjucks.js": "/publishable/assets/js/ace/libs/snippets/nunjucks.js",
    "/publishable/assets/js/ace/libs/snippets/objectivec.js": "/publishable/assets/js/ace/libs/snippets/objectivec.js",
    "/publishable/assets/js/ace/libs/snippets/ocaml.js": "/publishable/assets/js/ace/libs/snippets/ocaml.js",
    "/publishable/assets/js/ace/libs/snippets/partiql.js": "/publishable/assets/js/ace/libs/snippets/partiql.js",
    "/publishable/assets/js/ace/libs/snippets/pascal.js": "/publishable/assets/js/ace/libs/snippets/pascal.js",
    "/publishable/assets/js/ace/libs/snippets/perl.js": "/publishable/assets/js/ace/libs/snippets/perl.js",
    "/publishable/assets/js/ace/libs/snippets/pgsql.js": "/publishable/assets/js/ace/libs/snippets/pgsql.js",
    "/publishable/assets/js/ace/libs/snippets/php.js": "/publishable/assets/js/ace/libs/snippets/php.js",
    "/publishable/assets/js/ace/libs/snippets/php_laravel_blade.js": "/publishable/assets/js/ace/libs/snippets/php_laravel_blade.js",
    "/publishable/assets/js/ace/libs/snippets/pig.js": "/publishable/assets/js/ace/libs/snippets/pig.js",
    "/publishable/assets/js/ace/libs/snippets/plain_text.js": "/publishable/assets/js/ace/libs/snippets/plain_text.js",
    "/publishable/assets/js/ace/libs/snippets/powershell.js": "/publishable/assets/js/ace/libs/snippets/powershell.js",
    "/publishable/assets/js/ace/libs/snippets/praat.js": "/publishable/assets/js/ace/libs/snippets/praat.js",
    "/publishable/assets/js/ace/libs/snippets/prisma.js": "/publishable/assets/js/ace/libs/snippets/prisma.js",
    "/publishable/assets/js/ace/libs/snippets/prolog.js": "/publishable/assets/js/ace/libs/snippets/prolog.js",
    "/publishable/assets/js/ace/libs/snippets/properties.js": "/publishable/assets/js/ace/libs/snippets/properties.js",
    "/publishable/assets/js/ace/libs/snippets/protobuf.js": "/publishable/assets/js/ace/libs/snippets/protobuf.js",
    "/publishable/assets/js/ace/libs/snippets/puppet.js": "/publishable/assets/js/ace/libs/snippets/puppet.js",
    "/publishable/assets/js/ace/libs/snippets/python.js": "/publishable/assets/js/ace/libs/snippets/python.js",
    "/publishable/assets/js/ace/libs/snippets/qml.js": "/publishable/assets/js/ace/libs/snippets/qml.js",
    "/publishable/assets/js/ace/libs/snippets/r.js": "/publishable/assets/js/ace/libs/snippets/r.js",
    "/publishable/assets/js/ace/libs/snippets/raku.js": "/publishable/assets/js/ace/libs/snippets/raku.js",
    "/publishable/assets/js/ace/libs/snippets/razor.js": "/publishable/assets/js/ace/libs/snippets/razor.js",
    "/publishable/assets/js/ace/libs/snippets/rdoc.js": "/publishable/assets/js/ace/libs/snippets/rdoc.js",
    "/publishable/assets/js/ace/libs/snippets/red.js": "/publishable/assets/js/ace/libs/snippets/red.js",
    "/publishable/assets/js/ace/libs/snippets/redshift.js": "/publishable/assets/js/ace/libs/snippets/redshift.js",
    "/publishable/assets/js/ace/libs/snippets/rhtml.js": "/publishable/assets/js/ace/libs/snippets/rhtml.js",
    "/publishable/assets/js/ace/libs/snippets/robot.js": "/publishable/assets/js/ace/libs/snippets/robot.js",
    "/publishable/assets/js/ace/libs/snippets/rst.js": "/publishable/assets/js/ace/libs/snippets/rst.js",
    "/publishable/assets/js/ace/libs/snippets/ruby.js": "/publishable/assets/js/ace/libs/snippets/ruby.js",
    "/publishable/assets/js/ace/libs/snippets/rust.js": "/publishable/assets/js/ace/libs/snippets/rust.js",
    "/publishable/assets/js/ace/libs/snippets/sac.js": "/publishable/assets/js/ace/libs/snippets/sac.js",
    "/publishable/assets/js/ace/libs/snippets/sass.js": "/publishable/assets/js/ace/libs/snippets/sass.js",
    "/publishable/assets/js/ace/libs/snippets/scad.js": "/publishable/assets/js/ace/libs/snippets/scad.js",
    "/publishable/assets/js/ace/libs/snippets/scala.js": "/publishable/assets/js/ace/libs/snippets/scala.js",
    "/publishable/assets/js/ace/libs/snippets/scheme.js": "/publishable/assets/js/ace/libs/snippets/scheme.js",
    "/publishable/assets/js/ace/libs/snippets/scrypt.js": "/publishable/assets/js/ace/libs/snippets/scrypt.js",
    "/publishable/assets/js/ace/libs/snippets/scss.js": "/publishable/assets/js/ace/libs/snippets/scss.js",
    "/publishable/assets/js/ace/libs/snippets/sh.js": "/publishable/assets/js/ace/libs/snippets/sh.js",
    "/publishable/assets/js/ace/libs/snippets/sjs.js": "/publishable/assets/js/ace/libs/snippets/sjs.js",
    "/publishable/assets/js/ace/libs/snippets/slim.js": "/publishable/assets/js/ace/libs/snippets/slim.js",
    "/publishable/assets/js/ace/libs/snippets/smarty.js": "/publishable/assets/js/ace/libs/snippets/smarty.js",
    "/publishable/assets/js/ace/libs/snippets/smithy.js": "/publishable/assets/js/ace/libs/snippets/smithy.js",
    "/publishable/assets/js/ace/libs/snippets/snippets.js": "/publishable/assets/js/ace/libs/snippets/snippets.js",
    "/publishable/assets/js/ace/libs/snippets/soy_template.js": "/publishable/assets/js/ace/libs/snippets/soy_template.js",
    "/publishable/assets/js/ace/libs/snippets/space.js": "/publishable/assets/js/ace/libs/snippets/space.js",
    "/publishable/assets/js/ace/libs/snippets/sparql.js": "/publishable/assets/js/ace/libs/snippets/sparql.js",
    "/publishable/assets/js/ace/libs/snippets/sql.js": "/publishable/assets/js/ace/libs/snippets/sql.js",
    "/publishable/assets/js/ace/libs/snippets/sqlserver.js": "/publishable/assets/js/ace/libs/snippets/sqlserver.js",
    "/publishable/assets/js/ace/libs/snippets/stylus.js": "/publishable/assets/js/ace/libs/snippets/stylus.js",
    "/publishable/assets/js/ace/libs/snippets/svg.js": "/publishable/assets/js/ace/libs/snippets/svg.js",
    "/publishable/assets/js/ace/libs/snippets/swift.js": "/publishable/assets/js/ace/libs/snippets/swift.js",
    "/publishable/assets/js/ace/libs/snippets/tcl.js": "/publishable/assets/js/ace/libs/snippets/tcl.js",
    "/publishable/assets/js/ace/libs/snippets/terraform.js": "/publishable/assets/js/ace/libs/snippets/terraform.js",
    "/publishable/assets/js/ace/libs/snippets/tex.js": "/publishable/assets/js/ace/libs/snippets/tex.js",
    "/publishable/assets/js/ace/libs/snippets/text.js": "/publishable/assets/js/ace/libs/snippets/text.js",
    "/publishable/assets/js/ace/libs/snippets/textile.js": "/publishable/assets/js/ace/libs/snippets/textile.js",
    "/publishable/assets/js/ace/libs/snippets/toml.js": "/publishable/assets/js/ace/libs/snippets/toml.js",
    "/publishable/assets/js/ace/libs/snippets/tsx.js": "/publishable/assets/js/ace/libs/snippets/tsx.js",
    "/publishable/assets/js/ace/libs/snippets/turtle.js": "/publishable/assets/js/ace/libs/snippets/turtle.js",
    "/publishable/assets/js/ace/libs/snippets/twig.js": "/publishable/assets/js/ace/libs/snippets/twig.js",
    "/publishable/assets/js/ace/libs/snippets/typescript.js": "/publishable/assets/js/ace/libs/snippets/typescript.js",
    "/publishable/assets/js/ace/libs/snippets/vala.js": "/publishable/assets/js/ace/libs/snippets/vala.js",
    "/publishable/assets/js/ace/libs/snippets/vbscript.js": "/publishable/assets/js/ace/libs/snippets/vbscript.js",
    "/publishable/assets/js/ace/libs/snippets/velocity.js": "/publishable/assets/js/ace/libs/snippets/velocity.js",
    "/publishable/assets/js/ace/libs/snippets/verilog.js": "/publishable/assets/js/ace/libs/snippets/verilog.js",
    "/publishable/assets/js/ace/libs/snippets/vhdl.js": "/publishable/assets/js/ace/libs/snippets/vhdl.js",
    "/publishable/assets/js/ace/libs/snippets/visualforce.js": "/publishable/assets/js/ace/libs/snippets/visualforce.js",
    "/publishable/assets/js/ace/libs/snippets/wollok.js": "/publishable/assets/js/ace/libs/snippets/wollok.js",
    "/publishable/assets/js/ace/libs/snippets/xml.js": "/publishable/assets/js/ace/libs/snippets/xml.js",
    "/publishable/assets/js/ace/libs/snippets/xquery.js": "/publishable/assets/js/ace/libs/snippets/xquery.js",
    "/publishable/assets/js/ace/libs/snippets/yaml.js": "/publishable/assets/js/ace/libs/snippets/yaml.js",
    "/publishable/assets/js/ace/libs/snippets/zeek.js": "/publishable/assets/js/ace/libs/snippets/zeek.js",
    "/publishable/assets/js/ace/libs/theme-ambiance.js": "/publishable/assets/js/ace/libs/theme-ambiance.js",
    "/publishable/assets/js/ace/libs/theme-chaos.js": "/publishable/assets/js/ace/libs/theme-chaos.js",
    "/publishable/assets/js/ace/libs/theme-chrome.js": "/publishable/assets/js/ace/libs/theme-chrome.js",
    "/publishable/assets/js/ace/libs/theme-cloud9_day.js": "/publishable/assets/js/ace/libs/theme-cloud9_day.js",
    "/publishable/assets/js/ace/libs/theme-cloud9_night.js": "/publishable/assets/js/ace/libs/theme-cloud9_night.js",
    "/publishable/assets/js/ace/libs/theme-cloud9_night_low_color.js": "/publishable/assets/js/ace/libs/theme-cloud9_night_low_color.js",
    "/publishable/assets/js/ace/libs/theme-clouds.js": "/publishable/assets/js/ace/libs/theme-clouds.js",
    "/publishable/assets/js/ace/libs/theme-clouds_midnight.js": "/publishable/assets/js/ace/libs/theme-clouds_midnight.js",
    "/publishable/assets/js/ace/libs/theme-cobalt.js": "/publishable/assets/js/ace/libs/theme-cobalt.js",
    "/publishable/assets/js/ace/libs/theme-crimson_editor.js": "/publishable/assets/js/ace/libs/theme-crimson_editor.js",
    "/publishable/assets/js/ace/libs/theme-dawn.js": "/publishable/assets/js/ace/libs/theme-dawn.js",
    "/publishable/assets/js/ace/libs/theme-dracula.js": "/publishable/assets/js/ace/libs/theme-dracula.js",
    "/publishable/assets/js/ace/libs/theme-dreamweaver.js": "/publishable/assets/js/ace/libs/theme-dreamweaver.js",
    "/publishable/assets/js/ace/libs/theme-eclipse.js": "/publishable/assets/js/ace/libs/theme-eclipse.js",
    "/publishable/assets/js/ace/libs/theme-github.js": "/publishable/assets/js/ace/libs/theme-github.js",
    "/publishable/assets/js/ace/libs/theme-gob.js": "/publishable/assets/js/ace/libs/theme-gob.js",
    "/publishable/assets/js/ace/libs/theme-gruvbox.js": "/publishable/assets/js/ace/libs/theme-gruvbox.js",
    "/publishable/assets/js/ace/libs/theme-gruvbox_dark_hard.js": "/publishable/assets/js/ace/libs/theme-gruvbox_dark_hard.js",
    "/publishable/assets/js/ace/libs/theme-gruvbox_light_hard.js": "/publishable/assets/js/ace/libs/theme-gruvbox_light_hard.js",
    "/publishable/assets/js/ace/libs/theme-idle_fingers.js": "/publishable/assets/js/ace/libs/theme-idle_fingers.js",
    "/publishable/assets/js/ace/libs/theme-iplastic.js": "/publishable/assets/js/ace/libs/theme-iplastic.js",
    "/publishable/assets/js/ace/libs/theme-katzenmilch.js": "/publishable/assets/js/ace/libs/theme-katzenmilch.js",
    "/publishable/assets/js/ace/libs/theme-kr_theme.js": "/publishable/assets/js/ace/libs/theme-kr_theme.js",
    "/publishable/assets/js/ace/libs/theme-kuroir.js": "/publishable/assets/js/ace/libs/theme-kuroir.js",
    "/publishable/assets/js/ace/libs/theme-merbivore.js": "/publishable/assets/js/ace/libs/theme-merbivore.js",
    "/publishable/assets/js/ace/libs/theme-merbivore_soft.js": "/publishable/assets/js/ace/libs/theme-merbivore_soft.js",
    "/publishable/assets/js/ace/libs/theme-mono_industrial.js": "/publishable/assets/js/ace/libs/theme-mono_industrial.js",
    "/publishable/assets/js/ace/libs/theme-monokai.js": "/publishable/assets/js/ace/libs/theme-monokai.js",
    "/publishable/assets/js/ace/libs/theme-nord_dark.js": "/publishable/assets/js/ace/libs/theme-nord_dark.js",
    "/publishable/assets/js/ace/libs/theme-one_dark.js": "/publishable/assets/js/ace/libs/theme-one_dark.js",
    "/publishable/assets/js/ace/libs/theme-pastel_on_dark.js": "/publishable/assets/js/ace/libs/theme-pastel_on_dark.js",
    "/publishable/assets/js/ace/libs/theme-solarized_dark.js": "/publishable/assets/js/ace/libs/theme-solarized_dark.js",
    "/publishable/assets/js/ace/libs/theme-solarized_light.js": "/publishable/assets/js/ace/libs/theme-solarized_light.js",
    "/publishable/assets/js/ace/libs/theme-sqlserver.js": "/publishable/assets/js/ace/libs/theme-sqlserver.js",
    "/publishable/assets/js/ace/libs/theme-terminal.js": "/publishable/assets/js/ace/libs/theme-terminal.js",
    "/publishable/assets/js/ace/libs/theme-textmate.js": "/publishable/assets/js/ace/libs/theme-textmate.js",
    "/publishable/assets/js/ace/libs/theme-tomorrow.js": "/publishable/assets/js/ace/libs/theme-tomorrow.js",
    "/publishable/assets/js/ace/libs/theme-tomorrow_night.js": "/publishable/assets/js/ace/libs/theme-tomorrow_night.js",
    "/publishable/assets/js/ace/libs/theme-tomorrow_night_blue.js": "/publishable/assets/js/ace/libs/theme-tomorrow_night_blue.js",
    "/publishable/assets/js/ace/libs/theme-tomorrow_night_bright.js": "/publishable/assets/js/ace/libs/theme-tomorrow_night_bright.js",
    "/publishable/assets/js/ace/libs/theme-tomorrow_night_eighties.js": "/publishable/assets/js/ace/libs/theme-tomorrow_night_eighties.js",
    "/publishable/assets/js/ace/libs/theme-twilight.js": "/publishable/assets/js/ace/libs/theme-twilight.js",
    "/publishable/assets/js/ace/libs/theme-vibrant_ink.js": "/publishable/assets/js/ace/libs/theme-vibrant_ink.js",
    "/publishable/assets/js/ace/libs/theme-xcode.js": "/publishable/assets/js/ace/libs/theme-xcode.js",
    "/publishable/assets/js/ace/libs/worker-base.js": "/publishable/assets/js/ace/libs/worker-base.js",
    "/publishable/assets/js/ace/libs/worker-coffee.js": "/publishable/assets/js/ace/libs/worker-coffee.js",
    "/publishable/assets/js/ace/libs/worker-css.js": "/publishable/assets/js/ace/libs/worker-css.js",
    "/publishable/assets/js/ace/libs/worker-html.js": "/publishable/assets/js/ace/libs/worker-html.js",
    "/publishable/assets/js/ace/libs/worker-javascript.js": "/publishable/assets/js/ace/libs/worker-javascript.js",
    "/publishable/assets/js/ace/libs/worker-json.js": "/publishable/assets/js/ace/libs/worker-json.js",
    "/publishable/assets/js/ace/libs/worker-lua.js": "/publishable/assets/js/ace/libs/worker-lua.js",
    "/publishable/assets/js/ace/libs/worker-php.js": "/publishable/assets/js/ace/libs/worker-php.js",
    "/publishable/assets/js/ace/libs/worker-xml.js": "/publishable/assets/js/ace/libs/worker-xml.js",
    "/publishable/assets/js/ace/libs/worker-xquery.js": "/publishable/assets/js/ace/libs/worker-xquery.js",
    "/publishable/assets/js/ace/libs/worker-yaml.js": "/publishable/assets/js/ace/libs/worker-yaml.js"
}


================================================
FILE: mix.js
================================================
!function(n){function t(e){if(r[e])return r[e].exports;var o=r[e]={i:e,l:!1,exports:{}};return n[e].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var r={};t.m=n,t.c=r,t.i=function(n){return n},t.d=function(n,r,e){t.o(n,r)||Object.defineProperty(n,r,{configurable:!1,enumerable:!0,get:e})},t.n=function(n){var r=n&&n.__esModule?function(){return n.default}:function(){return n};return t.d(r,"a",r),r},t.o=function(n,t){return Object.prototype.hasOwnProperty.call(n,t)},t.p="",t(t.s=93)}({16:function(n,t){},17:function(n,t){},93:function(n,t,r){r(17),n.exports=r(16)}});

================================================
FILE: package.json
================================================
{
  "private": true,
  "scripts": {
    "dev": "npm run development",
    "development": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --config=node_modules/laravel-mix/setup/webpack.config.js",
    "watch-poll": "npm run watch -- --watch-poll",
    "hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
    "prod": "npm run production",
    "production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --config=node_modules/laravel-mix/setup/webpack.config.js"
  },
  "devDependencies": {
    "bootstrap-sass": "^3.4.3",
    "cross-env": "^7.0.3",
    "laravel-mix": "^6.0.49",
    "postcss": "^8.4.18",
    "sass": "^1.55.0",
    "sass-loader": "^13.1.0",
    "vue-loader": "^15.9.7",
    "vue-template-compiler": "^2.7.13"
  },
  "dependencies": {
    "ace-builds": "^1.12.3",
    "animate.css": "^4.1.1",
    "bootstrap": "^3.4.1",
    "bootstrap-datepicker": "^1.9.0",
    "bootstrap-toggle": "^2.2.2",
    "brace": "^0.11.1",
    "cropperjs": "^1.5.12",
    "datatables-bootstrap3-plugin": "^0.6.0",
    "datatables.net": "^1.12.1",
    "datetimepicker": "^0.1.39",
    "dropzone": "^5.9.3",
    "easymde": "^2.18.0",
    "eonasdan-bootstrap-datetimepicker": "^4.17.49",
    "icheck": "^1.0.2",
    "jquery": "^3.6.1",
    "jquery-match-height": "^0.7.2",
    "nestable2": "^1.6.0",
    "perfect-scrollbar": "^1.5.5",
    "select2": "^4.0.13",
    "tinymce": "^6.2.0",
    "toastr": "^2.1.4",
    "vue": "^2.7.13"
  }
}


================================================
FILE: phpunit.xml
================================================
<?xml version="1.0" encoding="UTF-8"?>
<phpunit xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" backupGlobals="false" bootstrap="tests/bootstrap.php" colors="true" processIsolation="false" stopOnFailure="false" xsi:noNamespaceSchemaLocation="https://schema.phpunit.de/10.4/phpunit.xsd" cacheDirectory=".phpunit.cache" backupStaticProperties="false">
  <coverage>
    <report>
      <html outputDirectory="build/coverage"/>
      <text outputFile="php://stdout" showUncoveredFiles="false" showOnlySummary="true"/>
    </report>
  </coverage>
  <testsuites>
    <testsuite name="Voyager Test Suite">
      <directory>tests</directory>
    </testsuite>
  </testsuites>
  <logging>
    <junit outputFile="build/report.junit.xml"/>
  </logging>
  <php>
    <env name="APP_ENV" value="testing"/>
    <env name="APP_DEBUG" value="true"/>
    <env name="APP_URL" value="http://localhost"/>
    <env name="APP_KEY" value="base64:M1igrxNfAWlVGyxxDholHqvVqvtPjAzCoJ+2/ILAVPw="/>
  </php>
  <source>
    <include>
      <directory suffix=".php">./src/</directory>
    </include>
  </source>
</phpunit>


================================================
FILE: publishable/assets/css/app.css
================================================
@charset "UTF-8";
/*!
 * Bootstrap v3.4.1 (https://getbootstrap.com/)
 * Copyright 2011-2019 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
 */
/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;font-family:sans-serif}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:none;text-decoration:underline;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-appearance:textfield;box-sizing:content-box}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}textarea{overflow:auto}optgroup{font-weight:700}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}

/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{background:transparent!important;box-shadow:none!important;color:#000!important;text-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="#"]:after,a[href^="javascript:"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:Glyphicons Halflings;src:url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.eot);src:url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix) format("embedded-opentype"),url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.woff2) format("woff2"),url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.woff) format("woff"),url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.ttf) format("truetype"),url(voyager-assets?path=fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format("svg")}.glyphicon{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;display:inline-block;font-family:Glyphicons Halflings;font-style:normal;font-weight:400;line-height:1;position:relative;top:1px}.glyphicon-asterisk:before{content:"*"}.glyphicon-plus:before{content:"+"}.glyphicon-eur:before,.glyphicon-euro:before{content:"€"}.glyphicon-minus:before{content:"−"}.glyphicon-cloud:before{content:"☁"}.glyphicon-envelope:before{content:"✉"}.glyphicon-pencil:before{content:"✏"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"⛺"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"⌛"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before{content:"\e227"}.glyphicon-jpy:before,.glyphicon-yen:before{content:"¥"}.glyphicon-rub:before,.glyphicon-ruble:before{content:"₽"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:
Download .txt
gitextract_9r53jt7k/

├── .gitattributes
├── .gitbook.yaml
├── .github/
│   ├── FUNDING.yml
│   ├── ISSUE_TEMPLATE/
│   │   ├── BUG-REPORT.yml
│   │   ├── FEATURE-REQUEST.yml
│   │   └── config.yml
│   ├── SECURITY.yml
│   └── workflows/
│       ├── automerge.yml
│       ├── compile-assets.yml
│       ├── coverage.yml
│       ├── lock.yml
│       └── test.yml
├── .gitignore
├── .php_cs
├── ISSUE_TEMPLATE
├── README.md
├── composer.json
├── docs/
│   ├── bread/
│   │   ├── formfields/
│   │   │   ├── checkbox.md
│   │   │   ├── coordinates.md
│   │   │   ├── date-time.md
│   │   │   ├── dropdown.md
│   │   │   ├── images.md
│   │   │   ├── introduction.md
│   │   │   ├── media-picker.md
│   │   │   ├── number.md
│   │   │   └── tinymce.md
│   │   ├── introduction.md
│   │   └── relationships.md
│   ├── core-concepts/
│   │   ├── compass.md
│   │   ├── database-manager.md
│   │   ├── helper-methods.md
│   │   ├── media-manager.md
│   │   ├── menus-and-menu-builder.md
│   │   ├── multilanguage.md
│   │   ├── roles-and-permissions.md
│   │   ├── routing.md
│   │   └── settings.md
│   ├── customization/
│   │   ├── action-buttons.md
│   │   ├── adding-custom-formfields.md
│   │   ├── additional-css-js.md
│   │   ├── bread-accessors.md
│   │   ├── coordinates.md
│   │   ├── custom-guard.md
│   │   ├── custom-realtionship-attributes.md
│   │   ├── enabling-soft-delete.md
│   │   ├── overriding-files.md
│   │   └── overriding-routes.md
│   ├── getting-started/
│   │   ├── configurations.md
│   │   ├── installation.md
│   │   ├── prerequisites.md
│   │   ├── upgrading.md
│   │   └── what-is-voyager.md
│   ├── introduction.md
│   ├── summary.md
│   └── troubleshooting/
│       ├── missing-required-parameter.md
│       └── using-https.md
├── license
├── migrations/
│   ├── 2016_01_01_000000_add_voyager_user_fields.php
│   ├── 2016_01_01_000000_create_data_types_table.php
│   ├── 2016_05_19_173453_create_menu_table.php
│   ├── 2016_10_21_190000_create_roles_table.php
│   ├── 2016_10_21_190000_create_settings_table.php
│   ├── 2016_11_30_135954_create_permission_table.php
│   ├── 2016_11_30_141208_create_permission_role_table.php
│   ├── 2016_12_26_201236_data_types__add__server_side.php
│   ├── 2017_01_13_000000_add_route_to_menu_items_table.php
│   ├── 2017_01_14_005015_create_translations_table.php
│   ├── 2017_01_15_000000_make_table_name_nullable_in_permissions_table.php
│   ├── 2017_03_06_000000_add_controller_to_data_types_table.php
│   ├── 2017_04_21_000000_add_order_to_data_rows_table.php
│   ├── 2017_07_05_210000_add_policyname_to_data_types_table.php
│   ├── 2017_08_05_000000_add_group_to_settings_table.php
│   ├── 2017_11_26_013050_add_user_role_relationship.php
│   ├── 2017_11_26_015000_create_user_roles_table.php
│   ├── 2018_03_11_000000_add_user_settings.php
│   ├── 2018_03_14_000000_add_details_to_data_types_table.php
│   └── 2018_03_16_000000_make_settings_value_nullable.php
├── mix-manifest.json
├── mix.js
├── package.json
├── phpunit.xml
├── publishable/
│   ├── assets/
│   │   ├── css/
│   │   │   ├── app.css
│   │   │   └── rtl.css
│   │   ├── fonts/
│   │   │   └── icons-reference.html
│   │   ├── images/
│   │   │   └── voyager-character.sketch
│   │   └── js/
│   │       ├── ace/
│   │       │   └── libs/
│   │       │       ├── ace.js
│   │       │       ├── ext-beautify.js
│   │       │       ├── ext-code_lens.js
│   │       │       ├── ext-elastic_tabstops_lite.js
│   │       │       ├── ext-emmet.js
│   │       │       ├── ext-error_marker.js
│   │       │       ├── ext-hardwrap.js
│   │       │       ├── ext-keybinding_menu.js
│   │       │       ├── ext-language_tools.js
│   │       │       ├── ext-linking.js
│   │       │       ├── ext-modelist.js
│   │       │       ├── ext-options.js
│   │       │       ├── ext-prompt.js
│   │       │       ├── ext-rtl.js
│   │       │       ├── ext-searchbox.js
│   │       │       ├── ext-settings_menu.js
│   │       │       ├── ext-spellcheck.js
│   │       │       ├── ext-split.js
│   │       │       ├── ext-static_highlight.js
│   │       │       ├── ext-statusbar.js
│   │       │       ├── ext-textarea.js
│   │       │       ├── ext-themelist.js
│   │       │       ├── ext-whitespace.js
│   │       │       ├── keybinding-emacs.js
│   │       │       ├── keybinding-sublime.js
│   │       │       ├── keybinding-vim.js
│   │       │       ├── keybinding-vscode.js
│   │       │       ├── mode-abap.js
│   │       │       ├── mode-abc.js
│   │       │       ├── mode-actionscript.js
│   │       │       ├── mode-ada.js
│   │       │       ├── mode-alda.js
│   │       │       ├── mode-apache_conf.js
│   │       │       ├── mode-apex.js
│   │       │       ├── mode-applescript.js
│   │       │       ├── mode-aql.js
│   │       │       ├── mode-asciidoc.js
│   │       │       ├── mode-asl.js
│   │       │       ├── mode-assembly_x86.js
│   │       │       ├── mode-autohotkey.js
│   │       │       ├── mode-batchfile.js
│   │       │       ├── mode-bibtex.js
│   │       │       ├── mode-c9search.js
│   │       │       ├── mode-c_cpp.js
│   │       │       ├── mode-cirru.js
│   │       │       ├── mode-clojure.js
│   │       │       ├── mode-cobol.js
│   │       │       ├── mode-coffee.js
│   │       │       ├── mode-coldfusion.js
│   │       │       ├── mode-crystal.js
│   │       │       ├── mode-csharp.js
│   │       │       ├── mode-csound_document.js
│   │       │       ├── mode-csound_orchestra.js
│   │       │       ├── mode-csound_score.js
│   │       │       ├── mode-csp.js
│   │       │       ├── mode-css.js
│   │       │       ├── mode-curly.js
│   │       │       ├── mode-d.js
│   │       │       ├── mode-dart.js
│   │       │       ├── mode-diff.js
│   │       │       ├── mode-django.js
│   │       │       ├── mode-dockerfile.js
│   │       │       ├── mode-dot.js
│   │       │       ├── mode-drools.js
│   │       │       ├── mode-edifact.js
│   │       │       ├── mode-eiffel.js
│   │       │       ├── mode-ejs.js
│   │       │       ├── mode-elixir.js
│   │       │       ├── mode-elm.js
│   │       │       ├── mode-erlang.js
│   │       │       ├── mode-forth.js
│   │       │       ├── mode-fortran.js
│   │       │       ├── mode-fsharp.js
│   │       │       ├── mode-fsl.js
│   │       │       ├── mode-ftl.js
│   │       │       ├── mode-gcode.js
│   │       │       ├── mode-gherkin.js
│   │       │       ├── mode-gitignore.js
│   │       │       ├── mode-glsl.js
│   │       │       ├── mode-gobstones.js
│   │       │       ├── mode-golang.js
│   │       │       ├── mode-graphqlschema.js
│   │       │       ├── mode-groovy.js
│   │       │       ├── mode-haml.js
│   │       │       ├── mode-handlebars.js
│   │       │       ├── mode-haskell.js
│   │       │       ├── mode-haskell_cabal.js
│   │       │       ├── mode-haxe.js
│   │       │       ├── mode-hjson.js
│   │       │       ├── mode-html.js
│   │       │       ├── mode-html_elixir.js
│   │       │       ├── mode-html_ruby.js
│   │       │       ├── mode-ini.js
│   │       │       ├── mode-io.js
│   │       │       ├── mode-ion.js
│   │       │       ├── mode-jack.js
│   │       │       ├── mode-jade.js
│   │       │       ├── mode-java.js
│   │       │       ├── mode-javascript.js
│   │       │       ├── mode-json.js
│   │       │       ├── mode-json5.js
│   │       │       ├── mode-jsoniq.js
│   │       │       ├── mode-jsp.js
│   │       │       ├── mode-jssm.js
│   │       │       ├── mode-jsx.js
│   │       │       ├── mode-julia.js
│   │       │       ├── mode-kotlin.js
│   │       │       ├── mode-latex.js
│   │       │       ├── mode-latte.js
│   │       │       ├── mode-less.js
│   │       │       ├── mode-liquid.js
│   │       │       ├── mode-lisp.js
│   │       │       ├── mode-livescript.js
│   │       │       ├── mode-logiql.js
│   │       │       ├── mode-logtalk.js
│   │       │       ├── mode-lsl.js
│   │       │       ├── mode-lua.js
│   │       │       ├── mode-luapage.js
│   │       │       ├── mode-lucene.js
│   │       │       ├── mode-makefile.js
│   │       │       ├── mode-markdown.js
│   │       │       ├── mode-mask.js
│   │       │       ├── mode-matlab.js
│   │       │       ├── mode-maze.js
│   │       │       ├── mode-mediawiki.js
│   │       │       ├── mode-mel.js
│   │       │       ├── mode-mips.js
│   │       │       ├── mode-mixal.js
│   │       │       ├── mode-mushcode.js
│   │       │       ├── mode-mysql.js
│   │       │       ├── mode-nginx.js
│   │       │       ├── mode-nim.js
│   │       │       ├── mode-nix.js
│   │       │       ├── mode-nsis.js
│   │       │       ├── mode-nunjucks.js
│   │       │       ├── mode-objectivec.js
│   │       │       ├── mode-ocaml.js
│   │       │       ├── mode-partiql.js
│   │       │       ├── mode-pascal.js
│   │       │       ├── mode-perl.js
│   │       │       ├── mode-pgsql.js
│   │       │       ├── mode-php.js
│   │       │       ├── mode-php_laravel_blade.js
│   │       │       ├── mode-pig.js
│   │       │       ├── mode-plain_text.js
│   │       │       ├── mode-powershell.js
│   │       │       ├── mode-praat.js
│   │       │       ├── mode-prisma.js
│   │       │       ├── mode-prolog.js
│   │       │       ├── mode-properties.js
│   │       │       ├── mode-protobuf.js
│   │       │       ├── mode-puppet.js
│   │       │       ├── mode-python.js
│   │       │       ├── mode-qml.js
│   │       │       ├── mode-r.js
│   │       │       ├── mode-raku.js
│   │       │       ├── mode-razor.js
│   │       │       ├── mode-rdoc.js
│   │       │       ├── mode-red.js
│   │       │       ├── mode-redshift.js
│   │       │       ├── mode-rhtml.js
│   │       │       ├── mode-robot.js
│   │       │       ├── mode-rst.js
│   │       │       ├── mode-ruby.js
│   │       │       ├── mode-rust.js
│   │       │       ├── mode-sac.js
│   │       │       ├── mode-sass.js
│   │       │       ├── mode-scad.js
│   │       │       ├── mode-scala.js
│   │       │       ├── mode-scheme.js
│   │       │       ├── mode-scrypt.js
│   │       │       ├── mode-scss.js
│   │       │       ├── mode-sh.js
│   │       │       ├── mode-sjs.js
│   │       │       ├── mode-slim.js
│   │       │       ├── mode-smarty.js
│   │       │       ├── mode-smithy.js
│   │       │       ├── mode-snippets.js
│   │       │       ├── mode-soy_template.js
│   │       │       ├── mode-space.js
│   │       │       ├── mode-sparql.js
│   │       │       ├── mode-sql.js
│   │       │       ├── mode-sqlserver.js
│   │       │       ├── mode-stylus.js
│   │       │       ├── mode-svg.js
│   │       │       ├── mode-swift.js
│   │       │       ├── mode-tcl.js
│   │       │       ├── mode-terraform.js
│   │       │       ├── mode-tex.js
│   │       │       ├── mode-text.js
│   │       │       ├── mode-textile.js
│   │       │       ├── mode-toml.js
│   │       │       ├── mode-tsx.js
│   │       │       ├── mode-turtle.js
│   │       │       ├── mode-twig.js
│   │       │       ├── mode-typescript.js
│   │       │       ├── mode-vala.js
│   │       │       ├── mode-vbscript.js
│   │       │       ├── mode-velocity.js
│   │       │       ├── mode-verilog.js
│   │       │       ├── mode-vhdl.js
│   │       │       ├── mode-visualforce.js
│   │       │       ├── mode-wollok.js
│   │       │       ├── mode-xml.js
│   │       │       ├── mode-xquery.js
│   │       │       ├── mode-yaml.js
│   │       │       ├── mode-zeek.js
│   │       │       ├── snippets/
│   │       │       │   ├── abap.js
│   │       │       │   ├── abc.js
│   │       │       │   ├── actionscript.js
│   │       │       │   ├── ada.js
│   │       │       │   ├── alda.js
│   │       │       │   ├── apache_conf.js
│   │       │       │   ├── apex.js
│   │       │       │   ├── applescript.js
│   │       │       │   ├── aql.js
│   │       │       │   ├── asciidoc.js
│   │       │       │   ├── asl.js
│   │       │       │   ├── assembly_x86.js
│   │       │       │   ├── autohotkey.js
│   │       │       │   ├── batchfile.js
│   │       │       │   ├── bibtex.js
│   │       │       │   ├── c9search.js
│   │       │       │   ├── c_cpp.js
│   │       │       │   ├── cirru.js
│   │       │       │   ├── clojure.js
│   │       │       │   ├── cobol.js
│   │       │       │   ├── coffee.js
│   │       │       │   ├── coldfusion.js
│   │       │       │   ├── crystal.js
│   │       │       │   ├── csharp.js
│   │       │       │   ├── csound_document.js
│   │       │       │   ├── csound_orchestra.js
│   │       │       │   ├── csound_score.js
│   │       │       │   ├── csp.js
│   │       │       │   ├── css.js
│   │       │       │   ├── curly.js
│   │       │       │   ├── d.js
│   │       │       │   ├── dart.js
│   │       │       │   ├── diff.js
│   │       │       │   ├── django.js
│   │       │       │   ├── dockerfile.js
│   │       │       │   ├── dot.js
│   │       │       │   ├── drools.js
│   │       │       │   ├── edifact.js
│   │       │       │   ├── eiffel.js
│   │       │       │   ├── ejs.js
│   │       │       │   ├── elixir.js
│   │       │       │   ├── elm.js
│   │       │       │   ├── erlang.js
│   │       │       │   ├── forth.js
│   │       │       │   ├── fortran.js
│   │       │       │   ├── fsharp.js
│   │       │       │   ├── fsl.js
│   │       │       │   ├── ftl.js
│   │       │       │   ├── gcode.js
│   │       │       │   ├── gherkin.js
│   │       │       │   ├── gitignore.js
│   │       │       │   ├── glsl.js
│   │       │       │   ├── gobstones.js
│   │       │       │   ├── golang.js
│   │       │       │   ├── graphqlschema.js
│   │       │       │   ├── groovy.js
│   │       │       │   ├── haml.js
│   │       │       │   ├── handlebars.js
│   │       │       │   ├── haskell.js
│   │       │       │   ├── haskell_cabal.js
│   │       │       │   ├── haxe.js
│   │       │       │   ├── hjson.js
│   │       │       │   ├── html.js
│   │       │       │   ├── html_elixir.js
│   │       │       │   ├── html_ruby.js
│   │       │       │   ├── ini.js
│   │       │       │   ├── io.js
│   │       │       │   ├── ion.js
│   │       │       │   ├── jack.js
│   │       │       │   ├── jade.js
│   │       │       │   ├── java.js
│   │       │       │   ├── javascript.js
│   │       │       │   ├── json.js
│   │       │       │   ├── json5.js
│   │       │       │   ├── jsoniq.js
│   │       │       │   ├── jsp.js
│   │       │       │   ├── jssm.js
│   │       │       │   ├── jsx.js
│   │       │       │   ├── julia.js
│   │       │       │   ├── kotlin.js
│   │       │       │   ├── latex.js
│   │       │       │   ├── latte.js
│   │       │       │   ├── less.js
│   │       │       │   ├── liquid.js
│   │       │       │   ├── lisp.js
│   │       │       │   ├── livescript.js
│   │       │       │   ├── logiql.js
│   │       │       │   ├── logtalk.js
│   │       │       │   ├── lsl.js
│   │       │       │   ├── lua.js
│   │       │       │   ├── luapage.js
│   │       │       │   ├── lucene.js
│   │       │       │   ├── makefile.js
│   │       │       │   ├── markdown.js
│   │       │       │   ├── mask.js
│   │       │       │   ├── matlab.js
│   │       │       │   ├── maze.js
│   │       │       │   ├── mediawiki.js
│   │       │       │   ├── mel.js
│   │       │       │   ├── mips.js
│   │       │       │   ├── mixal.js
│   │       │       │   ├── mushcode.js
│   │       │       │   ├── mysql.js
│   │       │       │   ├── nginx.js
│   │       │       │   ├── nim.js
│   │       │       │   ├── nix.js
│   │       │       │   ├── nsis.js
│   │       │       │   ├── nunjucks.js
│   │       │       │   ├── objectivec.js
│   │       │       │   ├── ocaml.js
│   │       │       │   ├── partiql.js
│   │       │       │   ├── pascal.js
│   │       │       │   ├── perl.js
│   │       │       │   ├── pgsql.js
│   │       │       │   ├── php.js
│   │       │       │   ├── php_laravel_blade.js
│   │       │       │   ├── pig.js
│   │       │       │   ├── plain_text.js
│   │       │       │   ├── powershell.js
│   │       │       │   ├── praat.js
│   │       │       │   ├── prisma.js
│   │       │       │   ├── prolog.js
│   │       │       │   ├── properties.js
│   │       │       │   ├── protobuf.js
│   │       │       │   ├── puppet.js
│   │       │       │   ├── python.js
│   │       │       │   ├── qml.js
│   │       │       │   ├── r.js
│   │       │       │   ├── raku.js
│   │       │       │   ├── razor.js
│   │       │       │   ├── rdoc.js
│   │       │       │   ├── red.js
│   │       │       │   ├── redshift.js
│   │       │       │   ├── rhtml.js
│   │       │       │   ├── robot.js
│   │       │       │   ├── rst.js
│   │       │       │   ├── ruby.js
│   │       │       │   ├── rust.js
│   │       │       │   ├── sac.js
│   │       │       │   ├── sass.js
│   │       │       │   ├── scad.js
│   │       │       │   ├── scala.js
│   │       │       │   ├── scheme.js
│   │       │       │   ├── scrypt.js
│   │       │       │   ├── scss.js
│   │       │       │   ├── sh.js
│   │       │       │   ├── sjs.js
│   │       │       │   ├── slim.js
│   │       │       │   ├── smarty.js
│   │       │       │   ├── smithy.js
│   │       │       │   ├── snippets.js
│   │       │       │   ├── soy_template.js
│   │       │       │   ├── space.js
│   │       │       │   ├── sparql.js
│   │       │       │   ├── sql.js
│   │       │       │   ├── sqlserver.js
│   │       │       │   ├── stylus.js
│   │       │       │   ├── svg.js
│   │       │       │   ├── swift.js
│   │       │       │   ├── tcl.js
│   │       │       │   ├── terraform.js
│   │       │       │   ├── tex.js
│   │       │       │   ├── text.js
│   │       │       │   ├── textile.js
│   │       │       │   ├── toml.js
│   │       │       │   ├── tsx.js
│   │       │       │   ├── turtle.js
│   │       │       │   ├── twig.js
│   │       │       │   ├── typescript.js
│   │       │       │   ├── vala.js
│   │       │       │   ├── vbscript.js
│   │       │       │   ├── velocity.js
│   │       │       │   ├── verilog.js
│   │       │       │   ├── vhdl.js
│   │       │       │   ├── visualforce.js
│   │       │       │   ├── wollok.js
│   │       │       │   ├── xml.js
│   │       │       │   ├── xquery.js
│   │       │       │   ├── yaml.js
│   │       │       │   └── zeek.js
│   │       │       ├── theme-ambiance.js
│   │       │       ├── theme-chaos.js
│   │       │       ├── theme-chrome.js
│   │       │       ├── theme-cloud9_day.js
│   │       │       ├── theme-cloud9_night.js
│   │       │       ├── theme-cloud9_night_low_color.js
│   │       │       ├── theme-clouds.js
│   │       │       ├── theme-clouds_midnight.js
│   │       │       ├── theme-cobalt.js
│   │       │       ├── theme-crimson_editor.js
│   │       │       ├── theme-dawn.js
│   │       │       ├── theme-dracula.js
│   │       │       ├── theme-dreamweaver.js
│   │       │       ├── theme-eclipse.js
│   │       │       ├── theme-github.js
│   │       │       ├── theme-gob.js
│   │       │       ├── theme-gruvbox.js
│   │       │       ├── theme-gruvbox_dark_hard.js
│   │       │       ├── theme-gruvbox_light_hard.js
│   │       │       ├── theme-idle_fingers.js
│   │       │       ├── theme-iplastic.js
│   │       │       ├── theme-katzenmilch.js
│   │       │       ├── theme-kr_theme.js
│   │       │       ├── theme-kuroir.js
│   │       │       ├── theme-merbivore.js
│   │       │       ├── theme-merbivore_soft.js
│   │       │       ├── theme-mono_industrial.js
│   │       │       ├── theme-monokai.js
│   │       │       ├── theme-nord_dark.js
│   │       │       ├── theme-one_dark.js
│   │       │       ├── theme-pastel_on_dark.js
│   │       │       ├── theme-solarized_dark.js
│   │       │       ├── theme-solarized_light.js
│   │       │       ├── theme-sqlserver.js
│   │       │       ├── theme-terminal.js
│   │       │       ├── theme-textmate.js
│   │       │       ├── theme-tomorrow.js
│   │       │       ├── theme-tomorrow_night.js
│   │       │       ├── theme-tomorrow_night_blue.js
│   │       │       ├── theme-tomorrow_night_bright.js
│   │       │       ├── theme-tomorrow_night_eighties.js
│   │       │       ├── theme-twilight.js
│   │       │       ├── theme-vibrant_ink.js
│   │       │       ├── theme-xcode.js
│   │       │       ├── worker-base.js
│   │       │       ├── worker-coffee.js
│   │       │       ├── worker-css.js
│   │       │       ├── worker-html.js
│   │       │       ├── worker-javascript.js
│   │       │       ├── worker-json.js
│   │       │       ├── worker-lua.js
│   │       │       ├── worker-php.js
│   │       │       ├── worker-xml.js
│   │       │       ├── worker-xquery.js
│   │       │       └── worker-yaml.js
│   │       ├── app.js
│   │       ├── app.js.LICENSE.txt
│   │       ├── icons/
│   │       │   └── default/
│   │       │       ├── icons.js
│   │       │       └── index.js
│   │       ├── models/
│   │       │   └── dom/
│   │       │       ├── index.js
│   │       │       └── model.js
│   │       ├── skins/
│   │       │   ├── content/
│   │       │   │   ├── dark/
│   │       │   │   │   └── content.css
│   │       │   │   ├── default/
│   │       │   │   │   └── content.css
│   │       │   │   ├── document/
│   │       │   │   │   └── content.css
│   │       │   │   ├── tinymce-5/
│   │       │   │   │   └── content.css
│   │       │   │   ├── tinymce-5-dark/
│   │       │   │   │   └── content.css
│   │       │   │   └── writer/
│   │       │   │       └── content.css
│   │       │   ├── ui/
│   │       │   │   ├── oxide/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── content.mobile.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   ├── skin.mobile.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   ├── oxide-dark/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── content.mobile.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   ├── skin.mobile.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   ├── tinymce-5/
│   │       │   │   │   ├── content.css
│   │       │   │   │   ├── content.inline.css
│   │       │   │   │   ├── skin.css
│   │       │   │   │   └── skin.shadowdom.css
│   │       │   │   └── tinymce-5-dark/
│   │       │   │       ├── content.css
│   │       │   │       ├── content.inline.css
│   │       │   │       ├── skin.css
│   │       │   │       └── skin.shadowdom.css
│   │       │   └── voyager/
│   │       │       ├── Variables.less
│   │       │       ├── fonts/
│   │       │       │   ├── readme.md
│   │       │       │   ├── tinymce-small.json
│   │       │       │   └── tinymce.json
│   │       │       └── skin.json
│   │       └── themes/
│   │           └── silver/
│   │               ├── index.js
│   │               └── theme.js
│   ├── config/
│   │   ├── voyager.php
│   │   └── voyager_dummy.php
│   ├── database/
│   │   ├── dummy_seeders/
│   │   │   ├── CategoriesTableSeeder.php
│   │   │   ├── PagesTableSeeder.php
│   │   │   ├── PostsTableSeeder.php
│   │   │   └── UsersTableSeeder.php
│   │   ├── migrations/
│   │   │   ├── 2016_01_01_000000_create_pages_table.php
│   │   │   ├── 2016_01_01_000000_create_posts_table.php
│   │   │   ├── 2016_02_15_204651_create_categories_table.php
│   │   │   └── 2017_04_11_000000_alter_post_nullable_fields_table.php
│   │   └── seeders/
│   │       ├── DataRowsTableSeeder.php
│   │       ├── DataTypesTableSeeder.php
│   │       ├── MenuItemsTableSeeder.php
│   │       ├── MenusTableSeeder.php
│   │       ├── PermissionRoleTableSeeder.php
│   │       ├── PermissionsTableSeeder.php
│   │       ├── RolesTableSeeder.php
│   │       ├── SettingsTableSeeder.php
│   │       ├── TranslationsTableSeeder.php
│   │       ├── VoyagerDatabaseSeeder.php
│   │       └── VoyagerDummyDatabaseSeeder.php
│   └── lang/
│       ├── al/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── am/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ar/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   ├── theme.php
│       │   └── voyager.php
│       ├── az/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── bg/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── databale.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ca/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── cs/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── de/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── el/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── en/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── es/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fa/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fi/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── fr/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── gl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── id/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── it/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ja/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── km/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ku/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── mm/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── my/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── nl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pl/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pt/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── pt_br/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ro/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── ru/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── sv/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── tr/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── uk/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── vi/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       ├── zh_CN/
│       │   ├── analytics.php
│       │   ├── bread.php
│       │   ├── compass.php
│       │   ├── database.php
│       │   ├── datatable.php
│       │   ├── date.php
│       │   ├── dimmer.php
│       │   ├── error.php
│       │   ├── form.php
│       │   ├── generic.php
│       │   ├── json.php
│       │   ├── login.php
│       │   ├── media.php
│       │   ├── menu_builder.php
│       │   ├── post.php
│       │   ├── profile.php
│       │   ├── seeders.php
│       │   ├── settings.php
│       │   └── theme.php
│       └── zh_TW/
│           ├── analytics.php
│           ├── bread.php
│           ├── compass.php
│           ├── database.php
│           ├── datatable.php
│           ├── date.php
│           ├── dimmer.php
│           ├── error.php
│           ├── form.php
│           ├── generic.php
│           ├── json.php
│           ├── login.php
│           ├── media.php
│           ├── menu_builder.php
│           ├── post.php
│           ├── profile.php
│           ├── seeders.php
│           ├── settings.php
│           └── theme.php
├── resources/
│   ├── assets/
│   │   ├── js/
│   │   │   ├── app.js
│   │   │   ├── components/
│   │   │   │   └── admin_menu.vue
│   │   │   ├── helpers.js
│   │   │   ├── multilingual.js
│   │   │   ├── skins/
│   │   │   │   └── voyager/
│   │   │   │       ├── Variables.less
│   │   │   │       ├── fonts/
│   │   │   │       │   ├── readme.md
│   │   │   │       │   ├── tinymce-small.json
│   │   │   │       │   └── tinymce.json
│   │   │   │       └── skin.json
│   │   │   ├── slugify.js
│   │   │   ├── voyager_ace_editor.js
│   │   │   ├── voyager_tinymce.js
│   │   │   └── voyager_tinymce_config.js
│   │   └── sass/
│   │       ├── _variables.scss
│   │       ├── app.scss
│   │       └── fonts.css
│   └── views/
│       ├── alerts.blade.php
│       ├── auth/
│       │   └── master.blade.php
│       ├── bread/
│       │   ├── browse.blade.php
│       │   ├── edit-add.blade.php
│       │   ├── order.blade.php
│       │   ├── partials/
│       │   │   └── actions.blade.php
│       │   └── read.blade.php
│       ├── compass/
│       │   ├── includes/
│       │   │   ├── commands.blade.php
│       │   │   ├── fonts.blade.php
│       │   │   ├── logs.blade.php
│       │   │   └── styles.blade.php
│       │   └── index.blade.php
│       ├── dashboard/
│       │   ├── navbar.blade.php
│       │   └── sidebar.blade.php
│       ├── dimmer.blade.php
│       ├── dimmers.blade.php
│       ├── formfields/
│       │   ├── checkbox.blade.php
│       │   ├── code_editor.blade.php
│       │   ├── color.blade.php
│       │   ├── coordinates.blade.php
│       │   ├── date.blade.php
│       │   ├── file.blade.php
│       │   ├── hidden.blade.php
│       │   ├── image.blade.php
│       │   ├── markdown_editor.blade.php
│       │   ├── media_picker.blade.php
│       │   ├── multiple_checkbox.blade.php
│       │   ├── multiple_images.blade.php
│       │   ├── number.blade.php
│       │   ├── password.blade.php
│       │   ├── radio_btn.blade.php
│       │   ├── relationship.blade.php
│       │   ├── rich_text_box.blade.php
│       │   ├── select_dropdown.blade.php
│       │   ├── select_multiple.blade.php
│       │   ├── text.blade.php
│       │   ├── text_area.blade.php
│       │   ├── time.blade.php
│       │   └── timestamp.blade.php
│       ├── index.blade.php
│       ├── login.blade.php
│       ├── master.blade.php
│       ├── media/
│       │   ├── index.blade.php
│       │   └── manager.blade.php
│       ├── menu/
│       │   ├── admin.blade.php
│       │   ├── bootstrap.blade.php
│       │   └── default.blade.php
│       ├── menus/
│       │   ├── browse.blade.php
│       │   ├── builder.blade.php
│       │   └── partial/
│       │       └── notice.blade.php
│       ├── multilingual/
│       │   ├── input-hidden-bread-browse.blade.php
│       │   ├── input-hidden-bread-edit-add.blade.php
│       │   ├── input-hidden-bread-read.blade.php
│       │   ├── input-hidden.blade.php
│       │   └── language-selector.blade.php
│       ├── partials/
│       │   ├── app-footer.blade.php
│       │   ├── bulk-delete.blade.php
│       │   ├── coordinates-static-image.blade.php
│       │   └── coordinates.blade.php
│       ├── posts/
│       │   └── edit-add.blade.php
│       ├── profile.blade.php
│       ├── roles/
│       │   └── edit-add.blade.php
│       ├── settings/
│       │   └── index.blade.php
│       ├── tools/
│       │   ├── bread/
│       │   │   ├── edit-add.blade.php
│       │   │   ├── index.blade.php
│       │   │   ├── relationship-new-modal.blade.php
│       │   │   └── relationship-partial.blade.php
│       │   └── database/
│       │       ├── edit-add.blade.php
│       │       ├── index.blade.php
│       │       └── vue-components/
│       │           ├── database-column-default.blade.php
│       │           ├── database-column.blade.php
│       │           ├── database-table-editor.blade.php
│       │           ├── database-table-helper-buttons.blade.php
│       │           └── database-types.blade.php
│       └── users/
│           └── edit-add.blade.php
├── routes/
│   └── voyager.php
├── src/
│   ├── Actions/
│   │   ├── AbstractAction.php
│   │   ├── ActionInterface.php
│   │   ├── DeleteAction.php
│   │   ├── EditAction.php
│   │   ├── RestoreAction.php
│   │   └── ViewAction.php
│   ├── Alert/
│   │   └── Components/
│   │       ├── AbstractComponent.php
│   │       ├── ButtonComponent.php
│   │       ├── ComponentInterface.php
│   │       ├── TextComponent.php
│   │       └── TitleComponent.php
│   ├── Alert.php
│   ├── Commands/
│   │   ├── AdminCommand.php
│   │   ├── ControllersCommand.php
│   │   ├── InstallCommand.php
│   │   └── MakeModelCommand.php
│   ├── Contracts/
│   │   └── User.php
│   ├── Database/
│   │   ├── DatabaseUpdater.php
│   │   ├── Platforms/
│   │   │   ├── Mysql.php
│   │   │   ├── Platform.php
│   │   │   ├── Postgresql.php
│   │   │   └── Sqlite.php
│   │   ├── Schema/
│   │   │   ├── Column.php
│   │   │   ├── ForeignKey.php
│   │   │   ├── Identifier.php
│   │   │   ├── Index.php
│   │   │   ├── SchemaManager.php
│   │   │   └── Table.php
│   │   └── Types/
│   │       ├── Common/
│   │       │   ├── CharType.php
│   │       │   ├── DoubleType.php
│   │       │   ├── JsonType.php
│   │       │   ├── NumericType.php
│   │       │   ├── TextType.php
│   │       │   └── VarCharType.php
│   │       ├── Mysql/
│   │       │   ├── BinaryType.php
│   │       │   ├── BitType.php
│   │       │   ├── BlobType.php
│   │       │   ├── EnumType.php
│   │       │   ├── FloatType.php
│   │       │   ├── GeometryCollectionType.php
│   │       │   ├── GeometryType.php
│   │       │   ├── LineStringType.php
│   │       │   ├── LongBlobType.php
│   │       │   ├── LongTextType.php
│   │       │   ├── MediumBlobType.php
│   │       │   ├── MediumIntType.php
│   │       │   ├── MediumTextType.php
│   │       │   ├── MultiLineStringType.php
│   │       │   ├── MultiPointType.php
│   │       │   ├── MultiPolygonType.php
│   │       │   ├── PointType.php
│   │       │   ├── PolygonType.php
│   │       │   ├── SetType.php
│   │       │   ├── TimeStampType.php
│   │       │   ├── TinyBlobType.php
│   │       │   ├── TinyIntType.php
│   │       │   ├── TinyTextType.php
│   │       │   ├── VarBinaryType.php
│   │       │   └── YearType.php
│   │       ├── Postgresql/
│   │       │   ├── BitType.php
│   │       │   ├── BitVaryingType.php
│   │       │   ├── ByteaType.php
│   │       │   ├── CharacterType.php
│   │       │   ├── CharacterVaryingType.php
│   │       │   ├── CidrType.php
│   │       │   ├── DoublePrecisionType.php
│   │       │   ├── GeometryType.php
│   │       │   ├── InetType.php
│   │       │   ├── IntervalType.php
│   │       │   ├── JsonbType.php
│   │       │   ├── MacAddrType.php
│   │       │   ├── MoneyType.php
│   │       │   ├── RealType.php
│   │       │   ├── SmallIntType.php
│   │       │   ├── TimeStampType.php
│   │       │   ├── TimeStampTzType.php
│   │       │   ├── TimeTzType.php
│   │       │   ├── TsQueryType.php
│   │       │   ├── TsVectorType.php
│   │       │   ├── TxidSnapshotType.php
│   │       │   ├── UuidType.php
│   │       │   └── XmlType.php
│   │       ├── Sqlite/
│   │       │   └── RealType.php
│   │       └── Type.php
│   ├── Events/
│   │   ├── AlertsCollection.php
│   │   ├── BreadAdded.php
│   │   ├── BreadChanged.php
│   │   ├── BreadDataAdded.php
│   │   ├── BreadDataChanged.php
│   │   ├── BreadDataDeleted.php
│   │   ├── BreadDataRestored.php
│   │   ├── BreadDataUpdated.php
│   │   ├── BreadDeleted.php
│   │   ├── BreadImagesDeleted.php
│   │   ├── BreadUpdated.php
│   │   ├── FileDeleted.php
│   │   ├── FormFieldsRegistered.php
│   │   ├── MediaFileAdded.php
│   │   ├── MenuDisplay.php
│   │   ├── Routing.php
│   │   ├── RoutingAdmin.php
│   │   ├── RoutingAdminAfter.php
│   │   ├── RoutingAfter.php
│   │   ├── SettingUpdated.php
│   │   ├── TableAdded.php
│   │   ├── TableChanged.php
│   │   ├── TableDeleted.php
│   │   └── TableUpdated.php
│   ├── Facades/
│   │   └── Voyager.php
│   ├── FormFields/
│   │   ├── AbstractHandler.php
│   │   ├── After/
│   │   │   ├── AbstractHandler.php
│   │   │   ├── DescriptionHandler.php
│   │   │   └── HandlerInterface.php
│   │   ├── CheckboxHandler.php
│   │   ├── CodeEditorHandler.php
│   │   ├── ColorHandler.php
│   │   ├── CoordinatesHandler.php
│   │   ├── DateHandler.php
│   │   ├── FileHandler.php
│   │   ├── HandlerInterface.php
│   │   ├── HiddenHandler.php
│   │   ├── ImageHandler.php
│   │   ├── MarkdownEditorHandler.php
│   │   ├── MediaPickerHandler.php
│   │   ├── MultipleCheckboxHandler.php
│   │   ├── MultipleImagesHandler.php
│   │   ├── NumberHandler.php
│   │   ├── PasswordHandler.php
│   │   ├── RadioBtnHandler.php
│   │   ├── RichTextBoxHandler.php
│   │   ├── SelectDropdownHandler.php
│   │   ├── SelectMultipleHandler.php
│   │   ├── TextAreaHandler.php
│   │   ├── TextHandler.php
│   │   ├── TimeHandler.php
│   │   └── TimestampHandler.php
│   ├── Helpers/
│   │   ├── Reflection.php
│   │   ├── helperSlugify.php
│   │   ├── helperTranslations.php
│   │   ├── helpers.php
│   │   └── helpersi18n.php
│   ├── Http/
│   │   ├── Controllers/
│   │   │   ├── ContentTypes/
│   │   │   │   ├── BaseType.php
│   │   │   │   ├── Checkbox.php
│   │   │   │   ├── Coordinates.php
│   │   │   │   ├── File.php
│   │   │   │   ├── Image.php
│   │   │   │   ├── MultipleCheckbox.php
│   │   │   │   ├── MultipleImage.php
│   │   │   │   ├── Password.php
│   │   │   │   ├── Relationship.php
│   │   │   │   ├── SelectMultiple.php
│   │   │   │   ├── Text.php
│   │   │   │   └── Timestamp.php
│   │   │   ├── Controller.php
│   │   │   ├── Traits/
│   │   │   │   └── BreadRelationshipParser.php
│   │   │   ├── VoyagerAuthController.php
│   │   │   ├── VoyagerBaseController.php
│   │   │   ├── VoyagerBreadController.php
│   │   │   ├── VoyagerCompassController.php
│   │   │   ├── VoyagerController.php
│   │   │   ├── VoyagerDatabaseController.php
│   │   │   ├── VoyagerMediaController.php
│   │   │   ├── VoyagerMenuController.php
│   │   │   ├── VoyagerRoleController.php
│   │   │   ├── VoyagerSettingsController.php
│   │   │   └── VoyagerUserController.php
│   │   └── Middleware/
│   │       └── VoyagerAdminMiddleware.php
│   ├── Listeners/
│   │   ├── AddBreadMenuItem.php
│   │   ├── AddBreadPermission.php
│   │   ├── ClearCachedSettingValue.php
│   │   └── DeleteBreadMenuItem.php
│   ├── Models/
│   │   ├── Category.php
│   │   ├── DataRow.php
│   │   ├── DataType.php
│   │   ├── Menu.php
│   │   ├── MenuItem.php
│   │   ├── Page.php
│   │   ├── Permission.php
│   │   ├── Post.php
│   │   ├── Role.php
│   │   ├── Setting.php
│   │   ├── Translation.php
│   │   └── User.php
│   ├── Policies/
│   │   ├── BasePolicy.php
│   │   ├── MenuItemPolicy.php
│   │   ├── PostPolicy.php
│   │   ├── SettingPolicy.php
│   │   └── UserPolicy.php
│   ├── Providers/
│   │   ├── VoyagerDummyServiceProvider.php
│   │   └── VoyagerEventServiceProvider.php
│   ├── Traits/
│   │   ├── AlertsMessages.php
│   │   ├── Renderable.php
│   │   ├── Resizable.php
│   │   ├── Seedable.php
│   │   ├── Spatial.php
│   │   ├── Translatable.php
│   │   └── VoyagerUser.php
│   ├── Translator/
│   │   └── Collection.php
│   ├── Translator.php
│   ├── Voyager.php
│   ├── VoyagerServiceProvider.php
│   └── Widgets/
│       ├── BaseDimmer.php
│       ├── PageDimmer.php
│       ├── PostDimmer.php
│       └── UserDimmer.php
├── stubs/
│   ├── controller.stub
│   └── model.stub
├── tests/
│   ├── AlertTest.php
│   ├── AssetsTest.php
│   ├── BreadMediaUploadTest.php
│   ├── CompassTest.php
│   ├── DatabaseTest.php
│   ├── DisabledTestException.php
│   ├── EventTest.php
│   ├── Feature/
│   │   ├── DashboardTest.php
│   │   └── SeederTest.php
│   ├── FormfieldsTest.php
│   ├── LoginTest.php
│   ├── MenuTest.php
│   ├── Models/
│   │   ├── CategoryTest.php
│   │   ├── PageTest.php
│   │   └── PostTest.php
│   ├── MultilingualTest.php
│   ├── PermissionTest.php
│   ├── RolesTest.php
│   ├── RouteTest.php
│   ├── SearchTest.php
│   ├── SettingsTest.php
│   ├── Stubs/
│   │   └── Widgets/
│   │       ├── AccessibleDimmer.php
│   │       └── InAccessibleDimmer.php
│   ├── TestCase.php
│   ├── Unit/
│   │   ├── Actions/
│   │   │   └── AbstractActionTest.php
│   │   └── VoyagerTest.php
│   ├── UserProfileTest.php
│   ├── ViewEventTest.php
│   ├── bootstrap.php
│   ├── database/
│   │   └── factories/
│   │       ├── RoleFactory.php
│   │       └── UserFactory.php
│   ├── rendered_alerts.html
│   └── views/
│       ├── foo.blade.php
│       ├── hello.blade.php
│       └── test.blade.php
├── versioning.md
└── webpack.mix.js
Download .txt
Showing preview only (581K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (5947 symbols across 369 files)

FILE: migrations/2016_01_01_000000_add_voyager_user_fields.php
  class AddVoyagerUserFields (line 5) | class AddVoyagerUserFields extends Migration
    method up (line 10) | public function up()
    method down (line 23) | public function down()

FILE: migrations/2016_01_01_000000_create_data_types_table.php
  class CreateDataTypesTable (line 6) | class CreateDataTypesTable extends Migration
    method up (line 13) | public function up()
    method down (line 54) | public function down()

FILE: migrations/2016_05_19_173453_create_menu_table.php
  class CreateMenuTable (line 6) | class CreateMenuTable extends Migration
    method up (line 13) | public function up()
    method down (line 44) | public function down()

FILE: migrations/2016_10_21_190000_create_roles_table.php
  class CreateRolesTable (line 7) | class CreateRolesTable extends Migration
    method up (line 14) | public function up()
    method down (line 29) | public function down()

FILE: migrations/2016_10_21_190000_create_settings_table.php
  class CreateSettingsTable (line 7) | class CreateSettingsTable extends Migration
    method up (line 14) | public function up()
    method down (line 32) | public function down()

FILE: migrations/2016_11_30_135954_create_permission_table.php
  class CreatePermissionTable (line 7) | class CreatePermissionTable extends Migration
    method up (line 14) | public function up()
    method down (line 29) | public function down()

FILE: migrations/2016_11_30_141208_create_permission_role_table.php
  class CreatePermissionRoleTable (line 7) | class CreatePermissionRoleTable extends Migration
    method up (line 14) | public function up()
    method down (line 30) | public function down()

FILE: migrations/2016_12_26_201236_data_types__add__server_side.php
  class DataTypesAddServerSide (line 7) | class DataTypesAddServerSide extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2017_01_13_000000_add_route_to_menu_items_table.php
  class AddRouteToMenuItemsTable (line 7) | class AddRouteToMenuItemsTable extends Migration
    method up (line 14) | public function up()
    method down (line 27) | public function down()

FILE: migrations/2017_01_14_005015_create_translations_table.php
  class CreateTranslationsTable (line 7) | class CreateTranslationsTable extends Migration
    method up (line 14) | public function up()
    method down (line 37) | public function down()

FILE: migrations/2017_01_15_000000_make_table_name_nullable_in_permissions_table.php
  class MakeTableNameNullableInPermissionsTable (line 7) | class MakeTableNameNullableInPermissionsTable extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2017_03_06_000000_add_controller_to_data_types_table.php
  class AddControllerToDataTypesTable (line 7) | class AddControllerToDataTypesTable extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2017_04_21_000000_add_order_to_data_rows_table.php
  class AddOrderToDataRowsTable (line 7) | class AddOrderToDataRowsTable extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2017_07_05_210000_add_policyname_to_data_types_table.php
  class AddPolicyNameToDataTypesTable (line 6) | class AddPolicyNameToDataTypesTable extends Migration
    method up (line 13) | public function up()
    method down (line 25) | public function down()

FILE: migrations/2017_08_05_000000_add_group_to_settings_table.php
  class AddGroupToSettingsTable (line 7) | class AddGroupToSettingsTable extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2017_11_26_013050_add_user_role_relationship.php
  class AddUserRoleRelationship (line 7) | class AddUserRoleRelationship extends Migration
    method up (line 14) | public function up()
    method down (line 27) | public function down()

FILE: migrations/2017_11_26_015000_create_user_roles_table.php
  class CreateUserRolesTable (line 7) | class CreateUserRolesTable extends Migration
    method up (line 14) | public function up()
    method down (line 36) | public function down()

FILE: migrations/2018_03_11_000000_add_user_settings.php
  class AddUserSettings (line 7) | class AddUserSettings extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2018_03_14_000000_add_details_to_data_types_table.php
  class AddDetailsToDatatypesTable (line 7) | class AddDetailsToDatatypesTable extends Migration
    method up (line 14) | public function up()
    method down (line 26) | public function down()

FILE: migrations/2018_03_16_000000_make_settings_value_nullable.php
  class MakeSettingsValueNullable (line 8) | class MakeSettingsValueNullable extends Migration
    method up (line 15) | public function up()
    method down (line 27) | public function down()

FILE: mix.js
  function t (line 1) | function t(e){if(r[e])return r[e].exports;var o=r[e]={i:e,l:!1,exports:{...

FILE: publishable/assets/js/ace/libs/ace.js
  function exportAce (line 151) | function exportAce(ns) {
  function defineProp (line 176) | function defineProp(obj, name, val) {
  function insertPendingStyles (line 676) | function insertPendingStyles() {
  function importCssString (line 683) | function importCssString(cssText, id, target) {
  function warn (line 989) | function warn(message) {
  function reportError (line 993) | function reportError(msg, data) {
  function init (line 1207) | function init(packaged) {
  function deHyphenate (line 1256) | function deHyphenate(str) {
  function detectListenerOptionsSupport (line 1403) | function detectListenerOptionsSupport() {
  function getListenerOptions (line 1414) | function getListenerOptions() {
  function EventListener (line 1419) | function EventListener(elem, type, callback) {
  function onMouseUp (line 1458) | function onMouseUp(e) {
  function onMousedown (line 1502) | function onMousedown(e) {
  function normalizeCommandKeys (line 1545) | function normalizeCommandKeys(callback, e, keyCode) {
  function resetPressedKeys (line 1625) | function resetPressedKeys() {
  function cancelComposition (line 2386) | function cancelComposition() {
  function onKeyup (line 2393) | function onKeyup(e) {
  function onContextMenuClose (line 2450) | function onContextMenuClose() {
  function addIosSelectionHandler (line 2475) | function addIosSelectionHandler(parentNode, host, text) {
  function DefaultHandlers (line 2569) | function DefaultHandlers(mouseHandler) {
  function calcDistance (line 2790) | function calcDistance(ax, ay, bx, by) {
  function calcRangeOrientation (line 2793) | function calcRangeOrientation(range, cursor) {
  function Tooltip (line 2812) | function Tooltip(parentNode) {
  function GutterHandler (line 2880) | function GutterHandler(mouseHandler) {
  function GutterTooltip (line 2981) | function GutterTooltip(parentNode) {
  function DragdropHandler (line 3071) | function DragdropHandler(mouseHandler) {
  function calcDistance (line 3396) | function calcDistance(ax, ay, bx, by) {
  function createContextMenu (line 3422) | function createContextMenu() {
  function showContextMenu (line 3483) | function showContextMenu() {
  function hideContextMenu (line 3504) | function hideContextMenu(e) {
  function handleLongTap (line 3509) | function handleLongTap() {
  function switchToSelectionMode (line 3521) | function switchToSelectionMode() {
  function animate (line 3680) | function animate() {
  function FoldHandler (line 3874) | function FoldHandler(editor) {
  function _computeLevels (line 4080) | function _computeLevels(chars, levels, len, charTypes) {
  function _invertLevel (line 4145) | function _invertLevel(lev, levels, _array) {
  function _getCharClass (line 4170) | function _getCharClass(chars, types, classes, ix) {
  function _getCharacterType (line 4253) | function _getCharacterType(ch) {
  function _isArabicDiacritics (line 4281) | function _isArabicDiacritics(ch) {
  function processState (line 5530) | function processState(key) {
  function iter (line 6236) | function iter(fun) {
  function throwDeltaError (line 6446) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 6450) | function positionInDocument(docLines, position) {
  function validateDelta (line 6454) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 6532) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 6536) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function FoldLine (line 7139) | function FoldLine(foldData, folds) {
  function consumePoint (line 7621) | function consumePoint(point, anchor) {
  function consumeRange (line 7626) | function consumeRange(range, anchor) {
  function restorePoint (line 7630) | function restorePoint(point, anchor) {
  function restoreRange (line 7635) | function restoreRange(range, anchor) {
  function Folding (line 7647) | function Folding() {
  function BracketMatch (line 8363) | function BracketMatch() {
  function isInsert (line 9311) | function isInsert(delta) {
  function getWrapIndent (line 9715) | function getWrapIndent() {
  function addSplit (line 9736) | function addSplit(screenPos) {
  function isFullWidth (line 10146) | function isFullWidth(c) {
  function addWordBoundary (line 10560) | function addWordBoundary(needle, options) {
  function HashHandler (line 10577) | function HashHandler(config, platform) {
  function MultiHashHandler (line 10584) | function MultiHashHandler(config, platform) {
  function getPosition (line 10646) | function getPosition(command) {
  function bindKey (line 10861) | function bindKey(win, mac) {
  function rearrangeUndoStack (line 13782) | function rearrangeUndoStack(stack, pos) {
  function $updateMarkers (line 13799) | function $updateMarkers(delta) {
  function clonePos (line 13838) | function clonePos(pos) {
  function cloneDelta (line 13841) | function cloneDelta(d) {
  function stringifyDelta (line 13849) | function stringifyDelta(d) {
  function stringifyRange (line 13875) | function stringifyRange(r) {
  function swap (line 13879) | function swap(d1, d2) {
  function swapGroups (line 13928) | function swapGroups(ds1, ds2) {
  function xform (line 13947) | function xform(d1, c1) {
  function shift (line 14010) | function shift(d1, d2, dir) {
  function shiftPos (line 14014) | function shiftPos(pos, start, end, dir) {
  function splitDelta (line 14020) | function splitDelta(c, pos) {
  function moveDeltasByOne (line 14037) | function moveDeltasByOne(redoStack, d) {
  function rebaseRedoStack (line 14062) | function rebaseRedoStack(redoStack, deltaSets) {
  function onCreateCell (line 14510) | function onCreateCell(element) {
  function getBorderClass (line 14598) | function getBorderClass(tl, tr, br, bl) {
  function addTokens (line 15279) | function addTokens(tokens, from, to) {
  function solve (line 16049) | function solve(l1, l2, r) {
  function sub (line 16056) | function sub(a, b) { return [a[0] - b[0], a[1] - b[1]]; }
  function add (line 16057) | function add(a, b) { return [a[0] + b[0], a[1] + b[1]]; }
  function mul (line 16058) | function mul(a, b) { return [a * b[0], a * b[1]]; }
  function p (line 16061) | function p(el) {
  function compare (line 16141) | function compare(a, b) {
  function afterLoad (line 17293) | function afterLoad(module) {
  function $workerBlob (line 17549) | function $workerBlob(workerUrl) {
  function createWorker (line 17561) | function createWorker(workerUrl) {
  function isSamePoint (line 17931) | function isSamePoint(p1, p2) {
  function onMouseDown (line 17934) | function onMouseDown(e) {
  function find (line 18187) | function find(session, needle, dir) {
  function spaces (line 18775) | function spaces(n) {
  function alignLeft (line 18778) | function alignLeft(m) {
  function alignRight (line 18783) | function alignRight(m) {
  function unAlign (line 18788) | function unAlign(m) {
  function isSamePoint (line 18795) | function isSamePoint(p1, p2) {
  function MultiSelect (line 18830) | function MultiSelect(editor) {
  function addAltCursorListeners (line 18845) | function addAltCursorListeners(editor) {
  function LineWidgets (line 18971) | function LineWidgets(session) {
  function binarySearch (line 19304) | function binarySearch(array, needle, comparator) {
  function findAnnotations (line 19319) | function findAnnotations(session, row, dir) {

FILE: publishable/assets/js/ace/libs/ext-beautify.js
  function is (line 4) | function is(token, type) {

FILE: publishable/assets/js/ace/libs/ext-code_lens.js
  function clearLensElements (line 6) | function clearLensElements(renderer) {
  function renderWidgets (line 13) | function renderWidgets(changes, renderer) {
  function clearCodeLensWidgets (line 75) | function clearCodeLensWidgets(session) {
  function attachToEditor (line 107) | function attachToEditor(editor) {
  function detachFromEditor (line 166) | function detachFromEditor(editor) {

FILE: publishable/assets/js/ace/libs/ext-emmet.js
  function date (line 79) | function date(dateFormat) {
  function TabstopToken (line 93) | function TabstopToken(str) {
  function escape (line 99) | function escape(ch) {
  function gotoNext (line 333) | function gotoNext(ch) {
  function copyValue (line 388) | function copyValue(val) {
  function wrapRegexp (line 553) | function wrapRegexp(src) {
  function guardedRegexp (line 558) | function guardedRegexp(re, guard, opening) {
  function addSnippet (line 573) | function addSnippet(s) {
  function removeSnippet (line 618) | function removeSnippet(s) {
  function AceEmmetEditor (line 958) | function AceEmmetEditor() { }

FILE: publishable/assets/js/ace/libs/ext-hardwrap.js
  function hardWrap (line 3) | function hardWrap(editor, options) {
  function wrapAfterInput (line 78) | function wrapAfterInput(e) {

FILE: publishable/assets/js/ace/libs/ext-keybinding_menu.js
  function documentEscListener (line 13) | function documentEscListener(e) {
  function close (line 18) | function close() {
  function setIgnoreFocusOut (line 29) | function setIgnoreFocusOut(ignore) {
  function showKeyboardShortcuts (line 97) | function showKeyboardShortcuts(editor) {

FILE: publishable/assets/js/ace/libs/ext-language_tools.js
  function date (line 79) | function date(dateFormat) {
  function TabstopToken (line 93) | function TabstopToken(str) {
  function escape (line 99) | function escape(ch) {
  function gotoNext (line 333) | function gotoNext(ch) {
  function copyValue (line 388) | function copyValue(val) {
  function wrapRegexp (line 553) | function wrapRegexp(src) {
  function guardedRegexp (line 558) | function guardedRegexp(re, guard, opening) {
  function addSnippet (line 573) | function addSnippet(s) {
  function removeSnippet (line 618) | function removeSnippet(s) {
  function addToken (line 1079) | function addToken(value, className) {
  function getWordIndex (line 1745) | function getWordIndex(doc, pos) {
  function wordDistance (line 1749) | function wordDistance(doc, pos) {

FILE: publishable/assets/js/ace/libs/ext-linking.js
  function onMouseMove (line 18) | function onMouseMove(e) {
  function onClick (line 37) | function onClick(e) {

FILE: publishable/assets/js/ace/libs/ext-modelist.js
  function getModeForPath (line 3) | function getModeForPath(path) {

FILE: publishable/assets/js/ace/libs/ext-options.js
  function documentEscListener (line 13) | function documentEscListener(e) {
  function close (line 18) | function close() {
  function setIgnoreFocusOut (line 29) | function setIgnoreFocusOut(ignore) {
  function getModeForPath (line 64) | function getModeForPath(path) {

FILE: publishable/assets/js/ace/libs/ext-prompt.js
  function addToken (line 161) | function addToken(value, className) {
  function date (line 427) | function date(dateFormat) {
  function TabstopToken (line 441) | function TabstopToken(str) {
  function escape (line 447) | function escape(ch) {
  function gotoNext (line 681) | function gotoNext(ch) {
  function copyValue (line 736) | function copyValue(val) {
  function wrapRegexp (line 901) | function wrapRegexp(src) {
  function guardedRegexp (line 906) | function guardedRegexp(re, guard, opening) {
  function addSnippet (line 921) | function addSnippet(s) {
  function removeSnippet (line 966) | function removeSnippet(s) {
  function documentEscListener (line 1787) | function documentEscListener(e) {
  function close (line 1792) | function close() {
  function setIgnoreFocusOut (line 1803) | function setIgnoreFocusOut(ignore) {
  function getModeForPath (line 1838) | function getModeForPath(path) {
  function prompt (line 2110) | function prompt(editor, message, options, callback) {
  function stringifySelection (line 2252) | function stringifySelection(selection) {
  function readPosition (line 2288) | function readPosition() {
  function normalizeName (line 2353) | function normalizeName(name) {
  function getEditorCommandsByName (line 2360) | function getEditorCommandsByName(excludeCommands) {
  function getFilteredCompletions (line 2435) | function getFilteredCompletions(commands, prefix) {
  function getUniqueCommandList (line 2440) | function getUniqueCommandList(commands, usedCommands) {
  function getFilteredCompletions (line 2492) | function getFilteredCompletions(modes, prefix) {

FILE: publishable/assets/js/ace/libs/ext-rtl.js
  function onChangeSelection (line 55) | function onChangeSelection(e, editor) {
  function onCommandEmitted (line 71) | function onCommandEmitted(commadEvent) {
  function onChange (line 74) | function onChange(delta, editor) {
  function updateLineDirection (line 84) | function updateLineDirection(e, renderer) {
  function clearTextLayer (line 103) | function clearTextLayer(renderer) {

FILE: publishable/assets/js/ace/libs/ext-settings_menu.js
  function documentEscListener (line 13) | function documentEscListener(e) {
  function close (line 18) | function close() {
  function setIgnoreFocusOut (line 29) | function setIgnoreFocusOut(ignore) {
  function getModeForPath (line 64) | function getModeForPath(path) {
  function showSettingsMenu (line 731) | function showSettingsMenu(editor) {

FILE: publishable/assets/js/ace/libs/ext-static_highlight.js
  function Element (line 12) | function Element(type) {
  function done (line 124) | function done() {

FILE: publishable/assets/js/ace/libs/ext-statusbar.js
  function add (line 19) | function add(str, separator) {

FILE: publishable/assets/js/ace/libs/ext-textarea.js
  function applyStyles (line 22) | function applyStyles(elm, styles) {
  function setupContainer (line 27) | function setupContainer(element, getValue) {
  function load (line 156) | function load(url, module, callback) {
  function setupApi (line 161) | function setupApi(editor, editorDiv, settingDiv, ace, options) {
  function setupSettingPanel (line 238) | function setupSettingPanel(settingDiv, settingOpener, editor) {

FILE: publishable/assets/js/ace/libs/ext-whitespace.js
  function getScore (line 30) | function getScore(indent) {

FILE: publishable/assets/js/ace/libs/keybinding-emacs.js
  function Occur (line 7) | function Occur() { }
  function OccurKeyboardHandler (line 136) | function OccurKeyboardHandler() { }
  function IncrementalSearchKeyboardHandler (line 289) | function IncrementalSearchKeyboardHandler(iSearch) {
  function IncrementalSearch (line 344) | function IncrementalSearch() {
  function isRegExp (line 349) | function isRegExp(obj) {
  function regExpToObject (line 352) | function regExpToObject(re) {
  function stringToRegExp (line 359) | function stringToRegExp(string, flags) {
  function objectToRegExp (line 367) | function objectToRegExp(obj) {
  function moveToMark (line 864) | function moveToMark() {
  function deselect (line 959) | function deselect() {

FILE: publishable/assets/js/ace/libs/keybinding-sublime.js
  function moveBySubWords (line 3) | function moveBySubWords(editor, direction, extend) {

FILE: publishable/assets/js/ace/libs/keybinding-vim.js
  function hardWrap (line 3) | function hardWrap(editor, options) {
  function wrapAfterInput (line 78) | function wrapAfterInput(e) {
  function log (line 113) | function log() {
  function toAcePos (line 775) | function toAcePos(cmPos) {
  function toCmPos (line 778) | function toCmPos(acePos) {
  function dialogDiv (line 868) | function dialogDiv(cm, template, bottom) {
  function closeNotification (line 884) | function closeNotification(cm, newVal) {
  function close (line 898) | function close(newVal) {
  function close (line 969) | function close() {
  function transformCursor (line 986) | function transformCursor(cm, range) {
  function updateSelectionForSurrogateCharacters (line 1004) | function updateSelectionForSurrogateCharacters(cm, curStart, curEnd) {
  function enterVimMode (line 1207) | function enterVimMode(cm) {
  function leaveVimMode (line 1215) | function leaveVimMode(cm) {
  function detachVimMap (line 1223) | function detachVimMap(cm, next) {
  function attachVimMap (line 1231) | function attachVimMap(cm, prev) {
  function cmKey (line 1247) | function cmKey(key, cm) {
  function cmKeyToVimKey (line 1266) | function cmKeyToVimKey(key) {
  function getOnPasteFn (line 1299) | function getOnPasteFn(cm) {
  function makeKeyRange (line 1317) | function makeKeyRange(start, size) {
  function isLine (line 1336) | function isLine(cm, line) {
  function isLowerCase (line 1339) | function isLowerCase(k) {
  function isMatchableSymbol (line 1342) | function isMatchableSymbol(k) {
  function isNumber (line 1345) | function isNumber(k) {
  function isUpperCase (line 1348) | function isUpperCase(k) {
  function isWhiteSpaceString (line 1351) | function isWhiteSpaceString(k) {
  function isEndOfSentenceSymbol (line 1354) | function isEndOfSentenceSymbol(k) {
  function inArray (line 1357) | function inArray(val, arr) {
  function defineOption (line 1366) | function defineOption(name, defaultValue, type, aliases, callback) {
  function setOption (line 1387) | function setOption(name, value, cm, cfg) {
  function getOption (line 1419) | function getOption(name, cm, cfg) {
  function add (line 1460) | function add(cm, oldCur, newCur) {
  function move (line 1487) | function move(cm, offset) {
  function find (line 1512) | function find(cm, offset) {
  function MacroModeState (line 1537) | function MacroModeState() {
  function maybeInitVimState (line 1567) | function maybeInitVimState(cm) {
  function resetVimGlobalState (line 1591) | function resetVimGlobalState() {
  function toCtxArray (line 1631) | function toCtxArray(ctx) {
  function handleMacroRecording (line 1706) | function handleMacroRecording() {
  function handleEsc (line 1719) | function handleEsc() {
  function doKeyToKey (line 1734) | function doKeyToKey(keys) {
  function handleKeyInsertMode (line 1743) | function handleKeyInsertMode() {
  function handleKeyNonInsertMode (line 1784) | function handleKeyNonInsertMode() {
  function InputState (line 1874) | function InputState() {
  function clearInputState (line 1905) | function clearInputState(cm, reason) {
  function Register (line 1909) | function Register(text, linewise, blockwise) {
  function defineRegister (line 1948) | function defineRegister(name, register) {
  function RegisterController (line 1956) | function RegisterController(registers) {
  function HistoryController (line 2023) | function HistoryController() {
  function handleQuery (line 2193) | function handleQuery(query, ignoreCase, smartCase) {
  function onPromptClose (line 2210) | function onPromptClose(query) {
  function onPromptKeyUp (line 2217) | function onPromptKeyUp(e, query, close) {
  function onPromptKeyDown (line 2245) | function onPromptKeyDown(e, query, close) {
  function onPromptClose (line 2308) | function onPromptClose(input) {
  function onPromptKeyDown (line 2315) | function onPromptKeyDown(e, input, close) {
  function defineMotion (line 2952) | function defineMotion(name, fn) {
  function fillArray (line 2955) | function fillArray(val, times) {
  function defineOperator (line 3124) | function defineOperator(name, fn) {
  function defineAction (line 3711) | function defineAction(name, fn) {
  function clipCursorToContent (line 3714) | function clipCursorToContent(cm, cur, oldCur) {
  function copyArgs (line 3735) | function copyArgs(args) {
  function offsetCursor (line 3744) | function offsetCursor(cur, offsetLine, offsetCh) {
  function commandMatches (line 3751) | function commandMatches(keys, keyMap, context, inputState) {
  function commandMatch (line 3773) | function commandMatch(pressed, mapped) {
  function lastChar (line 3786) | function lastChar(keys) {
  function repeatFn (line 3804) | function repeatFn(cm, fn, repeat) {
  function copyCursor (line 3811) | function copyCursor(cur) {
  function cursorEqual (line 3814) | function cursorEqual(cur1, cur2) {
  function cursorIsBefore (line 3817) | function cursorIsBefore(cur1, cur2) {
  function cursorMin (line 3826) | function cursorMin(cur1, cur2) {
  function cursorMax (line 3832) | function cursorMax(cur1, cur2) {
  function cursorIsBetween (line 3838) | function cursorIsBetween(cur1, cur2, cur3) {
  function lineLength (line 3843) | function lineLength(cm, lineNum) {
  function trim (line 3846) | function trim(s) {
  function escapeRegex (line 3852) | function escapeRegex(s) {
  function extendLineToColumn (line 3855) | function extendLineToColumn(cm, lineNum, column) {
  function selectBlock (line 3861) | function selectBlock(cm, selectionEnd) {
  function selectForInsert (line 3901) | function selectForInsert(cm, head, height) {
  function getIndex (line 3909) | function getIndex(ranges, cursor, end) {
  function getSelectedAreaRange (line 3919) | function getSelectedAreaRange(cm, vim) {
  function updateLastSelection (line 3967) | function updateLastSelection(cm, vim) {
  function expandSelection (line 3982) | function expandSelection(cm, start, end) {
  function updateCmSelection (line 4006) | function updateCmSelection(cm, sel, mode) {
  function makeCmSelection (line 4014) | function makeCmSelection(cm, sel, mode, exclusive) {
  function getHead (line 4069) | function getHead(cm) {
  function exitVisualMode (line 4076) | function exitVisualMode(cm, moveHead) {
  function clipToLine (line 4088) | function clipToLine(cm, curStart, curEnd) {
  function expandSelectionToLine (line 4107) | function expandSelectionToLine(_cm, curStart, curEnd) {
  function findFirstNonWhiteSpaceCharacter (line 4112) | function findFirstNonWhiteSpaceCharacter(text) {
  function expandWordUnderCursor (line 4119) | function expandWordUnderCursor(cm, inclusive, _forward, bigWord, noSymbo...
  function expandTagUnderCursor (line 4164) | function expandTagUnderCursor(cm, head, inclusive) {
  function recordJumpPosition (line 4178) | function recordJumpPosition(cm, oldCur, newCur) {
  function recordLastCharacterSearch (line 4183) | function recordLastCharacterSearch(increment, args) {
  function findSymbol (line 4262) | function findSymbol(cm, repeat, forward, symb) {
  function findWord (line 4314) | function findWord(cm, cur, forward, bigWord, emptyLineIsWord) {
  function moveToWord (line 4369) | function moveToWord(cm, cur, repeat, forward, wordEnd, bigWord) {
  function moveToEol (line 4410) | function moveToEol(cm, head, motionArgs, vim, keepHPos) {
  function moveToCharacter (line 4421) | function moveToCharacter(cm, repeat, forward, character) {
  function moveToColumn (line 4435) | function moveToColumn(cm, repeat) {
  function updateMark (line 4439) | function updateMark(cm, vim, markName, pos) {
  function charIdxInLine (line 4448) | function charIdxInLine(start, line, character, forward, includeChar) {
  function findParagraph (line 4464) | function findParagraph(cm, head, repeat, dir, inclusive) {
  function getSentence (line 4528) | function getSentence(cm, cur, repeat, dir, inclusive /*includes whitespa...
  function findSentence (line 4629) | function findSentence(cm, cur, repeat, dir) {
  function selectCompanionObject (line 4747) | function selectCompanionObject(cm, head, symb, inclusive) {
  function findBeginningAndEnd (line 4784) | function findBeginningAndEnd(cm, head, symb, inclusive) {
  function SearchState (line 4827) | function SearchState() { }
  function getSearchState (line 4854) | function getSearchState(cm) {
  function splitBySlash (line 4858) | function splitBySlash(argString) {
  function findUnescapedSlashes (line 4861) | function findUnescapedSlashes(argString) {
  function splitBySeparator (line 4864) | function splitBySeparator(argString, separator) {
  function findUnescapedSeparators (line 4877) | function findUnescapedSeparators(str, separator) {
  function translateRegex (line 4891) | function translateRegex(str) {
  function translateRegexReplace (line 4927) | function translateRegexReplace(str) {
  function unescapeRegexReplace (line 4965) | function unescapeRegexReplace(str) {
  function parseQuery (line 4986) | function parseQuery(query, ignoreCase, smartCase) {
  function dom (line 5015) | function dom(n) {
  function showConfirm (line 5037) | function showConfirm(cm, template) {
  function makePrompt (line 5046) | function makePrompt(prefix, desc) {
  function showPrompt (line 5050) | function showPrompt(cm, options) {
  function regexEqual (line 5067) | function regexEqual(r1, r2) {
  function updateSearchQuery (line 5080) | function updateSearchQuery(cm, rawQuery, ignoreCase, smartCase) {
  function searchOverlay (line 5096) | function searchOverlay(query) {
  function highlightSearchMatches (line 5132) | function highlightSearchMatches(cm, query) {
  function findNext (line 5155) | function findNext(cm, prev, query, repeat) {
  function findNextFromAndToInclusive (line 5182) | function findNextFromAndToInclusive(cm, prev, query, repeat, vim) {
  function clearSearchHighlight (line 5205) | function clearSearchHighlight(cm) {
  function isInRange (line 5214) | function isInRange(pos, start, end) {
  function getUserVisibleLines (line 5230) | function getUserVisibleLines(cm) {
  function getMarkPos (line 5237) | function getMarkPos(cm, vim, markName) {
  function getLastEditPos (line 5247) | function getLastEditPos(cm) {
  function parseArgs (line 5605) | function parseArgs() {
  function compareFn (line 5673) | function compareFn(a, b) {
  function comparePatternFn (line 5693) | function comparePatternFn(a, b) {
  function doReplace (line 5933) | function doReplace(cm, confirm, global, lineStart, lineEnd, searchCursor...
  function exitInsertMode (line 6045) | function exitInsertMode(cm) {
  function _mapCommand (line 6071) | function _mapCommand(command) {
  function mapCommand (line 6074) | function mapCommand(keys, type, name, args, extra) {
  function executeMacroRegister (line 6096) | function executeMacroRegister(cm, vim, macroModeState, registerName) {
  function logKey (line 6128) | function logKey(macroModeState, key) {
  function logInsertModeChange (line 6138) | function logInsertModeChange(macroModeState) {
  function logSearchQuery (line 6148) | function logSearchQuery(macroModeState, query) {
  function onChange (line 6158) | function onChange(cm, changeObj) {
  function onCursorActivity (line 6190) | function onCursorActivity(cm) {
  function handleExternalSelection (line 6209) | function handleExternalSelection(cm, vim, keepHPos) {
  function InsertModeKey (line 6236) | function InsertModeKey(keyName) {
  function onKeyEventTargetKeyDown (line 6239) | function onKeyEventTargetKeyDown(e) {
  function repeatLastEdit (line 6258) | function repeatLastEdit(cm, vim, repeat, repeatForInsert) {
  function repeatInsertModeChanges (line 6297) | function repeatInsertModeChanges(cm, changes, repeat) {
  function lookupKey (line 6344) | function lookupKey(hashId, key, e) {
  function cloneVimState (line 6371) | function cloneVimState(state) {
  function multiSelectHandleKey (line 6389) | function multiSelectHandleKey(cm, key, origin) {
  function updateInputMode (line 6554) | function updateInputMode() {
  function delayedExecAceCommand (line 6641) | function delayedExecAceCommand(op, ace) {

FILE: publishable/assets/js/ace/libs/mode-abap.js
  function Mode (line 173) | function Mode() {

FILE: publishable/assets/js/ace/libs/mode-apex.js
  function keywordMapper (line 65) | function keywordMapper(value) {
  function string (line 70) | function string(start, options) {
  function comments (line 89) | function comments() {
  function ApexMode (line 382) | function ApexMode() {

FILE: publishable/assets/js/ace/libs/mode-asciidoc.js
  function quoteRule (line 132) | function quoteRule(ch) {
  function getTokenType (line 206) | function getTokenType(row) {
  function getLevel (line 213) | function getLevel() {

FILE: publishable/assets/js/ace/libs/mode-c9search.js
  function safeCreateRegexp (line 5) | function safeCreateRegexp(source, flag) {

FILE: publishable/assets/js/ace/libs/mode-coffee.js
  function CoffeeHighlightRules (line 5) | function CoffeeHighlightRules() {
  function Mode (line 283) | function Mode() {

FILE: publishable/assets/js/ace/libs/mode-coldfusion.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-csound_document.js
  method next (line 226) | get next() { return Array.isArray(params.next) ? params.next[params.next...
  method next (line 227) | set next(next) {
  method token (line 232) | get token() { return params.token; }
  function JSX (line 3448) | function JSX() {
  function comments (line 3548) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-csound_orchestra.js
  method next (line 226) | get next() { return Array.isArray(params.next) ? params.next[params.next...
  method next (line 227) | set next(next) {
  method token (line 232) | get token() { return params.token; }

FILE: publishable/assets/js/ace/libs/mode-csound_score.js
  method next (line 226) | get next() { return Array.isArray(params.next) ? params.next[params.next...
  method next (line 227) | set next(next) {
  method token (line 232) | get token() { return params.token; }

FILE: publishable/assets/js/ace/libs/mode-curly.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-django.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-ejs.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-ftl.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-gobstones.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-groovy.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-haml.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-handlebars.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {
  function pop2 (line 2113) | function pop2(currentState, stack) {

FILE: publishable/assets/js/ace/libs/mode-html.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-html_elixir.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function is (line 1835) | function is(token, type) {
  function is (line 2036) | function is(token, type) {
  function is (line 2334) | function is(token, type) {
  function findTagName (line 2337) | function findTagName(session, pos) {
  function findAttributeName (line 2346) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-html_ruby.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function is (line 2070) | function is(token, type) {
  function is (line 2271) | function is(token, type) {
  function is (line 2569) | function is(token, type) {
  function findTagName (line 2572) | function findTagName(session, pos) {
  function findAttributeName (line 2581) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-jade.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function CoffeeHighlightRules (line 1378) | function CoffeeHighlightRules() {
  function mixin_embed (line 1558) | function mixin_embed(tag, prefix) {

FILE: publishable/assets/js/ace/libs/mode-java.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-javascript.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-jsoniq.js
  function newRequire (line 4) | function newRequire(name, jumped){
  function init (line 52) | function init(string, parsingEventHandler)
  function reset (line 65) | function reset(l, b, e)
  function parse_EQName (line 563) | function parse_EQName()
  function parse_FunctionName (line 622) | function parse_FunctionName()
  function parse_NCName (line 969) | function parse_NCName()
  function shift (line 1364) | function shift(t)
  function whitespace (line 1378) | function whitespace()
  function matchW (line 1388) | function matchW(set)
  function lookahead1W (line 1402) | function lookahead1W(set)
  function lookahead1 (line 1412) | function lookahead1(set)
  function error (line 1422) | function error(b, e, s, l, t)
  function match (line 1436) | function match(tokenSetId)
  function is (line 2093) | function is(token, type) {
  function hasType (line 2242) | function hasType(token, type) {
  function updateFloat (line 2547) | function updateFloat(single) {

FILE: publishable/assets/js/ace/libs/mode-jsp.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-jsx.js
  function Mode (line 297) | function Mode() {

FILE: publishable/assets/js/ace/libs/mode-latte.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-liquid.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {
  function is (line 2115) | function is(token, type) {

FILE: publishable/assets/js/ace/libs/mode-livescript.js
  function LiveScriptMode (line 34) | function LiveScriptMode() {
  function extend$ (line 249) | function extend$(sub, sup) {
  function import$ (line 257) | function import$(obj, src) {

FILE: publishable/assets/js/ace/libs/mode-lsl.js
  function LSLHighlightRules (line 5) | function LSLHighlightRules() {

FILE: publishable/assets/js/ace/libs/mode-lua.js
  function getNetIndentLevel (line 292) | function getNetIndentLevel(tokens) {

FILE: publishable/assets/js/ace/libs/mode-luapage.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {
  function getNetIndentLevel (line 2400) | function getNetIndentLevel(tokens) {

FILE: publishable/assets/js/ace/libs/mode-markdown.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 900) | function is(token, type) {
  function is (line 1062) | function is(token, type) {
  function is (line 1985) | function is(token, type) {
  function findTagName (line 1988) | function findTagName(session, pos) {
  function findAttributeName (line 1997) | function findAttributeName(session, pos) {
  function isHeading (line 2358) | function isHeading(row) {
  function getLevel (line 2363) | function getLevel() {

FILE: publishable/assets/js/ace/libs/mode-mask.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function MaskHighlightRules (line 1127) | function MaskHighlightRules() {
  function Token (line 1297) | function Token(token, rgx, mix) {

FILE: publishable/assets/js/ace/libs/mode-mysql.js
  function string (line 56) | function string(rule) {

FILE: publishable/assets/js/ace/libs/mode-nunjucks.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-pgsql.js
  function JSX (line 948) | function JSX() {
  function comments (line 1048) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-php.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function is (line 12342) | function is(token, type) {
  function is (line 12919) | function is(token, type) {
  function is (line 13120) | function is(token, type) {
  function is (line 13418) | function is(token, type) {
  function findTagName (line 13421) | function findTagName(session, pos) {
  function findAttributeName (line 13430) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-php_laravel_blade.js
  function JSX (line 554) | function JSX() {
  function comments (line 654) | function comments(next) {
  function is (line 12506) | function is(token, type) {
  function is (line 13083) | function is(token, type) {
  function is (line 13284) | function is(token, type) {
  function is (line 13582) | function is(token, type) {
  function findTagName (line 13585) | function findTagName(session, pos) {
  function findAttributeName (line 13594) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-razor.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-rhtml.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-scala.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-sjs.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-slim.js
  function JSX (line 568) | function JSX() {
  function comments (line 668) | function comments(next) {
  function is (line 1094) | function is(token, type) {
  function is (line 1256) | function is(token, type) {
  function is (line 2179) | function is(token, type) {
  function findTagName (line 2182) | function findTagName(session, pos) {
  function findAttributeName (line 2191) | function findAttributeName(session, pos) {
  function isHeading (line 2552) | function isHeading(row) {
  function getLevel (line 2557) | function getLevel() {
  function CoffeeHighlightRules (line 2906) | function CoffeeHighlightRules() {
  function Mode (line 3155) | function Mode() {

FILE: publishable/assets/js/ace/libs/mode-smarty.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-soy_template.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-svg.js
  function is (line 186) | function is(token, type) {
  function is (line 348) | function is(token, type) {
  function JSX (line 837) | function JSX() {
  function comments (line 937) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-swift.js
  function string (line 64) | function string(start, options) {
  function comments (line 121) | function comments() {

FILE: publishable/assets/js/ace/libs/mode-tsx.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-twig.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-typescript.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-vbscript.js
  function getNetIndentLevel (line 495) | function getNetIndentLevel(tokens, line, indentKeywords) {

FILE: publishable/assets/js/ace/libs/mode-velocity.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {

FILE: publishable/assets/js/ace/libs/mode-visualforce.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {
  function is (line 1452) | function is(token, type) {
  function is (line 1653) | function is(token, type) {
  function is (line 1951) | function is(token, type) {
  function findTagName (line 1954) | function findTagName(session, pos) {
  function findAttributeName (line 1963) | function findAttributeName(session, pos) {
  function string (line 2113) | function string(options) {
  function VisualforceMode (line 2210) | function VisualforceMode() {

FILE: publishable/assets/js/ace/libs/mode-wollok.js
  function JSX (line 374) | function JSX() {
  function comments (line 474) | function comments(next) {

FILE: publishable/assets/js/ace/libs/mode-xml.js
  function is (line 186) | function is(token, type) {
  function is (line 348) | function is(token, type) {

FILE: publishable/assets/js/ace/libs/mode-xquery.js
  function newRequire (line 4) | function newRequire(name, jumped){
  function init (line 52) | function init(string, parsingEventHandler)
  function reset (line 65) | function reset(l, b, e)
  function parse_EQName (line 563) | function parse_EQName()
  function parse_FunctionName (line 622) | function parse_FunctionName()
  function parse_NCName (line 969) | function parse_NCName()
  function shift (line 1364) | function shift(t)
  function whitespace (line 1378) | function whitespace()
  function matchW (line 1388) | function matchW(set)
  function lookahead1W (line 1402) | function lookahead1W(set)
  function lookahead1 (line 1412) | function lookahead1(set)
  function error (line 1422) | function error(b, e, s, l, t)
  function match (line 1436) | function match(tokenSetId)
  function is (line 2092) | function is(token, type) {
  function hasType (line 2241) | function hasType(token, type) {
  function updateFloat (line 2559) | function updateFloat(single) {

FILE: publishable/assets/js/ace/libs/worker-base.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {

FILE: publishable/assets/js/ace/libs/worker-coffee.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function define (line 1326) | function define(f) { module.exports = f() }
  function e (line 1327) | function e(e,a){var t=[],o=!0,n=!1,r=void 0;try{for(var l=e[Symbol.itera...
  function e (line 1327) | function e(e,a){for(var t=0,o;t<a.length;t++)o=a[t],o.enumerable=o.enume...
  function _toArray (line 1327) | function _toArray(e){return Array.isArray(e)?e:Array.from(e)}
  function _possibleConstructorReturn (line 1327) | function _possibleConstructorReturn(e,a){if(!e)throw new ReferenceError(...
  function _inherits (line 1327) | function _inherits(e,a){if("function"!=typeof a&&null!==a)throw new Type...
  function _classCallCheck (line 1327) | function _classCallCheck(e,a){if(!(e instanceof a))throw new TypeError("...
  function _toConsumableArray (line 1327) | function _toConsumableArray(e){if(Array.isArray(e)){for(var a=0,t=Array(...
  function require (line 1327) | function require(e){return require[e]}
  function e (line 1327) | function e(){_classCallCheck(this,e)}
  function e (line 1327) | function e(){_classCallCheck(this,e)}
  function e (line 1327) | function e(){this.yy={}}
  function e (line 1327) | function e(a,t,o,n){_classCallCheck(this,e);var r,l;this.parent=a,this.e...
  function e (line 1327) | function e(a,t){_classCallCheck(this,e);var o;this.code=""+t,this.type=(...
  function e (line 1327) | function e(){_classCallCheck(this,e)}
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function t (line 1327) | function t(e){_classCallCheck(this,t);var a=_possibleConstructorReturn(t...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function t (line 1327) | function t(e){_classCallCheck(this,t);var a=_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t,o){var n=!!(3<arguments.length&&void 0!==arguments[3])&&a...
  function t (line 1327) | function t(e){var a=e.content,o=e.newLine,n=e.unshift;_classCallCheck(th...
  function a (line 1327) | function a(e){var t=e.content,o=e.newLine,n=e.unshift;_classCallCheck(th...
  function a (line 1327) | function a(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(){var e=0<arguments.length&&void 0!==arguments[0]?arguments[0...
  function a (line 1327) | function a(e,t,o){return _classCallCheck(this,a),t instanceof ve&&(t=new...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t,o){_classCallCheck(this,a);var n=_possibleConstructorRetu...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(e){var t=!!(1<arguments.length&&void 0!==arguments[1])&&argum...
  function t (line 1327) | function t(e){var a=!!(1<arguments.length&&void 0!==arguments[1])&&argum...
  function o (line 1327) | function o(e,a){var t=2<arguments.length&&void 0!==arguments[2]?argument...
  function a (line 1327) | function a(e){var t=1<arguments.length&&void 0!==arguments[1]?arguments[...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t,o){_classCallCheck(this,a);var n=_possibleConstructorRetu...
  function t (line 1327) | function t(e,a){return _classCallCheck(this,t),_possibleConstructorRetur...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t){return _classCallCheck(this,a),_possibleConstructorRetur...
  function n (line 1327) | function n(e,a,t){var o=3<arguments.length&&void 0!==arguments[3]?argume...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function t (line 1327) | function t(e,a,n,r){_classCallCheck(this,t);var l=_possibleConstructorRe...
  function t (line 1327) | function t(e,a,o){_classCallCheck(this,t);var n=_possibleConstructorRetu...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(){return _classCallCheck(this,a),_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function n (line 1327) | function n(e,a,o,r){var l;_classCallCheck(this,n);var s=_possibleConstru...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(e,t,o,n){_classCallCheck(this,a);var r=_possibleConstructorRe...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function t (line 1327) | function t(e){var o=!!(1<arguments.length&&void 0!==arguments[1])&&argum...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(t...
  function a (line 1327) | function a(e,t){_classCallCheck(this,a);var o=_possibleConstructorReturn...
  function a (line 1327) | function a(e,t,o){_classCallCheck(this,a);var n=_possibleConstructorRetu...
  function a (line 1327) | function a(e,t){var o=2<arguments.length&&void 0!==arguments[2]?argument...
  function e (line 1327) | function e(a){_classCallCheck(this,e),this.line=a,this.columns=[]}
  function e (line 1327) | function e(){_classCallCheck(this,e),this.lines=[]}

FILE: publishable/assets/js/ace/libs/worker-css.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 399) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 403) | function positionInDocument(docLines, position) {
  function validateDelta (line 407) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 828) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 832) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function r (line 1332) | function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==...
  function Combinator (line 1526) | function Combinator(text, line, col) {
  function Matcher (line 1553) | function Matcher(matchFunc, toString) {
  function MediaFeature (line 1859) | function MediaFeature(name, value) {
  function MediaQuery (line 1878) | function MediaQuery(modifier, mediaType, features, line, col) {
  function Parser (line 1912) | function Parser(options) {
  function PropertyName (line 4176) | function PropertyName(text, hack, line, col) {
  function PropertyValue (line 4197) | function PropertyValue(parts, line, col) {
  function PropertyValueIterator (line 4212) | function PropertyValueIterator(value) {
  function PropertyValuePart (line 4259) | function PropertyValuePart(text, line, col, optionalHint) {
  function Selector (line 4469) | function Selector(parts, line, col) {
  function SelectorPart (line 4489) | function SelectorPart(elementName, modifiers, text, line, col) {
  function SelectorSubPart (line 4509) | function SelectorSubPart(text, type, line, col) {
  function Specificity (line 4528) | function Specificity(a, b, c, d) {
  function updateValues (line 4568) | function updateValues(part) {
  function isHexDigit (line 4633) | function isHexDigit(c) {
  function isDigit (line 4637) | function isDigit(c) {
  function isWhitespace (line 4641) | function isWhitespace(c) {
  function isNewLine (line 4645) | function isNewLine(c) {
  function isNameStart (line 4649) | function isNameStart(c) {
  function isNameChar (line 4653) | function isNameChar(c) {
  function isIdentStart (line 4657) | function isIdentStart(c) {
  function mix (line 4661) | function mix(receiver, supplier) {
  function wouldStartIdent (line 4670) | function wouldStartIdent(twoCodePoints) {
  function wouldStartUnsignedNumber (line 4675) | function wouldStartUnsignedNumber(twoCodePoints) {
  function TokenStream (line 4679) | function TokenStream(input) {
  function ValidationError (line 5532) | function ValidationError(message, line, col) {
  function copy (line 5547) | function copy(to, from) {
  function EventTarget (line 5992) | function EventTarget() {
  function StringReader (line 6043) | function StringReader(text) {
  function SyntaxError (line 6165) | function SyntaxError(message, line, col) {
  function SyntaxUnit (line 6180) | function SyntaxUnit(text, line, col, type) {
  function TokenStreamBase (line 6208) | function TokenStreamBase(input, tokenData) {
  function _instanceof (line 6421) | function _instanceof(obj, type) {
  function clone (line 6445) | function clone(parent, circular, depth, prototype, includeNonEnumerable) {
  function __objToStr (line 6597) | function __objToStr(o) {
  function __isDate (line 6602) | function __isDate(o) {
  function __isArray (line 6607) | function __isArray(o) {
  function __isRegExp (line 6612) | function __isRegExp(o) {
  function __getRegExpFlags (line 6617) | function __getRegExpFlags(re) {
  function applyEmbeddedRuleset (line 6665) | function applyEmbeddedRuleset(text, ruleset) {
  function Reporter (line 6811) | function Reporter(lines, ruleset, allow, ignore) {
  function startRule (line 6973) | function startRule() {
  function endRule (line 6978) | function endRule() {
  function reportProperty (line 7304) | function reportProperty(name, display, msg) {
  function startRule (line 7312) | function startRule() {
  function endRule (line 7316) | function endRule() {
  function startRule (line 7426) | function startRule() {
  function startPage (line 7699) | function startPage() {
  function startRule (line 7846) | function startRule(event) {
  function endRule (line 7860) | function endRule() {
  function startRule (line 8073) | function startRule(event) {
  function startRule (line 8135) | function startRule() {
  function endRule (line 8138) | function endRule(event) {
  function startRule (line 8205) | function startRule() {
  function endRule (line 8209) | function endRule() {
  function startRule (line 8403) | function startRule() {
  function endRule (line 8407) | function endRule() {

FILE: publishable/assets/js/ace/libs/worker-html.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 399) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 403) | function positionInDocument(docLines, position) {
  function validateDelta (line 407) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 828) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 832) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function s (line 1326) | function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&re...
  function isScopeMarker (line 1328) | function isScopeMarker(node) {
  function isListItemScopeMarker (line 1353) | function isListItemScopeMarker(node) {
  function isTableScopeMarker (line 1359) | function isTableScopeMarker(node) {
  function isTableBodyScopeMarker (line 1364) | function isTableBodyScopeMarker(node) {
  function isTableRowScopeMarker (line 1371) | function isTableRowScopeMarker(node) {
  function isButtonScopeMarker (line 1376) | function isButtonScopeMarker(node) {
  function isSelectScopeMarker (line 1381) | function isSelectScopeMarker(node) {
  function ElementStack (line 1385) | function ElementStack() {
  function isAlphaNumeric (line 1528) | function isAlphaNumeric(c) {
  function isHexDigit (line 1532) | function isHexDigit(c) {
  function isDecimalDigit (line 1536) | function isDecimalDigit(c) {
  function InputStream (line 1700) | function InputStream() {
  function StackItem (line 1914) | function StackItem(namespaceURI, localName, attributes, node) {
  function getAttribute (line 1952) | function getAttribute(item, name) {
  function isWhitespace (line 1997) | function isWhitespace(c){
  function isAlpha (line 2001) | function isAlpha(c) {
  function Tokenizer (line 2004) | function Tokenizer(tokenHandler) {
  function data_state (line 2071) | function data_state(buffer) {
  function character_reference_in_data_state (line 2091) | function character_reference_in_data_state(buffer) {
  function rcdata_state (line 2098) | function rcdata_state(buffer) {
  function character_reference_in_rcdata_state (line 2119) | function character_reference_in_rcdata_state(buffer) {
  function rawtext_state (line 2126) | function rawtext_state(buffer) {
  function plaintext_state (line 2144) | function plaintext_state(buffer) {
  function script_data_state (line 2161) | function script_data_state(buffer) {
  function rcdata_less_than_sign_state (line 2179) | function rcdata_less_than_sign_state(buffer) {
  function rcdata_end_tag_open_state (line 2192) | function rcdata_end_tag_open_state(buffer) {
  function rcdata_end_tag_name_state (line 2205) | function rcdata_end_tag_name_state(buffer) {
  function rawtext_less_than_sign_state (line 2229) | function rawtext_less_than_sign_state(buffer) {
  function rawtext_end_tag_open_state (line 2242) | function rawtext_end_tag_open_state(buffer) {
  function rawtext_end_tag_name_state (line 2255) | function rawtext_end_tag_name_state(buffer) {
  function script_data_less_than_sign_state (line 2279) | function script_data_less_than_sign_state(buffer) {
  function script_data_end_tag_open_state (line 2295) | function script_data_end_tag_open_state(buffer) {
  function script_data_end_tag_name_state (line 2308) | function script_data_end_tag_name_state(buffer) {
  function script_data_escape_start_state (line 2331) | function script_data_escape_start_state(buffer) {
  function script_data_escape_start_dash_state (line 2343) | function script_data_escape_start_dash_state(buffer) {
  function script_data_escaped_state (line 2355) | function script_data_escaped_state(buffer) {
  function script_data_escaped_dash_state (line 2376) | function script_data_escaped_dash_state(buffer) {
  function script_data_escaped_dash_dash_state (line 2397) | function script_data_escaped_dash_dash_state(buffer) {
  function script_data_escaped_less_then_sign_state (line 2419) | function script_data_escaped_less_then_sign_state(buffer) {
  function script_data_escaped_end_tag_open_state (line 2436) | function script_data_escaped_end_tag_open_state(buffer) {
  function script_data_escaped_end_tag_name_state (line 2449) | function script_data_escaped_end_tag_name_state(buffer) {
  function script_data_double_escape_start_state (line 2473) | function script_data_double_escape_start_state(buffer) {
  function script_data_double_escaped_state (line 2492) | function script_data_double_escaped_state(buffer) {
  function script_data_double_escaped_dash_state (line 2515) | function script_data_double_escaped_dash_state(buffer) {
  function script_data_double_escaped_dash_dash_state (line 2538) | function script_data_double_escaped_dash_dash_state(buffer) {
  function script_data_double_escaped_less_than_sign_state (line 2564) | function script_data_double_escaped_less_than_sign_state(buffer) {
  function script_data_double_escape_end_state (line 2577) | function script_data_double_escape_end_state(buffer) {
  function tag_open_state (line 2596) | function tag_open_state(buffer) {
  function close_tag_open_state (line 2627) | function close_tag_open_state(buffer) {
  function tag_name_state (line 2648) | function tag_name_state(buffer) {
  function before_attribute_name_state (line 2673) | function before_attribute_name_state(buffer) {
  function attribute_name_state (line 2702) | function attribute_name_state(buffer) {
  function after_attribute_name_state (line 2752) | function after_attribute_name_state(buffer) {
  function before_attribute_value_state (line 2783) | function before_attribute_value_state(buffer) {
  function attribute_value_double_quoted_state (line 2816) | function attribute_value_double_quoted_state(buffer) {
  function attribute_value_single_quoted_state (line 2838) | function attribute_value_single_quoted_state(buffer) {
  function attribute_value_unquoted_state (line 2858) | function attribute_value_unquoted_state(buffer) {
  function character_reference_in_attribute_value_state (line 2890) | function character_reference_in_attribute_value_state(buffer) {
  function after_attribute_value_state (line 2902) | function after_attribute_value_state(buffer) {
  function self_closing_tag_state (line 2923) | function self_closing_tag_state(buffer) {
  function bogus_comment_state (line 2941) | function bogus_comment_state(buffer) {
  function markup_declaration_open_state (line 2950) | function markup_declaration_open_state(buffer) {
  function cdata_section_state (line 2979) | function cdata_section_state(buffer) {
  function comment_start_state (line 2989) | function comment_start_state(buffer) {
  function comment_start_dash_state (line 3012) | function comment_start_dash_state(buffer) {
  function comment_state (line 3035) | function comment_state(buffer) {
  function comment_end_dash_state (line 3054) | function comment_end_dash_state(buffer) {
  function comment_end_state (line 3074) | function comment_end_state(buffer) {
  function comment_end_bang_state (line 3102) | function comment_end_bang_state(buffer) {
  function doctype_state (line 3122) | function doctype_state(buffer) {
  function before_doctype_name_state (line 3140) | function before_doctype_name_state(buffer) {
  function doctype_name_state (line 3163) | function doctype_name_state(buffer) {
  function after_doctype_name_state (line 3185) | function after_doctype_name_state(buffer) {
  function after_doctype_public_keyword_state (line 3235) | function after_doctype_public_keyword_state(buffer) {
  function before_doctype_public_identifier_state (line 3256) | function before_doctype_public_identifier_state(buffer) {
  function doctype_public_identifier_double_quoted_state (line 3284) | function doctype_public_identifier_double_quoted_state(buffer) {
  function doctype_public_identifier_single_quoted_state (line 3305) | function doctype_public_identifier_single_quoted_state(buffer) {
  function after_doctype_public_identifier_state (line 3326) | function after_doctype_public_identifier_state(buffer) {
  function between_doctype_public_and_system_identifiers_state (line 3355) | function between_doctype_public_and_system_identifiers_state(buffer) {
  function after_doctype_system_keyword_state (line 3381) | function after_doctype_system_keyword_state(buffer) {
  function before_doctype_system_identifier_state (line 3402) | function before_doctype_system_identifier_state(buffer) {
  function doctype_system_identifier_double_quoted_state (line 3430) | function doctype_system_identifier_double_quoted_state(buffer) {
  function doctype_system_identifier_single_quoted_state (line 3451) | function doctype_system_identifier_single_quoted_state(buffer) {
  function after_doctype_system_identifier_state (line 3472) | function after_doctype_system_identifier_state(buffer) {
  function bogus_doctype_state (line 3491) | function bogus_doctype_state(buffer) {
  function isWhitespace (line 3535) | function isWhitespace(ch) {
  function isWhitespaceOrReplacementCharacter (line 3539) | function isWhitespaceOrReplacementCharacter(ch) {
  function isAllWhitespace (line 3543) | function isAllWhitespace(characters) {
  function isAllWhitespaceOrReplacementCharacters (line 3552) | function isAllWhitespaceOrReplacementCharacters(characters) {
  function getAttribute (line 3561) | function getAttribute(node, name) {
  function CharacterBuffer (line 3571) | function CharacterBuffer(characters) {
  function TreeBuilder (line 3613) | function TreeBuilder() {
  function isActiveFormattingElement (line 5930) | function isActiveFormattingElement(el) {
  function formatMessage (line 6422) | function formatMessage(format, args) {
  function SAXParser (line 6823) | function SAXParser() {
  function SAXTreeBuilder (line 6879) | function SAXTreeBuilder() {
  function getAttribute (line 6963) | function getAttribute(node, name) {
  function Node (line 6992) | function Node(locator) {
  function ParentNode (line 7032) | function ParentNode(locator) {
  function Document (line 7137) | function Document (locator) {
  function DocumentFragment (line 7149) | function DocumentFragment() {
  function Element (line 7157) | function Element(locator, uri, localName, qName, atts, prefixMappings) {
  function Characters (line 7187) | function Characters(locator, data){
  function IgnorableWhitespace (line 7197) | function IgnorableWhitespace(locator, data) {
  function Comment (line 7207) | function Comment(locator, data) {
  function CDATA (line 7217) | function CDATA(locator) {
  function Entity (line 7229) | function Entity(name) {
  function SkippedEntity (line 7243) | function SkippedEntity(name) {
  function ProcessingInstruction (line 7253) | function ProcessingInstruction(target, data) {
  function DTD (line 7266) | function DTD(name, publicIdentifier, systemIdentifier) {
  function TreeParser (line 7287) | function TreeParser(contentHandler, lexicalHandler){
  function NullLexicalHandler (line 7411) | function NullLexicalHandler() {
  function replacer (line 9706) | function replacer(key, value) {
  function truncate (line 9719) | function truncate(s, n) {
  function getMessage (line 9727) | function getMessage(self) {
  function fail (line 9733) | function fail(actual, expected, message, operator, stackStartFunction) {
  function ok (line 9744) | function ok(value, message) {
  function _deepEqual (line 9765) | function _deepEqual(actual, expected) {
  function isArguments (line 9792) | function isArguments(object) {
  function objEquiv (line 9796) | function objEquiv(a, b) {
  function expectedException (line 9848) | function expectedException(actual, expected) {
  function _throws (line 9864) | function _throws(shouldThrow, block, expected, message) {
  function deprecated (line 9976) | function deprecated() {
  function inspect (line 10013) | function inspect(obj, opts) {
  function stylizeWithColor (line 10060) | function stylizeWithColor(str, styleType) {
  function stylizeNoColor (line 10072) | function stylizeNoColor(str, styleType) {
  function arrayToHash (line 10077) | function arrayToHash(array) {
  function formatValue (line 10088) | function formatValue(ctx, value, recurseTimes) {
  function formatPrimitive (line 10178) | function formatPrimitive(ctx, value) {
  function formatError (line 10196) | function formatError(value) {
  function formatArray (line 10201) | function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
  function formatProperty (line 10221) | function formatProperty(ctx, value, recurseTimes, visibleKeys, key, arra...
  function reduceToSingleString (line 10280) | function reduceToSingleString(output, base, braces) {
  function isArray (line 10299) | function isArray(ar) {
  function isBoolean (line 10304) | function isBoolean(arg) {
  function isNull (line 10309) | function isNull(arg) {
  function isNullOrUndefined (line 10314) | function isNullOrUndefined(arg) {
  function isNumber (line 10319) | function isNumber(arg) {
  function isString (line 10324) | function isString(arg) {
  function isSymbol (line 10329) | function isSymbol(arg) {
  function isUndefined (line 10334) | function isUndefined(arg) {
  function isRegExp (line 10339) | function isRegExp(re) {
  function isObject (line 10344) | function isObject(arg) {
  function isDate (line 10349) | function isDate(d) {
  function isError (line 10354) | function isError(e) {
  function isFunction (line 10360) | function isFunction(arg) {
  function isPrimitive (line 10365) | function isPrimitive(arg) {
  function objectToString (line 10377) | function objectToString(o) {
  function pad (line 10382) | function pad(n) {
  function timestamp (line 10389) | function timestamp() {
  function hasOwnProperty (line 10412) | function hasOwnProperty(obj, prop) {
  function EventEmitter (line 10421) | function EventEmitter() {
  function g (line 10542) | function g() {
  function isFunction (line 10658) | function isFunction(arg) {
  function isNumber (line 10662) | function isNumber(arg) {
  function isObject (line 10666) | function isObject(arg) {
  function isUndefined (line 10670) | function isUndefined(arg) {
  function noop (line 10745) | function noop() {}

FILE: publishable/assets/js/ace/libs/worker-javascript.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function newRequire (line 1328) | function newRequire(name, jumped){
  function log (line 1429) | function log() {}
  function info (line 1431) | function info() {
  function warn (line 1435) | function warn() {
  function error (line 1439) | function error() {
  function time (line 1443) | function time(label) {
  function timeEnd (line 1447) | function timeEnd(label) {
  function trace (line 1457) | function trace() {
  function dir (line 1464) | function dir(object) {
  function consoleAssert (line 1468) | function consoleAssert(expression) {
  function now (line 1479) | function now() {
  function addMapEntry (line 1540) | function addMapEntry(map, pair) {
  function addSetEntry (line 1544) | function addSetEntry(set, value) {
  function arrayEach (line 1548) | function arrayEach(array, iteratee) {
  function arrayPush (line 1559) | function arrayPush(array, values) {
  function arrayReduce (line 1569) | function arrayReduce(array, iteratee, accumulator, initAccum) {
  function baseTimes (line 1581) | function baseTimes(n, iteratee) {
  function getValue (line 1590) | function getValue(object, key) {
  function isHostObject (line 1593) | function isHostObject(value) {
  function mapToArray (line 1602) | function mapToArray(map) {
  function overArg (line 1611) | function overArg(func, transform) {
  function setToArray (line 1616) | function setToArray(set) {
  function Hash (line 1663) | function Hash(entries) {
  function hashClear (line 1673) | function hashClear() {
  function hashDelete (line 1676) | function hashDelete(key) {
  function hashGet (line 1679) | function hashGet(key) {
  function hashHas (line 1687) | function hashHas(key) {
  function hashSet (line 1691) | function hashSet(key, value) {
  function ListCache (line 1701) | function ListCache(entries) {
  function listCacheClear (line 1711) | function listCacheClear() {
  function listCacheDelete (line 1714) | function listCacheDelete(key) {
  function listCacheGet (line 1729) | function listCacheGet(key) {
  function listCacheHas (line 1735) | function listCacheHas(key) {
  function listCacheSet (line 1738) | function listCacheSet(key, value) {
  function MapCache (line 1754) | function MapCache(entries) {
  function mapCacheClear (line 1764) | function mapCacheClear() {
  function mapCacheDelete (line 1771) | function mapCacheDelete(key) {
  function mapCacheGet (line 1774) | function mapCacheGet(key) {
  function mapCacheHas (line 1777) | function mapCacheHas(key) {
  function mapCacheSet (line 1780) | function mapCacheSet(key, value) {
  function Stack (line 1789) | function Stack(entries) {
  function stackClear (line 1792) | function stackClear() {
  function stackDelete (line 1795) | function stackDelete(key) {
  function stackGet (line 1798) | function stackGet(key) {
  function stackHas (line 1801) | function stackHas(key) {
  function stackSet (line 1804) | function stackSet(key, value) {
  function arrayLikeKeys (line 1822) | function arrayLikeKeys(value, inherited) {
  function assignValue (line 1838) | function assignValue(object, key, value) {
  function assocIndexOf (line 1845) | function assocIndexOf(array, key) {
  function baseAssign (line 1854) | function baseAssign(object, source) {
  function baseClone (line 1857) | function baseClone(value, isDeep, isFull, customizer, key, object, stack) {
  function baseCreate (line 1915) | function baseCreate(proto) {
  function baseGetAllKeys (line 1918) | function baseGetAllKeys(object, keysFunc, symbolsFunc) {
  function baseGetTag (line 1922) | function baseGetTag(value) {
  function baseIsNative (line 1925) | function baseIsNative(value) {
  function baseKeys (line 1932) | function baseKeys(object) {
  function cloneBuffer (line 1944) | function cloneBuffer(buffer, isDeep) {
  function cloneArrayBuffer (line 1952) | function cloneArrayBuffer(arrayBuffer) {
  function cloneDataView (line 1957) | function cloneDataView(dataView, isDeep) {
  function cloneMap (line 1961) | function cloneMap(map, isDeep, cloneFunc) {
  function cloneRegExp (line 1965) | function cloneRegExp(regexp) {
  function cloneSet (line 1970) | function cloneSet(set, isDeep, cloneFunc) {
  function cloneSymbol (line 1974) | function cloneSymbol(symbol) {
  function cloneTypedArray (line 1977) | function cloneTypedArray(typedArray, isDeep) {
  function copyArray (line 1981) | function copyArray(source, array) {
  function copyObject (line 1991) | function copyObject(source, props, object, customizer) {
  function copySymbols (line 2008) | function copySymbols(source, object) {
  function getAllKeys (line 2011) | function getAllKeys(object) {
  function getMapData (line 2014) | function getMapData(map, key) {
  function getNative (line 2020) | function getNative(object, key) {
  function initCloneArray (line 2048) | function initCloneArray(array) {
  function initCloneObject (line 2057) | function initCloneObject(object) {
  function initCloneByTag (line 2062) | function initCloneByTag(object, tag, cloneFunc, isDeep) {
  function isIndex (line 2097) | function isIndex(value, length) {
  function isKeyable (line 2103) | function isKeyable(value) {
  function isMasked (line 2109) | function isMasked(func) {
  function isPrototype (line 2112) | function isPrototype(value) {
  function toSource (line 2118) | function toSource(func) {
  function clone (line 2129) | function clone(value) {
  function eq (line 2132) | function eq(value, other) {
  function isArguments (line 2135) | function isArguments(value) {
  function isArrayLike (line 2140) | function isArrayLike(value) {
  function isArrayLikeObject (line 2143) | function isArrayLikeObject(value) {
  function isFunction (line 2147) | function isFunction(value) {
  function isLength (line 2151) | function isLength(value) {
  function isObject (line 2155) | function isObject(value) {
  function isObjectLike (line 2159) | function isObjectLike(value) {
  function keys (line 2162) | function keys(object) {
  function stubArray (line 2165) | function stubArray() {
  function stubFalse (line 2168) | function stubFalse() {
  function baseSlice (line 2191) | function baseSlice(array, start, end) {
  function isIndex (line 2211) | function isIndex(value, length) {
  function isIterateeCall (line 2217) | function isIterateeCall(value, index, object) {
  function slice (line 2230) | function slice(array, start, end) {
  function eq (line 2245) | function eq(value, other) {
  function isArrayLike (line 2248) | function isArrayLike(value) {
  function isFunction (line 2251) | function isFunction(value) {
  function isLength (line 2255) | function isLength(value) {
  function isObject (line 2259) | function isObject(value) {
  function isObjectLike (line 2263) | function isObjectLike(value) {
  function isSymbol (line 2266) | function isSymbol(value) {
  function toFinite (line 2270) | function toFinite(value) {
  function toInteger (line 2281) | function toInteger(value) {
  function toNumber (line 2287) | function toNumber(value) {
  function restArguments (line 2344) | function restArguments(func, startIndex) {
  function isObject (line 2366) | function isObject(obj) {
  function isNull (line 2370) | function isNull(obj) {
  function isUndefined (line 2373) | function isUndefined(obj) {
  function isBoolean (line 2376) | function isBoolean(obj) {
  function isElement (line 2379) | function isElement(obj) {
  function tagTester (line 2382) | function tagTester(name) {
  function ie10IsDataView (line 2420) | function ie10IsDataView(obj) {
  function has$1 (line 2426) | function has$1(obj, key) {
  function isFinite$1 (line 2440) | function isFinite$1(obj) {
  function isNaN$1 (line 2443) | function isNaN$1(obj) {
  function constant (line 2446) | function constant(value) {
  function createSizePropertyCheck (line 2451) | function createSizePropertyCheck(getSizeProperty) {
  function shallowProperty (line 2457) | function shallowProperty(key) {
  function isTypedArray (line 2465) | function isTypedArray(obj) {
  function emulatedSet (line 2472) | function emulatedSet(keys) {
  function collectNonEnumProps (line 2483) | function collectNonEnumProps(obj, keys) {
  function keys (line 2498) | function keys(obj) {
  function isEmpty (line 2506) | function isEmpty(obj) {
  function isMatch (line 2514) | function isMatch(object, attrs) {
  function _$1 (line 2524) | function _$1(obj) {
  function toBufferView (line 2539) | function toBufferView(bufferSource) {
  function eq (line 2547) | function eq(a, b, aStack, bStack) {
  function deepEq (line 2555) | function deepEq(a, b, aStack, bStack) {
  function isEqual (line 2624) | function isEqual(a, b) {
  function allKeys (line 2627) | function allKeys(obj) {
  function ie11fingerprint (line 2634) | function ie11fingerprint(methods) {
  function values (line 2661) | function values(obj) {
  function pairs (line 2670) | function pairs(obj) {
  function invert (line 2679) | function invert(obj) {
  function functions (line 2687) | function functions(obj) {
  function createAssigner (line 2694) | function createAssigner(keysFunc, defaults) {
  function ctor (line 2714) | function ctor() {
  function baseCreate (line 2717) | function baseCreate(prototype) {
  function create (line 2726) | function create(prototype, props) {
  function clone (line 2731) | function clone(obj) {
  function tap (line 2735) | function tap(obj, interceptor) {
  function toPath$1 (line 2739) | function toPath$1(path) {
  function toPath (line 2743) | function toPath(path) {
  function deepGet (line 2746) | function deepGet(obj, path) {
  function get (line 2754) | function get(object, path, defaultValue) {
  function has (line 2758) | function has(obj, path) {
  function identity (line 2768) | function identity(value) {
  function matcher (line 2771) | function matcher(attrs) {
  function property (line 2777) | function property(path) {
  function optimizeCb (line 2783) | function optimizeCb(func, context, argCount) {
  function baseIteratee (line 2800) | function baseIteratee(value, context, argCount) {
  function iteratee (line 2806) | function iteratee(value, context) {
  function cb (line 2810) | function cb(value, context, argCount) {
  function mapObject (line 2814) | function mapObject(obj, iteratee, context) {
  function noop (line 2825) | function noop(){}
  function propertyOf (line 2826) | function propertyOf(obj) {
  function times (line 2832) | function times(n, iteratee, context) {
  function random (line 2838) | function random(min, max) {
  function createEscaper (line 2848) | function createEscaper(map) {
  function escapeChar (line 2888) | function escapeChar(match) {
  function template (line 2892) | function template(text, settings, oldSettings) {
  function result (line 2946) | function result(obj, path, fallback) {
  function uniqueId (line 2963) | function uniqueId(prefix) {
  function chain (line 2967) | function chain(obj) {
  function executeBound (line 2972) | function executeBound(sourceFunc, boundFunc, context, callingContext, ar...
  function flatten$1 (line 3002) | function flatten$1(input, depth, strict, output) {
  function memoize (line 3036) | function memoize(func, hasher) {
  function throttle (line 3052) | function throttle(func, wait, options) {
  function debounce (line 3092) | function debounce(func, wait, immediate) {
  function wrap (line 3124) | function wrap(func, wrapper) {
  function negate (line 3127) | function negate(predicate) {
  function compose (line 3132) | function compose() {
  function after (line 3142) | function after(times, func) {
  function before (line 3149) | function before(times, func) {
  function findKey (line 3160) | function findKey(obj, predicate, context) {
  function createPredicateIndexFinder (line 3168) | function createPredicateIndexFinder(dir) {
  function sortedIndex (line 3181) | function sortedIndex(array, obj, iteratee, context) {
  function createIndexFinder (line 3191) | function createIndexFinder(dir, predicateFind, sortedIndex) {
  function find (line 3216) | function find(obj, predicate, context) {
  function findWhere (line 3221) | function findWhere(obj, attrs) {
  function each (line 3224) | function each(obj, iteratee, context) {
  function map (line 3239) | function map(obj, iteratee, context) {
  function createReduce (line 3250) | function createReduce(dir) {
  function filter (line 3273) | function filter(obj, predicate, context) {
  function reject (line 3281) | function reject(obj, predicate, context) {
  function every (line 3284) | function every(obj, predicate, context) {
  function some (line 3294) | function some(obj, predicate, context) {
  function contains (line 3304) | function contains(obj, item, fromIndex, guard) {
  function pluck (line 3330) | function pluck(obj, key) {
  function where (line 3333) | function where(obj, attrs) {
  function max (line 3336) | function max(obj, iteratee, context) {
  function min (line 3359) | function min(obj, iteratee, context) {
  function toArray (line 3383) | function toArray(obj) {
  function sample (line 3392) | function sample(obj, n, guard) {
  function shuffle (line 3409) | function shuffle(obj) {
  function sortBy (line 3412) | function sortBy(obj, iteratee, context) {
  function group (line 3431) | function group(behavior, partition) {
  function size (line 3454) | function size(obj) {
  function keyInObj (line 3458) | function keyInObj(value, key, obj) {
  function initial (line 3492) | function initial(array, n, guard) {
  function first (line 3495) | function first(array, n, guard) {
  function rest (line 3500) | function rest(array, n, guard) {
  function last (line 3503) | function last(array, n, guard) {
  function compact (line 3508) | function compact(array) {
  function flatten (line 3511) | function flatten(array, depth) {
  function uniq (line 3523) | function uniq(array, isSorted, iteratee, context) {
  function intersection (line 3552) | function intersection(array) {
  function unzip (line 3566) | function unzip(array) {
  function object (line 3576) | function object(list, values) {
  function range (line 3587) | function range(start, stop, step) {
  function chunk (line 3605) | function chunk(array, count) {
  function chainResult (line 3614) | function chainResult(instance, obj) {
  function mixin (line 3617) | function mixin(obj) {
  function checkOption (line 3859) | function checkOption(name, isStable, t) {
  function isString (line 3886) | function isString(obj) {
  function isIdentifier (line 3890) | function isIdentifier(tkn, value) {
  function isReserved (line 3899) | function isReserved(context, token) {
  function supplant (line 3935) | function supplant(str, data) {
  function combine (line 3942) | function combine(dest, src) {
  function processenforceall (line 3949) | function processenforceall() {
  function applyOptions (line 3964) | function applyOptions() {
  function quit (line 4087) | function quit(code, token, a, b) {
  function removeIgnoredMessages (line 4108) | function removeIgnoredMessages() {
  function warning (line 4115) | function warning(code, t, a, b, c, d) {
  function warningAt (line 4163) | function warningAt(m, l, ch, a, b, c, d) {
  function error (line 4170) | function error(m, t, a, b, c, d) {
  function errorAt (line 4174) | function errorAt(m, l, ch, a, b, c, d) {
  function addEvalCode (line 4180) | function addEvalCode(elem, token) {
  function lintingDirective (line 4188) | function lintingDirective(directiveToken, previous) {
  function peek (line 4479) | function peek(p) {
  function peekIgnoreEOL (line 4503) | function peekIgnoreEOL() {
  function advance (line 4511) | function advance(expected, relatedToken) {
  function isOperator (line 4553) | function isOperator(token) {
  function isEndOfExpr (line 4557) | function isEndOfExpr(context, curr, next) {
  function expression (line 4578) | function expression(context, rbp) {
  function sameLine (line 4644) | function sameLine(first, second) {
  function nobreaknonadjacent (line 4648) | function nobreaknonadjacent(left, right) {
  function nolinebreak (line 4654) | function nolinebreak(t) {
  function checkComma (line 4659) | function checkComma(opts) {
  function symbol (line 4717) | function symbol(s, p) {
  function delim (line 4729) | function delim(s) {
  function stmt (line 4734) | function stmt(s, f) {
  function blockstmt (line 4740) | function blockstmt(s, f) {
  function reserveName (line 4745) | function reserveName(x) {
  function prefix (line 4752) | function prefix(s, f) {
  function type (line 4775) | function type(s, f) {
  function reserve (line 4781) | function reserve(name, func) {
  function FutureReservedWord (line 4787) | function FutureReservedWord(name, meta) {
  function infix (line 4800) | function infix(s, f, p, w) {
  function application (line 4821) | function application(s) {
  function relation (line 4834) | function relation(s, f) {
  function beginsUnaryExpression (line 4865) | function beginsUnaryExpression(token) {
  function isTypoTypeof (line 4879) | function isTypoTypeof(left, right, state) {
  function isGlobalEval (line 4904) | function isGlobalEval(left, state) {
  function findNativePrototype (line 4921) | function findNativePrototype(left) {
  function checkLeftSideAssign (line 4950) | function checkLeftSideAssign(context, left, assignToken, options) {
  function assignop (line 5011) | function assignop(s, f) {
  function bitwise (line 5027) | function bitwise(s, f, p) {
  function bitwiseassignop (line 5041) | function bitwiseassignop(s) {
  function suffix (line 5055) | function suffix(s) {
  function optionalidentifier (line 5070) | function optionalidentifier(context, isName, preserve) {
  function spreadrest (line 5087) | function spreadrest(operation) {
  function identifier (line 5106) | function identifier(context, isName) {
  function reachable (line 5117) | function reachable(controlToken) {
  function parseFinalSemicolon (line 5155) | function parseFinalSemicolon(stmt) {
  function statement (line 5174) | function statement(context) {
  function statements (line 5242) | function statements(context) {
  function directives (line 5260) | function directives() {
  function block (line 5289) | function block(context, ordinary, stmt, isfunc, isfatarrow, iscase) {
  function countMember (line 5422) | function countMember(m) {
  function classBody (line 6005) | function classBody(classToken, context) {
  function doMethod (line 6128) | function doMethod(classToken, context, name, generator) {
  function isTypicalCallExpression (line 6220) | function isTypicalCallExpression(token) {
  function peekThroughParens (line 6312) | function peekThroughParens(parens) {
  function comprehensiveArrayExpression (line 6457) | function comprehensiveArrayExpression(context) {
  function isMethod (line 6575) | function isMethod() {
  function propertyName (line 6578) | function propertyName(context) {
  function functionparams (line 6597) | function functionparams(context, options) {
  function functor (line 6696) | function functor(name, token, overwrites) {
  function hasParsedCode (line 6735) | function hasParsedCode(funct) {
  function doTemplateLiteral (line 6738) | function doTemplateLiteral(context, leftOrRbp) {
  function doFunction (line 6771) | function doFunction(context, options) {
  function createMetrics (line 6883) | function createMetrics(functionStartToken) {
  function increaseComplexityCount (line 6922) | function increaseComplexityCount() {
  function checkCondAssignment (line 6926) | function checkCondAssignment(token) {
  function checkProperties (line 6951) | function checkProperties(props) {
  function metaProperty (line 6962) | function metaProperty(context, name, c) {
  function destructuringPattern (line 7137) | function destructuringPattern(context, options) {
  function destructuringPatternRecursive (line 7150) | function destructuringPatternRecursive(context, options) {
  function destructuringPatternMatch (line 7302) | function destructuringPatternMatch(tokens, value) {
  function blockVariableStatement (line 7319) | function blockVariableStatement(type, statement, context) {
  function isMozillaLet (line 7424) | function isMozillaLet() {
  function catchParameter (line 7686) | function catchParameter() {
  function supportsSuper (line 8635) | function supportsSuper(type, funct) {
  function saveProperty (line 8740) | function saveProperty(props, name, tkn, isClass, isStatic, isComputed) {
  function saveAccessor (line 8760) | function saveAccessor(accessorType, props, name, tkn, isClass, isStatic) {
  function computedPropertyName (line 8791) | function computedPropertyName(context) {
  function checkPunctuators (line 8803) | function checkPunctuators(token, values) {
  function checkPunctuator (line 8809) | function checkPunctuator(token, value) {
  function destructuringAssignOrJsonValue (line 8812) | function destructuringAssignOrJsonValue(context) {
  function declare (line 8833) | function declare(v) {
  function use (line 8842) | function use(v) {
  function jsonValue (line 8908) | function jsonValue() {
  function lintEvalCode (line 8990) | function lintEvalCode(internals, options, globals) {
  function each (line 9034) | function each(obj, cb) {
  method isJSON (line 9115) | get isJSON() {
  function isHex (line 9368) | function isHex(str) {
  function isHexDigit (line 9372) | function isHexDigit(str) {
  function asyncTrigger (line 9376) | function asyncTrigger() {
  function Lexer (line 9393) | function Lexer(source) {
  function commentToken (line 9632) | function commentToken(label, body, opt) {
  function isNonAsciiIdentifierStart (line 9804) | function isNonAsciiIdentifierStart(code) {
  function isNonAsciiIdentifierPart (line 9808) | function isNonAsciiIdentifierPart(code) {
  function removeEscapeSequences (line 9887) | function removeEscapeSequences(id) {
  function isDecimalDigit (line 9946) | function isDecimalDigit(str) {
  function isOctalDigit (line 9950) | function isOctalDigit(str) {
  function isNonOctalDigit (line 9954) | function isNonOctalDigit(str) {
  function isBinaryDigit (line 9958) | function isBinaryDigit(str) {
  function isIdentifierStart (line 9962) | function isIdentifierStart(ch) {
  function NameStack (line 11566) | function NameStack() {
  function _newScope (line 11817) | function _newScope(type) {
  function warning (line 11840) | function warning(code, token) {
  function error (line 11848) | function error(code, token) {
  function _setupUsages (line 11856) | function _setupUsages(bindingName) {
  function _checkForUnused (line 11904) | function _checkForUnused() {
  function _getBinding (line 11936) | function _getBinding(bindingName) {
  function usedSoFarInCurrentFunction (line 11944) | function usedSoFarInCurrentFunction(bindingName) {
  function _checkOuterShadow (line 11957) | function _checkOuterShadow(bindingName, token) {
  function _latedefWarning (line 11981) | function _latedefWarning(type, bindingName, token) {
  function replacer (line 14099) | function replacer(key, value) {
  function truncate (line 14112) | function truncate(s, n) {
  function getMessage (line 14120) | function getMessage(self) {
  function fail (line 14126) | function fail(actual, expected, message, operator, stackStartFunction) {
  function ok (line 14137) | function ok(value, message) {
  function _deepEqual (line 14158) | function _deepEqual(actual, expected) {
  function isArguments (line 14185) | function isArguments(object) {
  function objEquiv (line 14189) | function objEquiv(a, b) {
  function expectedException (line 14241) | function expectedException(actual, expected) {
  function _throws (line 14257) | function _throws(shouldThrow, block, expected, message) {
  function deprecated (line 14388) | function deprecated() {
  function inspect (line 14425) | function inspect(obj, opts) {
  function stylizeWithColor (line 14472) | function stylizeWithColor(str, styleType) {
  function stylizeNoColor (line 14484) | function stylizeNoColor(str, styleType) {
  function arrayToHash (line 14489) | function arrayToHash(array) {
  function formatValue (line 14500) | function formatValue(ctx, value, recurseTimes) {
  function formatPrimitive (line 14590) | function formatPrimitive(ctx, value) {
  function formatError (line 14608) | function formatError(value) {
  function formatArray (line 14613) | function formatArray(ctx, value, recurseTimes, visibleKeys, keys) {
  function formatProperty (line 14633) | function formatProperty(ctx, value, recurseTimes, visibleKeys, key, arra...
  function reduceToSingleString (line 14692) | function reduceToSingleString(output, base, braces) {
  function isArray (line 14711) | function isArray(ar) {
  function isBoolean (line 14716) | function isBoolean(arg) {
  function isNull (line 14721) | function isNull(arg) {
  function isNullOrUndefined (line 14726) | function isNullOrUndefined(arg) {
  function isNumber (line 14731) | function isNumber(arg) {
  function isString (line 14736) | function isString(arg) {
  function isSymbol (line 14741) | function isSymbol(arg) {
  function isUndefined (line 14746) | function isUndefined(arg) {
  function isRegExp (line 14751) | function isRegExp(re) {
  function isObject (line 14756) | function isObject(arg) {
  function isDate (line 14761) | function isDate(d) {
  function isError (line 14766) | function isError(e) {
  function isFunction (line 14772) | function isFunction(arg) {
  function isPrimitive (line 14777) | function isPrimitive(arg) {
  function objectToString (line 14789) | function objectToString(o) {
  function pad (line 14794) | function pad(n) {
  function timestamp (line 14801) | function timestamp() {
  function hasOwnProperty (line 14824) | function hasOwnProperty(obj, prop) {
  function EventEmitter (line 14831) | function EventEmitter() {
  function g (line 14952) | function g() {
  function isFunction (line 15068) | function isFunction(arg) {
  function isNumber (line 15072) | function isNumber(arg) {
  function isObject (line 15076) | function isObject(arg) {
  function isUndefined (line 15080) | function isUndefined(arg) {
  function defaultSetTimout (line 15090) | function defaultSetTimout() {
  function defaultClearTimeout (line 15093) | function defaultClearTimeout () {
  function runTimeout (line 15116) | function runTimeout(fun) {
  function runClearTimeout (line 15136) | function runClearTimeout(marker) {
  function cleanUpNextTick (line 15162) | function cleanUpNextTick() {
  function drainQueue (line 15177) | function drainQueue() {
  function Item (line 15213) | function Item(fun, array) {
  function noop (line 15227) | function noop() {}
  function startRegex (line 15268) | function startRegex(arr) {

FILE: publishable/assets/js/ace/libs/worker-json.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {

FILE: publishable/assets/js/ace/libs/worker-lua.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function encodeUTF8 (line 1349) | function encodeUTF8(codepoint, highMask) {
  function toHex (line 1377) | function toHex(num, digits) {
  function checkChars (line 1384) | function checkChars(rx) {
  function finishNode (line 1721) | function finishNode(node) {
  function indexOfObject (line 1746) | function indexOfObject(array, property, element) {
  function sprintf (line 1753) | function sprintf(format) {
  function fixupError (line 1780) | function fixupError(e) {
  function raise (line 1790) | function raise(token) {
  function tokenValue (line 1810) | function tokenValue(token) {
  function raiseUnexpectedToken (line 1817) | function raiseUnexpectedToken(type, token) {
  function unexpected (line 1821) | function unexpected(found) {
  function lex (line 1853) | function lex() {
  function consumeEOL (line 1937) | function consumeEOL() {
  function skipWhiteSpace (line 1952) | function skipWhiteSpace() {
  function scanIdentifierOrKeyword (line 1963) | function scanIdentifierOrKeyword() {
  function scanPunctuator (line 1988) | function scanPunctuator(value) {
  function scanVarargLiteral (line 1999) | function scanVarargLiteral() {
  function scanStringLiteral (line 2010) | function scanStringLiteral() {
  function scanLongStringLiteral (line 2052) | function scanLongStringLiteral() {
  function scanNumericLiteral (line 2069) | function scanNumericLiteral() {
  function readImaginaryUnitSuffix (line 2092) | function readImaginaryUnitSuffix() {
  function readInt64Suffix (line 2102) | function readInt64Suffix() {
  function readHexLiteral (line 2129) | function readHexLiteral() {
  function readDecLiteral (line 2173) | function readDecLiteral() {
  function readUnicodeEscapeSequence (line 2198) | function readUnicodeEscapeSequence() {
  function readEscapeSequence (line 2232) | function readEscapeSequence() {
  function scanComment (line 2291) | function scanComment() {
  function readLongString (line 2331) | function readLongString(isComment) {
  function next (line 2369) | function next() {
  function consume (line 2375) | function consume(value) {
  function expect (line 2383) | function expect(value) {
  function isWhiteSpace (line 2388) | function isWhiteSpace(charCode) {
  function isLineTerminator (line 2392) | function isLineTerminator(charCode) {
  function isDecDigit (line 2396) | function isDecDigit(charCode) {
  function isHexDigit (line 2400) | function isHexDigit(charCode) {
  function isIdentifierStart (line 2404) | function isIdentifierStart(charCode) {
  function isIdentifierPart (line 2412) | function isIdentifierPart(charCode) {
  function isKeyword (line 2420) | function isKeyword(id) {
  function isUnary (line 2442) | function isUnary(token) {
  function isBlockFollow (line 2448) | function isBlockFollow(token) {
  function createScope (line 2462) | function createScope() {
  function destroyScope (line 2467) | function destroyScope() {
  function scopeIdentifierName (line 2472) | function scopeIdentifierName(name) {
  function scopeIdentifier (line 2477) | function scopeIdentifier(node) {
  function attachScope (line 2481) | function attachScope(node, isLocal) {
  function scopeHasName (line 2487) | function scopeHasName(name) {
  function createLocationMarker (line 2494) | function createLocationMarker() {
  function Marker (line 2498) | function Marker(token) {
  function markLocation (line 2544) | function markLocation() {
  function pushLocation (line 2547) | function pushLocation(marker) {
  function FullFlowContext (line 2551) | function FullFlowContext() {
  function LoopFlowContext (line 2654) | function LoopFlowContext() {
  function makeFlowContext (line 2687) | function makeFlowContext() {
  function parseChunk (line 2691) | function parseChunk() {
  function parseBlock (line 2706) | function parseBlock(flowContext) {
  function parseStatement (line 2722) | function parseStatement(flowContext) {
  function parseLabelStatement (line 2767) | function parseLabelStatement(flowContext) {
  function parseBreakStatement (line 2782) | function parseBreakStatement() {
  function parseGotoStatement (line 2786) | function parseGotoStatement(flowContext) {
  function parseDoStatement (line 2795) | function parseDoStatement(flowContext) {
  function parseWhileStatement (line 2805) | function parseWhileStatement(flowContext) {
  function parseRepeatStatement (line 2817) | function parseRepeatStatement(flowContext) {
  function parseReturnStatement (line 2829) | function parseReturnStatement(flowContext) {
  function parseIfStatement (line 2844) | function parseIfStatement(flowContext) {
  function parseForStatement (line 2893) | function parseForStatement(flowContext) {
  function parseLocalStatement (line 2941) | function parseLocalStatement(flowContext) {
  function parseAssignmentOrCallStatement (line 2984) | function parseAssignmentOrCallStatement(flowContext) {
  function parseIdentifier (line 3062) | function parseIdentifier() {
  function parseFunctionDeclaration (line 3070) | function parseFunctionDeclaration(name, isLocal) {
  function parseFunctionName (line 3106) | function parseFunctionName() {
  function parseTableConstructor (line 3133) | function parseTableConstructor(flowContext) {
  function parseExpression (line 3172) | function parseExpression(flowContext) {
  function parseExpectedExpression (line 3177) | function parseExpectedExpression(flowContext) {
  function binaryPrecedence (line 3183) | function binaryPrecedence(operator) {
  function parseSubExpression (line 3211) | function parseSubExpression(minPrecedence, flowContext) {
  function parsePrefixExpressionPart (line 3250) | function parsePrefixExpressionPart(base, marker, flowContext) {
  function parsePrefixExpression (line 3285) | function parsePrefixExpression(flowContext) {
  function parseCallExpression (line 3309) | function parseCallExpression(base, flowContext) {
  function parsePrimaryExpression (line 3342) | function parsePrimaryExpression(flowContext) {
  function parse (line 3406) | function parse(_input, _options) {
  function write (line 3444) | function write(_input) {
  function end (line 3451) | function end(_input) {

FILE: publishable/assets/js/ace/libs/worker-php.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {

FILE: publishable/assets/js/ace/libs/worker-xml.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 399) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 403) | function positionInDocument(docLines, position) {
  function validateDelta (line 407) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 828) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 832) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function XMLReader (line 1338) | function XMLReader(){
  function parse (line 1352) | function parse(source,defaultNSMapCopy,entityMap,domBuilder,errorHandler){
  function copyLocator (line 1486) | function copyLocator(f,t){
  function parseElementStartPart (line 1492) | function parseElementStartPart(source,start,el,entityReplacer,errorHandl...
  function appendElement (line 1629) | function appendElement(el,domBuilder,parseStack){
  function parseHtmlSpecialContent (line 1694) | function parseHtmlSpecialContent(source,elStartEnd,tagName,entityReplace...
  function fixSelfClosed (line 1711) | function fixSelfClosed(source,elStartEnd,tagName,closeMap){
  function _copy (line 1718) | function _copy(source,target){
  function parseDCC (line 1721) | function parseDCC(source,start,domBuilder,errorHandler){//sure start wit...
  function parseInstruction (line 1769) | function parseInstruction(source,start,domBuilder){
  function ElementAttributes (line 1783) | function ElementAttributes(source){
  function _set_proto_ (line 1810) | function _set_proto_(thiz,parent){
  function p (line 1816) | function p(){}
  function split (line 1826) | function split(source,start){
  function copy (line 1843) | function copy(src,dest){
  function _extends (line 1848) | function _extends(Class,Super){
  function DOMException (line 1901) | function DOMException(code, message) {
  function NodeList (line 1916) | function NodeList() {
  function LiveNodeList (line 1924) | function LiveNodeList(node,refresh){
  function _updateLiveList (line 1929) | function _updateLiveList(list){
  function NamedNodeMap (line 1944) | function NamedNodeMap() {
  function _findNodeIndex (line 1947) | function _findNodeIndex(list,node){
  function _addNamedNode (line 1954) | function _addNamedNode(el,list,newAttr,oldAttr){
  function _removeNamedNode (line 1969) | function _removeNamedNode(el,list,attr){
  function DOMImplementation (line 2041) | function DOMImplementation(/* Object */ features) {
  function Node (line 2083) | function Node() {
  function _xmlEncoder (line 2174) | function _xmlEncoder(c){
  function _visitNode (line 2185) | function _visitNode(node,callback){
  function Document (line 2198) | function Document(){
  function _onAddAttribute (line 2200) | function _onAddAttribute(doc,el,newAttr){
  function _onRemoveAttribute (line 2207) | function _onRemoveAttribute(doc,el,newAttr,remove){
  function _onUpdateChild (line 2214) | function _onUpdateChild(doc,el,newChild){
  function _removeChild (line 2231) | function _removeChild(parentNode,child){
  function _insertBefore (line 2247) | function _insertBefore(parentNode,newChild,nextChild){
  function _appendSingleChild (line 2286) | function _appendSingleChild(parentNode,newChild){
  function Element (line 2444) | function Element() {
  function Attr (line 2533) | function Attr() {
  function CharacterData (line 2539) | function CharacterData() {
  function Text (line 2570) | function Text() {
  function Comment (line 2589) | function Comment() {
  function CDATASection (line 2597) | function CDATASection() {
  function DocumentType (line 2606) | function DocumentType() {
  function Notation (line 2611) | function Notation() {
  function Entity (line 2616) | function Entity() {
  function EntityReference (line 2621) | function EntityReference() {
  function DocumentFragment (line 2626) | function DocumentFragment() {
  function ProcessingInstruction (line 2633) | function ProcessingInstruction() {
  function XMLSerializer (line 2637) | function XMLSerializer(){}
  function serializeToString (line 2646) | function serializeToString(node,buf){
  function importNode (line 2719) | function importNode(doc,node,deep){
  function cloneNode (line 2745) | function cloneNode(doc,node,deep){
  function __set__ (line 2782) | function __set__(object,key,value){
  function getTextContent (line 2785) | function getTextContent(node){
  function DOMParser (line 2849) | function DOMParser(options){
  function buildErrorHandler (line 2879) | function buildErrorHandler(errorImpl,domBuilder,locator){
  function DOMHandler (line 2912) | function DOMHandler() {
  function position (line 2915) | function position(locator,node){
  function _locator (line 3018) | function _locator(l){
  function _toString (line 3023) | function _toString(chars,start,length){
  function appendElement (line 3036) | function appendElement (hander,node) {

FILE: publishable/assets/js/ace/libs/worker-xquery.js
  function resolveModuleId (line 82) | function resolveModuleId(id, paths) {
  function throwDeltaError (line 244) | function throwDeltaError(delta, errorText) {
  function positionInDocument (line 248) | function positionInDocument(docLines, position) {
  function validateDelta (line 252) | function validateDelta(docLines, delta) {
  function $pointsInOrder (line 673) | function $pointsInOrder(point1, point2, equalPointsInOrder) {
  function $getTransformedPoint (line 677) | function $getTransformedPoint(delta, point, moveIfEqual) {
  function newRequire (line 1328) | function newRequire(name, jumped){
  function retrievePrecedingIdentifier (line 2610) | function retrievePrecedingIdentifier(text, pos, regex) {
  function prefixBinarySearch (line 2623) | function prefixBinarySearch(items, prefix) {
  function init (line 2973) | function init(string, parsingEventHandler)
  function reset (line 2986) | function reset(l, b, e)
  function parse_EQName (line 3484) | function parse_EQName()
  function parse_FunctionName (line 3543) | function parse_FunctionName()
  function parse_NCName (line 3890) | function parse_NCName()
  function shift (line 4285) | function shift(t)
  function whitespace (line 4299) | function whitespace()
  function matchW (line 4309) | function matchW(set)
  function lookahead1W (line 4323) | function lookahead1W(set)
  function lookahead1 (line 4333) | function lookahead1(set)
  function error (line 4343) | function error(b, e, s, l, t)
  function match (line 4357) | function match(tokenSetId)
  function init (line 4796) | function init(string, parsingEventHandler)
  function reset (line 4809) | function reset(l, b, e)
  function parse_EQName (line 5307) | function parse_EQName()
  function parse_FunctionName (line 5366) | function parse_FunctionName()
  function parse_NCName (line 5713) | function parse_NCName()
  function shift (line 6108) | function shift(t)
  function whitespace (line 6122) | function whitespace()
  function matchW (line 6132) | function matchW(set)
  function lookahead1W (line 6146) | function lookahead1W(set)
  function lookahead1 (line 6156) | function lookahead1(set)
  function error (line 6166) | function error(b, e, s, l, t)
  function match (line 6180) | function match(tokenSetId)
  function createNode (line 6980) | function createNode(name) {
  function pushNode (line 6994) | function pushNode(name) { //begin
  function popNode (line 7007) | function popNode() {
  function setValue (line 7086) | function setValue(node, begin, end) {
  function init (line 7136) | function init(string, parsingEventHandler)
  function reset (line 7149) | function reset(l, b, e)
  function parse_Module (line 7210) | function parse_Module()
  function parse_VersionDecl (line 7248) | function parse_VersionDecl()
  function parse_LibraryModule (line 7278) | function parse_LibraryModule()
  function parse_ModuleDecl (line 7288) | function parse_ModuleDecl()
  function parse_Prolog (line 7307) | function parse_Prolog()
  function parse_Separator (line 7448) | function parse_Separator()
  function parse_Setter (line 7455) | function parse_Setter()
  function parse_BoundarySpaceDecl (line 7532) | function parse_BoundarySpaceDecl()
  function parse_DefaultCollationDecl (line 7550) | function parse_DefaultCollationDecl()
  function try_DefaultCollationDecl (line 7563) | function try_DefaultCollationDecl()
  function parse_BaseURIDecl (line 7574) | function parse_BaseURIDecl()
  function parse_ConstructionDecl (line 7585) | function parse_ConstructionDecl()
  function parse_OrderingModeDecl (line 7603) | function parse_OrderingModeDecl()
  function parse_EmptyOrderDecl (line 7621) | function parse_EmptyOrderDecl()
  function try_EmptyOrderDecl (line 7643) | function try_EmptyOrderDecl()
  function parse_CopyNamespacesDecl (line 7663) | function parse_CopyNamespacesDecl()
  function parse_PreserveMode (line 7680) | function parse_PreserveMode()
  function parse_InheritMode (line 7694) | function parse_InheritMode()
  function parse_DecimalFormatDecl (line 7708) | function parse_DecimalFormatDecl()
  function parse_DFPropertyName (line 7743) | function parse_DFPropertyName()
  function parse_Import (line 7781) | function parse_Import()
  function parse_SchemaImport (line 7803) | function parse_SchemaImport()
  function parse_SchemaPrefix (line 7838) | function parse_SchemaPrefix()
  function parse_ModuleImport (line 7861) | function parse_ModuleImport()
  function parse_NamespaceDecl (line 7900) | function parse_NamespaceDecl()
  function parse_DefaultNamespaceDecl (line 7916) | function parse_DefaultNamespaceDecl()
  function try_DefaultNamespaceDecl (line 7938) | function try_DefaultNamespaceDecl()
  function parse_FTOptionDecl (line 7958) | function parse_FTOptionDecl()
  function parse_AnnotatedDecl (line 7970) | function parse_AnnotatedDecl()
  function parse_CompatibilityAnnotation (line 8018) | function parse_CompatibilityAnnotation()
  function parse_Annotation (line 8025) | function parse_Annotation()
  function try_Annotation (line 8056) | function try_Annotation()
  function parse_VarDecl (line 8082) | function parse_VarDecl()
  function parse_VarValue (line 8120) | function parse_VarValue()
  function parse_VarDefaultValue (line 8127) | function parse_VarDefaultValue()
  function parse_ContextItemDecl (line 8134) | function parse_ContextItemDecl()
  function parse_ParamList (line 8173) | function parse_ParamList()
  function try_ParamList (line 8192) | function try_ParamList()
  function parse_Param (line 8208) | function parse_Param()
  function try_Param (line 8224) | function try_Param()
  function parse_FunctionBody (line 8236) | function parse_FunctionBody()
  function try_FunctionBody (line 8243) | function try_FunctionBody()
  function parse_EnclosedExpr (line 8248) | function parse_EnclosedExpr()
  function try_EnclosedExpr (line 8259) | function try_EnclosedExpr()
  function parse_OptionDecl (line 8267) | function parse_OptionDecl()
  function parse_Expr (line 8281) | function parse_Expr()
  function try_Expr (line 8299) | function try_Expr()
  function parse_FLWORExpr (line 8314) | function parse_FLWORExpr()
  function try_FLWORExpr (line 8333) | function try_FLWORExpr()
  function parse_InitialClause (line 8348) | function parse_InitialClause()
  function try_InitialClause (line 8373) | function try_InitialClause()
  function parse_IntermediateClause (line 8396) | function parse_IntermediateClause()
  function try_IntermediateClause (line 8420) | function try_IntermediateClause()
  function parse_ForClause (line 8442) | function parse_ForClause()
  function try_ForClause (line 8463) | function try_ForClause()
  function parse_ForBinding (line 8480) | function parse_ForBinding()
  function try_ForBinding (line 8519) | function try_ForBinding()
  function parse_AllowingEmpty (line 8550) | function parse_AllowingEmpty()
  function try_AllowingEmpty (line 8559) | function try_AllowingEmpty()
  function parse_PositionalVar (line 8566) | function parse_PositionalVar()
  function try_PositionalVar (line 8578) | function try_PositionalVar()
  function parse_FTScoreVar (line 8587) | function parse_FTScoreVar()
  function try_FTScoreVar (line 8599) | function try_FTScoreVar()
  function parse_LetClause (line 8608) | function parse_LetClause()
  function try_LetClause (line 8629) | function try_LetClause()
  function parse_LetBinding (line 8646) | function parse_LetBinding()
  function try_LetBinding (line 8674) | function try_LetBinding()
  function parse_WindowClause (line 8697) | function parse_WindowClause()
  function try_WindowClause (line 8715) | function try_WindowClause()
  function parse_TumblingWindowClause (line 8729) | function parse_TumblingWindowClause()
  function try_TumblingWindowClause (line 8762) | function try_TumblingWindowClause()
  function parse_SlidingWindowClause (line 8788) | function parse_SlidingWindowClause()
  function try_SlidingWindowClause (line 8817) | function try_SlidingWindowClause()
  function parse_WindowStartCondition (line 8839) | function parse_WindowStartCondition()
  function try_WindowStartCondition (line 8854) | function try_WindowStartCondition()
  function parse_WindowEndCondition (line 8865) | function parse_WindowEndCondition()
  function try_WindowEndCondition (line 8885) | function try_WindowEndCondition()
  function parse_WindowVars (line 8901) | function parse_WindowVars()
  function try_WindowVars (line 8940) | function try_WindowVars()
  function parse_CurrentItem (line 8973) | function parse_CurrentItem()
  function try_CurrentItem (line 8980) | function try_CurrentItem()
  function parse_PreviousItem (line 8985) | function parse_PreviousItem()
  function try_PreviousItem (line 8992) | function try_PreviousItem()
  function parse_NextItem (line 8997) | function parse_NextItem()
  function try_NextItem (line 9004) | function try_NextItem()
  function parse_CountClause (line 9009) | function parse_CountClause()
  function try_CountClause (line 9021) | function try_CountClause()
  function parse_WhereClause (line 9030) | function parse_WhereClause()
  function try_WhereClause (line 9040) | function try_WhereClause()
  function parse_GroupByClause (line 9047) | function parse_GroupByClause()
  function try_GroupByClause (line 9059) | function try_GroupByClause()
  function parse_GroupingSpecList (line 9068) | function parse_GroupingSpecList()
  function try_GroupingSpecList (line 9087) | function try_GroupingSpecList()
  function parse_GroupingSpec (line 9103) | function parse_GroupingSpec()
  function try_GroupingSpec (line 9327) | function try_GroupingSpec()
  function parse_GroupingVariable (line 9550) | function parse_GroupingVariable()
  function try_GroupingVariable (line 9560) | function try_GroupingVariable()
  function parse_OrderByClause (line 9567) | function parse_OrderByClause()
  function try_OrderByClause (line 9590) | function try_OrderByClause()
  function parse_OrderSpecList (line 9610) | function parse_OrderSpecList()
  function try_OrderSpecList (line 9629) | function try_OrderSpecList()
  function parse_OrderSpec (line 9645) | function parse_OrderSpec()
  function try_OrderSpec (line 9654) | function try_OrderSpec()
  function parse_OrderModifier (line 9660) | function parse_OrderModifier()
  function try_OrderModifier (line 9699) | function try_OrderModifier()
  function parse_ReturnClause (line 9736) | function parse_ReturnClause()
  function try_ReturnClause (line 9746) | function try_ReturnClause()
  function parse_QuantifiedExpr (line 9753) | function parse_QuantifiedExpr()
  function try_QuantifiedExpr (line 9785) | function try_QuantifiedExpr()
  function parse_QuantifiedVarDecl (line 9812) | function parse_QuantifiedVarDecl()
  function try_QuantifiedVarDecl (line 9833) | function try_QuantifiedVarDecl()
  function parse_SwitchExpr (line 9849) | function parse_SwitchExpr()
  function try_SwitchExpr (line 9878) | function try_SwitchExpr()
  function parse_SwitchCaseClause (line 9902) | function parse_SwitchCaseClause()
  function try_SwitchCaseClause (line 9923) | function try_SwitchCaseClause()
  function parse_SwitchCaseOperand (line 9940) | function parse_SwitchCaseOperand()
  function try_SwitchCaseOperand (line 9947) | function try_SwitchCaseOperand()
  function parse_TypeswitchExpr (line 9952) | function parse_TypeswitchExpr()
  function try_TypeswitchExpr (line 9989) | function try_TypeswitchExpr()
  function parse_CaseClause (line 10020) | function parse_CaseClause()
  function try_CaseClause (line 10044) | function try_CaseClause()
  function parse_SequenceTypeUnion (line 10063) | function parse_SequenceTypeUnion()
  function try_SequenceTypeUnion (line 10082) | function try_SequenceTypeUnion()
  function parse_IfExpr (line 10098) | function parse_IfExpr()
  function try_IfExpr (line 10120) | function try_IfExpr()
  function parse_TryCatchExpr (line 10137) | function parse_TryCatchExpr()
  function try_TryCatchExpr (line 10155) | function try_TryCatchExpr()
  function parse_TryClause (line 10170) | function parse_TryClause()
  function try_TryClause (line 10183) | function try_TryClause()
  function parse_TryTargetExpr (line 10193) | function parse_TryTargetExpr()
  function try_TryTargetExpr (line 10200) | function try_TryTargetExpr()
  function parse_CatchClause (line 10205) | function parse_CatchClause()
  function try_CatchClause (line 10220) | function try_CatchClause()
  function parse_CatchErrorList (line 10231) | function parse_CatchErrorList()
  function try_CatchErrorList (line 10250) | function try_CatchErrorList()
  function parse_OrExpr (line 10266) | function parse_OrExpr()
  function try_OrExpr (line 10284) | function try_OrExpr()
  function parse_AndExpr (line 10299) | function parse_AndExpr()
  function try_AndExpr (line 10317) | function try_AndExpr()
  function parse_NotExpr (line 10332) | function parse_NotExpr()
  function try_NotExpr (line 10345) | function try_NotExpr()
  function parse_ComparisonExpr (line 10355) | function parse_ComparisonExpr()
  function try_ComparisonExpr (line 10403) | function try_ComparisonExpr()
  function parse_FTContainsExpr (line 10445) | function parse_FTContainsExpr()
  function try_FTContainsExpr (line 10466) | function try_FTContainsExpr()
  function parse_StringConcatExpr (line 10483) | function parse_StringConcatExpr()
  function try_StringConcatExpr (line 10501) | function try_StringConcatExpr()
  function parse_RangeExpr (line 10516) | function parse_RangeExpr()
  function try_RangeExpr (line 10530) | function try_RangeExpr()
  function parse_AdditiveExpr (line 10541) | function parse_AdditiveExpr()
  function try_AdditiveExpr (line 10567) | function try_AdditiveExpr()
  function parse_MultiplicativeExpr (line 10590) | function parse_MultiplicativeExpr()
  function try_MultiplicativeExpr (line 10624) | function try_MultiplicativeExpr()
  function parse_UnionExpr (line 10655) | function parse_UnionExpr()
  function try_UnionExpr (line 10681) | function try_UnionExpr()
  function parse_IntersectExceptExpr (line 10704) | function parse_IntersectExceptExpr()
  function try_IntersectExceptExpr (line 10731) | function try_IntersectExceptExpr()
  function parse_InstanceofExpr (line 10755) | function parse_InstanceofExpr()
  function try_InstanceofExpr (line 10772) | function try_InstanceofExpr()
  function parse_TreatExpr (line 10786) | function parse_TreatExpr()
  function try_TreatExpr (line 10803) | function try_TreatExpr()
  function parse_CastableExpr (line 10817) | function parse_CastableExpr()
  function try_CastableExpr (line 10834) | function try_CastableExpr()
  function parse_CastExpr (line 10848) | function parse_CastExpr()
  function try_CastExpr (line 10865) | function try_CastExpr()
  function parse_UnaryExpr (line 10879) | function parse_UnaryExpr()
  function try_UnaryExpr (line 10904) | function try_UnaryExpr()
  function parse_ValueExpr (line 10926) | function parse_ValueExpr()
  function try_ValueExpr (line 10954) | function try_ValueExpr()
  function parse_SimpleMapExpr (line 10980) | function parse_SimpleMapExpr()
  function try_SimpleMapExpr (line 10998) | function try_SimpleMapExpr()
  function parse_GeneralComp (line 11013) | function parse_GeneralComp()
  function try_GeneralComp (line 11039) | function try_GeneralComp()
  function parse_ValueComp (line 11063) | function parse_ValueComp()
  function try_ValueComp (line 11089) | function try_ValueComp()
  function parse_NodeComp (line 11113) | function parse_NodeComp()
  function try_NodeComp (line 11130) | function try_NodeComp()
  function parse_ValidateExpr (line 11145) | function parse_ValidateExpr()
  function try_ValidateExpr (line 11174) | function try_ValidateExpr()
  function parse_ValidationMode (line 11198) | function parse_ValidationMode()
  function try_ValidationMode (line 11212) | function try_ValidationMode()
  function parse_ExtensionExpr (line 11224) | function parse_ExtensionExpr()
  function try_ExtensionExpr (line 11248) | function try_ExtensionExpr()
  function parse_Pragma (line 11268) | function parse_Pragma()
  function try_Pragma (line 11290) | function try_Pragma()
  function parse_PathExpr (line 11310) | function parse_PathExpr()
  function try_PathExpr (line 11365) | function try_PathExpr()
  function parse_RelativePathExpr (line 11416) | function parse_RelativePathExpr()
  function try_RelativePathExpr (line 11571) | function try_RelativePathExpr()
  function parse_StepExpr (line 11724) | function parse_StepExpr()
  function try_StepExpr (line 12994) | function try_StepExpr()
  function parse_AxisStep (line 14265) | function parse_AxisStep()
  function try_AxisStep (line 14299) | function try_AxisStep()
  function parse_ForwardStep (line 14330) | function parse_ForwardStep()
  function try_ForwardStep (line 14369) | function try_ForwardStep()
  function parse_ForwardAxis (line 14405) | function parse_ForwardAxis()
  function try_ForwardAxis (line 14448) | function try_ForwardAxis()
  function parse_AbbrevForwardStep (line 14489) | function parse_AbbrevForwardStep()
  function try_AbbrevForwardStep (line 14502) | function try_AbbrevForwardStep()
  function parse_ReverseStep (line 14512) | function parse_ReverseStep()
  function try_ReverseStep (line 14529) | function try_ReverseStep()
  function parse_ReverseAxis (line 14543) | function parse_ReverseAxis()
  function try_ReverseAxis (line 14576) | function try_ReverseAxis()
  function parse_AbbrevReverseStep (line 14607) | function parse_AbbrevReverseStep()
  function try_AbbrevReverseStep (line 14614) | function try_AbbrevReverseStep()
  function parse_NodeTest (line 14619) | function parse_NodeTest()
  function try_NodeTest (line 14659) | function try_NodeTest()
  function parse_NameTest (line 14697) | function parse_NameTest()
  function try_NameTest (line 14711) | function try_NameTest()
  function parse_PostfixExpr (line 14723) | function parse_PostfixExpr()
  function try_PostfixExpr (line 14793) | function try_PostfixExpr()
  function parse_ObjectLookup (line 14859) | function parse_ObjectLookup()
  function try_ObjectLookup (line 14888) | function try_ObjectLookup()
  function parse_ArrayLookup (line 14911) | function parse_ArrayLookup()
  function try_ArrayLookup (line 14926) | function try_ArrayLookup()
  function parse_ArrayUnboxing (line 14938) | function parse_ArrayUnboxing()
  function try_ArrayUnboxing (line 14947) | function try_ArrayUnboxing()
  function parse_ArgumentList (line 14954) | function parse_ArgumentList()
  function try_ArgumentList (line 14980) | function try_ArgumentList()
  function parse_PredicateList (line 15002) | function parse_PredicateList()
  function try_PredicateList (line 15018) | function try_PredicateList()
  function parse_Predicate (line 15031) | function parse_Predicate()
  function try_Predicate (line 15042) | function try_Predicate()
  function parse_Literal (line 15050) | function parse_Literal()
  function try_Literal (line 15071) | function try_Literal()
  function parse_BooleanLiteral (line 15090) | function parse_BooleanLiteral()
  function try_BooleanLiteral (line 15104) | function try_BooleanLiteral()
  function parse_NullLiteral (line 15116) | function parse_NullLiteral()
  function try_NullLiteral (line 15123) | function try_NullLiteral()
  function parse_NumericLiteral (line 15128) | function parse_NumericLiteral()
  function try_NumericLiteral (line 15145) | function try_NumericLiteral()
  function parse_VarRef (line 15160) | function parse_VarRef()
  function try_VarRef (line 15170) | function try_VarRef()
  function parse_VarName (line 15177) | function parse_VarName()
  function try_VarName (line 15184) | function try_VarName()
  function parse_ParenthesizedExpr (line 15189) | function parse_ParenthesizedExpr()
  function try_ParenthesizedExpr (line 15203) | function try_ParenthesizedExpr()
  function parse_ContextItemExpr (line 15214) | function parse_ContextItemExpr()
  function try_ContextItemExpr (line 15221) | function try_ContextItemExpr()
  function parse_OrderedExpr (line 15226) | function parse_OrderedExpr()
  function try_OrderedExpr (line 15239) | function try_OrderedExpr()
  function parse_UnorderedExpr (line 15249) | function parse_UnorderedExpr()
  function try_UnorderedExpr (line 15262) | function try_UnorderedExpr()
  function parse_FunctionCall (line 15272) | function parse_FunctionCall()
  function try_FunctionCall (line 15282) | function try_FunctionCall()
  function parse_Argument (line 15289) | function parse_Argument()
  function try_Argument (line 15303) | function try_Argument()
  function parse_ArgumentPlaceholder (line 15315) | function parse_ArgumentPlaceholder()
  function try_ArgumentPlaceholder (line 15322) | function try_ArgumentPlaceholder()
  function parse_Constructor (line 15327) | function parse_Constructor()
  function try_Constructor (line 15343) | function try_Constructor()
  function parse_DirectConstructor (line 15357) | function parse_DirectConstructor()
  function try_DirectConstructor (line 15374) | function try_DirectConstructor()
  function parse_DirElemConstructor (line 15389) | function parse_DirElemConstructor()
  function try_DirElemConstructor (line 15426) | function try_DirElemConstructor()
  function parse_DirAttributeList (line 15461) | function parse_DirAttributeList()
  function try_DirAttributeList (line 15494) | function try_DirAttributeList()
  function parse_DirAttributeValue (line 15525) | function parse_DirAttributeValue()
  function try_DirAttributeValue (line 15574) | function try_DirAttributeValue()
  function parse_QuotAttrValueContent (line 15621) | function parse_QuotAttrValueContent()
  function try_QuotAttrValueContent (line 15635) | function try_QuotAttrValueContent()
  function parse_AposAttrValueContent (line 15647) | function parse_AposAttrValueContent()
  function try_AposAttrValueContent (line 15661) | function try_AposAttrValueContent()
  function parse_DirElemContent (line 15673) | function parse_DirElemContent()
  function try_DirElemContent (line 15695) | function try_DirElemContent()
  function parse_DirCommentConstructor (line 15715) | function parse_DirCommentConstructor()
  function try_DirCommentConstructor (line 15726) | function try_DirCommentConstructor()
  function parse_DirPIConstructor (line 15735) | function parse_DirPIConstructor()
  function try_DirPIConstructor (line 15753) | function try_DirPIConstructor()
  function parse_ComputedConstructor (line 15769) | function parse_ComputedConstructor()
  function try_ComputedConstructor (line 15798) | function try_ComputedConstructor()
  function parse_CompElemConstructor (line 15825) | function parse_CompElemConstructor()
  function try_CompElemConstructor (line 15855) | function try_CompElemConstructor()
  function parse_CompNamespaceConstructor (line 15880) | function parse_CompNamespaceConstructor()
  function try_CompNamespaceConstructor (line 15907) | function try_CompNamespaceConstructor()
  function parse_Prefix (line 15929) | function parse_Prefix()
  function try_Prefix (line 15936) | function try_Prefix()
  function parse_PrefixExpr (line 15941) | function parse_PrefixExpr()
  function try_PrefixExpr (line 15948) | function try_PrefixExpr()
  function parse_URIExpr (line 15953) | function parse_URIExpr()
  function try_URIExpr (line 15960) | function try_URIExpr()
  function parse_FunctionItemExpr (line 15965) | function parse_FunctionItemExpr()
  function try_FunctionItemExpr (line 15988) | function try_FunctionItemExpr()
  function parse_NamedFunctionRef (line 16009) | function parse_NamedFunctionRef()
  function try_NamedFunctionRef (line 16020) | function try_NamedFunctionRef()
  function parse_InlineFunctionExpr (line 16029) | function parse_InlineFunctionExpr()
  function try_InlineFunctionExpr (line 16066) | function try_InlineFunctionExpr()
  function parse_SingleType (line 16097) | function parse_SingleType()
  function try_SingleType (line 16109) | function try_SingleType()
  function parse_TypeDeclaration (line 16119) | function parse_TypeDeclaration()
  function try_TypeDeclaration (line 16129) | function try_TypeDeclaration()
  function parse_SequenceType (line 16136) | function parse_SequenceType()
  function try_SequenceType (line 16181) | function try_SequenceType()
  function parse_OccurrenceIndicator (line 16223) | function parse_OccurrenceIndicator()
  function try_OccurrenceIndicator (line 16240) | function try_OccurrenceIndicator()
  function parse_ItemType (line 16255) | function parse_ItemType()
  function try_ItemType (line 16666) | function try_ItemType()
  function parse_JSONTest (line 17079) | function parse_JSONTest()
  function try_JSONTest (line 17096) | function try_JSONTest()
  function parse_StructuredItemTest (line 17111) | function parse_StructuredItemTest()
  function try_StructuredItemTest (line 17125) | function try_StructuredItemTest()
  function parse_JSONItemTest (line 17137) | function parse_JSONItemTest()
  function try_JSONItemTest (line 17151) | function try_JSONItemTest()
  function parse_JSONObjectTest (line 17163) | function parse_JSONObjectTest()
  function try_JSONObjectTest (line 17177) | function try_JSONObjectTest()
  function parse_JSONArrayTest (line 17189) | function parse_JSONArrayTest()
  function try_JSONArrayTest (line 17203) | function try_JSONArrayTest()
  function parse_AtomicOrUnionType (line 17215) | function parse_AtomicOrUnionType()
  function try_AtomicOrUnionType (line 17222) | function try_AtomicOrUnionType()
  function parse_KindTest (line 17227) | function parse_KindTest()
  function try_KindTest (line 17265) | function try_KindTest()
  function parse_AnyKindTest (line 17301) | function parse_AnyKindTest()
  function try_AnyKindTest (line 17312) | function try_AnyKindTest()
  function parse_DocumentTest (line 17321) | function parse_DocumentTest()
  function try_DocumentTest (line 17346) | function try_DocumentTest()
  function parse_TextTest (line 17367) | function parse_TextTest()
  function try_TextTest (line 17378) | function try_TextTest()
  function parse_CommentTest (line 17387) | function parse_CommentTest()
  function try_CommentTest (line 17398) | function try_CommentTest()
  function parse_NamespaceNodeTest (line 17407) | function parse_NamespaceNodeTest()
  function try_NamespaceNodeTest (line 17418) | function try_NamespaceNodeTest()
  function parse_PITest (line 17427) | function parse_PITest()
  function try_PITest (line 17451) | function try_PITest()
  function parse_AttributeTest (line 17472) | function parse_AttributeTest()
  function try_AttributeTest (line 17497) | function try_AttributeTest()
  function parse_AttribNameOrWildcard (line 17518) | function parse_AttribNameOrWildcard()
  function try_AttribNameOrWildcard (line 17532) | function try_AttribNameOrWildcard()
  function parse_SchemaAttributeTest (line 17544) | function parse_SchemaAttributeTest()
  function try_SchemaAttributeTest (line 17558) | function try_SchemaAttributeTest()
  function parse_AttributeDeclaration (line 17569) | function parse_AttributeDeclaration()
  function try_AttributeDeclaration (line 17576) | function try_AttributeDeclaration()
  function parse_ElementTest (line 17581) | function parse_ElementTest()
  function try_ElementTest (line 17611) | function try_ElementTest()
  function parse_ElementNameOrWildcard (line 17637) | function parse_ElementNameOrWildcard()
  function try_ElementNameOrWildcard (line 17651) | function try_ElementNameOrWildcard()
  function parse_SchemaElementTest (line 17663) | function parse_SchemaElementTest()
  function try_SchemaElementTest (line 17677) | function try_SchemaElementTest()
  function parse_ElementDeclaration (line 17688) | function parse_ElementDeclaration()
  function try_ElementDeclaration (line 17695) | function try_ElementDeclaration()
  function parse_AttributeName (line 17700) | function parse_AttributeName()
  function try_AttributeName (line 17707) | function try_AttributeName()
  function parse_ElementName (line 17712) | function parse_ElementName()
  function try_ElementName (line 17719) | function try_ElementName()
  function parse_SimpleTypeName (line 17724) | function parse_SimpleTypeName()
  function try_SimpleTypeName (line 17731) | function try_SimpleTypeName()
  function parse_TypeName (line 17736) | function parse_TypeName()
  function try_TypeName (line 17743) | function try_TypeName()
  function parse_FunctionTest (line 17748) | function parse_FunctionTest()
  function try_FunctionTest (line 17802) | function try_FunctionTest()
  function parse_AnyFunctionTest (line 17854) | function parse_AnyFunctionTest()
  function try_AnyFunctionTest (line 17867) | function try_AnyFunctionTest()
  function parse_TypedFunctionTest (line 17878) | function parse_TypedFunctionTest()
  function try_TypedFunctionTest (line 17911) | function try_TypedFunctionTest()
  function parse_ParenthesizedItemType (line 17939) | function parse_ParenthesizedItemType()
  function try_ParenthesizedItemType (line 17951) | function try_ParenthesizedItemType()
  function parse_RevalidationDecl (line 17960) | function parse_RevalidationDecl()
  function parse_InsertExprTargetChoice (line 17981) | function parse_InsertExprTargetChoice()
  function try_InsertExprTargetChoice (line 18012) | function try_InsertExprTargetChoice()
  function parse_InsertExpr (line 18041) | function parse_InsertExpr()
  function try_InsertExpr (line 18065) | function try_InsertExpr()
  function parse_DeleteExpr (line 18084) | function parse_DeleteExpr()
  function try_DeleteExpr (line 18103) | function try_DeleteExpr()
  function parse_ReplaceExpr (line 18119) | function parse_ReplaceExpr()
  function try_ReplaceExpr (line 18142) | function try_ReplaceExpr()
  function parse_RenameExpr (line 18161) | function parse_RenameExpr()
  function try_RenameExpr (line 18177) | function try_RenameExpr()
  function parse_SourceExpr (line 18189) | function parse_SourceExpr()
  function try_SourceExpr (line 18196) | function try_SourceExpr()
  function parse_TargetExpr (line 18201) | function parse_TargetExpr()
  function try_TargetExpr (line 18208) | function try_TargetExpr()
  function parse_NewNameExpr (line 18213) | function parse_NewNameExpr()
  function try_NewNameExpr (line 18220) | function try_NewNameExpr()
  function parse_TransformExpr (line 18225) | function parse_TransformExpr()
  function try_TransformExpr (line 18254) | function try_TransformExpr()
  function parse_TransformSpec (line 18277) | function parse_TransformSpec()
  function try_TransformSpec (line 18292) | function try_TransformSpec()
  function parse_FTSelection (line 18303) | function parse_FTSelection()
  function try_FTSelection (line 18335) | function try_FTSelection()
  function parse_FTWeight (line 18364) | function parse_FTWeight()
  function try_FTWeight (line 18377) | function try_FTWeight()
  function parse_FTOr (line 18387) | function parse_FTOr()
  function try_FTOr (line 18405) | function try_FTOr()
  function parse_FTAnd (line 18420) | function parse_FTAnd()
  function try_FTAnd (line 18438) | function try_FTAnd()
  function parse_FTMildNot (line 18453) | function parse_FTMildNot()
  function try_FTMildNot (line 18474) | function try_FTMildNot()
  function parse_FTUnaryNot (line 18492) | function parse_FTUnaryNot()
  function try_FTUnaryNot (line 18505) | function try_FTUnaryNot()
  function parse_FTPrimaryWithOptions (line 18515) | function parse_FTPrimaryWithOptions()
  function try_FTPrimaryWithOptions (line 18533) | function try_FTPrimaryWithOptions()
  function parse_FTPrimary (line 18547) | function parse_FTPrimary()
  function try_FTPrimary (line 18574) | function try_FTPrimary()
  function parse_FTWords (line 18597) | function parse_FTWords()
  function try_FTWords (line 18612) | function try_FTWords()
  function parse_FTWordsValue (line 18624) | function parse_FTWordsValue()
  function try_FTWordsValue (line 18642) | function try_FTWordsValue()
  function parse_FTExtensionSelection (line 18657) | function parse_FTExtensionSelection()
  function try_FTExtensionSelection (line 18681) | function try_FTExtensionSelection()
  function parse_FTAnyallOption (line 18701) | function parse_FTAnyallOption()
  function try_FTAnyallOption (line 18728) | function try_FTAnyallOption()
  function parse_FTTimes (line 18753) | function parse_FTTimes()
  function try_FTTimes (line 18764) | function try_FTTimes()
  function parse_FTRange (line 18772) | function parse_FTRange()
  function try_FTRange (line 18814) | function try_FTRange()
  function parse_FTPosFilter (line 18849) | function parse_FTPosFilter()
  function try_FTPosFilter (line 18873) | function try_FTPosFilter()
  function parse_FTOrder (line 18895) | function parse_FTOrder()
  function try_FTOrder (line 18902) | function try_FTOrder()
  function parse_FTWindow (line 18907) | function parse_FTWindow()
  function try_FTWindow (line 18919) | function try_FTWindow()
  function parse_FTDistance (line 18927) | function parse_FTDistance()
  function try_FTDistance (line 18939) | function try_FTDistance()
  function parse_FTUnit (line 18947) | function parse_FTUnit()
  function try_FTUnit (line 18964) | function try_FTUnit()
  function parse_FTScope (line 18979) | function parse_FTScope()
  function try_FTScope (line 18996) | function try_FTScope()
  function parse_FTBigUnit (line 19010) | function parse_FTBigUnit()
  function try_FTBigUnit (line 19024) | function try_FTBigUnit()
  function parse_FTContent (line 19036) | function parse_FTContent()
  function try_FTContent (line 19061) | function try_FTContent()
  function parse_FTMatchOptions (line 19084) | function parse_FTMatchOptions()
  function try_FTMatchOptions (line 19102) | function try_FTMatchOptions()
  function parse_FTMatchOption (line 19117) | function parse_FTMatchOption()
  function try_FTMatchOption (line 19161) | function try_FTMatchOption()
  function parse_FTCaseOption (line 19203) | function parse_FTCaseOption()
  function try_FTCaseOption (line 19229) | function try_FTCaseOption()
  function parse_FTDiacriticsOption (line 19253) | function parse_FTDiacriticsOption()
  function try_FTDiacriticsOption (line 19269) | function try_FTDiacriticsOption()
  function parse_FTStemOption (line 19283) | function parse_FTStemOption()
  function try_FTStemOption (line 19299) | function try_FTStemOption()
  function parse_FTThesaurusOption (line 19313) | function parse_FTThesaurusOption()
  function try_FTThesaurusOption (line 19365) | function try_FTThesaurusOption()
  function parse_FTThesaurusID (line 19412) | function parse_FTThesaurusID()
  function try_FTThesaurusID (line 19447) | function try_FTThesaurusID()
  function parse_FTLiteralRange (line 19479) | function parse_FTLiteralRange()
  function try_FTLiteralRange (line 19517) | function try_FTLiteralRange()
  function parse_FTStopWordOption (line 19553) | function parse_FTStopWordOption()
  function try_FTStopWordOption (line 19605) | function try_FTStopWordOption()
  function parse_FTStopWords (line 19652) | function parse_FTStopWords()
  function try_FTStopWords (line 19682) | function try_FTStopWords()
  function parse_FTStopWordsInclExcl (line 19710) | function parse_FTStopWordsInclExcl()
  function try_FTStopWordsInclExcl (line 19727) | function try_FTStopWordsInclExcl()
  function parse_FTLanguageOption (line 19741) | function parse_FTLanguageOption()
  function try_FTLanguageOption (line 19750) | function try_FTLanguageOption()
  function parse_FTWildCardOption (line 19757) | function parse_FTWildCardOption()
  function try_FTWildCardOption (line 19773) | function try_FTWildCardOption()
  function parse_FTExtensionOption (line 19787) | function parse_FTExtensionOption()
  function try_FTExtensionOption (line 19799) | function try_FTExtensionOption()
  function parse_FTIgnoreOption (line 19808) | function parse_FTIgnoreOption()
  function try_FTIgnoreOption (line 19820) | function try_FTIgnoreOption()
  function parse_CollectionDecl (line 19829) | function parse_CollectionDecl()
  function parse_CollectionTypeDecl (line 19845) | function parse_CollectionTypeDecl()
  function parse_IndexName (line 19861) | function parse_IndexName()
  function parse_IndexDomainExpr (line 19868) | function parse_IndexDomainExpr()
  function parse_IndexKeySpec (line 19875) | function parse_IndexKeySpec()
  function parse_IndexKeyExpr (line 19893) | function parse_IndexKeyExpr()
  function parse_IndexKeyTypeDecl (line 19900) | function parse_IndexKeyTypeDecl()
  function parse_AtomicType (line 19918) | function parse_AtomicType()
  function parse_IndexKeyCollation (line 19925) | function parse_IndexKeyCollation()
  function parse_IndexDecl (line 19934) | function parse_IndexDecl()
  function parse_ICDecl (line 19967) | function parse_ICDecl()
  function parse_ICCollection (line 19990) | function parse_ICCollection()
  function parse_ICCollSequence (line 20017) | function parse_ICCollSequence()
  function parse_ICCollSequenceUnique (line 20029) | function parse_ICCollSequenceUnique()
  function parse_ICCollNode (line 20048) | function parse_ICCollNode()
  function parse_ICForeignKey (line 20065) | function parse_ICForeignKey()
  function parse_ICForeignKeySource (line 20079) | function parse_ICForeignKeySource()
  function parse_ICForeignKeyTarget (line 20089) | function parse_ICForeignKeyTarget()
  function parse_ICForeignKeyValues (line 20099) | function parse_ICForeignKeyValues()
  function try_Comment (line 20119) | function try_Comment()
  function try_Whitespace (line 20141) | function try_Whitespace()
  function parse_EQName (line 20153) | function parse_EQName()
  function try_EQName (line 20222) | function try_EQName()
  function parse_FunctionName (line 20289) | function parse_FunctionName()
  function try_FunctionName (line 20660) | function try_FunctionName()
  function parse_NCName (line 21029) | function parse_NCName()
  function try_NCName (line 21448) | function try_NCName()
  function parse_MainModule (line 21865) | function parse_MainModule()
  function parse_Program (line 21874) | function parse_Program()
  function parse_Statements (line 21881) | function parse_Statements()
  function try_Statements (line 22203) | function try_Statements()
  function parse_StatementsAndExpr (line 22523) | function parse_StatementsAndExpr()
  function try_StatementsAndExpr (line 22532) | function try_StatementsAndExpr()
  function parse_StatementsAndOptionalExpr (line 22538) | function parse_StatementsAndOptionalExpr()
  function try_StatementsAndOptionalExpr (line 22551) | function try_StatementsAndOptionalExpr()
  function parse_Statement (line 22561) | function parse_Statement()
  function try_Statement (line 22888) | function try_Statement()
  function parse_ApplyStatement (line 23219) | function parse_ApplyStatement()
  function try_ApplyStatement (line 23227) | function try_ApplyStatement()
  function parse_AssignStatement (line 23233) | function parse_AssignStatement()
  function try_AssignStatement (line 23249) | function try_AssignStatement()
  function parse_BlockStatement (line 23261) | function parse_BlockStatement()
  function try_BlockStatement (line 23275) | function try_BlockStatement()
  function parse_BreakStatement (line 23285) | function parse_BreakStatement()
  function try_BreakStatement (line 23296) | function try_BreakStatement()
  function parse_ContinueStatement (line 23305) | function parse_ContinueStatement()
  function try_ContinueStatement (line 23316) | function try_ContinueStatement()
  function parse_ExitStatement (line 23325) | function parse_ExitStatement()
  function try_ExitStatement (line 23338) | function try_ExitStatement()
  function parse_FLWORStatement (line 23348) | function parse_FLWORStatement()
  function try_FLWORStatement (line 23367) | function try_FLWORStatement()
  function parse_ReturnStatement (line 23382) | function parse_ReturnStatement()
  function try_ReturnStatement (line 23392) | function try_ReturnStatement()
  function parse_IfStatement (line 23399) | function parse_IfStatement()
  function try_IfStatement (line 23422) | function try_IfStatement()
  function parse_SwitchStatement (line 23440) | function parse_SwitchStatement()
  function try_SwitchStatement (line 23470) | function try_SwitchStatement()
  function parse_SwitchCaseStatement (line 23495) | function parse_SwitchCaseStatement()
  function try_SwitchCaseStatement (line 23516) | function try_SwitchCaseStatement()
  function parse_TryCatchStatement (line 23533) | function parse_TryCatchStatement()
  function try_TryCatchStatement (line 23706) | function try_TryCatchStatement()
  function parse_TypeswitchStatement (line 23874) | function parse_TypeswitchStatement()
  function try_TypeswitchStatement (line 23912) | function try_TypeswitchStatement()
  function parse_CaseStatement (line 23944) | function parse_CaseStatement()
  function try_CaseStatement (line 23969) | function try_CaseStatement()
  function parse_VarDeclStatement (line 23989) | function parse_VarDeclStatement()
  function try_VarDeclStatement (line 24053) | function try_VarDeclStatement()
  function parse_WhileStatement (line 24108) | function parse_WhileStatement()
  function try_WhileStatement (line 24124) | function try_WhileStatement()
  function parse_VoidStatement (line 24136) | function parse_VoidStatement()
  function try_VoidStatement (line 24143) | function try_VoidStatement()
  function parse_ExprSingle (line 24148) | function parse_ExprSingle()
  function try_ExprSingle (line 24197) | function try_ExprSingle()
  function parse_ExprSimple (line 24244) | function parse_ExprSimple()
  function try_ExprSimple (line 25053) | function try_ExprSimple()
  function parse_JSONDeleteExpr (line 25871) | function parse_JSONDeleteExpr()
  function try_JSONDeleteExpr (line 26070) | function try_JSONDeleteExpr()
  function parse_JSONInsertExpr (line 26266) | function parse_JSONInsertExpr()
  function try_JSONInsertExpr (line 27003) | function try_JSONInsertExpr()
  function parse_JSONRenameExpr (line 27736) | function parse_JSONRenameExpr()
  function try_JSONRenameExpr (line 27939) | function try_JSONRenameExpr()
  function parse_JSONReplaceExpr (line 28138) | function parse_JSONReplaceExpr()
  function try_JSONReplaceExpr (line 28158) | function try_JSONReplaceExpr()
  function parse_JSONAppendExpr (line 28174) | function parse_JSONAppendExpr()
  function try_JSONAppendExpr (line 28383) | function try_JSONAppendExpr()
  function parse_CommonContent (line 28588) | function parse_CommonContent()
  function try_CommonContent (line 28611) | function try_CommonContent()
  function parse_ContentExpr (line 28632) | function parse_ContentExpr()
  function try_ContentExpr (line 28639) | function try_ContentExpr()
  function parse_CompDocConstructor (line 28644) | function parse_CompDocConstructor()
  function try_CompDocConstructor (line 28654) | function try_CompDocConstructor()
  function parse_CompAttrConstructor (line 28661) | function parse_CompAttrConstructor()
  function try_CompAttrConstructor (line 28727) | function try_CompAttrConstructor()
  function parse_CompPIConstructor (line 28791) | function parse_CompPIConstructor()
  function try_CompPIConstructor (line 28857) | function try_CompPIConstructor()
  function parse_CompCommentConstructor (line 28921) | function parse_CompCommentConstructor()
  function try_CompCommentConstructor (line 28931) | function try_CompCommentConstructor()
  function parse_CompTextConstructor (line 28938) | function parse_CompTextConstructor()
  function try_CompTextConstructor (line 28948) | function try_CompTextConstructor()
  function parse_PrimaryExpr (line 28955) | function parse_PrimaryExpr()
  function try_PrimaryExpr (line 29856) | function try_PrimaryExpr()
  function parse_JSONSimpleObjectUnion (line 30760) | function parse_JSONSimpleObjectUnion()
  function try_JSONSimpleObjectUnion (line 30774) | function try_JSONSimpleObjectUnion()
  function parse_ObjectConstructor (line 30785) | function parse_ObjectConstructor()
  function try_ObjectConstructor (line 30799) | function try_ObjectConstructor()
  function parse_PairConstructorList (line 30810) | function parse_PairConstructorList()
  function try_PairConstructorList (line 30828) | function try_PairConstructorList()
  function parse_PairConstructor (line 30843) | function parse_PairConstructor()
  function try_PairConstructor (line 31194) | function try_PairConstructor()
  function parse_ArrayConstructor (line 31545) | function parse_ArrayConstructor()
  function try_ArrayConstructor (line 31559) | function try_ArrayConstructor()
  function parse_BlockExpr (line 31570) | function parse_BlockExpr()
  function try_BlockExpr (line 31581) | function try_BlockExpr()
  function parse_FunctionDecl (line 31589) | function parse_FunctionDecl()
  function parse_ReturnType (line 31627) | function parse_ReturnType()
  function shift (line 31637) | function shift(t)
  function shiftT (line 31652) | function shiftT(t)
  function skip (line 31665) | function skip(code)
  function whitespace (line 31679) | function whitespace()
  function matchW (line 31688) | function matchW(set)
  function lookahead1W (line 31706) | function lookahead1W(set)
  function lookahead2W (line 31716) | function lookahead2W(set)
  function lookahead1 (line 31727) | function lookahead1(set)
  function lookahead2 (line 31737) | function lookahead2(set)
  function error (line 31748) | function error(b, e, s, l, t)
  function memoize (line 31768) | function memoize(i, e, v)
  function memoized (line 31773) | function memoized(i, e)
  function match (line 31784) | function match(tokenSetId)
  function init (line 32233) | function init(string, parsingEventHandler)
  function reset (line 32246) | function reset(l, b, e)
  function parse_Module (line 32307) | function parse_Module()
  function parse_VersionDecl (line 32345) | function parse_VersionDecl()
  function parse_LibraryModule (line 32375) | function parse_LibraryModule()
  function parse_ModuleDecl (line 32385) | function parse_ModuleDecl()
  function parse_Prolog (line 32404) | function parse_Prolog()
  function parse_Separator (line 32545) | function parse_Separator()
  function parse_Setter (line 32552) | function parse_Setter()
  function parse_BoundarySpaceDecl (line 32629) | function parse_BoundarySpaceDecl()
  function parse_DefaultCollationDecl (line 32647) | function parse_DefaultCollationDecl()
  function try_DefaultCollationDecl (line 32660) | function try_DefaultCollationDecl()
  function parse_BaseURIDecl (line 32671) | function parse_BaseURIDecl()
  function parse_ConstructionDecl (line 32682) | function parse_ConstructionDecl()
  function parse_OrderingModeDecl (line 32700) | function parse_OrderingModeDecl()
  function parse_EmptyOrderDecl (line 32718) | function parse_EmptyOrderDecl()
  function try_EmptyOrderDecl (line 32740) | function try_EmptyOrderDecl()
  function parse_CopyNamespacesDecl (line 32760) | function parse_CopyNamespacesDecl()
  function parse_PreserveMode (line 32777) | function parse_PreserveMode()
  function parse_InheritMode (line 32791) | function parse_InheritMode()
  function parse_DecimalFormatDecl (line 32805) | function parse_DecimalFormatDecl()
  function parse_DFPropertyName (line 32840) | function parse_DFPropertyName()
  function parse_Import (line 32878) | function parse_Import()
  function parse_SchemaImport (line 32900) | function parse_SchemaImport()
  function parse_SchemaPrefix (line 32935) | function parse_SchemaPrefix()
  function parse_ModuleImport (line 32958) | function parse_ModuleImport()
  function parse_NamespaceDecl (line 32997) | function parse_NamespaceDecl()
  function parse_DefaultNamespaceDecl (line 33013) | function parse_DefaultNamespaceDecl()
  function try_DefaultNamespaceDecl (line 33035) | function try_DefaultNamespaceDecl()
  function parse_FTOptionDecl (line 33055) | function parse_FTOptionDecl()
  function parse_AnnotatedDecl (line 33067) | function parse_AnnotatedDecl()
  function parse_CompatibilityAnnotation (line 33115) | function parse_CompatibilityAnnotation()
  function parse_Annotation (line 33122) | function parse_Annotation()
  function try_Annotation (line 33153) | function try_Annotation()
  function parse_VarDecl (line 33179) | function parse_VarDecl()
  function parse_VarValue (line 33217) | function parse_VarValue()
  function parse_VarDefaultValue (line 33224) | function parse_VarDefaultValue()
  function parse_ContextItemDecl (line 33231) | function parse_ContextItemDecl()
  function parse_ParamList (line 33270) | function parse_ParamList()
  function try_ParamList (line 33289) | function try_ParamList()
  function parse_Param (line 33305) | function parse_Param()
  function try_Param (line 33321) | function try_Param()
  function parse_FunctionBody (line 33333) | function parse_FunctionBody()
  function try_FunctionBody (line 33340) | function try_FunctionBody()
  function parse_EnclosedExpr (line 33345) | function parse_EnclosedExpr()
  function try_EnclosedExpr (line 33356) | function try_EnclosedExpr()
  function parse_OptionDecl (line 33364) | function parse_OptionDecl()
  function parse_Expr (line 33378) | function parse_Expr()
  function try_Expr (line 33396) | function try_Expr()
  function parse_FLWORExpr (line 33411) | function parse_FLWORExpr()
  function try_FLWORExpr (line 33430) | function try_FLWORExpr()
  function parse_InitialClause (line 33445) | function parse_InitialClause()
  function try_InitialClause (line 33470) | function try_InitialClause()
  function parse_IntermediateClause (line 33493) | function parse_IntermediateClause()
  function try_IntermediateClause (line 33517) | function try_IntermediateClause()
  function parse_ForClause (line 33539) | function parse_ForClause()
  function try_ForClause (line 33560) | function try_ForClause()
  function parse_ForBinding (line 33577) | function parse_ForBinding()
  function try_ForBinding (line 33616) | function try_ForBinding()
  function parse_AllowingEmpty (line 33647) | function parse_AllowingEmpty()
  function try_AllowingEmpty (line 33656) | function try_AllowingEmpty()
  function parse_PositionalVar (line 33663) | function parse_PositionalVar()
  function try_PositionalVar (line 33675) | function try_PositionalVar()
  function parse_FTScoreVar (line 33684) | function parse_FTScoreVar()
  function try_FTScoreVar (line 33696) | function try_FTScoreVar()
  function parse_LetClause (line 33705) | function parse_LetClause()
  function try_LetClause (line 33726) | function try_LetClause()
  function parse_LetBinding (line 33743) | function parse_LetBinding()
  function try_LetBinding (line 33771) | function try_LetBinding()
  function parse_WindowClause (line 33794) | function parse_WindowClause()
  function try_WindowClause (line 33812) | function try_WindowClause()
  function parse_TumblingWindowClause (line 33826) | function parse_TumblingWindowClause()
  function try_TumblingWindowClause (line 33859) | function try_TumblingWindowClause()
  function parse_SlidingWindowClause (line 33885) | function parse_SlidingWindowClause()
  function try_SlidingWindowClause (line 33914) | function try_SlidingWindowClause()
  function parse_WindowStartCondition (line 33936) | function parse_WindowStartCondition()
  function try_WindowStartCondition (line 33951) | function try_WindowStartCondition()
  function parse_WindowEndCondition (line 33962) | function parse_WindowEndCondition()
  function try_WindowEndCondition (line 33982) | function try_WindowEndCondition()
  function parse_WindowVars (line 33998) | function parse_WindowVars()
  function try_WindowVars (line 34037) | function try_WindowVars()
  function parse_CurrentItem (line 34070) | function parse_CurrentItem()
  function try_CurrentItem (line 34077) | function try_CurrentItem()
  function parse_PreviousItem (line 34082) | function parse_PreviousItem()
  function try_PreviousItem (line 34089) | function try_PreviousItem()
  function parse_NextItem (line 34094) | function parse_NextItem()
  function try_NextItem (line 34101) | function try_NextItem()
  function parse_CountClause (line 34106) | function parse_CountClause()
  function try_CountClause (line 34118) | function try_CountClause()
  function parse_WhereClause (line 34127) | function parse_WhereClause()
  function try_WhereClause (line 34137) | function try_WhereClause()
  function parse_GroupByClause (line 34144) | function parse_GroupByClause()
  function try_GroupByClause (line 34156) | function try_GroupByClause()
  function parse_GroupingSpecList (line 34165) | function parse_GroupingSpecList()
  function try_GroupingSpecList (line 34184) | function try_GroupingSpecList()
  function parse_GroupingSpec (line 34200) | function parse_GroupingSpec()
  function try_GroupingSpec (line 34419) | function try_GroupingSpec()
  function parse_GroupingVariable (line 34637) | function parse_GroupingVariable()
  function try_GroupingVariable (line 34647) | function try_GroupingVariable()
  function parse_OrderByClause (line 34654) | function parse_OrderByClause()
  function try_OrderByClause (line 34677) | function try_OrderByClause()
  function parse_OrderSpecList (line 34697) | function parse_OrderSpecList()
  function try_OrderSpecList (line 34716) | function try_OrderSpecList()
  function parse_OrderSpec (line 34732) | function parse_OrderSpec()
  function try_OrderSpec (line 34741) | function try_OrderSpec()
  function parse_OrderModifier (line 34747) | function parse_OrderModifier()
  function try_OrderModifier (line 34786) | function try_OrderModifier()
  function parse_ReturnClause (line 34823) | function parse_ReturnClause()
  function try_ReturnClause (line 34833) | function try_ReturnClause()
  function parse_QuantifiedExpr (line 34840) | function parse_QuantifiedExpr()
  function try_QuantifiedExpr (line 34872) | function try_QuantifiedExpr()
  function parse_QuantifiedVarDecl (line 34899) | function parse_QuantifiedVarDecl()
  function try_QuantifiedVarDecl (line 34920) | function try_QuantifiedVarDecl()
  function parse_SwitchExpr (line 34936) | function parse_SwitchExpr()
  function try_SwitchExpr (line 34965) | function try_SwitchExpr()
  function parse_SwitchCaseClause (line 34989) | function parse_SwitchCaseClause()
  function try_SwitchCaseClause (line 35010) | function try_SwitchCaseClause()
  function parse_SwitchCaseOperand (line 35027) | function parse_SwitchCaseOperand()
  function try_SwitchCaseOperand (line 35034) | function try_SwitchCaseOperand()
  function parse_TypeswitchExpr (line 35039) | function parse_TypeswitchExpr()
  function try_TypeswitchExpr (line 35076) | function try_TypeswitchExpr()
  function parse_CaseClause (line 35107) | function parse_CaseClause()
  function try_CaseClause (line 35131) | function try_CaseClause()
  function parse_SequenceTypeUnion (line 35150) | function parse_SequenceTypeUnion()
  function try_SequenceTypeUnion (line 35169) | function try_SequenceTypeUnion()
  function parse_IfExpr (line 35185) | function parse_IfExpr()
  function try_IfExpr (line 35207) | function try_IfExpr()
  function parse_TryCatchExpr (line 35224) | function parse_TryCatchExpr()
  function try_TryCatchExpr (line 35242) | function try_TryCatchExpr()
  function parse_TryClause (line 35257) | function parse_TryClause()
  function try_TryClause (line 35270) | function try_TryClause()
  function parse_TryTargetExpr (line 35280) | function parse_TryTargetExpr()
  function try_TryTargetExpr (line 35287) | function try_TryTargetExpr()
  function parse_CatchClause (line 35292) | function parse_CatchClause()
  function try_CatchClause (line 35307) | function try_CatchClause()
  function parse_CatchErrorList (line 35318) | function parse_CatchErrorList()
  function try_CatchErrorList (line 35337) | function try_CatchErrorList()
  function parse_OrExpr (line 35353) | function parse_OrExpr()
  function try_OrExpr (line 35371) | function try_OrExpr()
  function parse_AndExpr (line 35386) | function parse_AndExpr()
  function try_AndExpr (line 35404) | function try_AndExpr()
  function parse_ComparisonExpr (line 35419) | function parse_ComparisonExpr()
  function try_ComparisonExpr (line 35467) | function try_ComparisonExpr()
  function parse_FTContainsExpr (line 35509) | function parse_FTContainsExpr()
  function try_FTContainsExpr (line 35530) | function try_FTContainsExpr()
  function parse_StringConcatExpr (line 35547) | function parse_StringConcatExpr()
  function try_StringConcatExpr (line 35565) | function try_StringConcatExpr()
  function parse_RangeExpr (line 35580) | function parse_RangeExpr()
  function try_RangeExpr (line 35594) | function try_RangeExpr()
  function parse_AdditiveExpr (line 35605) | function parse_AdditiveExpr()
  function try_AdditiveExpr (line 35631) | function try_AdditiveExpr()
  function parse_MultiplicativeExpr (line 35654) | function parse_MultiplicativeExpr()
  function try_MultiplicativeExpr (line 35688) | function try_MultiplicativeExpr()
  function parse_UnionExpr (line 35719) | function parse_UnionExpr()
  function try_UnionExpr (line 35745) | function try_UnionExpr()
  function parse_IntersectExceptExpr (line 35768) | function parse_IntersectExceptExpr()
  function try_IntersectExceptExpr (line 35795) | function try_IntersectExceptExpr()
  function parse_InstanceofExpr (line 35819) | function parse_InstanceofExpr()
  function try_InstanceofExpr (line 35836) | function try_InstanceofExpr()
  function parse_TreatExpr (line 35850) | function parse_TreatExpr()
  function try_TreatExpr (line 35867) | function try_TreatExpr()
  function parse_CastableExpr (line 35881) | function parse_CastableExpr()
  function try_CastableExpr (line 35898) | function try_CastableExpr()
  function parse_CastExpr (line 35912) | function parse_CastExpr()
  function try_CastExpr (line 35929) | function try_CastExpr()
  function parse_UnaryExpr (line 35943) | function parse_UnaryExpr()
  function try_UnaryExpr (line 35968) | function try_UnaryExpr()
  function parse_ValueExpr (line 35990) | function parse_ValueExpr()
  function try_ValueExpr (line 36018) | function try_ValueExpr()
  function parse_SimpleMapExpr (line 36044) | function parse_SimpleMapExpr()
  function try_SimpleMapExpr (line 36062) | function try_SimpleMapExpr()
  function parse_GeneralComp (line 36077) | function parse_GeneralComp()
  function try_GeneralComp (line 36103) | function try_GeneralComp()
  function parse_ValueComp (line 36127) | function parse_ValueComp()
  function try_ValueComp (line 36153) | function try_ValueComp()
  function parse_NodeComp (line 36177) | function parse_NodeComp()
  function try_NodeComp (line 36194) | function try_NodeComp()
  function parse_ValidateExpr (line 36209) | function parse_ValidateExpr()
  function try_ValidateExpr (line 36238) | function try_ValidateExpr()
  function parse_ValidationMode (line 36262) | function parse_ValidationMode()
  function try_ValidationMode (line 36276) | function try_ValidationMode()
  function parse_ExtensionExpr (line 36288) | function parse_ExtensionExpr()
  function try_ExtensionExpr (line 36312) | function try_ExtensionExpr()
  function parse_Pragma (line 36332) | function parse_Pragma()
  function try_Pragma (line 36354) | function try_Pragma()
  function parse_PathExpr (line 36374) | function parse_PathExpr()
  function try_PathExpr (line 36429) | function try_PathExpr()
  function parse_RelativePathExpr (line 36480) | function parse_RelativePathExpr()
  function try_RelativePathExpr (line 36629) | function try_RelativePathExpr()
  function parse_StepExpr (line 36776) | function parse_StepExpr()
  function try_StepExpr (line 37775) | function try_StepExpr()
  function parse_AxisStep (line 38775) | function parse_AxisStep()
  function try_AxisStep (line 38809) | function try_AxisStep()
  function parse_ForwardStep (line 38840) | function parse_ForwardStep()
  function try_ForwardStep (line 38879) | function try_ForwardStep()
  function parse_ForwardAxis (line 38915) | function parse_ForwardAxis()
  function try_ForwardAxis (line 38958) | function try_ForwardAxis()
  function parse_AbbrevForwardStep (line 38999) | function parse_AbbrevForwardStep()
  function try_AbbrevForwardStep (line 39012) | function try_AbbrevForwardStep()
  function parse_ReverseStep (line 39022) | function parse_ReverseStep()
  function try_ReverseStep (line 39039) | function try_ReverseStep()
  function parse_ReverseAxis (line 39053) | function parse_ReverseAxis()
  function try_ReverseAxis (line 39086) | function try_ReverseAxis()
  function parse_AbbrevReverseStep (line 39117) | function parse_AbbrevReverseStep()
  function try_AbbrevReverseStep (line 39124) | function try_AbbrevReverseStep()
  function parse_NodeTest (line 39129) | function parse_NodeTest()
  function try_NodeTest (line 39169) | function try_NodeTest()
  function parse_NameTest (line 39207) | function parse_NameTest()
  function try_NameTest (line 39221) | function try_NameTest()
  function parse_PostfixExpr (line 39233) | function parse_PostfixExpr()
  function try_PostfixExpr (line 39259) | function try_PostfixExpr()
  function parse_ArgumentList (line 39281) | function parse_ArgumentList()
  function try_ArgumentList (line 39307) | function try_ArgumentList()
  function parse_PredicateList (line 39329) | function parse_PredicateList()
  function try_PredicateList (line 39345) | function try_PredicateList()
  function parse_Predicate (line 39358) | function parse_Predicate()
  function try_Predicate (line 39369) | function try_Predicate()
  function parse_Literal (line 39377) | function parse_Literal()
  function try_Literal (line 39391) | function try_Literal()
  function parse_NumericLiteral (line 39403) | function parse_NumericLiteral()
  function try_NumericLiteral (line 39420) | function try_NumericLiteral()
  function parse_VarRef (line 39435) | function parse_VarRef()
  function try_VarRef (line 39445) | function try_VarRef()
  function parse_VarName (line 39452) | function parse_VarName()
  function try_VarName (line 39459) | function try_VarName()
  function parse_ParenthesizedExpr (line 39464) | function parse_ParenthesizedExpr()
  function try_ParenthesizedExpr (line 39478) | function try_ParenthesizedExpr()
  function parse_ContextItemExpr (line 39489) | function parse_ContextItemExpr()
  function try_ContextItemExpr (line 39496) | function try_ContextItemExpr()
  function parse_OrderedExpr (line 39501) | function parse_OrderedExpr()
  function try_OrderedExpr (line 39514) | function try_OrderedExpr()
  function parse_UnorderedExpr (line 39524) | function parse_UnorderedExpr()
  function try_UnorderedExpr (line 39537) | function try_UnorderedExpr()
  function parse_FunctionCall (line 39547) | function parse_FunctionCall()
  function try_FunctionCall (line 39557) | function try_FunctionCall()
  function parse_Argument (line 39564) | function parse_Argument()
  function try_Argument (line 39578) | function try_Argument()
  function parse_ArgumentPlaceholder (line 39590) | function parse_ArgumentPlaceholder()
  function try_ArgumentPlaceholder (line 39597) | function try_ArgumentPlaceholder()
  function parse_Constructor (line 39602) | function parse_Constructor()
  function try_Constructor (line 39618) | function try_Constructor()
  function parse_DirectConstructor (line 39632) | function parse_DirectConstructor()
  function try_DirectConstructor (line 39649) | function try_DirectConstructor()
  function parse_DirElemConstructor (line 39664) | function parse_DirElemConstructor()
  function try_DirElemConstructor (line 39701) | function try_DirElemConstructor()
  function parse_DirAttributeList (line 39736) | function parse_DirAttributeList()
  function try_DirAttributeList (line 39769) | function try_DirAttributeList()
  function parse_DirAttributeValue (line 39800) | function parse_DirAttributeValue()
  function try_DirAttributeValue (line 39849) | function try_DirAttributeValue()
  function parse_QuotAttrValueContent (line 39896) | function parse_QuotAttrValueContent()
  function try_QuotAttrValueContent (line 39910) | function try_QuotAttrValueContent()
  function parse_AposAttrValueContent (line 39922) | function parse_AposAttrValueContent()
  function try_AposAttrValueContent (line 39936) | function try_AposAttrValueContent()
  function parse_DirElemContent (line 39948) | function parse_DirElemContent()
  function try_DirElemContent (line 39970) | function try_DirElemContent()
  function parse_DirCommentConstructor (line 39990) | function parse_DirCommentConstructor()
  function try_DirCommentConstructor (line 40001) | function try_DirCommentConstructor()
  function parse_DirPIConstructor (line 40010) | function parse_DirPIConstructor()
  function try_DirPIConstructor (line 40028) | function try_DirPIConstructor()
  function parse_ComputedConstructor (line 40044) | function parse_ComputedConstructor()
  function try_ComputedConstructor (line 40073) | function try_ComputedConstructor()
  function parse_CompElemConstructor (line 40100) | function parse_CompElemConstructor()
  function try_CompElemConstructor (line 40130) | function try_CompElemConstructor()
  function parse_CompNamespaceConstructor (line 40155) | function parse_CompNamespaceConstructor()
  function try_CompNamespaceConstructor (line 40182) | function try_CompNamespaceConstructor()
  function parse_Prefix (line 40204) | function parse_Prefix()
  function try_Prefix (line 40211) | function try_Prefix()
  function parse_PrefixExpr (line 40216) | function parse_PrefixExpr()
  function try_PrefixExpr (line 40223) | function try_PrefixExpr()
  function parse_URIExpr (line 40228) | function parse_URIExpr()
  function try_URIExpr (line 40235) | function try_URIExpr()
  function parse_FunctionItemExpr (line 40240) | function parse_FunctionItemExpr()
  function try_FunctionItemExpr (line 40263) | function try_FunctionItemExpr()
  function parse_NamedFunctionRef (line 40284) | function parse_NamedFunctionRef()
  function try_NamedFunctionRef (line 40295) | function try_NamedFunctionRef()
  function parse_InlineFunctionExpr (line 40304) | function parse_InlineFunctionExpr()
  function try_InlineFunctionExpr (line 40341) | function try_InlineFunctionExpr()
  function parse_SingleType (line 40372) | function parse_SingleType()
  function try_SingleType (line 40384) | function try_SingleType()
  function parse_TypeDeclaration (line 40394) | function parse_TypeDeclaration()
  function try_TypeDeclaration (line 40404) | function try_TypeDeclaration()
  function parse_SequenceType (line 40411) | function parse_SequenceType()
  function try_SequenceType (line 40449) | function try_SequenceType()
  function parse_OccurrenceIndicator (line 40484) | function parse_OccurrenceIndicator()
  function try_OccurrenceIndicator (line 40501) | function try_OccurrenceIndicator()
  function parse_ItemType (line 40516) | function parse_ItemType()
  function try_ItemType (line 40584) | function try_ItemType()
  function parse_JSONTest (line 40650) | function parse_JSONTest()
  function try_JSONTest (line 40667) | function try_JSONTest()
  function parse_StructuredItemTest (line 40682) | function parse_StructuredItemTest()
  function try_StructuredItemTest (line 40693) | function try_StructuredItemTest()
  function parse_JSONItemTest (line 40702) | function parse_JSONItemTest()
  function try_JSONItemTest (line 40713) | function try_JSONItemTest()
  function parse_JSONObjectTest (line 40722) | function parse_JSONObjectTest()
  function try_JSONObjectTest (line 40733) | function try_JSONObjectTest()
  function parse_JSONArrayTest (line 40742) | function parse_JSONArrayTest()
  function try_JSONArrayTest (line 40753) | function try_JSONArrayTest()
  function parse_AtomicOrUnionType (line 40762) | function parse_AtomicOrUnionType()
  function try_AtomicOrUnionType (line 40769) | function try_AtomicOrUnionType()
  function parse_KindTest (line 40774) | function parse_KindTest()
  function try_KindTest (line 40812) | function try_KindTest()
  function parse_AnyKindTest (line 40848) | function parse_AnyKindTest()
  function try_AnyKindTest (line 40859) | function try_AnyKindTest()
  function parse_DocumentTest (line 40868) | function parse_DocumentTest()
  function try_DocumentTest (line 40893) | function try_DocumentTest()
  function parse_TextTest (line 40914) | function parse_TextTest()
  function try_TextTest (line 40925) | function try_TextTest()
  function parse_CommentTest (line 40934) | function parse_CommentTest()
  function try_CommentTest (line 40945) | function try_CommentTest()
  function parse_NamespaceNodeTest (line 40954) | function parse_NamespaceNodeTest()
  function try_NamespaceNodeTest (line 40965) | function try_NamespaceNodeTest()
  function parse_PITest (line 40974) | function parse_PITest()
  function try_PITest (line 40998) | function try_PITest()
  function parse_AttributeTest (line 41019) | function parse_AttributeTest()
  function try_AttributeTest (line 41044) | function try_AttributeTest()
  function parse_AttribNameOrWildcard (line 41065) | function parse_AttribNameOrWildcard()
  function try_AttribNameOrWildcard (line 41079) | function try_AttribNameOrWildcard()
  function parse_SchemaAttributeTest (line 41091) | function parse_SchemaAttributeTest()
  function try_SchemaAttributeTest (line 41105) | function try_SchemaAttributeTest()
  function parse_AttributeDeclaration (line 41116) | function parse_AttributeDeclaration()
  function try_AttributeDeclaration (line 41123) | function try_AttributeDeclaration()
  function parse_ElementTest (line 41128) | function parse_ElementTest()
  function try_ElementTest (line 41158) | function try_ElementTest()
  function parse_ElementNameOrWildcard (line 41184) | function parse_ElementNameOrWildcard()
  function try_ElementNameOrWildcard (line 41198) | function try_ElementNameOrWildcard()
  function parse_SchemaElementTest (line 41210) | function parse_SchemaElementTest()
  function try_SchemaElementTest (line 41224) | function try_SchemaElementTest()
  function parse_ElementDeclaration (line 41235) | function parse_ElementDeclaration()
  function try_ElementDeclaration (line 41242) | function try_ElementDeclaration()
  function parse_AttributeName (line 41247) | function parse_AttributeName()
  function try_AttributeName (line 41254) | function try_AttributeName()
  function parse_ElementName (line 41259) | function parse_ElementName()
  function try_ElementName (line 41266) | function try_ElementName()
  function parse_SimpleTypeName (line 41271) | function parse_SimpleTypeName()
  function try_SimpleTypeName (line 41278) | function try_SimpleTypeName()
  function parse_TypeName (line 41283) | function parse_TypeName()
  function try_TypeName (line 41290) | function try_TypeName()
  function parse_FunctionTest (line 41295) | function parse_FunctionTest()
  function try_FunctionTest (line 41349) | function try_FunctionTest()
  function parse_AnyFunctionTest (line 41401) | function parse_AnyFunctionTest()
  function try_AnyFunctionTest (line 41414) | function try_AnyFunctionTest()
  function parse_TypedFunctionTest (line 41425) | function parse_TypedFunctionTest()
  function try_TypedFunctionTest (line 41458) | function try_TypedFunctionTest()
  function parse_ParenthesizedItemType (line 41486) | function parse_ParenthesizedItemType()
  function try_ParenthesizedItemType (line 41498) | function try_ParenthesizedItemType()
  function parse_RevalidationDecl (line 41507) | function parse_RevalidationDecl()
  function parse_InsertExprTargetChoice (line 41528) | function parse_InsertExprTargetChoice()
  function try_InsertExprTargetChoice (line 41559) | function try_InsertExprTargetChoice()
  function parse_InsertExpr (line 41588) | function parse_InsertExpr()
  function try_InsertExpr (line 41612) | function try_InsertExpr()
  function parse_DeleteExpr (line 41631) | function parse_DeleteExpr()
  function try_DeleteExpr (line 41650) | function try_DeleteExpr()
  function parse_ReplaceExpr (line 41666) | function parse_ReplaceExpr()
  function try_ReplaceExpr (line 41689) | function try_ReplaceExpr()
  function parse_RenameExpr (line 41708) | function parse_RenameExpr()
  function try_RenameExpr (line 41724) | function try_RenameExpr()
  function parse_SourceExpr (line 41736) | function parse_SourceExpr()
  function try_SourceExpr (line 41743) | function try_SourceExpr()
  function parse_TargetExpr (line 41748) | function parse_TargetExpr()
  function try_TargetExpr (line 41755) | function try_TargetExpr()
  function parse_NewNameExpr (line 41760) | function parse_NewNameExpr()
  function try_NewNameExpr (line 41767) | function try_NewNameExpr()
  function parse_TransformExpr (line 41772) | function parse_TransformExpr()
  function try_TransformExpr (line 41801) | function try_TransformExpr()
  function parse_TransformSpec (line 41824) | function parse_TransformSpec()
  function try_TransformSpec (line 41839) | function try_TransformSpec()
  function parse_FTSelection (line 41850) | function parse_FTSelection()
  function try_FTSelection (line 41882) | function try_FTSelection()
  function parse_FTWeight (line 41911) | function parse_FTWeight()
  function try_FTWeight (line 41924) | function try_FTWeight()
  function parse_FTOr (line 41934) | function parse_FTOr()
  function try_FTOr (line 41952) | function try_FTOr()
  function parse_FTAnd (line 41967) | function parse_FTAnd()
  function try_FTAnd (line 41985) | function try_FTAnd()
  function parse_FTMildNot (line 42000) | function parse_FTMildNot()
  function try_FTMildNot (line 42021) | function try_FTMildNot()
  function parse_FTUnaryNot (line 42039) | function parse_FTUnaryNot()
  function try_FTUnaryNot (line 42052) | function try_FTUnaryNot()
  function parse_FTPrimaryWithOptions (line 42062) | function parse_FTPrimaryWithOptions()
  function try_FTPrimaryWithOptions (line 42080) | function try_FTPrimaryWithOptions()
  function parse_FTPrimary (line 42094) | function parse_FTPrimary()
  function try_FTPrimary (line 42121) | function try_FTPrimary()
  function parse_FTWords (line 42144) | function parse_FTWords()
  function try_FTWords (line 42159) | function try_FTWords()
  function parse_FTWordsValue (line 42171) | function parse_FTWordsValue()
  function try_FTWordsValue (line 42189) | function try_FTWordsValue()
  function parse_FTExtensionSelection (line 42204) | function parse_FTExtensionSelection()
  function try_FTExtensionSelection (line 42228) | function try_FTExtensionSelection()
  function parse_FTAnyallOption (line 42248) | function parse_FTAnyallOption()
  function try_FTAnyallOption (line 42275) | function try_FTAnyallOption()
  function parse_FTTimes (line 42300) | function parse_FTTimes()
  function try_FTTimes (line 42311) | function try_FTTimes()
  function parse_FTRange (line 42319) | function parse_FTRange()
  function try_FTRange (line 42361) | function try_FTRange()
  function parse_FTPosFilter (line 42396) | function parse_FTPosFilter()
  function try_FTPosFilter (line 42420) | function try_FTPosFilter()
  function parse_FTOrder (line 42442) | function parse_FTOrder()
  function try_FTOrder (line 42449) | function try_FTOrder()
  function parse_FTWindow (line 42454) | function parse_FTWindow()
  function try_FTWindow (line 42466) | function try_FTWindow()
  function parse_FTDistance (line 42474) | function parse_FTDistance()
  function try_FTDistance (line 42486) | function try_FTDistance()
  function parse_FTUnit (line 42494) | function parse_FTUnit()
  function try_FTUnit (line 42511) | function try_FTUnit()
  function parse_FTScope (line 42526) | function parse_FTScope()
  function try_FTScope (line 42543) | function try_FTScope()
  function parse_FTBigUnit (line 42557) | function parse_FTBigUnit()
  function try_FTBigUnit (line 42571) | function try_FTBigUnit()
  function parse_FTContent (line 42583) | function parse_FTContent()
  function try_FTContent (line 42608) | function try_FTContent()
  function parse_FTMatchOptions (line 42631) | function parse_FTMatchOptions()
  function try_FTMatchOptions (line 42649) | function try_FTMatchOptions()
  function parse_FTMatchOption (line 42664) | function parse_FTMatchOption()
  function try_FTMatchOption (line 42708) | function try_FTMatchOption()
  function parse_FTCaseOption (line 42750) | function parse_FTCaseOption()
  function try_FTCaseOption (line 42776) | function try_FTCaseOption()
  function parse_FTDiacriticsOption (line 42800) | function parse_FTDiacriticsOption()
  function try_FTDiacriticsOption (line 42816) | function try_FTDiacriticsOption()
  function parse_FTStemOption (line 42830) | function parse_FTStemOption()
  function try_FTStemOption (line 42846) | function try_FTStemOption()
  function parse_FTThesaurusOption (line 42860) | function parse_FTThesaurusOption()
  function try_FTThesaurusOption (line 42912) | function try_FTThesaurusOption()
  function parse_FTThesaurusID (line 42959) | function parse_FTThesaurusID()
  function try_FTThesaurusID (line 42994) | function try_FTThesaurusID()
  function parse_FTLiteralRange (line 43026) | function parse_FTLiteralRange()
  function try_FTLiteralRange (line 43064) | function try_FTLiteralRange()
  function parse_FTStopWordOption (line 43100) | function parse_FTStopWordOption()
  function try_FTStopWordOption (line 43152) | function try_FTStopWordOption()
  function parse_FTStopWords (line 43199) | function parse_FTStopWords()
  function try_FTStopWords (line 43229) | function try_FTStopWords()
  function parse_FTStopWordsInclExcl (line 43257) | function parse_FTStopWordsInclExcl()
  function try_FTStopWordsInclExcl (line 43274) | function try_FTStopWordsInclExcl()
  function parse_FTLanguageOption (line 43288) | function parse_FTLanguageOption()
  function try_FTLanguageOption (line 43297) | function try_FTLanguageOption()
  function parse_FTWildCardOption (line 43304) | function parse_FTWildCardOption()
  function try_FTWildCardOption (line 43320) | function try_FTWildCardOption()
  function parse_FTExtensionOption (line 43334) | function parse_FTExtensionOption()
  function try_FTExtensionOption (line 43346) | function try_FTExtensionOption()
  function parse_FTIgnoreOption (line 43355) | function p
Copy disabled (too large) Download .json
Condensed preview — 1553 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (24,010K chars).
[
  {
    "path": ".gitattributes",
    "chars": 54,
    "preview": "*.php linguist-language=PHP\n*.js linguist-language=PHP"
  },
  {
    "path": ".gitbook.yaml",
    "chars": 78,
    "preview": "root: ./docs/\n\nstructure:\n  readme: ./introduction.md\n  summary: ./summary.md\n"
  },
  {
    "path": ".github/FUNDING.yml",
    "chars": 665,
    "preview": "# These are supported funding model platforms\n\ngithub: [tnylea, fletch3555, emptynick]\npatreon: # Replace with a single "
  },
  {
    "path": ".github/ISSUE_TEMPLATE/BUG-REPORT.yml",
    "chars": 2091,
    "preview": "name: Bug Report\ndescription: Create a report to help us improve\nlabels: [possible bug]\nbody:\n  - type: markdown\n    att"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml",
    "chars": 1804,
    "preview": "name: Feature request\ndescription: Suggest an idea for Voyager\nlabels: [feature]\nbody:\n  - type: markdown\n    attributes"
  },
  {
    "path": ".github/ISSUE_TEMPLATE/config.yml",
    "chars": 172,
    "preview": "blank_issues_enabled: false\ncontact_links:\n  - name: Ask a question\n    url: https://voyager-slack-invitation.herokuapp."
  },
  {
    "path": ".github/SECURITY.yml",
    "chars": 283,
    "preview": "If you have a potential security concern to report, please message @fletch3555 or @emptynick directly in our slack group"
  },
  {
    "path": ".github/workflows/automerge.yml",
    "chars": 1189,
    "preview": "name: automerge\n\non:\n  push:\n    branches-ignore: '*' # ignore everything\n#  pull_request:\n#    types:\n#      - labeled\n"
  },
  {
    "path": ".github/workflows/compile-assets.yml",
    "chars": 698,
    "preview": "name: Compile Assets\n\non:\n  push:\n    branches:\n      - '1.*'\n    paths:\n      - 'resources/assets/**'\n      - 'package."
  },
  {
    "path": ".github/workflows/coverage.yml",
    "chars": 1204,
    "preview": "name: Coverage\n\non:\n  push:\n    branches:\n      - '1.*'\n  pull_request:\n    types:\n      - synchronize\n      - opened\n  "
  },
  {
    "path": ".github/workflows/lock.yml",
    "chars": 673,
    "preview": "name: 'Lock issues'\n\non:\n  schedule:\n    - cron: '0 0 * * *'\n\njobs:\n  lock:\n    runs-on: ubuntu-latest\n    steps:\n      "
  },
  {
    "path": ".github/workflows/test.yml",
    "chars": 1781,
    "preview": "name: Tests\n\non:\n  push:\n    branches:\n      - '1.*'\n  pull_request:\n    types:\n      - synchronize\n      - opened\n     "
  },
  {
    "path": ".gitignore",
    "chars": 100,
    "preview": "/node_modules\n.DS_Store\n.idea\nvendor\nbuild\n.lock\ncomposer.lock\n.phpunit.result.cache\n.phpunit.cache\n"
  },
  {
    "path": ".php_cs",
    "chars": 366,
    "preview": "<?php\n$excluded_folders = [\n    'node_modules',\n    'storage',\n    'vendor'\n];\n$finder = PhpCsFixer\\Finder::create()\n   "
  },
  {
    "path": "ISSUE_TEMPLATE",
    "chars": 584,
    "preview": "<!---\nIF YOU'RE POSTING A QUESTION ABOUT HOW TO USE VOYAGER, PLEASE CONSIDER ASKING IN SLACK FIRST\n\nPLEASE CONSIDER USIN"
  },
  {
    "path": "README.md",
    "chars": 5025,
    "preview": "<p align=\"center\"><a href=\"https://voyager.devdojo.com\" target=\"_blank\"><img width=\"400\" src=\"https://s3.amazonaws.com/t"
  },
  {
    "path": "composer.json",
    "chars": 1782,
    "preview": "{\n  \"name\": \"tcg/voyager\",\n  \"description\": \"A Laravel Admin Package for The Control Group to make your life easier and "
  },
  {
    "path": "docs/bread/formfields/checkbox.md",
    "chars": 1032,
    "preview": "# Checkbox\n\n```php\n{\n    \"on\" : \"On Text\",\n    \"off\" : \"Off Text\",\n    \"checked\" : true\n}\n```\n\nIn Voyager a Checkbox is "
  },
  {
    "path": "docs/bread/formfields/coordinates.md",
    "chars": 967,
    "preview": "# Coordinates\n\n## Optional Details\n\nSet these in the Edit BREAD interface\n\n### showLatLngInput / showAutocompleteInput\n\n"
  },
  {
    "path": "docs/bread/formfields/date-time.md",
    "chars": 318,
    "preview": "# Date & Timestamp\n\n```php\n{\n    \"format\" : \"%Y-%m-%d\"\n}\n```\n\nThe date & timestamp input field is where you can input a "
  },
  {
    "path": "docs/bread/formfields/dropdown.md",
    "chars": 505,
    "preview": "# Dropdown\n\n```php\n{\n    \"default\" : \"option1\",\n    \"options\" : {\n        \"option1\": \"Option 1 Text\",\n        \"option2\":"
  },
  {
    "path": "docs/bread/formfields/images.md",
    "chars": 2252,
    "preview": "# Images\n\n```php\n{\n    \"resize\": {\n        \"width\": \"1000\",\n        \"height\": null\n    },\n    \"quality\" : \"70%\",\n    \"up"
  },
  {
    "path": "docs/bread/formfields/introduction.md",
    "chars": 3967,
    "preview": "# Formfields\n\nFormfields are the hearth of Voyagers BREAD-system.  \nEach formfield represents a field in your database-t"
  },
  {
    "path": "docs/bread/formfields/media-picker.md",
    "chars": 8880,
    "preview": "# Media Picker\n\nThe media picker formfield allows you to upload/delete/select files directly from the media-manager.  \nY"
  },
  {
    "path": "docs/bread/formfields/number.md",
    "chars": 193,
    "preview": "# Number\n\n```php\n{\n    \"step\" : 0.1,\n    \"min\" : 0,\n    \"max\" : 10,\n    \"default\": 1,\n}\n```\n\nThese are standard attribut"
  },
  {
    "path": "docs/bread/formfields/tinymce.md",
    "chars": 973,
    "preview": "# TinyMCE\n\nIf you want to customize TinyMCE within Voyager, you can do so by adding a [additional JS file](../../customi"
  },
  {
    "path": "docs/bread/introduction.md",
    "chars": 4264,
    "preview": "# Introduction\n\nWhen adding or editing the current BREAD for a database table you will first see the BREAD info which al"
  },
  {
    "path": "docs/bread/relationships.md",
    "chars": 2784,
    "preview": "# Relationships\n\n## Adding a relationship\n\nUsing the BREAD builder you can easily create Relationships between tables. A"
  },
  {
    "path": "docs/core-concepts/compass.md",
    "chars": 553,
    "preview": "# Compass\n\nThe Compass section is a quick place for you to go for some link references, font references, run some comman"
  },
  {
    "path": "docs/core-concepts/database-manager.md",
    "chars": 1153,
    "preview": "# Database Manager\n\nVoyager has some awesome database tools which allow you to Add/Edit/Delete or view current database "
  },
  {
    "path": "docs/core-concepts/helper-methods.md",
    "chars": 1223,
    "preview": "# Helper methods\n\nVoyager has several helper functions that are ready to use. Here you can find the list of available fu"
  },
  {
    "path": "docs/core-concepts/media-manager.md",
    "chars": 941,
    "preview": "# Media Manager\n\nVoyager has a full-fledged Media Manager which allows you to upload files, re-name files, and delete fi"
  },
  {
    "path": "docs/core-concepts/menus-and-menu-builder.md",
    "chars": 2012,
    "preview": "# Menus and Menu Builder\n\nWith Voyager you can easily create menus for your application. In fact the Voyager admin is us"
  },
  {
    "path": "docs/core-concepts/multilanguage.md",
    "chars": 4324,
    "preview": "# Multilanguage\n\nVoyager supports multiple languages for your models.To get started, you need to configure some things f"
  },
  {
    "path": "docs/core-concepts/roles-and-permissions.md",
    "chars": 4634,
    "preview": "# Roles and Permissions\n\nVoyager comes with Roles and Permissions out of the box. Each _User_ has a _Role_ which has a s"
  },
  {
    "path": "docs/core-concepts/routing.md",
    "chars": 1012,
    "preview": "# Routing\n\nAfter running the voyager installer you will see a few new routes that have been added to your `routes/web.ph"
  },
  {
    "path": "docs/core-concepts/settings.md",
    "chars": 732,
    "preview": "# Settings\n\nThe Settings section allows you to add any site wide settings you would like. You can add an image upload se"
  },
  {
    "path": "docs/customization/action-buttons.md",
    "chars": 2250,
    "preview": "# Action buttons\n\n## Action Buttons\n\nAction buttons are displayed when browsing a BREAD next to each row\n\n![](../.gitboo"
  },
  {
    "path": "docs/customization/adding-custom-formfields.md",
    "chars": 2006,
    "preview": "# Adding custom Formfields\n\nYou can easily add a new Formfield to Voyager. In the example below we will add a number for"
  },
  {
    "path": "docs/customization/additional-css-js.md",
    "chars": 744,
    "preview": "# Additional CSS and JS\n\nAs of the latest version you can now add additional CSS and JS files to the voyager master blad"
  },
  {
    "path": "docs/customization/bread-accessors.md",
    "chars": 681,
    "preview": "# BREAD accessors\n\nSometimes you want to format an attribute only for one \\(or some\\) of the BREAD-actions.  \nFor exampl"
  },
  {
    "path": "docs/customization/coordinates.md",
    "chars": 1091,
    "preview": "# Coordinates\n\nWith Voyager you are able to store coordinates and select them from a map.  \nTo do so, you first need to "
  },
  {
    "path": "docs/customization/custom-guard.md",
    "chars": 2197,
    "preview": "# Custom guard\n\nStarting with Voyager 1.2 you can define a \\(custom\\) guard which is used throughout Voyager.  \nTo do so"
  },
  {
    "path": "docs/customization/custom-realtionship-attributes.md",
    "chars": 642,
    "preview": "# Custom relationship attributes\n\nWith Voyager 1.1 you are able to define additional attributes which you can show in a "
  },
  {
    "path": "docs/customization/enabling-soft-delete.md",
    "chars": 1105,
    "preview": "# Enabling Soft-Delete\n\nThis is only to assist with enabling soft-deletion for your models within Voyager. Please refer "
  },
  {
    "path": "docs/customization/overriding-files.md",
    "chars": 3533,
    "preview": "# Overriding files\n\n## Overriding BREAD Views\n\nYou can override any of the BREAD views for a **single** BREAD by creatin"
  },
  {
    "path": "docs/customization/overriding-routes.md",
    "chars": 396,
    "preview": "# Overriding Routes\n\nYou can override any Voyager routes by writing the routes you want to overwrite below `Voyager::rou"
  },
  {
    "path": "docs/getting-started/configurations.md",
    "chars": 7678,
    "preview": "# Configurations\n\nWith the installation of Voyager you will find a new configuration file located at `config/voyager.php"
  },
  {
    "path": "docs/getting-started/installation.md",
    "chars": 3746,
    "preview": "# Installation\n\nVoyager is super easy to install. After creating your new Laravel application you can include the Voyage"
  },
  {
    "path": "docs/getting-started/prerequisites.md",
    "chars": 262,
    "preview": "# Prerequisites\n\nBefore installing Voyager make sure you have installed one of the following versions of Laravel:\n- Lara"
  },
  {
    "path": "docs/getting-started/upgrading.md",
    "chars": 703,
    "preview": "# Upgrading\n\n## Upgrading 1.5 to 1.6\n\n### Update your Composer.json\n\nTo update to the latest version inside of your comp"
  },
  {
    "path": "docs/getting-started/what-is-voyager.md",
    "chars": 1222,
    "preview": "# What is Voyager\n\nBefore installing Voyager it is very important to take a quick moment to learn _what it is_ & _what i"
  },
  {
    "path": "docs/introduction.md",
    "chars": 516,
    "preview": "# Introduction\n\nWelcome to the Voyager documentation for version 1.6. This documentation will teach you how to install, "
  },
  {
    "path": "docs/summary.md",
    "chars": 2119,
    "preview": "# Table of contents\n\n* [Introduction](introduction.md)\n\n## Getting started\n\n* [What is Voyager](getting-started/what-is-"
  },
  {
    "path": "docs/troubleshooting/missing-required-parameter.md",
    "chars": 601,
    "preview": "# Missing required parameter\n\n**Symptom:** You get an error page saying\n\n```text\nMissing required parameters for [Route."
  },
  {
    "path": "docs/troubleshooting/using-https.md",
    "chars": 953,
    "preview": "# Using HTTPS on yours site\n\n**Symptom:** When visiting your site with HTTPS, images within Voyager fail to load.\n\n**Cau"
  },
  {
    "path": "license",
    "chars": 1074,
    "preview": "MIT License\n\nCopyright (c) 2016 The Control Group\n\nPermission is hereby granted, free of charge, to any person obtaining"
  },
  {
    "path": "migrations/2016_01_01_000000_add_voyager_user_fields.php",
    "chars": 932,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\n\nclass AddVoyagerUserFields extends Migration\n{\n    /**\n     * Run "
  },
  {
    "path": "migrations/2016_01_01_000000_create_data_types_table.php",
    "chars": 1895,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\n\nclass CreateDataTypesTab"
  },
  {
    "path": "migrations/2016_05_19_173453_create_menu_table.php",
    "chars": 1326,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\n\nclass CreateMenuTable ex"
  },
  {
    "path": "migrations/2016_10_21_190000_create_roles_table.php",
    "chars": 671,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2016_10_21_190000_create_settings_table.php",
    "chars": 837,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2016_11_30_135954_create_permission_table.php",
    "chars": 692,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2016_11_30_141208_create_permission_role_table.php",
    "chars": 932,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2016_12_26_201236_data_types__add__server_side.php",
    "chars": 701,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_01_13_000000_add_route_to_menu_items_table.php",
    "chars": 1023,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_01_14_005015_create_translations_table.php",
    "chars": 909,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_01_15_000000_make_table_name_nullable_in_permissions_table.php",
    "chars": 593,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_03_06_000000_add_controller_to_data_types_table.php",
    "chars": 691,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_04_21_000000_add_order_to_data_rows_table.php",
    "chars": 671,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_07_05_210000_add_policyname_to_data_types_table.php",
    "chars": 654,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\n\nclass AddPolicyNameToDat"
  },
  {
    "path": "migrations/2017_08_05_000000_add_group_to_settings_table.php",
    "chars": 666,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_11_26_013050_add_user_role_relationship.php",
    "chars": 863,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2017_11_26_015000_create_user_roles_table.php",
    "chars": 1150,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2018_03_11_000000_add_user_settings.php",
    "chars": 680,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2018_03_14_000000_add_details_to_data_types_table.php",
    "chars": 681,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "migrations/2018_03_16_000000_make_settings_value_nullable.php",
    "chars": 793,
    "preview": "<?php\n\nuse Illuminate\\Database\\Migrations\\Migration;\nuse Illuminate\\Database\\Schema\\Blueprint;\nuse Illuminate\\Support\\Fa"
  },
  {
    "path": "mix-manifest.json",
    "chars": 58553,
    "preview": "{\n    \"/publishable/assets/js/app.js\": \"/publishable/assets/js/app.js\",\n    \"/publishable/assets/css/app.css\": \"/publish"
  },
  {
    "path": "mix.js",
    "chars": 570,
    "preview": "!function(n){function t(e){if(r[e])return r[e].exports;var o=r[e]={i:e,l:!1,exports:{}};return n[e].call(o.exports,o,o.e"
  },
  {
    "path": "package.json",
    "chars": 1768,
    "preview": "{\n  \"private\": true,\n  \"scripts\": {\n    \"dev\": \"npm run development\",\n    \"development\": \"cross-env NODE_ENV=development"
  },
  {
    "path": "phpunit.xml",
    "chars": 1096,
    "preview": "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<phpunit xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" backupGlobals=\"fal"
  },
  {
    "path": "publishable/assets/css/app.css",
    "chars": 476912,
    "preview": "@charset \"UTF-8\";\n/*!\n * Bootstrap v3.4.1 (https://getbootstrap.com/)\n * Copyright 2011-2019 Twitter, Inc.\n * Licensed u"
  },
  {
    "path": "publishable/assets/css/rtl.css",
    "chars": 8093,
    "preview": "/*\n * Right-To-Left (RTL) Support\n * ----------\n */\n\n\n/*login page*/\n[dir=\"rtl\"] body.login .logo-title-container\n{\n    "
  },
  {
    "path": "publishable/assets/fonts/icons-reference.html",
    "chars": 64400,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\">\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE="
  },
  {
    "path": "publishable/assets/js/ace/libs/ace.js",
    "chars": 764569,
    "preview": "/* ***** BEGIN LICENSE BLOCK *****\n * Distributed under the BSD license:\n *\n * Copyright (c) 2010, Ajax.org B.V.\n * All "
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-beautify.js",
    "chars": 13363,
    "preview": "ace.define(\"ace/ext/beautify\",[\"require\",\"exports\",\"module\",\"ace/token_iterator\"], function(require, exports, module){//"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-code_lens.js",
    "chars": 8186,
    "preview": "ace.define(\"ace/ext/code_lens\",[\"require\",\"exports\",\"module\",\"ace/line_widgets\",\"ace/lib/event\",\"ace/lib/lang\",\"ace/lib/"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-elastic_tabstops_lite.js",
    "chars": 8915,
    "preview": "ace.define(\"ace/ext/elastic_tabstops_lite\",[\"require\",\"exports\",\"module\",\"ace/editor\",\"ace/config\"], function(require, e"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-emmet.js",
    "chars": 49393,
    "preview": "ace.define(\"ace/snippets\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\",\"ace/lib/oop\",\"ace/lib/event_emitter\",\"ace/lib/lan"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-error_marker.js",
    "chars": 333,
    "preview": "\n;                (function() {\n                    ace.require([\"ace/ext/error_marker\"], function(m) {\n                "
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-hardwrap.js",
    "chars": 4369,
    "preview": "ace.define(\"ace/ext/hardwrap\",[\"require\",\"exports\",\"module\",\"ace/range\",\"ace/editor\",\"ace/config\"], function(require, ex"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-keybinding_menu.js",
    "chars": 6754,
    "preview": "ace.define(\"ace/ext/menu_tools/settings_menu.css\",[\"require\",\"exports\",\"module\"], function(require, exports, module){mod"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-language_tools.js",
    "chars": 78537,
    "preview": "ace.define(\"ace/snippets\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\",\"ace/lib/oop\",\"ace/lib/event_emitter\",\"ace/lib/lan"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-linking.js",
    "chars": 2008,
    "preview": "ace.define(\"ace/ext/linking\",[\"require\",\"exports\",\"module\",\"ace/editor\",\"ace/config\"], function(require, exports, module"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-modelist.js",
    "chars": 6782,
    "preview": "ace.define(\"ace/ext/modelist\",[\"require\",\"exports\",\"module\"], function(require, exports, module){\"use strict\";\nvar modes"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-options.js",
    "chars": 25588,
    "preview": "ace.define(\"ace/ext/menu_tools/settings_menu.css\",[\"require\",\"exports\",\"module\"], function(require, exports, module){mod"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-prompt.js",
    "chars": 100401,
    "preview": "ace.define(\"ace/ext/menu_tools/get_editor_keyboard_shortcuts\",[\"require\",\"exports\",\"module\",\"ace/lib/keys\"], function(re"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-rtl.js",
    "chars": 4641,
    "preview": "ace.define(\"ace/ext/rtl\",[\"require\",\"exports\",\"module\",\"ace/editor\",\"ace/config\"], function(require, exports, module){\"u"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-searchbox.js",
    "chars": 18111,
    "preview": "ace.define(\"ace/ext/searchbox.css\",[\"require\",\"exports\",\"module\"], function(require, exports, module){module.exports = \""
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-settings_menu.js",
    "chars": 26505,
    "preview": "ace.define(\"ace/ext/menu_tools/settings_menu.css\",[\"require\",\"exports\",\"module\"], function(require, exports, module){mod"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-spellcheck.js",
    "chars": 2522,
    "preview": "ace.define(\"ace/ext/spellcheck\",[\"require\",\"exports\",\"module\",\"ace/lib/event\",\"ace/editor\",\"ace/config\"], function(requi"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-split.js",
    "chars": 6551,
    "preview": "ace.define(\"ace/split\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/lib/event_emitter\",\"ace/editor\",\""
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-static_highlight.js",
    "chars": 7272,
    "preview": "ace.define(\"ace/ext/static.css\",[\"require\",\"exports\",\"module\"], function(require, exports, module){module.exports = \".ac"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-statusbar.js",
    "chars": 1884,
    "preview": "ace.define(\"ace/ext/statusbar\",[\"require\",\"exports\",\"module\",\"ace/lib/dom\",\"ace/lib/lang\"], function(require, exports, m"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-textarea.js",
    "chars": 13023,
    "preview": "ace.define(\"ace/ext/textarea\",[\"require\",\"exports\",\"module\",\"ace/lib/event\",\"ace/lib/useragent\",\"ace/lib/net\",\"ace/ace\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-themelist.js",
    "chars": 2433,
    "preview": "ace.define(\"ace/ext/themelist\",[\"require\",\"exports\",\"module\"], function(require, exports, module){/**\n * Generates a lis"
  },
  {
    "path": "publishable/assets/js/ace/libs/ext-whitespace.js",
    "chars": 6756,
    "preview": "ace.define(\"ace/ext/whitespace\",[\"require\",\"exports\",\"module\",\"ace/lib/lang\"], function(require, exports, module){\"use s"
  },
  {
    "path": "publishable/assets/js/ace/libs/keybinding-emacs.js",
    "chars": 40978,
    "preview": "ace.define(\"ace/occur\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/range\",\"ace/search\",\"ace/edit_session\",\"ace/sear"
  },
  {
    "path": "publishable/assets/js/ace/libs/keybinding-sublime.js",
    "chars": 12834,
    "preview": "ace.define(\"ace/keyboard/sublime\",[\"require\",\"exports\",\"module\",\"ace/keyboard/hash_handler\"], function(require, exports,"
  },
  {
    "path": "publishable/assets/js/ace/libs/keybinding-vim.js",
    "chars": 250958,
    "preview": "ace.define(\"ace/ext/hardwrap\",[\"require\",\"exports\",\"module\",\"ace/range\",\"ace/editor\",\"ace/config\"], function(require, ex"
  },
  {
    "path": "publishable/assets/js/ace/libs/keybinding-vscode.js",
    "chars": 9307,
    "preview": "ace.define(\"ace/keyboard/vscode\",[\"require\",\"exports\",\"module\",\"ace/keyboard/hash_handler\",\"ace/config\"], function(requi"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-abap.js",
    "chars": 9501,
    "preview": "ace.define(\"ace/mode/abap_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-abc.js",
    "chars": 9458,
    "preview": "ace.define(\"ace/mode/abc_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-actionscript.js",
    "chars": 25364,
    "preview": "ace.define(\"ace/mode/actionscript_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-ada.js",
    "chars": 4328,
    "preview": "ace.define(\"ace/mode/ada_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-alda.js",
    "chars": 10532,
    "preview": "ace.define(\"ace/mode/alda_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-apache_conf.js",
    "chars": 19946,
    "preview": "ace.define(\"ace/mode/apache_conf_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-apex.js",
    "chars": 15801,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-applescript.js",
    "chars": 9822,
    "preview": "ace.define(\"ace/mode/applescript_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-aql.js",
    "chars": 5606,
    "preview": "ace.define(\"ace/mode/aql_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-asciidoc.js",
    "chars": 14233,
    "preview": "ace.define(\"ace/mode/asciidoc_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rule"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-asl.js",
    "chars": 14902,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-assembly_x86.js",
    "chars": 12296,
    "preview": "ace.define(\"ace/mode/assembly_x86_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-autohotkey.js",
    "chars": 67788,
    "preview": "ace.define(\"ace/mode/autohotkey_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_ru"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-batchfile.js",
    "chars": 8844,
    "preview": "ace.define(\"ace/mode/batchfile_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rul"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-bibtex.js",
    "chars": 11325,
    "preview": "ace.define(\"ace/mode/bibtex_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-c9search.js",
    "chars": 9849,
    "preview": "ace.define(\"ace/mode/c9search_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-c_cpp.js",
    "chars": 18988,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-cirru.js",
    "chars": 6586,
    "preview": "ace.define(\"ace/mode/cirru_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-clojure.js",
    "chars": 12959,
    "preview": "ace.define(\"ace/mode/clojure_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-cobol.js",
    "chars": 3780,
    "preview": "ace.define(\"ace/mode/cobol_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-coffee.js",
    "chars": 13902,
    "preview": "ace.define(\"ace/mode/coffee_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-coldfusion.js",
    "chars": 101831,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-crystal.js",
    "chars": 24115,
    "preview": "ace.define(\"ace/mode/crystal_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-csharp.js",
    "chars": 16518,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-csound_document.js",
    "chars": 126373,
    "preview": "ace.define(\"ace/mode/csound_preprocessor_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_hig"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-csound_orchestra.js",
    "chars": 77152,
    "preview": "ace.define(\"ace/mode/csound_preprocessor_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_hig"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-csound_score.js",
    "chars": 14007,
    "preview": "ace.define(\"ace/mode/csound_preprocessor_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_hig"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-csp.js",
    "chars": 2446,
    "preview": "ace.define(\"ace/mode/csp_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-css.js",
    "chars": 32864,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-curly.js",
    "chars": 99896,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-d.js",
    "chars": 17116,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-dart.js",
    "chars": 25705,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-diff.js",
    "chars": 4744,
    "preview": "ace.define(\"ace/mode/diff_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-django.js",
    "chars": 100834,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-dockerfile.js",
    "chars": 17165,
    "preview": "ace.define(\"ace/mode/sh_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], f"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-dot.js",
    "chars": 13967,
    "preview": "ace.define(\"ace/mode/matching_brace_outdent\",[\"require\",\"exports\",\"module\",\"ace/range\"], function(require, exports, modu"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-drools.js",
    "chars": 19109,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-edifact.js",
    "chars": 5018,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-eiffel.js",
    "chars": 5067,
    "preview": "ace.define(\"ace/mode/eiffel_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-ejs.js",
    "chars": 138315,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-elixir.js",
    "chars": 24920,
    "preview": "ace.define(\"ace/mode/elixir_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-elm.js",
    "chars": 10131,
    "preview": "ace.define(\"ace/mode/elm_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-erlang.js",
    "chars": 49017,
    "preview": "ace.define(\"ace/mode/erlang_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-forth.js",
    "chars": 11977,
    "preview": "ace.define(\"ace/mode/forth_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-fortran.js",
    "chars": 15331,
    "preview": "ace.define(\"ace/mode/fortran_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-fsharp.js",
    "chars": 10641,
    "preview": "ace.define(\"ace/mode/fsharp_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-fsl.js",
    "chars": 9089,
    "preview": "ace.define(\"ace/mode/fsl_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-ftl.js",
    "chars": 52267,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-gcode.js",
    "chars": 2850,
    "preview": "ace.define(\"ace/mode/gcode_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-gherkin.js",
    "chars": 5206,
    "preview": "ace.define(\"ace/mode/gherkin_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-gitignore.js",
    "chars": 1779,
    "preview": "ace.define(\"ace/mode/gitignore_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rul"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-glsl.js",
    "chars": 22072,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-gobstones.js",
    "chars": 45361,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-golang.js",
    "chars": 13464,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-graphqlschema.js",
    "chars": 6921,
    "preview": "ace.define(\"ace/mode/graphqlschema_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-groovy.js",
    "chars": 38496,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-haml.js",
    "chars": 79251,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-handlebars.js",
    "chars": 101719,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-haskell.js",
    "chars": 18140,
    "preview": "ace.define(\"ace/mode/haskell_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-haskell_cabal.js",
    "chars": 5101,
    "preview": "ace.define(\"ace/mode/haskell_cabal_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-haxe.js",
    "chars": 12327,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-hjson.js",
    "chars": 12213,
    "preview": "ace.define(\"ace/mode/hjson_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-html.js",
    "chars": 98302,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-html_elixir.js",
    "chars": 125377,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-html_ruby.js",
    "chars": 138897,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-ini.js",
    "chars": 5388,
    "preview": "ace.define(\"ace/mode/ini_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-io.js",
    "chars": 9533,
    "preview": "ace.define(\"ace/mode/io_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], f"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-ion.js",
    "chars": 16724,
    "preview": "ace.define(\"ace/mode/ion_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jack.js",
    "chars": 11156,
    "preview": "ace.define(\"ace/mode/jack_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jade.js",
    "chars": 81961,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-java.js",
    "chars": 40437,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-javascript.js",
    "chars": 31513,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-json.js",
    "chars": 10361,
    "preview": "ace.define(\"ace/mode/json_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-json5.js",
    "chars": 11550,
    "preview": "ace.define(\"ace/mode/json_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jsoniq.js",
    "chars": 328159,
    "preview": "ace.define(\"ace/mode/xquery/jsoniq_lexer\",[\"require\",\"exports\",\"module\"], function(require, exports, module) {\nmodule.ex"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jsp.js",
    "chars": 60515,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jssm.js",
    "chars": 11440,
    "preview": "ace.define(\"ace/mode/jssm_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-jsx.js",
    "chars": 13408,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-julia.js",
    "chars": 12527,
    "preview": "ace.define(\"ace/mode/julia_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-kotlin.js",
    "chars": 16782,
    "preview": "ace.define(\"ace/mode/kotlin_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-latex.js",
    "chars": 9892,
    "preview": "ace.define(\"ace/mode/latex_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"]"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-latte.js",
    "chars": 105210,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-less.js",
    "chars": 36905,
    "preview": "ace.define(\"ace/mode/css_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/lib/lang\",\"ace/mode/text_high"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-liquid.js",
    "chars": 106806,
    "preview": "ace.define(\"ace/mode/doc_comment_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_r"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-lisp.js",
    "chars": 4070,
    "preview": "ace.define(\"ace/mode/lisp_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"],"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-livescript.js",
    "chars": 9182,
    "preview": "ace.define(\"ace/mode/matching_brace_outdent\",[\"require\",\"exports\",\"module\",\"ace/range\"], function(require, exports, modu"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-logiql.js",
    "chars": 11189,
    "preview": "ace.define(\"ace/mode/logiql_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\""
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-logtalk.js",
    "chars": 16656,
    "preview": "ace.define(\"ace/mode/logtalk_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules"
  },
  {
    "path": "publishable/assets/js/ace/libs/mode-lsl.js",
    "chars": 31851,
    "preview": "ace.define(\"ace/mode/lsl_highlight_rules\",[\"require\",\"exports\",\"module\",\"ace/lib/oop\",\"ace/mode/text_highlight_rules\"], "
  }
]

// ... and 1353 more files (download for full content)

About this extraction

This page contains the full source code of the thedevdojo/voyager GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 1553 files (21.9 MB), approximately 5.8M tokens, and a symbol index with 5947 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!