@directus/app 9.20.4 → 9.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/@directus_extensions-sdk.7480601b.entry.js +1 -0
- package/dist/assets/{accounts.8d02a534.js → accounts.6f69dc83.js} +1 -1
- package/dist/assets/active-line.f3bab3a5.js +1 -0
- package/dist/assets/{activity-log.957853bb.js → activity-log.2e944bfa.js} +1 -1
- package/dist/assets/{activity.58bbe1c2.js → activity.dda3417f.js} +1 -1
- package/dist/assets/apl.1805b26f.js +1 -0
- package/dist/assets/{architecture.0ded5b28.js → architecture.e66cc597.js} +1 -1
- package/dist/assets/asciiarmor.ffaf0f62.js +1 -0
- package/dist/assets/asn.1.cd62dee4.js +1 -0
- package/dist/assets/asterisk.07d1e4af.js +1 -0
- package/dist/assets/{authentication.5b7d5fa7.js → authentication.8a718856.js} +5 -5
- package/dist/assets/autorefresh.e63fec5a.js +1 -0
- package/dist/assets/{aws.890dfda5.js → aws.99d49c74.js} +1 -1
- package/dist/assets/{backing-directus.7f54a4af.js → backing-directus.23aeddff.js} +1 -1
- package/dist/assets/brainfuck.587235ad.js +1 -0
- package/dist/assets/{cli.4e995657.js → cli.8e7d9b17.js} +4 -4
- package/dist/assets/{cli.bf0b2442.js → cli.ce3a6393.js} +2 -2
- package/dist/assets/clike.8df07672.js +1 -0
- package/dist/assets/clojure.7ed940f7.js +1 -0
- package/dist/assets/{cloudron.0a16f34b.js → cloudron.0cf18005.js} +1 -1
- package/dist/assets/cmake.8058664d.js +1 -0
- package/dist/assets/cobol.7925af76.js +1 -0
- package/dist/assets/{codebase-overview.2ba91a80.js → codebase-overview.4707b17a.js} +1 -1
- package/dist/assets/coffeescript.36666708.js +1 -0
- package/dist/assets/{collections.7fa07fe7.js → collections.30500b8b.js} +2 -2
- package/dist/assets/{collections.2a61805a.js → collections.88058903.js} +2 -2
- package/dist/assets/{collections.ea858bf6.js → collections.b74ab838.js} +3 -3
- package/dist/assets/commonlisp.ce672eb5.js +1 -0
- package/dist/assets/{conditions.32339903.js → conditions.db9bebfc.js} +1 -1
- package/dist/assets/{config-options.53449c2c.js → config-options.48260929.js} +12 -12
- package/dist/assets/{content.18716bf7.js → content.647b054c.js} +1 -1
- package/dist/assets/{creating-extensions.0a6d6d3b.js → creating-extensions.e032c2f0.js} +3 -3
- package/dist/assets/crystal.3c7c09cc.js +1 -0
- package/dist/assets/css.b68c041b.js +1 -0
- package/dist/assets/cypher.3b38874c.js +4 -0
- package/dist/assets/d.0460be39.js +1 -0
- package/dist/assets/dart.680bdb1d.js +1 -0
- package/dist/assets/{data-model.b5eb7565.js → data-model.63af932c.js} +3 -3
- package/dist/assets/de-DE.590d3c70.js +1 -0
- package/dist/assets/diff.11dadb16.js +1 -0
- package/dist/assets/{digitalocean-app-platform.4063d6cc.js → digitalocean-app-platform.adb9fc63.js} +2 -2
- package/dist/assets/{display-templates.65a9b519.js → display-templates.7c1dae6d.js} +1 -1
- package/dist/assets/display.87df21d6.js +1 -0
- package/dist/assets/{displays.b72d546c.js → displays.c0024804.js} +5 -5
- package/dist/assets/django.c5c2bb33.js +1 -0
- package/dist/assets/{docker.ae6227ab.js → docker.a790e063.js} +1 -1
- package/dist/assets/dockerfile.cb57c90a.js +1 -0
- package/dist/assets/{documentation.6628aaac.js → documentation.1783cd53.js} +1 -1
- package/dist/assets/dtd.4bdd906a.js +1 -0
- package/dist/assets/dylan.af09e3f8.js +1 -0
- package/dist/assets/ebnf.0ec983c0.js +1 -0
- package/dist/assets/ecl.eeba0610.js +1 -0
- package/dist/assets/eiffel.d9fec659.js +1 -0
- package/dist/assets/elm.c3ce2b54.js +1 -0
- package/dist/assets/{email-templates.5e1b5472.js → email-templates.ed708d89.js} +1 -1
- package/dist/assets/{endpoints.44874916.js → endpoints.10a1484a.js} +1 -1
- package/dist/assets/erlang.d00fab30.js +1 -0
- package/dist/assets/{extensions.9790f6ff.js → extensions.d542042f.js} +1 -1
- package/dist/assets/factor.a6dddf2c.js +1 -0
- package/dist/assets/{faq.0fd5ca6e.js → faq.8904941c.js} +2 -2
- package/dist/assets/fcl.0c78a020.js +1 -0
- package/dist/assets/{field-types.e5bd5900.js → field-types.e3e041fc.js} +1 -1
- package/dist/assets/{field.b9b55fc2.js → field.64c29e0b.js} +1 -1
- package/dist/assets/{fields.fc8af154.js → fields.1597bfad.js} +1 -1
- package/dist/assets/{fields.7df6f624.js → fields.c76c2d8b.js} +1 -1
- package/dist/assets/{file-library.7a11d866.js → file-library.8fb3da43.js} +1 -1
- package/dist/assets/{files.84b41f2f.js → files.d8e3acf4.js} +2 -2
- package/dist/assets/{filter-rules.099e9689.js → filter-rules.edb18765.js} +4 -4
- package/dist/assets/{filters.98d31bd5.js → filters.26e88a50.js} +1 -1
- package/dist/assets/{flows.b6ebb4b6.js → flows.8c6f69bb.js} +6 -6
- package/dist/assets/{flows.2646c3ae.js → flows.f014b9cc.js} +2 -2
- package/dist/assets/{folders.35cfde90.js → folders.8aec87f5.js} +5 -5
- package/dist/assets/forth.fbb63d06.js +1 -0
- package/dist/assets/fortran.cbc14824.js +1 -0
- package/dist/assets/fr-FR.d8dbf5de.js +1 -0
- package/dist/assets/gas.3e3eaaa0.js +1 -0
- package/dist/assets/{gcp.ce76381f.js → gcp.97542e88.js} +5 -5
- package/dist/assets/gfm.a5597fec.js +1 -0
- package/dist/assets/gherkin.9cfc1ed7.js +1 -0
- package/dist/assets/{github-ci.b4dde47f.js → github-ci.e7d15770.js} +2 -2
- package/dist/assets/{glossary.3b14c64d.js → glossary.beaf358c.js} +1 -1
- package/dist/assets/{glossary.930fe38e.js → glossary.c972e836.js} +1 -1
- package/dist/assets/go.f180871e.js +1 -0
- package/dist/assets/groovy.4db995a9.js +1 -0
- package/dist/assets/haml.ed77ce51.js +1 -0
- package/dist/assets/handlebars.81504d91.js +1 -0
- package/dist/assets/haskell-literate.d54dc9c7.js +1 -0
- package/dist/assets/haskell.f21c4399.js +1 -0
- package/dist/assets/haxe.50f0db0c.js +1 -0
- package/dist/assets/{hooks.b9909639.js → hooks.feaad058.js} +1 -1
- package/dist/assets/htmlembedded.5ff69a18.js +1 -0
- package/dist/assets/htmlmixed.5efed62b.js +1 -0
- package/dist/assets/{htmlmixed.a7900839.js → htmlmixed.f69cc072.js} +1 -1
- package/dist/assets/http.6b260d22.js +1 -0
- package/dist/assets/idl.617214c8.js +1 -0
- package/dist/assets/{iis.63d75601.js → iis.0358929d.js} +1 -1
- package/dist/assets/{import-export.fe680598.js → import-export.391b74e0.js} +2 -2
- package/dist/assets/{index.ffcfdc79.js → index.04b73e2f.js} +1 -1
- package/dist/assets/{index.3ccb1a62.js → index.09845961.js} +1 -1
- package/dist/assets/{index.671547c3.js → index.130287f6.js} +1 -1
- package/dist/assets/{index.3d4f0091.css → index.19e6c20c.css} +1 -1
- package/dist/assets/{index.20179e31.js → index.1ba23fe5.js} +1 -1
- package/dist/assets/{index.f19e5b18.js → index.1f330fc3.js} +1 -1
- package/dist/assets/{index.7f210d25.js → index.24999c03.js} +1 -1
- package/dist/assets/{index.f047ba76.entry.js → index.312f2c91.entry.js} +2693 -2687
- package/dist/assets/{index.c781a7ba.js → index.31f6e6f2.js} +3 -3
- package/dist/assets/{index.7c5199ad.js → index.330c3aee.js} +1 -1
- package/dist/assets/{index.549a82a6.js → index.3470f134.js} +1 -1
- package/dist/assets/index.38d152bf.js +1 -0
- package/dist/assets/{index.a6c65314.js → index.4044e5c7.js} +1 -1
- package/dist/assets/{index.764b9d6e.js → index.4706b3f5.js} +1 -1
- package/dist/assets/{index.875a771b.js → index.4b24f075.js} +1 -1
- package/dist/assets/{index.6949d989.js → index.4c6e76b7.js} +1 -1
- package/dist/assets/{index.0d7f4d79.js → index.522f44b0.js} +1 -1
- package/dist/assets/{index.1c9cfeb8.js → index.525d8fd8.js} +1 -1
- package/dist/assets/{index.d8e4727e.js → index.528e4b54.js} +1 -1
- package/dist/assets/{index.d9e48160.js → index.52a4297c.js} +1 -1
- package/dist/assets/{index.34c47fcf.js → index.530fd584.js} +1 -1
- package/dist/assets/{index.91e98759.js → index.546018df.js} +1 -1
- package/dist/assets/{index.d557b36c.js → index.57542755.js} +1 -1
- package/dist/assets/{index.425c965c.js → index.5a8952da.js} +1 -1
- package/dist/assets/{index.9b6db0de.js → index.5cf97c2b.js} +1 -1
- package/dist/assets/index.65e5d28f.css +1 -0
- package/dist/assets/{index.08c5d5a2.js → index.6b77e807.js} +1 -1
- package/dist/assets/{index.393b7fd6.js → index.6bf3a163.js} +1 -1
- package/dist/assets/{index.fe4bc374.js → index.6c07a132.js} +1 -1
- package/dist/assets/{index.1f99dc82.js → index.6c4fabf1.js} +1 -1
- package/dist/assets/{index.7468a23c.js → index.6fa71870.js} +1 -1
- package/dist/assets/{index.8fb3c07f.js → index.7045dfad.js} +1 -1
- package/dist/assets/{index.aa66a39f.js → index.75ef0473.js} +1 -1
- package/dist/assets/{index.c3959367.js → index.77b8f02e.js} +1 -1
- package/dist/assets/{index.62e48e8e.js → index.7943fd38.js} +1 -1
- package/dist/assets/{index.ac96f5b3.js → index.7c5b74dc.js} +1 -1
- package/dist/assets/{index.f32d0fbe.js → index.7de5db57.js} +1 -1
- package/dist/assets/{index.8aa50b59.js → index.7e90d361.js} +1 -1
- package/dist/assets/{index.2399ffb8.js → index.7edb8b15.js} +1 -1
- package/dist/assets/{index.d370fafd.js → index.7fcf2b86.js} +1 -1
- package/dist/assets/{index.5c5acddc.js → index.80106d2d.js} +1 -1
- package/dist/assets/{index.8b8e6073.js → index.804b3c9b.js} +1 -1
- package/dist/assets/{index.5264aa26.js → index.8063dc25.js} +1 -1
- package/dist/assets/{index.eb772cab.js → index.81a02f8c.js} +1 -1
- package/dist/assets/{index.38e5dfc6.js → index.81d5b763.js} +1 -1
- package/dist/assets/{index.7269b9b7.js → index.8200528c.js} +1 -1
- package/dist/assets/{index.00acb7aa.js → index.82939b3a.js} +1 -1
- package/dist/assets/{index.d024a491.js → index.8446e18c.js} +1 -1
- package/dist/assets/index.87afb869.js +1 -0
- package/dist/assets/{index.7e37814b.js → index.92f59a75.js} +1 -1
- package/dist/assets/{index.3abfd687.js → index.98cb4ee1.js} +1 -1
- package/dist/assets/{index.486669b9.js → index.9d2fbf00.js} +1 -1
- package/dist/assets/{index.ec87e7f6.js → index.9dfe292c.js} +1 -1
- package/dist/assets/{index.4ce96101.js → index.a1b7be9b.js} +1 -1
- package/dist/assets/{index.1b594a21.js → index.a5356d91.js} +1 -1
- package/dist/assets/{index.b67fb5fc.js → index.ab4e5ca3.js} +1 -1
- package/dist/assets/{index.f511aff3.js → index.ab7b6cba.js} +1 -1
- package/dist/assets/{index.578c30ec.js → index.ac6c3fe9.js} +1 -1
- package/dist/assets/{index.5062f951.js → index.adc560cb.js} +1 -1
- package/dist/assets/{index.045e97f0.js → index.ae4bf6ea.js} +1 -1
- package/dist/assets/{index.9f69b190.js → index.aeaa0aa9.js} +1 -1
- package/dist/assets/{index.8b9e43f4.js → index.afc6b30e.js} +1 -1
- package/dist/assets/{index.23def130.js → index.b02dbd39.js} +1 -1
- package/dist/assets/{index.3cb24d7f.js → index.b391672d.js} +1 -1
- package/dist/assets/{index.19a506a0.js → index.b503f187.js} +1 -1
- package/dist/assets/{index.a88d2d0b.js → index.b7113e87.js} +1 -1
- package/dist/assets/{index.7bb84aa5.js → index.c156c46e.js} +1 -1
- package/dist/assets/{index.68337c85.js → index.c5e16ef6.js} +1 -1
- package/dist/assets/{index.45686201.js → index.c85c3f77.js} +1 -1
- package/dist/assets/{index.03886e4a.js → index.cb7799d1.js} +1 -1
- package/dist/assets/{index.eb4d5cbc.js → index.cb93c1e8.js} +1 -1
- package/dist/assets/{index.dc4d9b6a.js → index.d0d998a0.js} +1 -1
- package/dist/assets/{index.c2858d95.js → index.d790d684.js} +1 -1
- package/dist/assets/{index.a264494d.js → index.dc9006a1.js} +1 -1
- package/dist/assets/{index.8130aabc.js → index.e3619b04.js} +1 -1
- package/dist/assets/{index.ab5ebdc3.js → index.e4224764.js} +1 -1
- package/dist/assets/{index.426d219b.js → index.e5079c3a.js} +1 -1
- package/dist/assets/{index.90ecf353.js → index.e6971ab1.js} +1 -1
- package/dist/assets/{index.b2e447e3.js → index.e85bc569.js} +1 -1
- package/dist/assets/{index.42614221.js → index.e95b7e4b.js} +1 -1
- package/dist/assets/{index.0608a502.js → index.ec8cfaac.js} +1 -1
- package/dist/assets/{index.b0e3c55c.js → index.f2e26d1f.js} +1 -1
- package/dist/assets/{index.eecb0d4b.js → index.f60d22d0.js} +1 -1
- package/dist/assets/{index.a8b94b31.js → index.f828781f.js} +1 -1
- package/dist/assets/{index.2b61f9fb.js → index.fb6b1657.js} +1 -1
- package/dist/assets/{index.9c4a7f65.js → index.fb8023b0.js} +1 -1
- package/dist/assets/{index.79264a03.js → index.fe536421.js} +1 -1
- package/dist/assets/{input-rich-text-html.7e721a60.js → input-rich-text-html.b1656039.js} +30 -30
- package/dist/assets/{insights.bb6e6dd9.js → insights.8a1beae6.js} +2 -2
- package/dist/assets/{installation.a80b7bdd.js → installation.2db8d0e1.js} +1 -1
- package/dist/assets/{interface.6b3d318d.js → interface.8e4a64f0.js} +1 -1
- package/dist/assets/{interfaces.9c9cb203.js → interfaces.8e88b01f.js} +4 -4
- package/dist/assets/{introduction.17ce0958.js → introduction.2a0882fe.js} +4 -4
- package/dist/assets/{introduction.74d5f276.js → introduction.42a2136e.js} +1 -1
- package/dist/assets/{introduction.2b473cdb.js → introduction.4f0ccbaf.js} +1 -1
- package/dist/assets/{introduction.23bcca02.js → introduction.dbd85d4e.js} +1 -1
- package/dist/assets/{items.a200a734.js → items.9f358fa7.js} +5 -5
- package/dist/assets/{items.d9558b12.js → items.abb8d314.js} +1 -1
- package/dist/assets/javascript-hint.bd3c0fcf.js +1 -0
- package/dist/assets/javascript.7eff1543.js +1 -0
- package/dist/assets/jinja2.eec1b998.js +1 -0
- package/dist/assets/jsx.8808ecb1.js +1 -0
- package/dist/assets/julia.56479fbf.js +1 -0
- package/dist/assets/{layouts.71139077.js → layouts.9c64beac.js} +3 -3
- package/dist/assets/{layouts.67e010c3.js → layouts.b4771384.js} +1 -1
- package/dist/assets/livescript.37040ed1.js +1 -0
- package/dist/assets/lua.7730f9fd.js +1 -0
- package/dist/assets/{manual.be26c257.js → manual.4a53ccfe.js} +4 -4
- package/dist/assets/mark-selection.c1a5d4e1.js +1 -0
- package/dist/assets/match-highlighter.ed7a2467.js +1 -0
- package/dist/assets/{matchbrackets.e0f8c83a.js → matchbrackets.ebc48bf8.js} +1 -1
- package/dist/assets/mathematica.1dbfb6f4.js +1 -0
- package/dist/assets/mbox.0ac8a216.js +1 -0
- package/dist/assets/{migrations.58c8fd96.js → migrations.2969a369.js} +1 -1
- package/dist/assets/mirc.1cc06f67.js +1 -0
- package/dist/assets/mllike.cee4eaf7.js +1 -0
- package/dist/assets/modelica.2292d0b8.js +1 -0
- package/dist/assets/{modules.0cfbe882.js → modules.f057fcd0.js} +3 -3
- package/dist/assets/mscgen.38b6bb11.js +1 -0
- package/dist/assets/multiplex.1d92e024.js +3 -0
- package/dist/assets/mumps.f37c25cb.js +1 -0
- package/dist/assets/nginx.39e016a3.js +1 -0
- package/dist/assets/{notifications.7b442623.js → notifications.ca876814.js} +11 -11
- package/dist/assets/nsis.1cf932c7.js +1 -0
- package/dist/assets/ntriples.e6c37d71.js +1 -0
- package/dist/assets/octave.2bec4045.js +1 -0
- package/dist/assets/{operations.bd173669.js → operations.246298bc.js} +11 -11
- package/dist/assets/{operations.6fcceb98.js → operations.64af444f.js} +3 -3
- package/dist/assets/{operations.30bbad94.js → operations.b4042de2.js} +2 -2
- package/dist/assets/overlay.16f98fb6.js +1 -0
- package/dist/assets/{overview.cb1196c4.js → overview.0b4ab371.js} +1 -1
- package/dist/assets/{overview.4c1683c3.js → overview.359f9713.js} +1 -1
- package/dist/assets/{overview.23ad824a.js → overview.40893677.js} +1 -1
- package/dist/assets/oz.8955a131.js +1 -0
- package/dist/assets/{panels.187b8f0d.js → panels.3969b423.js} +2 -2
- package/dist/assets/pascal.7213d964.js +1 -0
- package/dist/assets/pegjs.6877c220.js +1 -0
- package/dist/assets/perl.7f37e0c4.js +1 -0
- package/dist/assets/{permissions.2ad2e118.js → permissions.0712320e.js} +4 -4
- package/dist/assets/php.b63c0c50.js +1 -0
- package/dist/assets/pig.1cddd148.js +1 -0
- package/dist/assets/{pinia.24c7b35a.entry.js → pinia.0d44ec62.entry.js} +2 -2
- package/dist/assets/{plesk.279941fc.js → plesk.e3ea514c.js} +5 -5
- package/dist/assets/powershell.3aecbe91.js +1 -0
- package/dist/assets/{presets-bookmarks.62ac9314.js → presets-bookmarks.0baf10eb.js} +1 -1
- package/dist/assets/{presets.0390ff92.js → presets.0de7849a.js} +8 -8
- package/dist/assets/{project-settings.8b91aa04.js → project-settings.6e5956c8.js} +1 -1
- package/dist/assets/{projects.97bc15fa.js → projects.12d7a177.js} +1 -1
- package/dist/assets/properties.db539b03.js +1 -0
- package/dist/assets/protobuf.0fa0e9b4.js +1 -0
- package/dist/assets/pt-BR.2c2e8c4f.js +1 -0
- package/dist/assets/pug.e6d33f3a.js +1 -0
- package/dist/assets/puppet.18346b43.js +1 -0
- package/dist/assets/python.065d28e0.js +1 -0
- package/dist/assets/q.ed3c142c.js +1 -0
- package/dist/assets/{query.19ee7756.js → query.6dcece55.js} +1 -1
- package/dist/assets/{quickstart.96d7fa17.js → quickstart.f1c431cf.js} +3 -3
- package/dist/assets/{quickstart.7f55e26e.js → quickstart.fd328631.js} +2 -2
- package/dist/assets/r.f2ad8682.js +1 -0
- package/dist/assets/{readme.abb2691e.js → readme.c063616b.js} +1 -1
- package/dist/assets/{relations.1409faa0.js → relations.c92ebc4e.js} +6 -6
- package/dist/assets/{relationship.8e3bc45d.js → relationship.0344c790.js} +1 -1
- package/dist/assets/{relationships.2449eed5.js → relationships.ad2ee267.js} +7 -7
- package/dist/assets/{resources.f9b64d6f.js → resources.84b84252.js} +1 -1
- package/dist/assets/{revisions.7ffa76fe.js → revisions.39f423d0.js} +4 -4
- package/dist/assets/ro-RO.4c33f715.js +1 -0
- package/dist/assets/{roles.ce6518a4.js → roles.89c51107.js} +7 -7
- package/dist/assets/rpm.1674f668.js +1 -0
- package/dist/assets/rst.0a69f626.js +1 -0
- package/dist/assets/ruby.02498746.js +1 -0
- package/dist/assets/{ruby.57265cfb.js → ruby.d805273a.js} +1 -1
- package/dist/assets/{running-locally.8b135453.js → running-locally.24e1b4bf.js} +6 -6
- package/dist/assets/runtime-core.esm-bundler.22ec0346.js +1 -0
- package/dist/assets/rust.90ce6688.js +1 -0
- package/dist/assets/sas.3b045c8d.js +1 -0
- package/dist/assets/sass.4fcb9b12.js +1 -0
- package/dist/assets/{schema.6649576e.js → schema.c326d911.js} +1 -1
- package/dist/assets/scheme.eb7abc5c.js +1 -0
- package/dist/assets/{sdk.33dcc072.js → sdk.2fdc3788.js} +17 -17
- package/dist/assets/{security.acb2be94.js → security.a0326c54.js} +1 -1
- package/dist/assets/{server.60bfa539.js → server.5b19042c.js} +1 -1
- package/dist/assets/{settings.6ac3895b.js → settings.2195b191.js} +1 -1
- package/dist/assets/{settings.a00aa4fa.js → settings.2553780f.js} +1 -1
- package/dist/assets/{shares.9a7ea736.js → shares.a17e644c.js} +1 -1
- package/dist/assets/shell.09d717f3.js +1 -0
- package/dist/assets/show-hint.4fc17cec.js +1 -0
- package/dist/assets/sieve.fe87517f.js +1 -0
- package/dist/assets/slim.76f6114d.js +1 -0
- package/dist/assets/smalltalk.eaf13594.js +1 -0
- package/dist/assets/smarty.abf4421d.js +1 -0
- package/dist/assets/solr.62208f30.js +1 -0
- package/dist/assets/soy.b2db807b.js +1 -0
- package/dist/assets/sparql.7042a2b3.js +1 -0
- package/dist/assets/spreadsheet.ca1422ad.js +1 -0
- package/dist/assets/sql.fcb976c5.js +1 -0
- package/dist/assets/{sso-examples.eb3ba478.js → sso-examples.8a36c968.js} +2 -2
- package/dist/assets/{sso.29d67116.js → sso.92e5b5f1.js} +4 -4
- package/dist/assets/stex.30c4dc01.js +1 -0
- package/dist/assets/{stex.a70dfdc0.js → stex.a5fe2e4a.js} +1 -1
- package/dist/assets/stylus.f7fcee76.js +1 -0
- package/dist/assets/{support.e9e535b3.js → support.f153d4ae.js} +1 -1
- package/dist/assets/swift.116cdb17.js +1 -0
- package/dist/assets/tcl.42613799.js +1 -0
- package/dist/assets/{teams.347f0563.js → teams.c564c81f.js} +1 -1
- package/dist/assets/textile.4285b886.js +1 -0
- package/dist/assets/{themes.32a50b86.js → themes.6c5c943f.js} +2 -2
- package/dist/assets/tiddlywiki.eb66e0c7.js +1 -0
- package/dist/assets/tiki.c796e616.js +1 -0
- package/dist/assets/toml.3b8b1e04.js +1 -0
- package/dist/assets/tornado.89f4bce8.js +1 -0
- package/dist/assets/{translation-strings.285d6bb2.js → translation-strings.326a2741.js} +1 -1
- package/dist/assets/translations.4c0efc6a.js +1 -0
- package/dist/assets/{translations.f87a601e.js → translations.645f8c9c.js} +1 -1
- package/dist/assets/{triggers.325e50d8.js → triggers.44703cf0.js} +1 -1
- package/dist/assets/troff.51ba9964.js +1 -0
- package/dist/assets/ttcn-cfg.62ff9e40.js +1 -0
- package/dist/assets/ttcn.08f34f21.js +1 -0
- package/dist/assets/turtle.2efc3e1b.js +1 -0
- package/dist/assets/twig.bd0ee3cd.js +1 -0
- package/dist/assets/{ubuntu.3ba252fe.js → ubuntu.47e06de3.js} +2 -2
- package/dist/assets/uk-UA.fe247137.js +1 -0
- package/dist/assets/{upgrades-migrations.a091b8af.js → upgrades-migrations.a23cace7.js} +1 -1
- package/dist/assets/{use-sync.d9160f34.js → use-sync.e83d9ab3.js} +3 -3
- package/dist/assets/{user-directory.9ca05985.js → user-directory.e1f15d1a.js} +1 -1
- package/dist/assets/{users-roles-permissions.bb71f6c9.js → users-roles-permissions.14757490.js} +1 -1
- package/dist/assets/{users.a44125e3.js → users.0ea4e372.js} +1 -1
- package/dist/assets/{utilities.0380c496.js → utilities.c76e17ac.js} +7 -7
- package/dist/assets/validation.99c6fcd4.js +1 -0
- package/dist/assets/vb.e77c04f4.js +1 -0
- package/dist/assets/vbscript.b1155c12.js +1 -0
- package/dist/assets/velocity.5f33a92c.js +1 -0
- package/dist/assets/verilog.064306e8.js +1 -0
- package/dist/assets/vhdl.c71b4d0c.js +1 -0
- package/dist/assets/{vue-i18n.df8d89e7.entry.js → vue-i18n.fbc77449.entry.js} +1 -1
- package/dist/assets/vue-router.3a828e63.entry.js +5 -0
- package/dist/assets/vue.1a8f18be.js +1 -0
- package/dist/assets/vue.486f3e62.entry.js +1 -0
- package/dist/assets/vue.runtime.esm-bundler.f6138180.js +1 -0
- package/dist/assets/wast.7970d24f.js +1 -0
- package/dist/assets/{webhooks.2d23be4c.js → webhooks.105c0454.js} +1 -1
- package/dist/assets/{webhooks.40d9a7a3.js → webhooks.d7f419fe.js} +4 -4
- package/dist/assets/webidl.f56d782e.js +1 -0
- package/dist/assets/{xml.ea66d5f3.js → xml.c9106c48.js} +1 -1
- package/dist/assets/xquery.d326f7d2.js +1 -0
- package/dist/assets/yacas.aab21d14.js +1 -0
- package/dist/assets/yaml-frontmatter.c4684bee.js +1 -0
- package/dist/assets/yaml.02beca9a.js +1 -0
- package/dist/assets/z80.2c343a72.js +1 -0
- package/dist/assets/{zh-CN.a9e8d795.js → zh-CN.a8f9e881.js} +1 -1
- package/dist/index.html +8 -8
- package/package.json +61 -61
- package/dist/assets/@directus_extensions-sdk.fd0e4213.entry.js +0 -1
- package/dist/assets/active-line.9ef493aa.js +0 -1
- package/dist/assets/apl.80228b26.js +0 -1
- package/dist/assets/asciiarmor.6c86ea34.js +0 -1
- package/dist/assets/asn.1.c414ac8d.js +0 -1
- package/dist/assets/asterisk.b919c017.js +0 -1
- package/dist/assets/autorefresh.4d24f530.js +0 -1
- package/dist/assets/brainfuck.31207812.js +0 -1
- package/dist/assets/clike.4381bb65.js +0 -1
- package/dist/assets/clike.70f54732.js +0 -1
- package/dist/assets/clojure.5e71b148.js +0 -1
- package/dist/assets/cmake.4292630d.js +0 -1
- package/dist/assets/cobol.0f026188.js +0 -1
- package/dist/assets/coffeescript.c9867ce1.js +0 -1
- package/dist/assets/commonlisp.575f73fb.js +0 -1
- package/dist/assets/crystal.c6b2e074.js +0 -1
- package/dist/assets/css.68e5f1b4.js +0 -1
- package/dist/assets/cypher.b9a2a2ff.js +0 -4
- package/dist/assets/d.29704d27.js +0 -1
- package/dist/assets/dart.3bc9103c.js +0 -1
- package/dist/assets/de-DE.1232afb9.js +0 -1
- package/dist/assets/diff.ed5ea48e.js +0 -1
- package/dist/assets/display.4a967445.js +0 -1
- package/dist/assets/django.a4f2e396.js +0 -1
- package/dist/assets/dockerfile.63d471ed.js +0 -1
- package/dist/assets/dtd.a3075452.js +0 -1
- package/dist/assets/dylan.f084efb3.js +0 -1
- package/dist/assets/ebnf.04f6993f.js +0 -1
- package/dist/assets/ecl.716928e4.js +0 -1
- package/dist/assets/eiffel.adac2439.js +0 -1
- package/dist/assets/elm.79decf86.js +0 -1
- package/dist/assets/erlang.3a8664fd.js +0 -1
- package/dist/assets/factor.5720b335.js +0 -1
- package/dist/assets/fcl.23169462.js +0 -1
- package/dist/assets/forth.0aa4b2af.js +0 -1
- package/dist/assets/fortran.2a5ba2e9.js +0 -1
- package/dist/assets/fr-FR.fa3f9dfa.js +0 -1
- package/dist/assets/gas.bb020a68.js +0 -1
- package/dist/assets/gfm.ab87931a.js +0 -1
- package/dist/assets/gherkin.14ad5708.js +0 -1
- package/dist/assets/go.db54967b.js +0 -1
- package/dist/assets/groovy.70142c17.js +0 -1
- package/dist/assets/haml.48d17fa5.js +0 -1
- package/dist/assets/handlebars.99f3b281.js +0 -1
- package/dist/assets/haskell-literate.dd8055d7.js +0 -1
- package/dist/assets/haskell.5163bc39.js +0 -1
- package/dist/assets/haxe.c37e45b0.js +0 -1
- package/dist/assets/htmlembedded.259e134c.js +0 -1
- package/dist/assets/htmlmixed.d4ccede2.js +0 -1
- package/dist/assets/http.c2a41932.js +0 -1
- package/dist/assets/idl.756f9381.js +0 -1
- package/dist/assets/index.4ce1e26c.js +0 -1
- package/dist/assets/index.90515a60.css +0 -1
- package/dist/assets/index.a36c94c4.js +0 -1
- package/dist/assets/javascript-hint.edf0fbfe.js +0 -1
- package/dist/assets/javascript.3f76a939.js +0 -1
- package/dist/assets/jinja2.5ece3da1.js +0 -1
- package/dist/assets/jsx.bf843278.js +0 -1
- package/dist/assets/julia.3deacccb.js +0 -1
- package/dist/assets/livescript.0f4ee94d.js +0 -1
- package/dist/assets/lua.55a0ef58.js +0 -1
- package/dist/assets/mark-selection.c61be770.js +0 -1
- package/dist/assets/match-highlighter.653539e4.js +0 -1
- package/dist/assets/mathematica.581f102c.js +0 -1
- package/dist/assets/mbox.b8d42368.js +0 -1
- package/dist/assets/mirc.54d6f3dc.js +0 -1
- package/dist/assets/mllike.3fea0214.js +0 -1
- package/dist/assets/modelica.e91f192a.js +0 -1
- package/dist/assets/mscgen.26838643.js +0 -1
- package/dist/assets/multiplex.93cf07bd.js +0 -3
- package/dist/assets/mumps.47e48202.js +0 -1
- package/dist/assets/nginx.87019c99.js +0 -1
- package/dist/assets/nsis.fafee21f.js +0 -1
- package/dist/assets/ntriples.a43258b6.js +0 -1
- package/dist/assets/octave.1f682cef.js +0 -1
- package/dist/assets/overlay.a2442f5e.js +0 -1
- package/dist/assets/oz.62b729b0.js +0 -1
- package/dist/assets/pascal.0fa9599a.js +0 -1
- package/dist/assets/pegjs.32083f8f.js +0 -1
- package/dist/assets/perl.5a777d8c.js +0 -1
- package/dist/assets/php.c6ab96f7.js +0 -1
- package/dist/assets/pig.2c7c4277.js +0 -1
- package/dist/assets/powershell.e6b0a933.js +0 -1
- package/dist/assets/properties.35c2d705.js +0 -1
- package/dist/assets/protobuf.625d3a47.js +0 -1
- package/dist/assets/pt-BR.c51763f3.js +0 -1
- package/dist/assets/pug.da3530b5.js +0 -1
- package/dist/assets/puppet.655afe2c.js +0 -1
- package/dist/assets/python.a67d678a.js +0 -1
- package/dist/assets/q.cc56fcdd.js +0 -1
- package/dist/assets/r.c1bddb02.js +0 -1
- package/dist/assets/ro-RO.52802a17.js +0 -1
- package/dist/assets/rpm.e046de56.js +0 -1
- package/dist/assets/rst.424d4d80.js +0 -1
- package/dist/assets/ruby.c0348dbc.js +0 -1
- package/dist/assets/runtime-core.esm-bundler.fe249c5c.js +0 -4
- package/dist/assets/rust.b8eab4c6.js +0 -1
- package/dist/assets/sas.171b5cec.js +0 -1
- package/dist/assets/sass.ef1df49e.js +0 -1
- package/dist/assets/scheme.96f6ce73.js +0 -1
- package/dist/assets/shell.4c172f18.js +0 -1
- package/dist/assets/show-hint.e95ab391.js +0 -1
- package/dist/assets/sieve.bdcdd5e1.js +0 -1
- package/dist/assets/slim.bab26569.js +0 -1
- package/dist/assets/smalltalk.0234383f.js +0 -1
- package/dist/assets/smarty.d8aca261.js +0 -1
- package/dist/assets/solr.d8e27de0.js +0 -1
- package/dist/assets/soy.06b4848e.js +0 -1
- package/dist/assets/sparql.ef7b1e37.js +0 -1
- package/dist/assets/spreadsheet.0d9dfaef.js +0 -1
- package/dist/assets/sql.85f5cd30.js +0 -1
- package/dist/assets/stex.38cc6e30.js +0 -1
- package/dist/assets/stylus.4d43a0f9.js +0 -1
- package/dist/assets/swift.e665f92b.js +0 -1
- package/dist/assets/tcl.4f846188.js +0 -1
- package/dist/assets/textile.eef6bf65.js +0 -1
- package/dist/assets/tiddlywiki.29dce321.js +0 -1
- package/dist/assets/tiki.a2f71a50.js +0 -1
- package/dist/assets/toml.64d737ee.js +0 -1
- package/dist/assets/tornado.5ebb7f6b.js +0 -1
- package/dist/assets/translations.074feb87.js +0 -1
- package/dist/assets/troff.e64b5292.js +0 -1
- package/dist/assets/ttcn-cfg.1b57714e.js +0 -1
- package/dist/assets/ttcn.3ddce744.js +0 -1
- package/dist/assets/turtle.0839041f.js +0 -1
- package/dist/assets/twig.99a62381.js +0 -1
- package/dist/assets/uk-UA.99a7a7a6.js +0 -1
- package/dist/assets/validation.cb080608.js +0 -1
- package/dist/assets/vb.9a802cc7.js +0 -1
- package/dist/assets/vbscript.c3cbffdb.js +0 -1
- package/dist/assets/velocity.a1b7e170.js +0 -1
- package/dist/assets/verilog.d98a6823.js +0 -1
- package/dist/assets/vhdl.6a93f1eb.js +0 -1
- package/dist/assets/vue-router.805cb517.entry.js +0 -5
- package/dist/assets/vue.c7dd8317.entry.js +0 -1
- package/dist/assets/vue.f82ff76a.js +0 -1
- package/dist/assets/vue.runtime.esm-bundler.eb605ed6.js +0 -1
- package/dist/assets/wast.2c3ec473.js +0 -1
- package/dist/assets/webidl.49c5abd3.js +0 -1
- package/dist/assets/xquery.a0c67ec5.js +0 -1
- package/dist/assets/yacas.d6cc38c0.js +0 -1
- package/dist/assets/yaml-frontmatter.f078c218.js +0 -1
- package/dist/assets/yaml.2ae1a5ef.js +0 -1
- package/dist/assets/z80.fc28354f.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{d as c,t as l,s as m,a as y,k as x,o as F,v as g,p as A,q as h,g as k,b as v,r as E,u as G,x as I,n as L,i as O,w as S,h as T}from"./use-sync.e83d9ab3.js";import{c as t}from"./runtime-core.esm-bundler.22ec0346.js";function p(i,s){return{fieldGroups:t(()=>{const n={};for(const e in s)n[e]=[];return i.value.reduce((e,a)=>{for(const o in s)s[o](a)!==!1&&e[o].push(a);return e},n)})}}export{c as defineDisplay,l as defineEndpoint,m as defineHook,y as defineInterface,x as defineLayout,F as defineModule,g as defineOperationApi,A as defineOperationApp,h as definePanel,k as getFieldsFromTemplate,v as getRelationType,E as useApi,G as useCollection,I as useExtensions,p as useFilterFields,L as useItems,O as useLayout,S as useStores,T as useSync};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as c,o as l,
|
|
1
|
+
import{a as c,o as l,e as u,y as t,u as e,q as o,z as a}from"./runtime-core.esm-bundler.22ec0346.js";const d={class:"markdown-body"},m=e("blockquote",null,[e("p",null,"Creating an Account is easy and free. Your Account gives you SuperAdmin access to your Teams and Projects on Directus Cloud, enabling you to create and manage Teams, Team Members, Projects, and Project Billing.")],-1),h=e("em",null,"Accounts on Directus Cloud",-1),p=e("em",null,"Users in a Directus Project",-1),g=e("h2",{id:"create-account-and-login",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#create-account-and-login"},"#"),o(" Create Account and Login")],-1),_=e("p",null,[e("img",{src:"https://cdn.directus.io/docs/v9/cloud/accounts/accounts-20220322A/login-page-20220225A.webp",alt:"Create Account and Login"})],-1),y=e("a",{href:"https://directus.cloud/login",target:"_blank",rel:"noopener noreferrer"},"Login Page",-1),A=e("h2",{id:"manage-account",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#manage-account"},"#"),o(" Manage Account")],-1),b=e("p",null,[e("img",{src:"https://cdn.directus.io/docs/v9/cloud/accounts/accounts-20220322A/managing-your-account-20220225A.webp",alt:"Manage Account"})],-1),w=e("p",null,"To update your name or email:",-1),f=e("ol",null,[e("li",null,[o("Click "),e("span",{mi:"",icon:""},"account_circle"),o(" in the Dashboard Header to enter your Account page.")]),e("li",null,[o("Toggle "),e("span",{mi:"",icon:"",prmry:""},"edit"),o(" to allow edits.")]),e("li",null,"Change your name and email as desired."),e("li",null,[o("Click the "),e("strong",null,"\u201CSave\u201D"),o(" button.")])],-1),v=e("h2",{id:"reset-password",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#reset-password"},"#"),o(" Reset Password")],-1),T=e("p",null,[e("img",{src:"https://cdn.directus.io/docs/v9/cloud/accounts/accounts-20220322A/reset-password-20220322A.webp",alt:"User Account"})],-1),C=e("p",null,"To reset your password:",-1),P=e("ol",null,[e("li",null,[o("Click "),e("span",{mi:"",icon:""},"account_circle"),o(" in the Dashboard Header to enter your Account page.")]),e("li",null,[o("Click "),e("strong",null,"\u201CSend Reset Link\u201D"),o(". An email will be sent to reset password.")]),e("li",null,"Log in to the email associated with your Account."),e("li",null,[o("Open the email and click "),e("strong",null,"\u201CReset Password\u201D"),o(". You will be directed to the Password Reset page.")]),e("li",null,[o("Reset the password as desired and click "),e("strong",null,"\u201CReset Password\u201D"),o(".")])],-1),k=e("h2",{id:"destroy-account",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#destroy-account"},"#"),o(" Destroy Account")],-1),D=e("p",null,[e("img",{src:"https://cdn.directus.io/docs/v9/cloud/accounts/accounts-20220322A/destroying-your-account-20220225A.webp",alt:"Destroy Account"})],-1),j=e("p",null,"To destroy your Directus Cloud Account:",-1),x=e("ol",null,[e("li",null,[o("Click "),e("span",{mi:"",icon:""},"account_circle"),o(" in the Dashboard Header to enter your Account page.")]),e("li",null,[o("Toggle "),e("span",{mi:"",icon:"",dngr:""},"local_fire_department"),o(" and an input box will appear.")]),e("li",null,[o("Type in your password, then click the "),e("strong",null,"\u201CDestroy Account\u201D"),o(" button.")])],-1),M=e("div",{class:"danger hint"},[e("p",null,"Destroying your Account completely removes your Account and data from Directus Cloud. This action is permanent and irreversible. Proceed with caution!")],-1),B=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Must leave all Teams before deleting"),e("p",null,"You cannot destroy your Account if you are a Member of one or more Teams. Leave all associated Teams before destroying your Account.")],-1),H="Cloud Accounts",N=!1,O="Creating an Account is easy and free. Your Account gives you SuperAdmin access to your Teams and Projects on Directus Cloud, enabling you to create and manage Teams, Team Members, Projects, and Project Billing.",U="3 min read",V={__name:"accounts",setup(L,{expose:r}){const s={title:"Cloud Accounts",modularExtension:!1,description:"Creating an Account is easy and free. Your Account gives you SuperAdmin access to your Teams and Projects on Directus Cloud, enabling you to create and manage Teams, Team Members, Projects, and Project Billing.",readTime:"3 min read"};return r({frontmatter:s}),(R,S)=>{const n=c("router-link"),i=c("docs-wrapper");return l(),u(i,{frontmatter:s},{default:t(()=>[e("div",d,[m,e("p",null,[o("An Account is your portal to Directus Cloud. You can use it to manage your Teams, Team Members, Projects and "),a(n,{to:"/docs/cloud/teams#manage-billing"},{default:t(()=>[o("billing")]),_:1}),o(". To avoid confusion, \u201CUser\u201D is the term for user profiles in a Directus Project, while the terms \u201CAccount\u201D and \u201CTeam Member\u201D are used in the context of Directus Cloud. "),h,o(" and "),p,o(" are two separate systems.")]),e("p",null,[o("See the "),a(n,{to:"/docs/cloud/overview"},{default:t(()=>[o("Overview")]),_:1}),o(" to learn how Accounts, Teams and Projects interrelate.")]),g,_,e("p",null,[o("Creating an Account is easy and free. As we talked about in the "),a(n,{to:"/docs/cloud/overview"},{default:t(()=>[o("Overview")]),_:1}),o(", we\u2019ve made life easy for you by giving you the option to create and log in to your free Cloud Account automatically with GitHub. If you don\u2019t have a GitHub account or prefer not to use this login method, email-and-password login is available, as well. In either case, simply go to the "),y,o(" and follow the prompts.")]),A,b,w,f,v,T,C,P,k,D,j,x,M,B])]),_:1})}}};export{V as default,O as description,N as modularExtension,U as readTime,H as title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y}from"./index.312f2c91.entry.js";function A(l,u){for(var r=0;r<u.length;r++){const a=u[r];if(typeof a!="string"&&!Array.isArray(a)){for(const i in a)if(i!=="default"&&!(i in l)){const o=Object.getOwnPropertyDescriptor(a,i);o&&Object.defineProperty(l,i,o.get?o:{enumerable:!0,get:()=>a[i]})}}}return Object.freeze(Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}))}var h={exports:{}};(function(l,u){(function(r){r(y.exports)})(function(r){var a="CodeMirror-activeline",i="CodeMirror-activeline-background",o="CodeMirror-activeline-gutter";r.defineOption("styleActiveLine",!1,function(e,n,t){var s=t==r.Init?!1:t;n!=s&&(s&&(e.off("beforeSelectionChange",d),c(e),delete e.state.activeLines),n&&(e.state.activeLines=[],L(e,e.listSelections()),e.on("beforeSelectionChange",d)))});function c(e){for(var n=0;n<e.state.activeLines.length;n++)e.removeLineClass(e.state.activeLines[n],"wrap",a),e.removeLineClass(e.state.activeLines[n],"background",i),e.removeLineClass(e.state.activeLines[n],"gutter",o)}function C(e,n){if(e.length!=n.length)return!1;for(var t=0;t<e.length;t++)if(e[t]!=n[t])return!1;return!0}function L(e,n){for(var t=[],s=0;s<n.length;s++){var v=n[s],p=e.getOption("styleActiveLine");if(!(typeof p=="object"&&p.nonEmpty?v.anchor.line!=v.head.line:!v.empty())){var g=e.getLineHandleVisualStart(v.head.line);t[t.length-1]!=g&&t.push(g)}}C(e.state.activeLines,t)||e.operation(function(){c(e);for(var f=0;f<t.length;f++)e.addLineClass(t[f],"wrap",a),e.addLineClass(t[f],"background",i),e.addLineClass(t[f],"gutter",o);e.state.activeLines=t})}function d(e,n){L(e,n.ranges)}})})();const S=h.exports,_=A({__proto__:null,default:S},[h.exports]);export{_ as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as l,o as r,
|
|
1
|
+
import{a as l,o as r,e as d,y as i,u as t,q as e,z as n}from"./runtime-core.esm-bundler.22ec0346.js";const h={class:"markdown-body"},u=t("blockquote",null,[t("p",null,[e("This module provides a collective timeline of all "),t("em",null,"data-changing"),e(" actions taken within your project. These detailed records help you audit user activity and enforce accountability.")])],-1),p={class:"tip hint"},m=t("div",{class:"hint-title"},"Before You Begin",-1),v={class:"tip hint"},y=t("div",{class:"hint-title"},"Learn More",-1),f=t("h2",{id:"overview",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#overview"},"#"),e(" Overview")],-1),g=t("video",{title:"Activity Log Overview",autoplay:"",playsinline:"",muted:"",loop:"",controls:""},[t("source",{src:"https://cdn.directus.io/docs/v9/configuration/activity-log/activity-log-20220816/activity-log-20220816A.mp4",type:"video/mp4"})],-1),_=t("div",{class:"warning hint"},[t("div",{class:"hint-title"},"External Changes"),t("p",null,[e("The platform can only track the events which actually pass through it. Therefore, any changes made to the database "),t("em",null,"directly"),e(" are not tracked.")])],-1),w={class:"tip hint"},b=t("em",null,"specific items",-1),T=t("strong",null,"Item Page > Sidebar > Revisions",-1),A=t("h2",{id:"view-an-activity-log-item",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#view-an-activity-log-item"},"#"),e(" View an Activity Log Item")],-1),k=t("p",null,[t("img",{src:"https://cdn.directus.io/docs/v9/configuration/activity-log/activity-log-20220816/activity-log-default-fields-20220816A.webp",alt:"Activity Log Default Fields"})],-1),C=t("p",null,"Click any item in the Activity Log and a side drawer will open, displaying its logged details. The following information is stored for each item.",-1),L=t("ul",null,[t("li",null,[t("strong",null,"User"),e(" \u2014 The user that performed the action.")]),t("li",null,[t("strong",null,"Action"),e(" \u2014 The specific action taken "),t("em",null,"(e.g., Create, Update, Delete, Comment, or Login)"),e(".")]),t("li",null,[t("strong",null,"TimeStamp"),e(" \u2014 The timestamp of when the action was performed.")]),t("li",null,[t("strong",null,"IP Address"),e(" \u2014 The IP address of the device from which the action was performed.")]),t("li",null,[t("strong",null,"User Agent"),e(" \u2014 The description of the browser that was used to perform the action.")]),t("li",null,[t("strong",null,"Collection"),e(" \u2014 The Collection affected by the action.")]),t("li",null,[t("strong",null,"Item"),e(" \u2014 The ID of the item affected.")]),t("li",null,[t("strong",null,"Comment"),e(" \u2014 The comment left by the user "),t("em",null,"(when applicable)"),e(".")])],-1),x=t("h2",{id:"filter-by-activity",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#filter-by-activity"},"#"),e(" Filter by Activity")],-1),I=t("video",{title:"Filter by Activity",autoplay:"",playsinline:"",muted:"",loop:"",controls:""},[t("source",{src:"https://cdn.directus.io/docs/v9/configuration/activity-log/activity-log-20220816/filter-by-activity-20220817A.mp4",type:"video/mp4"})],-1),B=t("h2",{id:"modify-an-activity",tabindex:"-1"},[t("a",{class:"header-anchor",href:"#modify-an-activity"},"#"),e(" Modify an Activity")],-1),P=t("video",{title:"Filter by Activity",autoplay:"",playsinline:"",muted:"",loop:"",controls:""},[t("source",{src:"https://cdn.directus.io/docs/v9/configuration/activity-log/activity-log-20220816/modify-an-activity-20220817A.mp4",type:"video/mp4"})],-1),N=t("p",null,[e("To ensure proper accountability, system collections are "),t("strong",null,"read only"),e(" by design. However, users with an Admin role have the ability to reopen, view, and modify an item\u2019s values in activities from non-system collections (where the name does not begin with "),t("code",null,"directus_"),e("). To view or modify an activity, follow these steps.")],-1),D=t("ol",null,[t("li",null,"Navigate to the Activity Log page."),t("li",null,"Click the desired item. A drawer will open, displaying its activity log."),t("li",null,[e("Click "),t("span",{mi:"",btn:""},"launch"),e(" to reopen the item page and make modifications as desired.")]),t("li",null,[e("In the page header, click "),t("span",{mi:"",btn:""},"check"),e(" to confirm.")])],-1),F=t("p",null,"Once confirmed, any updates to an item will be logged as a new activity.",-1),E="Activity Log",O=!1,S="This module provides a collective timeline of all actions taken within the project. These detailed records allow for auditing user activity and enforcing accountability.",U="2 min read",R={__name:"activity-log",setup(M,{expose:s}){const a={title:"Activity Log",modularExtension:!1,description:"This module provides a collective timeline of all actions taken within the project. These detailed records allow for auditing user activity and enforcing accountability.",readTime:"2 min read"};return s({frontmatter:a}),(V,j)=>{const o=l("router-link"),c=l("docs-wrapper");return r(),d(c,{frontmatter:a},{default:i(()=>[t("div",h,[u,t("div",p,[m,t("p",null,[e("We recommend you try the "),n(o,{to:"/docs/getting-started/quickstart.md"},{default:i(()=>[e("Quickstart Guide")]),_:1}),e(" to get an overview of the platform.")])]),t("div",v,[y,t("p",null,[e("To manage the Activity Log programmatically, please see our guide on the "),n(o,{to:"/docs/reference/system/activity.md"},{default:i(()=>[e("Activity Log API")]),_:1}),e(".")])]),f,g,t("p",null,[e("The Activity Log is the only Module in Directus Core that is not found in the "),n(o,{to:"/docs/app/overview#_1-module-bar"},{default:i(()=>[e("Module Bar")]),_:1}),e(". Instead, it is accessed via the notifications tray of the "),n(o,{to:"/docs/app/overview#_4-sidebar"},{default:i(()=>[e("Sidebar")]),_:1}),e(". The Activity Log page has the same features and functionality as the "),n(o,{to:"/docs/app/content/collections"},{default:i(()=>[e("Collection Page")]),_:1}),e(".")]),_,t("div",w,[t("p",null,[e("You can also view and revert the activity of "),b,e(" under "),T,e(". To learn more, please see "),n(o,{to:"/docs/app/content/items#revert-an-item"},{default:i(()=>[e("Revert an Item")]),_:1}),e(".")])]),A,k,C,L,x,I,t("p",null,[e("In addition to the filter and display functionality inherited from the "),n(o,{to:"/docs/app/content/collections"},{default:i(()=>[e("Collection Page")]),_:1}),e(", you can also filter items by activity from the Navigation Bar.")]),B,P,N,D,F])]),_:1})}}};export{R as default,S as description,O as modularExtension,U as readTime,E as title};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as o,o as r,
|
|
1
|
+
import{a as o,o as r,e as h,y as e,u as s,q as t,z as a}from"./runtime-core.esm-bundler.22ec0346.js";const d={class:"markdown-body"},p=s("hr",null,null,-1),u=s("h2",{id:"the-activity-object",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#the-activity-object"},"#"),t(" The Activity Object")],-1),_=s("p",null,[s("code",null,"action"),t(),s("strong",null,"string"),s("br"),t(" Action that was performed.")],-1),m=s("p",null,[s("code",null,"collection"),t(),s("strong",null,"string"),s("br"),t(" Collection identifier in which the item resides.")],-1),y=s("p",null,[s("code",null,"comment"),t(),s("strong",null,"string"),s("br"),t(" User comment. This will store the comments that show up in the right sidebar of the item edit page in the admin app.")],-1),g=s("p",null,[s("code",null,"id"),t(),s("strong",null,"integer"),s("br"),t(" Unique identifier for the object.")],-1),j=s("p",null,[s("code",null,"ip"),t(),s("strong",null,"string"),s("br"),t(" The IP address of the user at the time the action took place.")],-1),b=s("p",null,[s("code",null,"item"),t(),s("strong",null,"string"),s("br"),t(" Unique identifier for the item the action applied to. This is always a string, even for integer primary keys.")],-1),f=s("p",null,[s("code",null,"timestamp"),t(),s("strong",null,"string"),s("br"),t(" When the action happened.")],-1),v=s("code",null,"user",-1),x=s("strong",null,"many-to-one",-1),q=s("br",null,null,-1),w=s("p",null,[s("code",null,"user_agent"),t(),s("strong",null,"string"),s("br"),t(" User agent string of the browser the user used when the action took place.")],-1),T=s("code",null,"revisions",-1),k=s("strong",null,"one-to-many",-1),E=s("br",null,null,-1),A=s("pre",null,[s("code",{class:"language-json"},[s("span",{class:"hljs-punctuation"},"{"),t(`
|
|
2
2
|
`),s("span",{class:"hljs-attr"},'"action"'),s("span",{class:"hljs-punctuation"},":"),t(),s("span",{class:"hljs-string"},'"create"'),s("span",{class:"hljs-punctuation"},","),t(`
|
|
3
3
|
`),s("span",{class:"hljs-attr"},'"collection"'),s("span",{class:"hljs-punctuation"},":"),t(),s("span",{class:"hljs-string"},'"articles"'),s("span",{class:"hljs-punctuation"},","),t(`
|
|
4
4
|
`),s("span",{class:"hljs-attr"},'"comment"'),s("span",{class:"hljs-punctuation"},":"),t(),s("span",{class:"hljs-literal"},[s("span",{class:"hljs-keyword"},"null")]),s("span",{class:"hljs-punctuation"},","),t(`
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as g}from"./index.312f2c91.entry.js";function h(a,s){for(var l=0;l<s.length;l++){const i=s[l];if(typeof i!="string"&&!Array.isArray(i)){for(const t in i)if(t!=="default"&&!(t in a)){const u=Object.getOwnPropertyDescriptor(i,t);u&&Object.defineProperty(a,t,u.get?u:{enumerable:!0,get:()=>i[t]})}}}return Object.freeze(Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}))}var f={exports:{}};(function(a,s){(function(l){l(g.exports)})(function(l){l.defineMode("apl",function(){var i={".":"innerProduct","\\":"scan","/":"reduce","\u233F":"reduce1Axis","\u2340":"scan1Axis","\xA8":"each","\u2363":"power"},t={"+":["conjugate","add"],"\u2212":["negate","subtract"],"\xD7":["signOf","multiply"],"\xF7":["reciprocal","divide"],"\u2308":["ceiling","greaterOf"],"\u230A":["floor","lesserOf"],"\u2223":["absolute","residue"],"\u2373":["indexGenerate","indexOf"],"?":["roll","deal"],"\u22C6":["exponentiate","toThePowerOf"],"\u235F":["naturalLog","logToTheBase"],"\u25CB":["piTimes","circularFuncs"],"!":["factorial","binomial"],"\u2339":["matrixInverse","matrixDivide"],"<":[null,"lessThan"],"\u2264":[null,"lessThanOrEqual"],"=":[null,"equals"],">":[null,"greaterThan"],"\u2265":[null,"greaterThanOrEqual"],"\u2260":[null,"notEqual"],"\u2261":["depth","match"],"\u2262":[null,"notMatch"],"\u2208":["enlist","membership"],"\u2377":[null,"find"],"\u222A":["unique","union"],"\u2229":[null,"intersection"],"\u223C":["not","without"],"\u2228":[null,"or"],"\u2227":[null,"and"],"\u2371":[null,"nor"],"\u2372":[null,"nand"],"\u2374":["shapeOf","reshape"],",":["ravel","catenate"],"\u236A":[null,"firstAxisCatenate"],"\u233D":["reverse","rotate"],"\u2296":["axis1Reverse","axis1Rotate"],"\u2349":["transpose",null],"\u2191":["first","take"],"\u2193":[null,"drop"],"\u2282":["enclose","partitionWithAxis"],"\u2283":["diclose","pick"],"\u2337":[null,"index"],"\u234B":["gradeUp",null],"\u2352":["gradeDown",null],"\u22A4":["encode",null],"\u22A5":["decode",null],"\u2355":["format","formatByExample"],"\u234E":["execute",null],"\u22A3":["stop","left"],"\u22A2":["pass","right"]},u=/[\.\/⌿⍀¨⍣]/,c=/⍬/,p=/[\+−×÷⌈⌊∣⍳\?⋆⍟○!⌹<≤=>≥≠≡≢∈⍷∪∩∼∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⌷⍋⍒⊤⊥⍕⍎⊣⊢]/,d=/←/,v=/[⍝#].*$/,x=function(n){var r;return r=!1,function(e){return r=e,e===n?r==="\\":!0}};return{startState:function(){return{prev:!1,func:!1,op:!1,string:!1,escape:!1}},token:function(n,r){var e,o;return n.eatSpace()?null:(e=n.next(),e==='"'||e==="'"?(n.eatWhile(x(e)),n.next(),r.prev=!0,"string"):/[\[{\(]/.test(e)?(r.prev=!1,null):/[\]}\)]/.test(e)?(r.prev=!0,null):c.test(e)?(r.prev=!1,"niladic"):/[¯\d]/.test(e)?(r.func?(r.func=!1,r.prev=!1):r.prev=!0,n.eatWhile(/[\w\.]/),"number"):u.test(e)?"operator apl-"+i[e]:d.test(e)?"apl-arrow":p.test(e)?(o="apl-",t[e]!=null&&(r.prev?o+=t[e][1]:o+=t[e][0]),r.func=!0,r.prev=!1,"function "+o):v.test(e)?(n.skipToEnd(),"comment"):e==="\u2218"&&n.peek()==="."?(n.next(),"function jot-dot"):(n.eatWhile(/[\w\$_]/),r.prev=!0,"keyword"))}}}),l.defineMIME("text/apl","apl")})})();const m=f.exports,b=h({__proto__:null,default:m},[f.exports]);export{b as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as o,o as n,
|
|
1
|
+
import{a as o,o as n,e as i,y as c,u as e,q as t}from"./runtime-core.esm-bundler.22ec0346.js";const l=e("div",{class:"markdown-body"},[e("p",null,[e("strong",null,"Directus is a wrapper for both your database and file asset storage system.")]),e("p",null,"At first glance, it may be tempting to think of Directus as an app-centric platform. But that\u2019s not the case. The app is just a GUI powered by the API, which allows developers, business users, and data analysts equal access to data and asset storage, all in one place."),e("p",null,"Here\u2019s how the platform architecture breaks down."),e("p",null,[e("img",{src:"https://cdn.directus.io/docs/v9/getting-started/architecture/architecture-20220512/directus-architecture-20220512A.webp",alt:"Directus Architecture Graphic"})]),e("p",null,[t("Directus is plug-and-play. Once linked, it does\u2019t "),e("em",null,"own"),t(" your data or file assets, but it does create about 10-20 data tables needed for platform operation. These tables do not intermingle with the rest of your data, so you can remove Directus without a trace. You also have the freedom to access the database with raw SQL queries and access your file assets with CLI commands.")]),e("p",null,"At the lowest layer, the platform introspects the database and abstracts away specific SQL details- so no matter what SQL vendor you choose, the platform works seamlessly. Similarly, Directus syncs with your configured file storage service, providing control over your file assets."),e("p",null,[t("The next layer contains logic to access, transmit, query, and transform data, including event triggers, webhooks, data query operations, and file transformations "),e("em",null,"(like image cropping)"),t(". After that, data and assets get cached for efficient user access.")]),e("p",null,"Directus provides secure user access methods. Choose access token format and configure authentication as desired. You can set SSO and allow login through Google, Facebook, etc."),e("p",null,"Finally, a complete set of REST and GraphQL endpoints are generated dynamically, based on your data model as well as your configured roles and their associated access permissions."),e("p",null,[t("The Directus SDK is "),e("a",{href:"https://www.npmjs.com/package/directus",target:"_blank",rel:"noopener noreferrer"},"available via NPM"),t(". You also have access to two Command-Line Interfaces (CLI). One enables server-side actions relating to your on-prem instance, like migrating the database or resetting a user. The other allows you to interact with a Directus instance as you would with an SDK.")]),e("p",null,[t("Directus is 100% open-source, modular, and extensible, ensuring you will never hit a hard feature ceiling within the platform. Built entirely in crispy clean Typescript, mostly on Node.js and Vue.js, you have the power to add or modify "),e("em",null,"any feature"),t(" with your own custom extensions.")])],-1),m="Architecture",f=!1,w="A breakdown of the Directus platform architecture.",y="2 min read",g={__name:"architecture",setup(u,{expose:s}){const a={title:"Architecture",modularExtension:!1,description:"A breakdown of the Directus platform architecture.",readTime:"2 min read"};return s({frontmatter:a}),(d,h)=>{const r=o("docs-wrapper");return n(),i(r,{frontmatter:a},{default:c(()=>[l]),_:1})}}};export{g as default,w as description,f as modularExtension,y as readTime,m as title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as c}from"./index.312f2c91.entry.js";function s(i,a){for(var t=0;t<a.length;t++){const n=a[t];if(typeof n!="string"&&!Array.isArray(n)){for(const e in n)if(e!=="default"&&!(e in i)){const r=Object.getOwnPropertyDescriptor(n,e);r&&Object.defineProperty(i,e,r.get?r:{enumerable:!0,get:()=>n[e]})}}}return Object.freeze(Object.defineProperty(i,Symbol.toStringTag,{value:"Module"}))}var p={exports:{}};(function(i,a){(function(t){t(c.exports)})(function(t){function n(e){var r=e.match(/^\s*\S/);return e.skipToEnd(),r?"error":null}t.defineMode("asciiarmor",function(){return{token:function(e,r){var o;if(r.state=="top")return e.sol()&&(o=e.match(/^-----BEGIN (.*)?-----\s*$/))?(r.state="headers",r.type=o[1],"tag"):n(e);if(r.state=="headers"){if(e.sol()&&e.match(/^\w+:/))return r.state="header","atom";var f=n(e);return f&&(r.state="body"),f}else{if(r.state=="header")return e.skipToEnd(),r.state="headers","string";if(r.state=="body")return e.sol()&&(o=e.match(/^-----END (.*)?-----\s*$/))?o[1]!=r.type?"error":(r.state="end","tag"):e.eatWhile(/[A-Za-z0-9+\/=]/)?null:(e.next(),"error");if(r.state=="end")return n(e)}},blankLine:function(e){e.state=="headers"&&(e.state="body")},startState:function(){return{state:"top",type:null}}}}),t.defineMIME("application/pgp","asciiarmor"),t.defineMIME("application/pgp-encrypted","asciiarmor"),t.defineMIME("application/pgp-keys","asciiarmor"),t.defineMIME("application/pgp-signature","asciiarmor")})})();const u=p.exports,d=s({__proto__:null,default:u},[p.exports]);export{d as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as x}from"./index.312f2c91.entry.js";function h(a,f){for(var s=0;s<f.length;s++){const o=f[s];if(typeof o!="string"&&!Array.isArray(o)){for(const E in o)if(E!=="default"&&!(E in a)){const i=Object.getOwnPropertyDescriptor(o,E);i&&Object.defineProperty(a,E,i.get?i:{enumerable:!0,get:()=>o[E]})}}}return Object.freeze(Object.defineProperty(a,Symbol.toStringTag,{value:"Module"}))}var N={exports:{}};(function(a,f){(function(s){s(x.exports)})(function(s){s.defineMode("asn.1",function(E,i){var S=E.indentUnit,T=i.keywords||{},m=i.cmipVerbs||{},y=i.compareTypes||{},C=i.status||{},R=i.tags||{},g=i.storage||{},D=i.modifier||{},b=i.accessTypes||{},L=i.multiLineStrings,P=i.indentStatements!==!1,A=/[\|\^]/,u;function M(e,n){var t=e.next();if(t=='"'||t=="'")return n.tokenize=U(t),n.tokenize(e,n);if(/[\[\]\(\){}:=,;]/.test(t))return u=t,"punctuation";if(t=="-"&&e.eat("-"))return e.skipToEnd(),"comment";if(/\d/.test(t))return e.eatWhile(/[\w\.]/),"number";if(A.test(t))return e.eatWhile(A),"operator";e.eatWhile(/[\w\-]/);var r=e.current();return T.propertyIsEnumerable(r)?"keyword":m.propertyIsEnumerable(r)?"variable cmipVerbs":y.propertyIsEnumerable(r)?"atom compareTypes":C.propertyIsEnumerable(r)?"comment status":R.propertyIsEnumerable(r)?"variable-3 tags":g.propertyIsEnumerable(r)?"builtin storage":D.propertyIsEnumerable(r)?"string-2 modifier":b.propertyIsEnumerable(r)?"atom accessTypes":"variable"}function U(e){return function(n,t){for(var r=!1,c,O=!1;(c=n.next())!=null;){if(c==e&&!r){var I=n.peek();I&&(I=I.toLowerCase(),(I=="b"||I=="h"||I=="o")&&n.next()),O=!0;break}r=!r&&c=="\\"}return(O||!(r||L))&&(t.tokenize=null),"string"}}function d(e,n,t,r,c){this.indented=e,this.column=n,this.type=t,this.align=r,this.prev=c}function p(e,n,t){var r=e.indented;return e.context&&e.context.type=="statement"&&(r=e.context.indented),e.context=new d(r,n,t,null,e.context)}function l(e){var n=e.context.type;return(n==")"||n=="]"||n=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}return{startState:function(e){return{tokenize:null,context:new d((e||0)-S,0,"top",!1),indented:0,startOfLine:!0}},token:function(e,n){var t=n.context;if(e.sol()&&(t.align==null&&(t.align=!1),n.indented=e.indentation(),n.startOfLine=!0),e.eatSpace())return null;u=null;var r=(n.tokenize||M)(e,n);if(r=="comment")return r;if(t.align==null&&(t.align=!0),(u==";"||u==":"||u==",")&&t.type=="statement")l(n);else if(u=="{")p(n,e.column(),"}");else if(u=="[")p(n,e.column(),"]");else if(u=="(")p(n,e.column(),")");else if(u=="}"){for(;t.type=="statement";)t=l(n);for(t.type=="}"&&(t=l(n));t.type=="statement";)t=l(n)}else u==t.type?l(n):P&&((t.type=="}"||t.type=="top")&&u!=";"||t.type=="statement"&&u=="newstatement")&&p(n,e.column(),"statement");return n.startOfLine=!1,r},electricChars:"{}",lineComment:"--",fold:"brace"}});function o(E){for(var i={},S=E.split(" "),T=0;T<S.length;++T)i[S[T]]=!0;return i}s.defineMIME("text/x-ttcn-asn",{name:"asn.1",keywords:o("DEFINITIONS OBJECTS IF DERIVED INFORMATION ACTION REPLY ANY NAMED CHARACTERIZED BEHAVIOUR REGISTERED WITH AS IDENTIFIED CONSTRAINED BY PRESENT BEGIN IMPORTS FROM UNITS SYNTAX MIN-ACCESS MAX-ACCESS MINACCESS MAXACCESS REVISION STATUS DESCRIPTION SEQUENCE SET COMPONENTS OF CHOICE DistinguishedName ENUMERATED SIZE MODULE END INDEX AUGMENTS EXTENSIBILITY IMPLIED EXPORTS"),cmipVerbs:o("ACTIONS ADD GET NOTIFICATIONS REPLACE REMOVE"),compareTypes:o("OPTIONAL DEFAULT MANAGED MODULE-TYPE MODULE_IDENTITY MODULE-COMPLIANCE OBJECT-TYPE OBJECT-IDENTITY OBJECT-COMPLIANCE MODE CONFIRMED CONDITIONAL SUBORDINATE SUPERIOR CLASS TRUE FALSE NULL TEXTUAL-CONVENTION"),status:o("current deprecated mandatory obsolete"),tags:o("APPLICATION AUTOMATIC EXPLICIT IMPLICIT PRIVATE TAGS UNIVERSAL"),storage:o("BOOLEAN INTEGER OBJECT IDENTIFIER BIT OCTET STRING UTCTime InterfaceIndex IANAifType CMIP-Attribute REAL PACKAGE PACKAGES IpAddress PhysAddress NetworkAddress BITS BMPString TimeStamp TimeTicks TruthValue RowStatus DisplayString GeneralString GraphicString IA5String NumericString PrintableString SnmpAdminString TeletexString UTF8String VideotexString VisibleString StringStore ISO646String T61String UniversalString Unsigned32 Integer32 Gauge Gauge32 Counter Counter32 Counter64"),modifier:o("ATTRIBUTE ATTRIBUTES MANDATORY-GROUP MANDATORY-GROUPS GROUP GROUPS ELEMENTS EQUALITY ORDERING SUBSTRINGS DEFINED"),accessTypes:o("not-accessible accessible-for-notify read-only read-create read-write"),multiLineStrings:!0})})})();const v=N.exports,w=h({__proto__:null,default:v},[N.exports]);export{w as a};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as m}from"./index.312f2c91.entry.js";function f(l,s){for(var t=0;t<s.length;t++){const r=s[t];if(typeof r!="string"&&!Array.isArray(r)){for(const o in r)if(o!=="default"&&!(o in l)){const c=Object.getOwnPropertyDescriptor(r,o);c&&Object.defineProperty(l,o,c.get?c:{enumerable:!0,get:()=>r[o]})}}}return Object.freeze(Object.defineProperty(l,Symbol.toStringTag,{value:"Module"}))}var u={exports:{}};(function(l,s){(function(t){t(m.exports)})(function(t){t.defineMode("asterisk",function(){var r=["exten","same","include","ignorepat","switch"],o=["#include","#exec"],c=["addqueuemember","adsiprog","aelsub","agentlogin","agentmonitoroutgoing","agi","alarmreceiver","amd","answer","authenticate","background","backgrounddetect","bridge","busy","callcompletioncancel","callcompletionrequest","celgenuserevent","changemonitor","chanisavail","channelredirect","chanspy","clearhash","confbridge","congestion","continuewhile","controlplayback","dahdiacceptr2call","dahdibarge","dahdiras","dahdiscan","dahdisendcallreroutingfacility","dahdisendkeypadfacility","datetime","dbdel","dbdeltree","deadagi","dial","dictate","directory","disa","dumpchan","eagi","echo","endwhile","exec","execif","execiftime","exitwhile","extenspy","externalivr","festival","flash","followme","forkcdr","getcpeid","gosub","gosubif","goto","gotoif","gotoiftime","hangup","iax2provision","ices","importvar","incomplete","ivrdemo","jabberjoin","jabberleave","jabbersend","jabbersendgroup","jabberstatus","jack","log","macro","macroexclusive","macroexit","macroif","mailboxexists","meetme","meetmeadmin","meetmechanneladmin","meetmecount","milliwatt","minivmaccmess","minivmdelete","minivmgreet","minivmmwi","minivmnotify","minivmrecord","mixmonitor","monitor","morsecode","mp3player","mset","musiconhold","nbscat","nocdr","noop","odbc","odbc","odbcfinish","originate","ospauth","ospfinish","osplookup","ospnext","page","park","parkandannounce","parkedcall","pausemonitor","pausequeuemember","pickup","pickupchan","playback","playtones","privacymanager","proceeding","progress","queue","queuelog","raiseexception","read","readexten","readfile","receivefax","receivefax","receivefax","record","removequeuemember","resetcdr","retrydial","return","ringing","sayalpha","saycountedadj","saycountednoun","saycountpl","saydigits","saynumber","sayphonetic","sayunixtime","senddtmf","sendfax","sendfax","sendfax","sendimage","sendtext","sendurl","set","setamaflags","setcallerpres","setmusiconhold","sipaddheader","sipdtmfmode","sipremoveheader","skel","slastation","slatrunk","sms","softhangup","speechactivategrammar","speechbackground","speechcreate","speechdeactivategrammar","speechdestroy","speechloadgrammar","speechprocessingsound","speechstart","speechunloadgrammar","stackpop","startmusiconhold","stopmixmonitor","stopmonitor","stopmusiconhold","stopplaytones","system","testclient","testserver","transfer","tryexec","trysystem","unpausemonitor","unpausequeuemember","userevent","verbose","vmauthenticate","vmsayname","voicemail","voicemailmain","wait","waitexten","waitfornoise","waitforring","waitforsilence","waitmusiconhold","waituntil","while","zapateller"];function d(e,n){var i="",a=e.next();if(n.blockComment)return a=="-"&&e.match("-;",!0)?n.blockComment=!1:e.skipTo("--;")?(e.next(),e.next(),e.next(),n.blockComment=!1):e.skipToEnd(),"comment";if(a==";")return e.match("--",!0)&&!e.match("-",!1)?(n.blockComment=!0,"comment"):(e.skipToEnd(),"comment");if(a=="[")return e.skipTo("]"),e.eat("]"),"header";if(a=='"')return e.skipTo('"'),"string";if(a=="'")return e.skipTo("'"),"string-2";if(a=="#"&&(e.eatWhile(/\w/),i=e.current(),o.indexOf(i)!==-1))return e.skipToEnd(),"strong";if(a=="$"){var p=e.peek();if(p=="{")return e.skipTo("}"),e.eat("}"),"variable-3"}if(e.eatWhile(/\w/),i=e.current(),r.indexOf(i)!==-1){switch(n.extenStart=!0,i){case"same":n.extenSame=!0;break;case"include":case"switch":case"ignorepat":n.extenInclude=!0;break}return"atom"}}return{startState:function(){return{blockComment:!1,extenStart:!1,extenSame:!1,extenInclude:!1,extenExten:!1,extenPriority:!1,extenApplication:!1}},token:function(e,n){var i="";if(e.eatSpace())return null;if(n.extenStart)return e.eatWhile(/[^\s]/),i=e.current(),/^=>?$/.test(i)?(n.extenExten=!0,n.extenStart=!1,"strong"):(n.extenStart=!1,e.skipToEnd(),"error");if(n.extenExten)return n.extenExten=!1,n.extenPriority=!0,e.eatWhile(/[^,]/),n.extenInclude&&(e.skipToEnd(),n.extenPriority=!1,n.extenInclude=!1),n.extenSame&&(n.extenPriority=!1,n.extenSame=!1,n.extenApplication=!0),"tag";if(n.extenPriority)return n.extenPriority=!1,n.extenApplication=!0,e.next(),n.extenSame?null:(e.eatWhile(/[^,]/),"number");if(n.extenApplication){if(e.eatWhile(/,/),i=e.current(),i===",")return null;if(e.eatWhile(/\w/),i=e.current().toLowerCase(),n.extenApplication=!1,c.indexOf(i)!==-1)return"def strong"}else return d(e,n);return null},blockCommentStart:";--",blockCommentEnd:"--;",lineComment:";"}}),t.defineMIME("text/x-asterisk","asterisk")})})();const x=u.exports,h=f({__proto__:null,default:x},[u.exports]);export{h as a};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as l,o as h,
|
|
1
|
+
import{a as l,o as h,e as c,y as t,u as s,q as e,z as o}from"./runtime-core.esm-bundler.22ec0346.js";const u={class:"markdown-body"},d=s("hr",null,null,-1),p=s("h2",{id:"access-tokens",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#access-tokens"},"#"),e(" Access Tokens")],-1),_=s("p",null,"There are two types of tokens that can be used to authenticate within Directus.",-1),g=s("p",null,[s("strong",null,"Temporary Token (JWT)"),e(" are returned by the "),s("a",{href:"#login"},"login"),e(" endpoint/mutation. These tokens have a relatively short expiration time, and are thus the most secure option to use. The tokens are returned with a "),s("code",null,"refresh_token"),e(" that can be used to retrieve a new access token via the "),s("a",{href:"#refresh"},"refresh"),e(" endpoint/mutation.")],-1),f=s("p",null,[s("strong",null,"Static Tokens"),e(" can be set for each platform user, and never expire. They are less secure, but quite useful for server-to-server communication. They are saved as plain-text within "),s("code",null,"directus_users.token"),e(".")],-1),j=s("p",null,[e("Once you have your access token, there are two ways to pass it to the API, via the "),s("code",null,"access_token"),e(" query parameter, or in the request\u2019s Authorization Header.")],-1),b=s("h3",{id:"query-parameter",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#query-parameter"},"#"),e(" Query Parameter")],-1),m=s("pre",null,[s("code",null,`?access_token=<token>
|
|
2
2
|
`)],-1),k=s("h3",{id:"authorization-header",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#authorization-header"},"#"),e(" Authorization Header")],-1),w=s("pre",null,[s("code",null,`Authorization: Bearer <token>
|
|
3
3
|
`)],-1),y=s("hr",null,null,-1),q=s("h2",{id:"login",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#login"},"#"),e(" Login")],-1),v=s("p",null,"Retrieve a temporary access token and refresh token.",-1),x=s("h3",{id:"request-body",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#request-body"},"#"),e(" Request Body")],-1),T=s("p",null,[s("code",null,"email"),e(),s("strong",null,"Required"),s("br"),e(" Email address of the user you\u2019re retrieving the access token for.")],-1),P=s("p",null,[s("code",null,"password"),e(),s("strong",null,"Required"),s("br"),e(" Password of the user.")],-1),S=s("p",null,[s("code",null,"otp"),s("br"),e(" The user\u2019s one-time-password (if MFA is enabled).")],-1),R=s("p",null,[s("code",null,"mode"),s("br"),e(" Whether to retrieve the refresh token in the JSON response, or in a "),s("code",null,"httpOnly"),e(),s("code",null,"secure"),e(" cookie. One of "),s("code",null,"json"),e(", "),s("code",null,"cookie"),e(". Defaults to "),s("code",null,"json"),e(".")],-1),A=s("h3",{id:"response-attributes",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#response-attributes"},"#"),e(" Response Attributes")],-1),O=s("p",null,[s("code",null,"access_token"),e(),s("strong",null,"string"),s("br"),e(" Temporary access token to be used in follow-up requests.")],-1),E=s("p",null,[s("code",null,"expires"),e(),s("strong",null,"integer"),s("br"),e(" How long before the access token will expire. Value is in milliseconds.")],-1),L=s("p",null,[s("code",null,"refresh_token"),e(),s("strong",null,"string"),s("br"),e(" The token that can be used to retrieve a new access token through "),s("a",{href:"#refresh"},[s("code",null,"/auth/refresh")]),e(". Note: if you used "),s("code",null,"cookie"),e(" as the mode in the request, the refresh token won\u2019t be returned in the JSON.")],-1),I={class:"tip hint"},B=s("div",{class:"hint-title"},"Expiry time",-1),N=s("code",null,"ACCESS_TOKEN_TTL",-1),G=s("h3",{id:"rest-api",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#rest-api"},"#"),e(" REST API")],-1),C=s("pre",null,[s("code",null,`POST /auth/login
|
|
4
4
|
`)],-1),D=s("pre",null,[s("code",null,`POST /auth/login/:provider
|
|
@@ -6,8 +6,8 @@ import{a as l,o as h,b as c,w as t,l as s,E as e,e as o}from"./runtime-core.esm-
|
|
|
6
6
|
`),s("span",{class:"hljs-attr"},'"email"'),s("span",{class:"hljs-punctuation"},":"),e(),s("span",{class:"hljs-string"},'"admin@example.com"'),s("span",{class:"hljs-punctuation"},","),e(`
|
|
7
7
|
`),s("span",{class:"hljs-attr"},'"password"'),s("span",{class:"hljs-punctuation"},":"),e(),s("span",{class:"hljs-string"},'"d1r3ct5us"'),e(`
|
|
8
8
|
`),s("span",{class:"hljs-punctuation"},"}"),e(`
|
|
9
|
-
`)])],-1),W=s("h3",{id:"graphql",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#graphql"},"#"),e(" GraphQL")],-1),
|
|
10
|
-
`)],-1),
|
|
9
|
+
`)])],-1),W=s("h3",{id:"graphql",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#graphql"},"#"),e(" GraphQL")],-1),z=s("pre",null,[s("code",null,`POST /graphql/system
|
|
10
|
+
`)],-1),Q=s("pre",null,[s("code",{class:"language-graphql"},[s("span",{class:"hljs-keyword"},"mutation"),e(` {
|
|
11
11
|
auth_login(email: `),s("span",{class:"hljs-string"},'"admin@example.com"'),e(", password: "),s("span",{class:"hljs-string"},'"d1r3ctu5"'),e(`) {
|
|
12
12
|
access_token
|
|
13
13
|
refresh_token
|
|
@@ -46,7 +46,7 @@ import{a as l,o as h,b as c,w as t,l as s,E as e,e as o}from"./runtime-core.esm-
|
|
|
46
46
|
`),s("span",{class:"hljs-attr"},'"token"'),s("span",{class:"hljs-punctuation"},":"),e(),s("span",{class:"hljs-string"},'"eyJh...KmUk"'),s("span",{class:"hljs-punctuation"},","),e(`
|
|
47
47
|
`),s("span",{class:"hljs-attr"},'"password"'),s("span",{class:"hljs-punctuation"},":"),e(),s("span",{class:"hljs-string"},'"d1r3ctu5"'),e(`
|
|
48
48
|
`),s("span",{class:"hljs-punctuation"},"}"),e(`
|
|
49
|
-
`)])],-1),
|
|
49
|
+
`)])],-1),zs=s("h3",{id:"graphql-4",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#graphql-4"},"#"),e(" GraphQL")],-1),Qs=s("pre",null,[s("code",null,`POST /graphql/system
|
|
50
50
|
`)],-1),Hs=s("pre",null,[s("code",{class:"language-graphql"},[s("span",{class:"hljs-keyword"},"mutation"),e(` {
|
|
51
51
|
auth_password_reset(token: `),s("span",{class:"hljs-string"},'"eyJh...KmUk"'),e(", password: "),s("span",{class:"hljs-string"},'"d1r3ctu5"'),e(`)
|
|
52
52
|
}
|
|
@@ -71,4 +71,4 @@ import{a as l,o as h,b as c,w as t,l as s,E as e,e as o}from"./runtime-core.esm-
|
|
|
71
71
|
`),s("span",{class:"hljs-attr"},'"disableDefault"'),s("span",{class:"hljs-punctuation"},":"),e(),s("span",{class:"hljs-literal"},[s("span",{class:"hljs-keyword"},"false")]),e(`
|
|
72
72
|
`),s("span",{class:"hljs-punctuation"},"}"),e(`
|
|
73
73
|
`)])],-1),ee=s("hr",null,null,-1),te=s("h2",{id:"login-using-sso-providers",tabindex:"-1"},[s("a",{class:"header-anchor",href:"#login-using-sso-providers"},"#"),e(" Login Using SSO Providers")],-1),ne=s("p",null,"Will redirect to the configured SSO provider for the user to login.",-1),oe=s("pre",null,[s("code",null,`GET /auth/login/:provider
|
|
74
|
-
`)],-1),ae=s("hr",null,null,-1),ce="Authentication",ue=!1,de="API documentation on authentication in Directus.",pe="5 min read",_e="page-reference",ge={__name:"authentication",setup(le,{expose:r}){const a={title:"Authentication",modularExtension:!1,description:"API documentation on authentication in Directus.",readTime:"5 min read",pageClass:"page-reference"};return r({frontmatter:a}),(re,ie)=>{const n=l("router-link"),i=l("docs-wrapper");return h(),c(i,{frontmatter:a},{default:t(()=>[s("div",u,[s("blockquote",null,[s("p",null,[e("All data within the platform is private by default. The "),o(n,{to:"/docs/configuration/users-roles-permissions#configure-permissions"},{default:t(()=>[e("public role")]),_:1}),e(" can be configured to expose data without authentication, or you can pass an access token to the API to access private data.")])]),d,p,_,g,f,j,b,m,k,w,y,q,v,x,T,P,S,R,A,O,E,L,s("div",I,[B,s("p",null,[e("The token\u2019s expiration time can be configured through "),o(n,{to:"/docs/self-hosted/config-options#general"},{default:t(()=>[e("the "),N,e(" environment variable")]),_:1}),e(".")])]),G,C,D,J,W,Q,
|
|
74
|
+
`)],-1),ae=s("hr",null,null,-1),ce="Authentication",ue=!1,de="API documentation on authentication in Directus.",pe="5 min read",_e="page-reference",ge={__name:"authentication",setup(le,{expose:r}){const a={title:"Authentication",modularExtension:!1,description:"API documentation on authentication in Directus.",readTime:"5 min read",pageClass:"page-reference"};return r({frontmatter:a}),(re,ie)=>{const n=l("router-link"),i=l("docs-wrapper");return h(),c(i,{frontmatter:a},{default:t(()=>[s("div",u,[s("blockquote",null,[s("p",null,[e("All data within the platform is private by default. The "),o(n,{to:"/docs/configuration/users-roles-permissions#configure-permissions"},{default:t(()=>[e("public role")]),_:1}),e(" can be configured to expose data without authentication, or you can pass an access token to the API to access private data.")])]),d,p,_,g,f,j,b,m,k,w,y,q,v,x,T,P,S,R,A,O,E,L,s("div",I,[B,s("p",null,[e("The token\u2019s expiration time can be configured through "),o(n,{to:"/docs/self-hosted/config-options#general"},{default:t(()=>[e("the "),N,e(" environment variable")]),_:1}),e(".")])]),G,C,D,J,W,z,Q,H,V,U,K,F,M,Y,X,Z,$,ss,es,ts,ns,os,as,ls,rs,is,hs,cs,us,ds,ps,_s,gs,fs,js,bs,ms,ks,ws,s("p",null,[ys,qs,e(" Provide a custom reset url which the link in the email will lead to. The reset token will be passed as a parameter."),vs,xs,e(": You need to configure the "),o(n,{to:"/docs/self-hosted/config-options#security"},{default:t(()=>[Ts,e(" environment variable")]),_:1}),e(" to enable this feature.")]),Ps,Ss,Rs,As,Os,Es,Ls,Is,Bs,Ns,Gs,Cs,Ds,Js,Ws,zs,Qs,Hs,Vs,Us,Ks,s("div",Fs,[Ms,s("p",null,[e("To learn more about setting up auth providers, see "),o(n,{to:"/docs/self-hosted/config-options#authentication"},{default:t(()=>[e("Configuring auth providers")]),_:1}),e(".")])]),Ys,Xs,Zs,$s,se,ee,te,ne,oe,ae])]),_:1})}}};export{ge as default,de as description,ue as modularExtension,_e as pageClass,pe as readTime,ce as title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as a}from"./index.312f2c91.entry.js";function p(u,n){for(var o=0;o<n.length;o++){const i=n[o];if(typeof i!="string"&&!Array.isArray(i)){for(const r in i)if(r!=="default"&&!(r in u)){const e=Object.getOwnPropertyDescriptor(i,r);e&&Object.defineProperty(u,r,e.get?e:{enumerable:!0,get:()=>i[r]})}}}return Object.freeze(Object.defineProperty(u,Symbol.toStringTag,{value:"Module"}))}var s={exports:{}};(function(u,n){(function(o){o(a.exports)})(function(o){o.defineOption("autoRefresh",!1,function(e,t){e.state.autoRefresh&&(r(e,e.state.autoRefresh),e.state.autoRefresh=null),t&&e.display.wrapper.offsetHeight==0&&i(e,e.state.autoRefresh={delay:t.delay||250})});function i(e,t){function f(){e.display.wrapper.offsetHeight?(r(e,t),e.display.lastWrapHeight!=e.display.wrapper.clientHeight&&e.refresh()):t.timeout=setTimeout(f,t.delay)}t.timeout=setTimeout(f,t.delay),t.hurry=function(){clearTimeout(t.timeout),t.timeout=setTimeout(f,50)},o.on(window,"mouseup",t.hurry),o.on(window,"keyup",t.hurry)}function r(e,t){clearTimeout(t.timeout),o.off(window,"mouseup",t.hurry),o.off(window,"keyup",t.hurry)}})})();const l=s.exports,h=p({__proto__:null,default:l},[s.exports]);export{h as a};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as s,o as c,
|
|
1
|
+
import{a as s,o as c,e as d,y as t,u as e,q as o,z as l}from"./runtime-core.esm-bundler.22ec0346.js";const u={class:"markdown-body"},h=e("p",null,"While there are many different ways to run Directus on AWS, from single EC2 instances to a full ELB load-balanced configuration, we like the following combination of services:",-1),p=e("ul",null,[e("li",null,[o("Elastic Beanstalk (EB) "),e("ul",null,[e("li",null,"Elastic Load Balancer (ELB)"),e("li",null,"Elastic Compute Cloud (EC2)")])]),e("li",null,"CodeDeploy"),e("li",null,"Simple Storage Service (S3)"),e("li",null,"Relational Database Service (RDS) (Aurora)"),e("li",null,"CloudFront"),e("li",null,"Route 53")],-1),f=e("h2",{id:"elastic-beanstalk",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#elastic-beanstalk"},"#"),o(" Elastic Beanstalk")],-1),m=e("p",null,"Will run Directus in an autoscaling environment with a load balancer. Makes sure the instances stay alive, and will replace individual instances in case of unexpected crashes.",-1),_=e("p",null,[o("See "),e("a",{href:"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/create_deploy_nodejs.html",target:"_blank",rel:"noopener noreferrer"},"Deploying Node.js applications to Elastic Beanstalk"),o(" for more information.")],-1),b=e("h2",{id:"codedeploy",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#codedeploy"},"#"),o(" CodeDeploy")],-1),g=e("p",null,"Allows you to automatically deploy updates to your Directus instance or extensions to Elastic Beanstalk.",-1),y=e("p",null,[o("See "),e("a",{href:"https://aws.amazon.com/blogs/devops/automatically-deploy-from-github-using-aws-codedeploy",target:"_blank",rel:"noopener noreferrer"},"Automatically Deploy from GitHub Using AWS CodeDeploy"),o(" for more information.")],-1),w=e("h2",{id:"simple-storage-service-(s3)",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#simple-storage-service-(s3)"},"#"),o(" Simple Storage Service (S3)")],-1),k=e("p",null,"Ideal place to store files uploaded to Directus. Your bucket doesn\u2019t have to be publicly accessible to the web; Directus will stream files from and to the bucket in its /asset endpoint.",-1),v=e("p",null,[o("See "),e("a",{href:"https://docs.aws.amazon.com/AmazonS3/latest/gsg/CreatingABucket.html",target:"_blank",rel:"noopener noreferrer"},"Creating a bucket"),o(" for more information.")],-1),S=e("h2",{id:"relational-database-service-(rds)-(aurora)",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#relational-database-service-(rds)-(aurora)"},"#"),o(" Relational Database Service (RDS) (Aurora)")],-1),D=e("p",null,"While you can technically use any of the SQL based databases offered in AWS, we like to use Aurora. It\u2019s auto-scaling and use-based costs have worked out pretty well for us in the past.",-1),C=e("h2",{id:"cloudfront",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#cloudfront"},"#"),o(" CloudFront")],-1),A=e("p",null,"While it\u2019s not a technical requirement, it\u2019s not a bad idea to configure a CloudFront instance in front of your EB environment. This protects you from DDoS attacks and allows you to cache repeated calls to assets in its CDN.",-1),E=e("p",null,[o("See "),e("a",{href:"https://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.cloudfront.html",target:"_blank",rel:"noopener noreferrer"},"Using Elastic Beanstalk with Amazon CloudFront"),o(" for more information.")],-1),B=e("h2",{id:"route-53",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#route-53"},"#"),o(" Route 53")],-1),x=e("p",null,"The last piece of this puzzle is to assign a domain name to your CloudFront instance. You can use Route 53 for this purpose.",-1),W=e("p",null,[o("See "),e("a",{href:"https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-cloudfront-distribution.html",target:"_blank",rel:"noopener noreferrer"},"Routing traffic to an Amazon CloudFront web distribution by using your domain name"),o(" for more information.")],-1),H="AWS",N=!1,G="How to host Directus on AWS.",L="2 min read",V={__name:"aws",setup(z,{expose:r}){const a={title:"AWS",modularExtension:!1,description:"How to host Directus on AWS.",readTime:"2 min read"};return r({frontmatter:a}),(R,F)=>{const n=s("router-link"),i=s("docs-wrapper");return c(),d(i,{frontmatter:a},{default:t(()=>[e("div",u,[h,p,f,m,e("p",null,[o("We recommend setting up a repo in GitHub (or another Git provider) and configuring it using "),l(n,{to:"/docs/self-hosted/installation/manual"},{default:t(()=>[o("our manual installation flow")]),_:1}),o(". This allows you to later hook up the repo to your Elastic Beanstalk instance through CodeDeploy.")]),_,e("p",null,[o("Directus\u2019 configuration is all set through environment variables. For a full overview of all available environment variables, see "),l(n,{to:"/docs/self-hosted/config-options"},{default:t(()=>[o("Environment Variables")]),_:1})]),b,g,y,w,k,v,S,D,C,A,E,B,x,W])]),_:1})}}};export{V as default,G as description,N as modularExtension,L as readTime,H as title};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a,o as u,
|
|
1
|
+
import{a,o as u,e as c,y as o,u as e,q as t,z as n}from"./runtime-core.esm-bundler.22ec0346.js";const d={class:"markdown-body"},p=e("blockquote",null,[e("p",null,[t("Directus is both "),e("em",null,"premium"),t(" and "),e("em",null,"free"),t(" \u2014 two things that don\u2019t often go together. It takes significant resources to maintain the platform. If you\u2019d like to help keep development active, please consider supporting Directus through one of the methods below.")])],-1),h=e("h2",{id:"brand-advocacy",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#brand-advocacy"},"#"),t(" Brand Advocacy")],-1),m=e("p",null,[e("strong",null,"You can create perfect software, but if no one knows about it, it\u2019s all for naught. Marketing and advertising are expensive. You can help us cut these costs with the following quick options.")],-1),f=e("p",null,[e("strong",null,"GitHub Stars"),e("br"),t(" As an open-source project, stars are a primary metric by which we measure our success. It only takes a few seconds to head to the "),e("a",{href:"https://github.com/directus/directus",target:"_blank",rel:"noopener noreferrer"},"Directus GitHub Repo"),t(" and click the star. With enough activity in a short period of time, we get "),e("em",null,"even more exposure"),t(" on GitHub\u2019s trending page!")],-1),g=e("p",null,[e("strong",null,"Social Posts"),e("br"),t(" Engage with us on social media. Follow us! A quick post mentioning "),e("a",{href:"https://twitter.com/directus",target:"_blank",rel:"noopener noreferrer"},"@directus"),t(" goes a long way! "),e("em",null,"Plus, we re-tweet the team\u2019s favorite shout-outs to our 45K+ followers.")],-1),_=e("strong",null,"Testimonials",-1),b=e("br",null,null,-1),w=e("em",null,"One sentence.",-1),y=e("em",null,"need to hear your testimonial",-1),k=e("a",{href:"https://twitter.com/directus",target:"_blank",rel:"noopener noreferrer"},"Tweet",-1),v=e("a",{href:"https://directus.chat",target:"_blank",rel:"noopener noreferrer"},"Discord",-1),x=e("p",null,[e("strong",null,"Reviews"),e("br"),t(" The following popular rating platforms allow you to post your rating and testimonial publicly, which automatically gives it more exposure.")],-1),C=e("ul",null,[e("li",null,[e("a",{href:"https://www.g2.com/products/directus/reviews",target:"_blank",rel:"noopener noreferrer"},"G2")]),e("li",null,[e("a",{href:"https://www.capterra.com/p/156619/Directus",target:"_blank",rel:"noopener noreferrer"},"Capterra")]),e("li",null,[e("a",{href:"https://www.trustradius.com/products/directus/reviews",target:"_blank",rel:"noopener noreferrer"},"TrustRadius")]),e("li",null,[e("a",{href:"https://www.producthunt.com/posts/directus-9",target:"_blank",rel:"noopener noreferrer"},"Product Hunt")])],-1),D=e("h2",{id:"community-engagement",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#community-engagement"},"#"),t(" Community Engagement")],-1),T=e("p",null,[e("strong",null,"While the Directus Core Team spearheads development, community engagement is an essential part of the Directus mission. We need your help in order to make Directus all it can be.")],-1),G=e("p",null,[e("strong",null,"GitHub Sponsors"),e("br"),t(" The core team is funded. All monthly donations via "),e("a",{href:"https://github.com/sponsors/directus",target:"_blank",rel:"noopener noreferrer"},"GitHub Sponsors"),t(" form a budget to compensate the top community contributors. Donate to sponsor more "),e("a",{href:"https://github.com/orgs/directus/people",target:"_blank",rel:"noopener noreferrer"},"community developers")],-1),S=e("p",null,[e("strong",null,"Code Pull Requests"),e("br"),t(" Squashing bugs, optimizing the codebase, increasing test coverage, and adding new features, are all extremely valuable. Obviously, you\u2019re making the platform better for yourself as well. "),e("em",null,"That\u2019s a double whammy!"),t(),e("a",{href:"https://github.com/directus",target:"_blank",rel:"noopener noreferrer"},"Go make your PR on GitHub!")],-1),E=e("p",null,[e("strong",null,"Bug Reporting"),e("br"),t(" If you find an issue in Directus, no matter how small, we\u2019d love to hear about it. Proper bug reporting helps our team improve platform stability. "),e("a",{href:"https://github.com/directus/directus/issues/new",target:"_blank",rel:"noopener noreferrer"},"Report a bug on GitHub")],-1),q=e("strong",null,"App Translations",-1),H=e("br",null,null,-1),P=e("a",{href:"https://locales.directus.io",target:"_blank",rel:"noopener noreferrer"},"Crowdin integration",-1),R=e("h2",{id:"financial-support",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#financial-support"},"#"),t(" Financial Support")],-1),W=e("p",null,[e("strong",null,"Talented full-time and part-time staff, infrastructure, and third-party services are just some of our organization\u2019s many expenses. Here are a few support avenues that help us keep the lights on.")],-1),z=e("p",null,[e("strong",null,"Premium Support"),e("br"),e("em",null,"Software engineering is hard!"),t(" Let our Core Team help you better manage your Directus project with a dedicated Premium Support agreement so your devs can focus on your app\u2019s core business logic. "),e("a",{href:"https://directus.io/contact",target:"_blank",rel:"noopener noreferrer"},"Contact the Team"),t(" for more info.")],-1),B=e("strong",null,"Sponsored Work",-1),j=e("br",null,null,-1),A=e("em",null,"and for your project!",-1),I=e("strong",null,"Directus Cloud",-1),N=e("br",null,null,-1),F={class:"tip hint"},O=e("div",{class:"hint-title"},"Ready to try out Cloud?",-1),V=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Enterprise Cloud"),e("p",null,[t("Need total customization, unlimited scalability, and dedicated support? "),e("a",{href:"https://directus.io/contact",target:"_blank",rel:"noopener noreferrer"},"Contact us")])],-1),Q="Backing Directus",J=!1,U="What you can do to support Directus.",X="4 min read",Z={__name:"backing-directus",setup(Y,{expose:i}){const s={title:"Backing Directus",modularExtension:!1,description:"What you can do to support Directus.",readTime:"4 min read"};return i({frontmatter:s}),(L,M)=>{const r=a("router-link"),l=a("docs-wrapper");return u(),c(l,{frontmatter:s},{default:o(()=>[e("div",d,[p,h,m,f,g,e("p",null,[_,b,w,t(" Even that was a sentence and it was only two words! If you\u2019re a fan of Directus, we\u2019d love to hear why with a short endorsement\u2026 More importantly, potential new users "),y,t(" to see if the product is right for them! Shoot us an "),n(r,{to:"/docsmailto:info@directus.io"},{default:o(()=>[t("email")]),_:1}),t(", "),k,t(", or "),v,t(" message with your name, title, and company.")]),x,C,D,T,G,S,e("p",null,[t("Not quite a software engineer yet? We have plenty of documentation that can always use some extra attention. Learn more in our "),n(r,{to:"/docs/contributing/introduction"},{default:o(()=>[t("Contributors Guide")]),_:1}),t(".")]),E,e("p",null,[q,H,t(" Every button, element, or other line of text in the app is "),n(r,{to:"/docs/contributing/translations"},{default:o(()=>[t("fully translatable")]),_:1}),t(". These translations make our app an international platform. Our "),P,t(" makes polishing existing translations or creating new ones a breeze.")]),R,W,z,e("p",null,[B,j,n(r,{to:"/docs/getting-started/support#commissioned-features"},{default:o(()=>[t("Commissioned Features")]),_:1}),t(" and "),n(r,{to:"/docs/getting-started/support#expedited-fixes"},{default:o(()=>[t("Expedited Fixes")]),_:1}),t(" are great ways to financially support the development of Directus and improve the codebase for the community "),A]),e("p",null,[I,N,t(" Cloud architecture, software updates, and configuration optimizations require fully dedicated effort. Cut through all that digital red-tape and run your projects on "),n(r,{to:"/docs/cloud/overview"},{default:o(()=>[t("Directus Cloud")]),_:1}),t(". You get production-ready projects with zero vendor lock-in, 90 second average build times, incredibly fair pricing, scaling at the click of a button, automatic updates with no downtime and a constant stream of new "),n(r,{to:"/docs/cloud/glossary#extensions"},{default:o(()=>[t("Cloud Exclusive Extensions")]),_:1}),t(".")]),e("p",null,[t("We do everything we can to make hosting on "),n(r,{to:"/docs/cloud/overview"},{default:o(()=>[t("Directus Cloud")]),_:1}),t(" a no-brainer.")]),e("div",F,[O,e("p",null,[t("Test out Directus Cloud now for free with the "),n(r,{to:"/docs/getting-started/quickstart"},{default:o(()=>[t("Quickstart Guide")]),_:1}),t(".")])]),V])]),_:1})}}};export{Z as default,U as description,J as modularExtension,X as readTime,Q as title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as u}from"./index.312f2c91.entry.js";function l(f,i){for(var t=0;t<i.length;t++){const o=i[t];if(typeof o!="string"&&!Array.isArray(o)){for(const e in o)if(e!=="default"&&!(e in f)){const n=Object.getOwnPropertyDescriptor(o,e);n&&Object.defineProperty(f,e,n.get?n:{enumerable:!0,get:()=>o[e]})}}}return Object.freeze(Object.defineProperty(f,Symbol.toStringTag,{value:"Module"}))}var c={exports:{}};(function(f,i){(function(t){t(u.exports)})(function(t){var o="><+-.,[]".split("");t.defineMode("brainfuck",function(){return{startState:function(){return{commentLine:!1,left:0,right:0,commentLoop:!1}},token:function(e,n){if(e.eatSpace())return null;e.sol()&&(n.commentLine=!1);var r=e.next().toString();if(o.indexOf(r)!==-1){if(n.commentLine===!0)return e.eol()&&(n.commentLine=!1),"comment";if(r==="]"||r==="[")return r==="["?n.left++:n.right++,"bracket";if(r==="+"||r==="-")return"keyword";if(r==="<"||r===">")return"atom";if(r==="."||r===",")return"def"}else return n.commentLine=!0,e.eol()&&(n.commentLine=!1),"comment";e.eol()&&(n.commentLine=!1)}}}),t.defineMIME("text/x-brainfuck","brainfuck")})})();const m=c.exports,s=l({__proto__:null,default:m},[c.exports]);export{s as b};
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import{a as i,o as r,
|
|
1
|
+
import{a as i,o as r,e as d,y as n,u as e,q as t,z as s}from"./runtime-core.esm-bundler.22ec0346.js";const h={class:"markdown-body"},u=e("blockquote",null,[e("p",null,"Directus has two command line interfaces (CLI) that you can use for various actions. One is used for server-side actions that relate to your on-prem instance, like migrating the database or resetting a user, while the other allows you to interact with a Directus instance as you would with an SDK.")],-1),p=e("h2",{id:"server",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#server"},"#"),t(" Server")],-1),m=e("p",null,[t("For server-side CLI, all functionality can be accessed by running "),e("code",null,"npx directus <command>"),t(" in your project folder.")],-1),_=e("h3",{id:"initialize-a-new-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#initialize-a-new-project"},"#"),t(" Initialize a New Project")],-1),g=e("pre",null,[e("code",{class:"language-bash"},`npx directus init
|
|
2
2
|
`)],-1),f=e("p",null,[t("Will install the required database driver, and create a "),e("code",null,".env"),t(" file based on the inputted values.")],-1),y=e("h3",{id:"bootstrap-a-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#bootstrap-a-project"},"#"),t(" Bootstrap a Project")],-1),b=e("pre",null,[e("code",{class:"language-bash"},`npx directus bootstrap
|
|
3
3
|
`)],-1),w=e("p",null,[t("Will use an existing "),e("code",null,".env"),t(" file (or existing environment variables) to either install the database (if it\u2019s empty) or migrate it to the latest version (if it already exists and has missing migrations).")],-1),x={class:"tip hint"},v=e("div",{class:"hint-title"},"First User",-1),T=e("code",null,"ADMIN_EMAIL",-1),k=e("code",null,"ADMIN_PASSWORD",-1),j=e("code",null,"bootstrap",-1),D=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Skip Admin User/Role"),e("p",null,[t("You can pass the "),e("code",null,"--skipAdminInit"),t(" option to "),e("code",null,"bootstrap"),t(", if you\u2019re creating your Admin role/user in another way (with a custom migration or an external service, for example).")])],-1),I=e("h3",{id:"install-the-database",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#install-the-database"},"#"),t(" Install the Database")],-1),C=e("pre",null,[e("code",{class:"language-bash"},`npx directus database install
|
|
4
4
|
`)],-1),L=e("p",null,[t("Installs the initial Directus system tables on an empty database. Used internally by "),e("code",null,"bootstrap"),t(".")],-1),S=e("p",null,[t("It should be used only in specific cases, e.g. when you want to run something between "),e("code",null,"install"),t(" and "),e("code",null,"migrate"),t(". You probably should call "),e("code",null,"directus database migrate:latest"),t(" afterwards manually.")],-1),Y=e("p",null,[t("You may want to use "),e("code",null,"directus bootstrap"),t(" instead.")],-1),A=e("h3",{id:"upgrade-the-database",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#upgrade-the-database"},"#"),t(" Upgrade the Database")],-1),M=e("pre",null,[e("code",{class:"language-bash"},`npx directus database migrate:latest
|
|
5
5
|
npx directus database migrate:up
|
|
6
6
|
npx directus database migrate:down
|
|
7
|
-
`)],-1),
|
|
8
|
-
`)],-1),
|
|
7
|
+
`)],-1),q=e("p",null,[t("Migrate the database up/down to match the versions of Directus. Once you update Directus itself, make sure to run "),e("code",null,"npx directus database migrate:latest"),t(" (or "),e("code",null,"npx directus bootstrap"),t(") to update your database.")],-1),N=e("h3",{id:"migrate-schema-to-a-different-environment",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#migrate-schema-to-a-different-environment"},"#"),t(" Migrate Schema to a different Environment")],-1),B=e("p",null,"This allows you to do things like migrate a schema from development to production. To move your configured data model between Directus instances, you can use the schema \u201Csnapshot\u201D and \u201Capply\u201D commands.",-1),U=e("h4",{id:"snapshot-the-data-model",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#snapshot-the-data-model"},"#"),t(" Snapshot the Data Model")],-1),O=e("p",null,"Directus can automatically generate a snapshot of your current data model in YAML or JSON format. This includes all collections, fields, and relations, and their configuration. This snapshot can be checked in version control and shared with your team. To generate the snapshot, run",-1),F=e("pre",null,[e("code",{class:"language-bash"},`npx directus schema snapshot ./snapshot.yaml
|
|
8
|
+
`)],-1),E=e("p",null,"To run non-interactively (e.g. when running in a CI/CD workflow), run",-1),P=e("pre",null,[e("code",{class:"language-bash"},[t("npx directus schema snapshot --"),e("span",{class:"hljs-built_in"},"yes"),t(` ./snapshot.yaml
|
|
9
9
|
`)])],-1),W=e("p",null,"Note, that this will force overwrite existing snapshot files.",-1),z=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Date-based snapshots"),e("p",null,[t("To keep multiple snapshot organized by date, create a folder "),e("code",null,"snapshots"),t(" in your project root directory add the following custom script to your "),e("code",null,"package.json"),t(":")]),e("pre",null,[e("code",{class:"language-bash"},[e("span",{class:"hljs-string"},'"create-snapshot"'),t(": "),e("span",{class:"hljs-string"},[t('"npx directus schema snapshot ./snapshots/\\"'),e("span",{class:"hljs-subst"},'$(date \\"+%F\\")'),t('\\"-snapshot-\\"'),e("span",{class:"hljs-subst"},'$(date \\"+%s\\")'),t('\\".yaml"')]),t(`
|
|
10
10
|
`)])]),e("p",null,[t("When you run the command via "),e("code",null,"npm run create-snapshot"),t(" it will create a new snapshot with the following naming schema: "),e("code",null,"[YYYY-MM-DD]-snapshot-[timestamp].yaml"),t(". This command can be run e.g by your deployment pipeline before each deploy on your server to keep a schema backup.")])],-1),K=e("h4",{id:"applying-a-snapshot",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#applying-a-snapshot"},"#"),t(" Applying a Snapshot")],-1),V=e("p",null,"To make a different instance up to date with the latest changes in your data model, you can apply the snapshot. By applying the snapshot, Directus will auto-detect the changes required to make the current instance up to date with the proposed data model in the snapshot file, and will run the required migrations to the database to make it match the snapshot.",-1),J=e("p",null,"To apply the generated snapshot, run",-1),R=e("pre",null,[e("code",{class:"language-bash"},`npx directus schema apply ./path/to/snapshot.yaml
|
|
11
11
|
`)],-1),$=e("p",null,"To run non-interactively (e.g. when running in a CI/CD workflow), run",-1),G=e("pre",null,[e("code",{class:"language-bash"},[t("npx directus schema apply --"),e("span",{class:"hljs-built_in"},"yes"),t(` ./path/to/snapshot.yaml
|
|
@@ -16,4 +16,4 @@ npx directus database migrate:down
|
|
|
16
16
|
`)],-1),le=e("p",null,[t("To create a new role with admin access, set the "),e("code",null,"--admin"),t(" flag to "),e("code",null,"true"),t(", such as")],-1),ce=e("pre",null,[e("code",{class:"language-bash"},[t("npx directus roles create --role <role-name> --admin "),e("span",{class:"hljs-literal"},"true"),t(`
|
|
17
17
|
`)])],-1),re=e("h3",{id:"count-items-in-a-collection",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#count-items-in-a-collection"},"#"),t(" Count Items in a Collection")],-1),de=e("p",null,"To count the amount of items in a given collection, run",-1),he=e("pre",null,[e("code",{class:"language-bash"},`npx directus count <collection-name>
|
|
18
18
|
`)],-1),ue=e("hr",null,null,-1),pe=e("h2",{id:"client",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#client"},"#"),t(" Client")],-1),me=e("p",null,[t("For the client-side CLI, all functionality can be accessed by running "),e("code",null,"npx directusctl <command>"),t(". You can also install "),e("code",null,"@directus/cli"),t(" on your project dependencies or globally on your machine. Note that if you run "),e("code",null,"directusctl"),t(" (installed globally) in a folder containing a project that has a version of "),e("code",null,"@directus/cli"),t(" installed, the running global CLI will forward it\u2019s execution to the local installed version instead.")],-1),_e=e("h3",{id:"help-%26-documentation",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#help-%26-documentation"},"#"),t(" Help & Documentation")],-1),ge=e("p",null,[t("The documentation for all commands can be accessed through the CLI itself. You can list all the available commands through "),e("code",null,"directusctl --help"),t(" command. If you want help for a specific command you can use "),e("code",null,"directusctl <command> --help"),t(" instead.")],-1),fe=e("h3",{id:"instances",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#instances"},"#"),t(" Instances")],-1),ye=e("p",null,[t("Most client-side CLI commands needs a running Directus instance in order to work. To connect the CLI to an instance, you can use "),e("code",null,"directusctl instance connect"),t(" command. These instance\u2019s configs are going to be saved on "),e("code",null,"~/.directus"),t(" folder.")],-1),be=e("p",null,[t("To manage the connected instances, you can use "),e("code",null,"directusctl instance <command>"),t(" commands.")],-1),we=e("h4",{id:"selecting-instances",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#selecting-instances"},"#"),t(" Selecting instances")],-1),xe=e("p",null,[t("By default, commands will try using an instance named "),e("code",null,"default"),t(" when executing commands.")],-1),ve=e("p",null,[t("If you want to change which instance you want to use, either pass "),e("code",null,"--instance <name>"),t(" to the command, or configure "),e("code",null,"instance"),t(" variable on your project\u2019s Directus config file.")],-1),Te=e("p",null,"For example:",-1),ke=e("blockquote",null,[e("p",null,".directus.yml")],-1),je=e("pre",null,[e("code",{class:"language-yaml"},[e("span",{class:"hljs-attr"},"instance:"),t(),e("span",{class:"hljs-string"},"my-project"),t(`
|
|
19
|
-
`)])],-1),De=e("h3",{id:"i%2Fo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#i%2Fo"},"#"),t(" I/O")],-1),Ie=e("p",null,[t("The CLI is designed with ease of use and automation in mind, this means that you can change the way the output is made by setting how you want the data to be written to the terminal. We currently support three formats, "),e("code",null,"table"),t(" (the default one), "),e("code",null,"json"),t(" and "),e("code",null,"yaml"),t(".")],-1),Ce=e("p",null,[t("This makes it easier to parse and use data from Directus with other tools like "),e("code",null,"jq"),t(", "),e("code",null,"yq"),t(", "),e("code",null,"grep"),t(" or any other tools that accepts data from "),e("code",null,"stdin")],-1),Le=e("p",null,[t("It\u2019s also worth mentioning that everything is data. Try for example running "),e("code",null,"directusctl --help --format=json"),t(".")],-1),Se=e("h4",{id:"table",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#table"},"#"),t(" Table")],-1),Ye=e("p",null,"The default output format. This is the \u201Cpretty\u201D output, you\u2019ll most likely want to use this if you\u2019re not dealing with data in a way you need to pipe it to another command and/or store it for parsing.",-1),Ae=e("p",null,"This output will output colors and highlight content if it detects you\u2019re running in TTL.",-1),Me=e("h4",{id:"json",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#json"},"#"),t(" JSON")],-1),
|
|
19
|
+
`)])],-1),De=e("h3",{id:"i%2Fo",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#i%2Fo"},"#"),t(" I/O")],-1),Ie=e("p",null,[t("The CLI is designed with ease of use and automation in mind, this means that you can change the way the output is made by setting how you want the data to be written to the terminal. We currently support three formats, "),e("code",null,"table"),t(" (the default one), "),e("code",null,"json"),t(" and "),e("code",null,"yaml"),t(".")],-1),Ce=e("p",null,[t("This makes it easier to parse and use data from Directus with other tools like "),e("code",null,"jq"),t(", "),e("code",null,"yq"),t(", "),e("code",null,"grep"),t(" or any other tools that accepts data from "),e("code",null,"stdin")],-1),Le=e("p",null,[t("It\u2019s also worth mentioning that everything is data. Try for example running "),e("code",null,"directusctl --help --format=json"),t(".")],-1),Se=e("h4",{id:"table",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#table"},"#"),t(" Table")],-1),Ye=e("p",null,"The default output format. This is the \u201Cpretty\u201D output, you\u2019ll most likely want to use this if you\u2019re not dealing with data in a way you need to pipe it to another command and/or store it for parsing.",-1),Ae=e("p",null,"This output will output colors and highlight content if it detects you\u2019re running in TTL.",-1),Me=e("h4",{id:"json",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#json"},"#"),t(" JSON")],-1),qe=e("p",null,"This format will output JSON notation strings to your terminal. By default if TTY is detected, it will highlight (can be turned off with special flags) and prettify the output to make it easier to read.",-1),Ne=e("p",null,[t("Useful when you need to parse data using tools like "),e("code",null,"jq"),t(" for example.")],-1),Be=e("h4",{id:"yaml",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#yaml"},"#"),t(" YAML")],-1),Ue=e("p",null,"This format will output YAML strings to your terminal. By default if TTY is detected, it will highlight (can be turned off with special flags) and prettify the output to make it easier to read.",-1),Oe=e("p",null,[t("Useful when you need to parse data using tools like "),e("code",null,"jq"),t(" for example.")],-1),ze="Command Line Interface",Ke=!1,Ve="Directus has two command line interfaces (CLI) that you can use for various actions, one for server-side actions and another to interact with a Directus instance as you would with an SDK",Je="7 min read",Re={__name:"cli",setup(Fe,{expose:l}){const o={title:"Command Line Interface",modularExtension:!1,description:"Directus has two command line interfaces (CLI) that you can use for various actions, one for server-side actions and another to interact with a Directus instance as you would with an SDK",readTime:"7 min read"};return l({frontmatter:o}),(Ee,Pe)=>{const a=i("router-link"),c=i("docs-wrapper");return r(),d(c,{frontmatter:o},{default:n(()=>[e("div",h,[u,p,m,_,g,f,y,b,w,e("p",null,[t("This is very useful to use in environments where you\u2019re doing standalone automatic deployments, like a multi-container Kubernetes configuration, or a similar approach on "),s(a,{to:"/docs/self-hosted/installation/digitalocean-app-platform"},{default:n(()=>[t("DigitalOcean App Platform")]),_:1}),t(", "),s(a,{to:"/docs/self-hosted/installation/gcp"},{default:n(()=>[t("Google Cloud Platform")]),_:1}),t(" or "),s(a,{to:"/docs/self-hosted/installation/aws"},{default:n(()=>[t("AWS Elastic Beanstalk")]),_:1})]),e("div",x,[v,e("p",null,[t("You can use the "),T,t(" and "),k,t(" environment variables to automatically provision the first user on first creation using the "),j,t(" command. See "),s(a,{to:"/docs/self-hosted/config-options#general"},{default:n(()=>[t("Environment Variables")]),_:1}),t(" for more information.")])]),D,I,C,L,S,Y,A,M,q,N,B,U,O,F,E,P,W,z,K,V,J,R,$,G,H,Q,X,Z,ee,te,ne,ae,se,oe,ie,e("p",null,[t("These roles are created with the "),s(a,{to:"/docs/configuration/users-roles-permissions#configure-system-permissions"},{default:n(()=>[t("minimum permissions required")]),_:1}),t(" to properly access the App by default.")]),le,ce,re,de,he,ue,pe,me,_e,ge,fe,ye,be,we,xe,ve,Te,ke,je,De,Ie,Ce,Le,Se,Ye,Ae,Me,qe,Ne,Be,Ue,Oe])]),_:1})}}};export{Re as default,Ve as description,Ke as modularExtension,Je as readTime,ze as title};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as s,o as c,
|
|
1
|
+
import{a as s,o as c,e as u,y as n,u as e,q as t,z as l}from"./runtime-core.esm-bundler.22ec0346.js";const d={class:"markdown-body"},p=e("h2",{id:"1.-confirm-minimum-requirements",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#1.-confirm-minimum-requirements"},"#"),t(" 1. Confirm Minimum Requirements")],-1),h=e("p",null,[t("Directus requires two things to run: "),e("a",{href:"https://nodejs.dev",target:"_blank",rel:"noopener noreferrer"},"Node.js"),t(" and a Database. For both these system requirements, we aim to support the current LTS release (and newer).")],-1),_=e("p",null,"To run Directus, you currently need Node 12.20 or newer, and one of the following databases:",-1),m=e("table",null,[e("thead",null,[e("tr",null,[e("th",null,"Database"),e("th",null,"Version")])]),e("tbody",null,[e("tr",null,[e("td",null,"PostgreSQL"),e("td",null,"10+")]),e("tr",null,[e("td",null,[t("MySQL "),e("sup",null,"[1]")]),e("td",null,"5.7.8+ / 8+")]),e("tr",null,[e("td",null,"SQLite"),e("td",null,"3+")]),e("tr",null,[e("td",null,"MS SQL Server"),e("td",null,"13+")]),e("tr",null,[e("td",null,[t("MariaDB "),e("sup",null,"[2]")]),e("td",null,"10.2.7+")]),e("tr",null,[e("td",null,[t("CockroachDB "),e("sup",null,"[2]")]),e("td",null,"21.1.13+")]),e("tr",null,[e("td",null,[t("OracleDB"),e("sup",null,"[2]"),t(),e("sup",null,"[3]")]),e("td",null,"19+")])])],-1),f=e("p",null,[e("sup",null,"[1]"),t(" MySQL 8+ requires "),e("a",{href:"https://dev.mysql.com/doc/refman/8.0/en/upgrading-from-previous-series.html#upgrade-caching-sha2-password-compatible-connectors",target:"_blank",rel:"noopener noreferrer"},"mysql_native_password"),t(" to be enabled"),e("br"),e("sup",null,"[2]"),t(" Older versions may work, but aren\u2019t officially supported. Use at your own risk. "),e("br"),e("sup",null,"[3]"),t(" Make sure to install "),e("code",null,"node-oracledb"),t(" and it\u2019s system dependencies when using OracleDB")],-1),g=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Variants"),e("p",null,[t("In addition to the databases above, other variants are also supported, including "),e("strong",null,"AWS Aurora"),t(" (MySQL), "),e("strong",null,"AWS Redshift"),t(" (PostgreSQL), "),e("strong",null,"Azure SQL"),t(" (MS SQL).")])],-1),y=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},"Apple Silicon"),e("p",null,[t("When installing Directus on an Apple-made ARM CPU, make sure you have "),e("code",null,"libvips"),t(" installed. See "),e("a",{href:"https://sharp.pixelplumbing.com/install#apple-m1",target:"_blank",rel:"noopener noreferrer"},"Apple M1"),t(".")])],-1),b=e("h2",{id:"2.-create-a-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#2.-create-a-project"},"#"),t(" 2. Create a Project")],-1),w=e("p",null,"Navigate to the directory where you wish to create a new Directus project. The new project and directory will be created inside the current directory. Create a new Directus project by running the following npm command.",-1),v=e("pre",null,[e("code",{class:"language-bash"},`npm init directus-project my-project
|
|
2
2
|
`)],-1),j=e("div",{class:"warning hint"},[e("p",null,"Except for SQLite, the database must already be running before creating your Directus project.")],-1),S=e("h2",{id:"3.-start-your-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#3.-start-your-project"},"#"),t(" 3. Start your Project")],-1),D=e("p",null,[t("To start Directus, navigate to the project directory, "),e("em",null,"my-project"),t(".")],-1),L=e("pre",null,[e("code",{class:"language-bash"},[e("span",{class:"hljs-built_in"},"cd"),t(` my-project
|
|
3
3
|
`)])],-1),k=e("p",null,"Run the following command in your project directory.",-1),x=e("pre",null,[e("code",{class:"language-bash"},`npx directus start
|
|
4
|
-
`)],-1),C=e("h2",{id:"4.-view-your-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#4.-view-your-project"},"#"),t(" 4. View your Project")],-1),M=e("p",null,[t("The default port used by Directus is 8055. To view your project locally, go to "),e("code",null,"http://localhost:8055"),t(" in your browser.")],-1),P={class:"tip hint"},Q=e("div",{class:"hint-title"},"Changing Port",-1),T=e("code",null,"PORT",-1),
|
|
4
|
+
`)],-1),C=e("h2",{id:"4.-view-your-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#4.-view-your-project"},"#"),t(" 4. View your Project")],-1),M=e("p",null,[t("The default port used by Directus is 8055. To view your project locally, go to "),e("code",null,"http://localhost:8055"),t(" in your browser.")],-1),P={class:"tip hint"},Q=e("div",{class:"hint-title"},"Changing Port",-1),T=e("code",null,"PORT",-1),q=e("div",{class:"tip hint"},[e("div",{class:"hint-title"},".env Permissions"),e("p",null,[t("By default, the "),e("code",null,"create-directus-project"),t(" tool will set the file permissions of the generated "),e("code",null,".env"),t(" to "),e("code",null,"-rw-r-----"),t(" (0640). If you run Directus from a separate user on your machine, make sure these permissions are correct.")])],-1),I=e("h2",{id:"configure-%2F-update-%2F-upgrade-your-project",tabindex:"-1"},[e("a",{class:"header-anchor",href:"#configure-%2F-update-%2F-upgrade-your-project"},"#"),t(" Configure / Update / Upgrade your Project")],-1),F="Installing from CLI",R=!1,U="How to install Directus via CLI",O="2 min read",E={__name:"cli",setup(A,{expose:a}){const o={title:"Installing from CLI",modularExtension:!1,description:"How to install Directus via CLI",readTime:"2 min read"};return a({frontmatter:o}),(B,N)=>{const r=s("router-link"),i=s("docs-wrapper");return c(),u(i,{frontmatter:o},{default:n(()=>[e("div",d,[p,h,_,m,f,g,y,b,w,v,j,S,D,L,k,x,C,M,e("div",P,[Q,e("p",null,[t("If you want to use a different port, use "),l(r,{to:"/docs/self-hosted/config-options#general"},{default:n(()=>[t("the "),T,t(" environment variable")]),_:1}),t(".")])]),q,I,e("p",null,[t("See the "),l(r,{to:"/docs/self-hosted/upgrades-migrations"},{default:n(()=>[t("Updates & Migrations")]),_:1}),t(" to learn how to maintain your project moving forward.")])])]),_:1})}}};export{E as default,U as description,R as modularExtension,O as readTime,F as title};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{y as me}from"./index.312f2c91.entry.js";function ge(N,z){for(var y=0;y<z.length;y++){const g=z[y];if(typeof g!="string"&&!Array.isArray(g)){for(const m in g)if(m!=="default"&&!(m in N)){const k=Object.getOwnPropertyDescriptor(g,m);k&&Object.defineProperty(N,m,k.get?k:{enumerable:!0,get:()=>g[m]})}}}return Object.freeze(Object.defineProperty(N,Symbol.toStringTag,{value:"Module"}))}var ee={exports:{}};(function(N,z){(function(y){y(me.exports)})(function(y){function g(e,t,n,l,u,d){this.indented=e,this.column=t,this.type=n,this.info=l,this.align=u,this.prev=d}function m(e,t,n,l){var u=e.indented;return e.context&&e.context.type=="statement"&&n!="statement"&&(u=e.context.indented),e.context=new g(u,t,n,l,null,e.context)}function k(e){var t=e.context.type;return(t==")"||t=="]"||t=="}")&&(e.indented=e.context.indented),e.context=e.context.prev}function R(e,t,n){if(t.prevToken=="variable"||t.prevToken=="type"||/\S(?:[^- ]>|[*\]])\s*$|\*$/.test(e.string.slice(0,n))||t.typeAtEndOfLine&&e.column()==e.indentation())return!0}function F(e){for(;;){if(!e||e.type=="top")return!0;if(e.type=="}"&&e.prev.info!="namespace")return!1;e=e.prev}}y.defineMode("clike",function(e,t){var n=e.indentUnit,l=t.statementIndentUnit||n,u=t.dontAlignCalls,d=t.keywords||{},E=t.types||{},oe=t.builtin||{},W=t.blockKeywords||{},ae=t.defKeywords||{},le=t.atoms||{},v=t.hooks||{},ce=t.multiLineStrings,se=t.indentStatements!==!1,ue=t.indentSwitch!==!1,G=t.namespaceSeparator,fe=t.isPunctuationChar||/[\[\]{}\(\),;\:\.]/,de=t.numberStart||/[\d\.]/,pe=t.number||/^(?:0x[a-f\d]+|0b[01]+|(?:\d+\.?\d*|\.\d+)(?:e[-+]?\d+)?)(u|ll?|l|f)?/i,H=t.isOperatorChar||/[+\-*&%=<>!?|\/]/,Q=t.isIdentifierChar||/[\w\$_\xa1-\uffff]/,X=t.isReservedIdentifier||!1,p,O;function Y(o,a){var i=o.next();if(v[i]){var c=v[i](o,a);if(c!==!1)return c}if(i=='"'||i=="'")return a.tokenize=he(i),a.tokenize(o,a);if(de.test(i)){if(o.backUp(1),o.match(pe))return"number";o.next()}if(fe.test(i))return p=i,null;if(i=="/"){if(o.eat("*"))return a.tokenize=Z,Z(o,a);if(o.eat("/"))return o.skipToEnd(),"comment"}if(H.test(i)){for(;!o.match(/^\/[\/*]/,!1)&&o.eat(H););return"operator"}if(o.eatWhile(Q),G)for(;o.match(G);)o.eatWhile(Q);var f=o.current();return b(d,f)?(b(W,f)&&(p="newstatement"),b(ae,f)&&(O=!0),"keyword"):b(E,f)?"type":b(oe,f)||X&&X(f)?(b(W,f)&&(p="newstatement"),"builtin"):b(le,f)?"atom":"variable"}function he(o){return function(a,i){for(var c=!1,f,I=!1;(f=a.next())!=null;){if(f==o&&!c){I=!0;break}c=!c&&f=="\\"}return(I||!(c||ce))&&(i.tokenize=null),"string"}}function Z(o,a){for(var i=!1,c;c=o.next();){if(c=="/"&&i){a.tokenize=null;break}i=c=="*"}return"comment"}function J(o,a){t.typeFirstDefinitions&&o.eol()&&F(a.context)&&(a.typeAtEndOfLine=R(o,a,o.pos))}return{startState:function(o){return{tokenize:null,context:new g((o||0)-n,0,"top",null,!1),indented:0,startOfLine:!0,prevToken:null}},token:function(o,a){var i=a.context;if(o.sol()&&(i.align==null&&(i.align=!1),a.indented=o.indentation(),a.startOfLine=!0),o.eatSpace())return J(o,a),null;p=O=null;var c=(a.tokenize||Y)(o,a);if(c=="comment"||c=="meta")return c;if(i.align==null&&(i.align=!0),p==";"||p==":"||p==","&&o.match(/^\s*(?:\/\/.*)?$/,!1))for(;a.context.type=="statement";)k(a);else if(p=="{")m(a,o.column(),"}");else if(p=="[")m(a,o.column(),"]");else if(p=="(")m(a,o.column(),")");else if(p=="}"){for(;i.type=="statement";)i=k(a);for(i.type=="}"&&(i=k(a));i.type=="statement";)i=k(a)}else p==i.type?k(a):se&&((i.type=="}"||i.type=="top")&&p!=";"||i.type=="statement"&&p=="newstatement")&&m(a,o.column(),"statement",o.current());if(c=="variable"&&(a.prevToken=="def"||t.typeFirstDefinitions&&R(o,a,o.start)&&F(a.context)&&o.match(/^\s*\(/,!1))&&(c="def"),v.token){var f=v.token(o,a,c);f!==void 0&&(c=f)}return c=="def"&&t.styleDefs===!1&&(c="variable"),a.startOfLine=!1,a.prevToken=O?"def":c||p,J(o,a),c},indent:function(o,a){if(o.tokenize!=Y&&o.tokenize!=null||o.typeAtEndOfLine)return y.Pass;var i=o.context,c=a&&a.charAt(0),f=c==i.type;if(i.type=="statement"&&c=="}"&&(i=i.prev),t.dontIndentStatements)for(;i.type=="statement"&&t.dontIndentStatements.test(i.info);)i=i.prev;if(v.indent){var I=v.indent(o,i,a,n);if(typeof I=="number")return I}var ye=i.prev&&i.prev.info=="switch";if(t.allmanIndentation&&/[{(]/.test(c)){for(;i.type!="top"&&i.type!="}";)i=i.prev;return i.indented}return i.type=="statement"?i.indented+(c=="{"?0:l):i.align&&(!u||i.type!=")")?i.column+(f?0:1):i.type==")"&&!f?i.indented+l:i.indented+(f?0:n)+(!f&&ye&&!/^(?:case|default)\b/.test(a)?n:0)},electricInput:ue?/^\s*(?:case .*?:|default:|\{\}?|\})$/:/^\s*[{}]$/,blockCommentStart:"/*",blockCommentEnd:"*/",blockCommentContinue:" * ",lineComment:"//",fold:"brace"}});function r(e){for(var t={},n=e.split(" "),l=0;l<n.length;++l)t[n[l]]=!0;return t}function b(e,t){return typeof e=="function"?e(t):e.propertyIsEnumerable(t)}var _="auto if break case register continue return default do sizeof static else struct switch extern typedef union for goto while enum const volatile inline restrict asm fortran",j="alignas alignof and and_eq audit axiom bitand bitor catch class compl concept constexpr const_cast decltype delete dynamic_cast explicit export final friend import module mutable namespace new noexcept not not_eq operator or or_eq override private protected public reinterpret_cast requires static_assert static_cast template this thread_local throw try typeid typename using virtual xor xor_eq",U="bycopy byref in inout oneway out self super atomic nonatomic retain copy readwrite readonly strong weak assign typeof nullable nonnull null_resettable _cmd @interface @implementation @end @protocol @encode @property @synthesize @dynamic @class @public @package @private @protected @required @optional @try @catch @finally @import @selector @encode @defs @synchronized @autoreleasepool @compatibility_alias @available",B="FOUNDATION_EXPORT FOUNDATION_EXTERN NS_INLINE NS_FORMAT_FUNCTION NS_RETURNS_RETAINEDNS_ERROR_ENUM NS_RETURNS_NOT_RETAINED NS_RETURNS_INNER_POINTER NS_DESIGNATED_INITIALIZER NS_ENUM NS_OPTIONS NS_REQUIRES_NIL_TERMINATION NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_SWIFT_NAME NS_REFINED_FOR_SWIFT",te=r("int long char short double float unsigned signed void bool"),ne=r("SEL instancetype id Class Protocol BOOL");function S(e){return b(te,e)||/.+_t$/.test(e)}function A(e){return S(e)||b(ne,e)}var T="case do else for if switch while struct enum union",L="struct enum union";function w(e,t){if(!t.startOfLine)return!1;for(var n,l=null;n=e.peek();){if(n=="\\"&&e.match(/^.$/)){l=w;break}else if(n=="/"&&e.match(/^\/[\/\*]/,!1))break;e.next()}return t.tokenize=l,"meta"}function D(e,t){return t.prevToken=="type"?"type":!1}function P(e){return!e||e.length<2||e[0]!="_"?!1:e[1]=="_"||e[1]!==e[1].toLowerCase()}function s(e){return e.eatWhile(/[\w\.']/),"number"}function x(e,t){if(e.backUp(1),e.match(/^(?:R|u8R|uR|UR|LR)/)){var n=e.match(/^"([^\s\\()]{0,16})\(/);return n?(t.cpp11RawStringDelim=n[1],t.tokenize=q,q(e,t)):!1}return e.match(/^(?:u8|u|U|L)/)?e.match(/^["']/,!1)?"string":!1:(e.next(),!1)}function K(e){var t=/(\w+)::~?(\w+)$/.exec(e);return t&&t[1]==t[2]}function $(e,t){for(var n;(n=e.next())!=null;)if(n=='"'&&!e.eat('"')){t.tokenize=null;break}return"string"}function q(e,t){var n=t.cpp11RawStringDelim.replace(/[^\w\s]/g,"\\$&"),l=e.match(new RegExp(".*?\\)"+n+'"'));return l?t.tokenize=null:e.skipToEnd(),"string"}function h(e,t){typeof e=="string"&&(e=[e]);var n=[];function l(d){if(d)for(var E in d)d.hasOwnProperty(E)&&n.push(E)}l(t.keywords),l(t.types),l(t.builtin),l(t.atoms),n.length&&(t.helperType=e[0],y.registerHelper("hintWords",e[0],n));for(var u=0;u<e.length;++u)y.defineMIME(e[u],t)}h(["text/x-csrc","text/x-c","text/x-chdr"],{name:"clike",keywords:r(_),types:S,blockKeywords:r(T),defKeywords:r(L),typeFirstDefinitions:!0,atoms:r("NULL true false"),isReservedIdentifier:P,hooks:{"#":w,"*":D},modeProps:{fold:["brace","include"]}}),h(["text/x-c++src","text/x-c++hdr"],{name:"clike",keywords:r(_+" "+j),types:S,blockKeywords:r(T+" class try catch"),defKeywords:r(L+" class namespace"),typeFirstDefinitions:!0,atoms:r("true false NULL nullptr"),dontIndentStatements:/^template$/,isIdentifierChar:/[\w\$_~\xa1-\uffff]/,isReservedIdentifier:P,hooks:{"#":w,"*":D,u:x,U:x,L:x,R:x,0:s,1:s,2:s,3:s,4:s,5:s,6:s,7:s,8:s,9:s,token:function(e,t,n){if(n=="variable"&&e.peek()=="("&&(t.prevToken==";"||t.prevToken==null||t.prevToken=="}")&&K(e.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),h("text/x-java",{name:"clike",keywords:r("abstract assert break case catch class const continue default do else enum extends final finally for goto if implements import instanceof interface native new package private protected public return static strictfp super switch synchronized this throw throws transient try volatile while @interface"),types:r("var byte short int long float double boolean char void Boolean Byte Character Double Float Integer Long Number Object Short String StringBuffer StringBuilder Void"),blockKeywords:r("catch class do else finally for if switch try while"),defKeywords:r("class interface enum @interface"),typeFirstDefinitions:!0,atoms:r("true false null"),number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+\.?\d*|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,hooks:{"@":function(e){return e.match("interface",!1)?!1:(e.eatWhile(/[\w\$_]/),"meta")}},modeProps:{fold:["brace","import"]}}),h("text/x-csharp",{name:"clike",keywords:r("abstract as async await base break case catch checked class const continue default delegate do else enum event explicit extern finally fixed for foreach goto if implicit in interface internal is lock namespace new operator out override params private protected public readonly ref return sealed sizeof stackalloc static struct switch this throw try typeof unchecked unsafe using virtual void volatile while add alias ascending descending dynamic from get global group into join let orderby partial remove select set value var yield"),types:r("Action Boolean Byte Char DateTime DateTimeOffset Decimal Double Func Guid Int16 Int32 Int64 Object SByte Single String Task TimeSpan UInt16 UInt32 UInt64 bool byte char decimal double short int long object sbyte float string ushort uint ulong"),blockKeywords:r("catch class do else finally for foreach if struct switch try while"),defKeywords:r("class interface namespace struct var"),typeFirstDefinitions:!0,atoms:r("true false null"),hooks:{"@":function(e,t){return e.eat('"')?(t.tokenize=$,$(e,t)):(e.eatWhile(/[\w\$_]/),"meta")}}});function re(e,t){for(var n=!1;!e.eol();){if(!n&&e.match('"""')){t.tokenize=null;break}n=e.next()=="\\"&&!n}return"string"}function M(e){return function(t,n){for(var l;l=t.next();)if(l=="*"&&t.eat("/"))if(e==1){n.tokenize=null;break}else return n.tokenize=M(e-1),n.tokenize(t,n);else if(l=="/"&&t.eat("*"))return n.tokenize=M(e+1),n.tokenize(t,n);return"comment"}}h("text/x-scala",{name:"clike",keywords:r("abstract case catch class def do else extends final finally for forSome if implicit import lazy match new null object override package private protected return sealed super this throw trait try type val var while with yield _ assert assume require print println printf readLine readBoolean readByte readShort readChar readInt readLong readFloat readDouble"),types:r("AnyVal App Application Array BufferedIterator BigDecimal BigInt Char Console Either Enumeration Equiv Error Exception Fractional Function IndexedSeq Int Integral Iterable Iterator List Map Numeric Nil NotNull Option Ordered Ordering PartialFunction PartialOrdering Product Proxy Range Responder Seq Serializable Set Specializable Stream StringBuilder StringContext Symbol Throwable Traversable TraversableOnce Tuple Unit Vector Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void"),multiLineStrings:!0,blockKeywords:r("catch class enum do else finally for forSome if match switch try while"),defKeywords:r("class enum def object package trait type val var"),atoms:r("true false null"),indentStatements:!1,indentSwitch:!1,isOperatorChar:/[+\-*&%=<>!?|\/#:@]/,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return e.match('""')?(t.tokenize=re,t.tokenize(e,t)):!1},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},"=":function(e,t){var n=t.context;return n.type=="}"&&n.align&&e.eat(">")?(t.context=new g(n.indented,n.column,n.type,n.info,null,n.prev),"operator"):!1},"/":function(e,t){return e.eat("*")?(t.tokenize=M(1),t.tokenize(e,t)):!1}},modeProps:{closeBrackets:{pairs:'()[]{}""',triples:'"'}}});function ie(e){return function(t,n){for(var l=!1,u,d=!1;!t.eol();){if(!e&&!l&&t.match('"')){d=!0;break}if(e&&t.match('"""')){d=!0;break}u=t.next(),!l&&u=="$"&&t.match("{")&&t.skipTo("}"),l=!l&&u=="\\"&&!e}return(d||!e)&&(n.tokenize=null),"string"}}h("text/x-kotlin",{name:"clike",keywords:r("package as typealias class interface this super val operator var fun for is in This throw return annotation break continue object if else while do try when !in !is as? file import where by get set abstract enum open inner override private public internal protected catch finally out final vararg reified dynamic companion constructor init sealed field property receiver param sparam lateinit data inline noinline tailrec external annotation crossinline const operator infix suspend actual expect setparam value"),types:r("Boolean Byte Character CharSequence Class ClassLoader Cloneable Comparable Compiler Double Exception Float Integer Long Math Number Object Package Pair Process Runtime Runnable SecurityManager Short StackTraceElement StrictMath String StringBuffer System Thread ThreadGroup ThreadLocal Throwable Triple Void Annotation Any BooleanArray ByteArray Char CharArray DeprecationLevel DoubleArray Enum FloatArray Function Int IntArray Lazy LazyThreadSafetyMode LongArray Nothing ShortArray Unit"),intendSwitch:!1,indentStatements:!1,multiLineStrings:!0,number:/^(?:0x[a-f\d_]+|0b[01_]+|(?:[\d_]+(\.\d+)?|\.\d+)(?:e[-+]?[\d_]+)?)(u|ll?|l|f)?/i,blockKeywords:r("catch class do else finally for if where try while enum"),defKeywords:r("class val var object interface fun"),atoms:r("true false null this"),hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},"*":function(e,t){return t.prevToken=="."?"variable":"operator"},'"':function(e,t){return t.tokenize=ie(e.match('""')),t.tokenize(e,t)},"/":function(e,t){return e.eat("*")?(t.tokenize=M(1),t.tokenize(e,t)):!1},indent:function(e,t,n,l){var u=n&&n.charAt(0);if((e.prevToken=="}"||e.prevToken==")")&&n=="")return e.indented;if(e.prevToken=="operator"&&n!="}"&&e.context.type!="}"||e.prevToken=="variable"&&u=="."||(e.prevToken=="}"||e.prevToken==")")&&u==".")return l*2+t.indented;if(t.align&&t.type=="}")return t.indented+(e.context.type==(n||"").charAt(0)?0:l)}},modeProps:{closeBrackets:{triples:'"'}}}),h(["x-shader/x-vertex","x-shader/x-fragment"],{name:"clike",keywords:r("sampler1D sampler2D sampler3D samplerCube sampler1DShadow sampler2DShadow const attribute uniform varying break continue discard return for while do if else struct in out inout"),types:r("float int bool void vec2 vec3 vec4 ivec2 ivec3 ivec4 bvec2 bvec3 bvec4 mat2 mat3 mat4"),blockKeywords:r("for while do if else struct"),builtin:r("radians degrees sin cos tan asin acos atan pow exp log exp2 sqrt inversesqrt abs sign floor ceil fract mod min max clamp mix step smoothstep length distance dot cross normalize ftransform faceforward reflect refract matrixCompMult lessThan lessThanEqual greaterThan greaterThanEqual equal notEqual any all not texture1D texture1DProj texture1DLod texture1DProjLod texture2D texture2DProj texture2DLod texture2DProjLod texture3D texture3DProj texture3DLod texture3DProjLod textureCube textureCubeLod shadow1D shadow2D shadow1DProj shadow2DProj shadow1DLod shadow2DLod shadow1DProjLod shadow2DProjLod dFdx dFdy fwidth noise1 noise2 noise3 noise4"),atoms:r("true false gl_FragColor gl_SecondaryColor gl_Normal gl_Vertex gl_MultiTexCoord0 gl_MultiTexCoord1 gl_MultiTexCoord2 gl_MultiTexCoord3 gl_MultiTexCoord4 gl_MultiTexCoord5 gl_MultiTexCoord6 gl_MultiTexCoord7 gl_FogCoord gl_PointCoord gl_Position gl_PointSize gl_ClipVertex gl_FrontColor gl_BackColor gl_FrontSecondaryColor gl_BackSecondaryColor gl_TexCoord gl_FogFragCoord gl_FragCoord gl_FrontFacing gl_FragData gl_FragDepth gl_ModelViewMatrix gl_ProjectionMatrix gl_ModelViewProjectionMatrix gl_TextureMatrix gl_NormalMatrix gl_ModelViewMatrixInverse gl_ProjectionMatrixInverse gl_ModelViewProjectionMatrixInverse gl_TextureMatrixTranspose gl_ModelViewMatrixInverseTranspose gl_ProjectionMatrixInverseTranspose gl_ModelViewProjectionMatrixInverseTranspose gl_TextureMatrixInverseTranspose gl_NormalScale gl_DepthRange gl_ClipPlane gl_Point gl_FrontMaterial gl_BackMaterial gl_LightSource gl_LightModel gl_FrontLightModelProduct gl_BackLightModelProduct gl_TextureColor gl_EyePlaneS gl_EyePlaneT gl_EyePlaneR gl_EyePlaneQ gl_FogParameters gl_MaxLights gl_MaxClipPlanes gl_MaxTextureUnits gl_MaxTextureCoords gl_MaxVertexAttribs gl_MaxVertexUniformComponents gl_MaxVaryingFloats gl_MaxVertexTextureImageUnits gl_MaxTextureImageUnits gl_MaxFragmentUniformComponents gl_MaxCombineTextureImageUnits gl_MaxDrawBuffers"),indentSwitch:!1,hooks:{"#":w},modeProps:{fold:["brace","include"]}}),h("text/x-nesc",{name:"clike",keywords:r(_+" as atomic async call command component components configuration event generic implementation includes interface module new norace nx_struct nx_union post provides signal task uses abstract extends"),types:S,blockKeywords:r(T),atoms:r("null true false"),hooks:{"#":w},modeProps:{fold:["brace","include"]}}),h("text/x-objectivec",{name:"clike",keywords:r(_+" "+U),types:A,builtin:r(B),blockKeywords:r(T+" @synthesize @try @catch @finally @autoreleasepool @synchronized"),defKeywords:r(L+" @interface @implementation @protocol @class"),dontIndentStatements:/^@.*$/,typeFirstDefinitions:!0,atoms:r("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:P,hooks:{"#":w,"*":D},modeProps:{fold:["brace","include"]}}),h("text/x-objectivec++",{name:"clike",keywords:r(_+" "+U+" "+j),types:A,builtin:r(B),blockKeywords:r(T+" @synthesize @try @catch @finally @autoreleasepool @synchronized class try catch"),defKeywords:r(L+" @interface @implementation @protocol @class class namespace"),dontIndentStatements:/^@.*$|^template$/,typeFirstDefinitions:!0,atoms:r("YES NO NULL Nil nil true false nullptr"),isReservedIdentifier:P,hooks:{"#":w,"*":D,u:x,U:x,L:x,R:x,0:s,1:s,2:s,3:s,4:s,5:s,6:s,7:s,8:s,9:s,token:function(e,t,n){if(n=="variable"&&e.peek()=="("&&(t.prevToken==";"||t.prevToken==null||t.prevToken=="}")&&K(e.current()))return"def"}},namespaceSeparator:"::",modeProps:{fold:["brace","include"]}}),h("text/x-squirrel",{name:"clike",keywords:r("base break clone continue const default delete enum extends function in class foreach local resume return this throw typeof yield constructor instanceof static"),types:S,blockKeywords:r("case catch class else for foreach if switch try while"),defKeywords:r("function local class"),typeFirstDefinitions:!0,atoms:r("true false null"),hooks:{"#":w},modeProps:{fold:["brace","include"]}});var C=null;function V(e){return function(t,n){for(var l=!1,u,d=!1;!t.eol();){if(!l&&t.match('"')&&(e=="single"||t.match('""'))){d=!0;break}if(!l&&t.match("``")){C=V(e),d=!0;break}u=t.next(),l=e=="single"&&!l&&u=="\\"}return d&&(n.tokenize=null),"string"}}h("text/x-ceylon",{name:"clike",keywords:r("abstracts alias assembly assert assign break case catch class continue dynamic else exists extends finally for function given if import in interface is let module new nonempty object of out outer package return satisfies super switch then this throw try value void while"),types:function(e){var t=e.charAt(0);return t===t.toUpperCase()&&t!==t.toLowerCase()},blockKeywords:r("case catch class dynamic else finally for function if interface module new object switch try while"),defKeywords:r("class dynamic function interface module object package value"),builtin:r("abstract actual aliased annotation by default deprecated doc final formal late license native optional sealed see serializable shared suppressWarnings tagged throws variable"),isPunctuationChar:/[\[\]{}\(\),;\:\.`]/,isOperatorChar:/[+\-*&%=<>!?|^~:\/]/,numberStart:/[\d#$]/,number:/^(?:#[\da-fA-F_]+|\$[01_]+|[\d_]+[kMGTPmunpf]?|[\d_]+\.[\d_]+(?:[eE][-+]?\d+|[kMGTPmunpf]|)|)/i,multiLineStrings:!0,typeFirstDefinitions:!0,atoms:r("true false null larger smaller equal empty finished"),indentSwitch:!1,styleDefs:!1,hooks:{"@":function(e){return e.eatWhile(/[\w\$_]/),"meta"},'"':function(e,t){return t.tokenize=V(e.match('""')?"triple":"single"),t.tokenize(e,t)},"`":function(e,t){return!C||!e.match("`")?!1:(t.tokenize=C,C=null,t.tokenize(e,t))},"'":function(e){return e.eatWhile(/[\w\$_\xa1-\uffff]/),"atom"},token:function(e,t,n){if((n=="variable"||n=="type")&&t.prevToken==".")return"variable-2"}},modeProps:{fold:["brace","import"],closeBrackets:{triples:'"'}}})})})();const ke=ee.exports,we=ge({__proto__:null,default:ke},[ee.exports]);export{ee as a,we as c};
|