import { type Oak } from "https://deno.land/x/superdeno@4.8.0/test/deps.ts";
const { ApplicationOptions } = Oak;
Available options that are used when creating a new instance of
Application
.
Properties
Determine how when creating a new context, the state from the application
should be applied. A value of "clone"
will set the state as a clone of
the app state. Any non-cloneable or non-enumerable properties will not be
copied. A value of "prototype"
means that the application's state will be
used as the prototype of the the context's state, meaning shallow
properties on the context's state will not be reflected in the
application's state. A value of "alias"
means that application's .state
and the context's .state
will be a reference to the same object. A value
of "empty"
will initialize the context's .state
with an empty object.
The default value is "clone"
.
An initial set of keys (or instance of KeyStack
) to be used for signing
cookies produced by the application.
If true
, any errors handled by the application will be logged to the
stderr. If false
nothing will be logged. The default is true
.
All errors are available as events on the application of type "error"
and
can be accessed for custom logging/application management via adding an
event listener to the application:
const app = new Application({ logErrors: false });
app.addEventListener("error", (evt) => {
// evt.error will contain what error was thrown
});
If set to true
, proxy headers will be trusted when processing requests.
This defaults to false
.
A server constructor to use instead of the default server for receiving requests.
Generally this is only used for testing.
The initial state object for the application, of which the type can be used to infer the type of the state for both the application and any of the application's context.