@shrub/express-session 0.5.34 → 0.5.38

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.
@@ -1,6 +1,4 @@
1
- import { ICookies } from "@shrub/express-cookies";
2
- import { ISession, ISessionOptions, ISessionValueCollection } from "./session";
3
- export declare const ICookieSessionOptions: import("@shrub/core").IOptions<ICookieSessionOptions>;
1
+ import { ISessionOptions } from "./session";
4
2
  export interface ICookieSessionOptions extends ISessionOptions {
5
3
  /** The name of the cookie used for a session; the default is '_sess'. */
6
4
  readonly cookieName?: string;
@@ -9,18 +7,4 @@ export interface ICookieSessionOptions extends ISessionOptions {
9
7
  /** True if the session values should be signed to detect tampering; the default is true. */
10
8
  readonly signed?: boolean;
11
9
  }
12
- export declare class CookieSession implements ISession {
13
- private readonly context;
14
- private readonly cookie;
15
- private pendingDelete?;
16
- constructor(cookies: ICookies, options: ICookieSessionOptions);
17
- get maxAge(): number | undefined;
18
- set maxAge(value: number | undefined);
19
- get values(): ISessionValueCollection;
20
- delete(): void;
21
- keepAlive(): void;
22
- saveChanges(): void;
23
- static isCookieSession(session: ISession): session is CookieSession;
24
- private decode;
25
- private encode;
26
- }
10
+ export declare const ICookieSessionOptions: import("@shrub/core").IOptions<ICookieSessionOptions>;
@@ -6,6 +6,7 @@ exports.ICookieSessionOptions = core_1.createOptions("cookie-session");
6
6
  const defaultSecure = true;
7
7
  const defaultSigned = true;
8
8
  const defaultCookieName = "_sess";
9
+ /** @internal */
9
10
  class CookieSession {
10
11
  constructor(cookies, options) {
11
12
  this.context = new SessionContext();
@@ -110,4 +111,4 @@ class SessionContext {
110
111
  this._isNew = false;
111
112
  }
112
113
  }
113
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLXNlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29va2llLXNlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0NBQTRDO0FBSS9CLFFBQUEscUJBQXFCLEdBQUcsb0JBQWEsQ0FBd0IsZ0JBQWdCLENBQUMsQ0FBQztBQVc1RixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUM7QUFDM0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDO0FBQzNCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDO0FBRWxDLE1BQWEsYUFBYTtJQUt0QixZQUFZLE9BQWlCLEVBQUUsT0FBOEI7UUFKNUMsWUFBTyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFLNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksaUJBQWlCLEVBQUU7WUFDL0QsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhO1NBQ3hFLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFDM0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFM0YsNkVBQTZFO1FBQzdFLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFH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
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLXNlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvY29va2llLXNlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsc0NBQTRDO0FBYS9CLFFBQUEscUJBQXFCLEdBQUcsb0JBQWEsQ0FBd0IsZ0JBQWdCLENBQUMsQ0FBQztBQUU1RixNQUFNLGFBQWEsR0FBRyxJQUFJLENBQUM7QUFDM0IsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDO0FBQzNCLE1BQU0saUJBQWlCLEdBQUcsT0FBTyxDQUFDO0FBRWxDLGdCQUFnQjtBQUNoQixNQUFhLGFBQWE7SUFLdEIsWUFBWSxPQUFpQixFQUFFLE9BQThCO1FBSjVDLFlBQU8sR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBSzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLGlCQUFpQixFQUFFO1lBQy9ELE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYTtTQUN4RSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQzNGLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBRTNGLDZFQUE2RTtRQUM3RSxJQUFJLENBQUMsT0FBTyxD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
@@ -3,6 +3,7 @@ export const ICookieSessionOptions = createOptions("cookie-session");
3
3
  const defaultSecure = true;
4
4
  const defaultSigned = true;
5
5
  const defaultCookieName = "_sess";
6
+ /** @internal */
6
7
  export class CookieSession {
7
8
  constructor(cookies, options) {
8
9
  this.context = new SessionContext();
@@ -106,4 +107,4 @@ class SessionContext {
106
107
  this._isNew = false;
107
108
  }
108
109
  }
109
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLXNlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29va2llLXNlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUk1QyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxhQUFhLENBQXdCLGdCQUFnQixDQUFDLENBQUM7QUFXNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDO0FBQzNCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQztBQUMzQixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQztBQUVsQyxNQUFNLE9BQU8sYUFBYTtJQUt0QixZQUFZLE9BQWlCLEVBQUUsT0FBOEI7UUFKNUMsWUFBTyxHQUFHLElBQUksY0FBYyxFQUFFLENBQUM7UUFLNUMsSUFBSSxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxVQUFVLElBQUksaUJBQWlCLEVBQUU7WUFDL0QsTUFBTSxFQUFFLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhO1NBQ3hFLENBQUMsQ0FBQztRQUVILElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDcEMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFDM0YsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxHQUFHLE9BQU8sQ0FBQyxNQUFNLEtBQUssU0FBUyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxhQUFhLENBQUM7UUFFM0Ys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
110
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29va2llLXNlc3Npb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29va2llLXNlc3Npb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGFBQWEsQ0FBQztBQWE1QyxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxhQUFhLENBQXdCLGdCQUFnQixDQUFDLENBQUM7QUFFNUYsTUFBTSxhQUFhLEdBQUcsSUFBSSxDQUFDO0FBQzNCLE1BQU0sYUFBYSxHQUFHLElBQUksQ0FBQztBQUMzQixNQUFNLGlCQUFpQixHQUFHLE9BQU8sQ0FBQztBQUVsQyxnQkFBZ0I7QUFDaEIsTUFBTSxPQUFPLGFBQWE7SUFLdEIsWUFBWSxPQUFpQixFQUFFLE9BQThCO1FBSjVDLFlBQU8sR0FBRyxJQUFJLGNBQWMsRUFBRSxDQUFDO1FBSzVDLElBQUksQ0FBQyxNQUFNLEdBQUcsT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsVUFBVSxJQUFJLGlCQUFpQixFQUFFO1lBQy9ELE1BQU0sRUFBRSxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYTtTQUN4RSxDQUFDLENBQUM7UUFFSCxJQUFJLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxRQUFRLEdBQUcsSUFBSSxDQUFDO1FBQ3BDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFBYSxDQUFDO1FBQzNGLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxPQUFPLENBQUMsTUFBTSxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsYUFB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
package/dist/esm/index.js CHANGED
@@ -1,4 +1,5 @@
1
+ export * from "./cookie-session";
1
2
  export * from "./middleware";
2
3
  export * from "./module";
3
4
  export * from "./session";
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxjQUFjLENBQUM7QUFDN0IsY0FBYyxVQUFVLENBQUM7QUFDekIsY0FBYyxXQUFXLENBQUMifQ==
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLGNBQWMsQ0FBQztBQUM3QixjQUFjLFVBQVUsQ0FBQztBQUN6QixjQUFjLFdBQVcsQ0FBQyJ9
@@ -1,20 +1,15 @@
1
1
  import { CookieSession } from "./cookie-session";
2
- /** Adds a cookie session to the request context and requires cookies to be installed against the provided request context. */
3
- export const addCookieSessionRequestBuilder = (context, options) => {
4
- if (context.session) {
5
- throw new Error("A Session is already in use.");
6
- }
7
- if (!context.cookies) {
8
- throw new Error("Cookies must be installed.");
9
- }
10
- context = { ...context, session: new CookieSession(context.cookies, options) };
11
- return context;
12
- };
13
- /** @internal */
2
+ /** Cookie session middleware that gets installed by the module. */
14
3
  export function cookieSession(options) {
15
4
  return (req, res, next) => {
16
- req.contextBuilder.addCookieSession(options);
17
- const session = req.context.session;
5
+ if (req.context.session) {
6
+ throw new Error("A Session is already in use.");
7
+ }
8
+ if (!req.context.cookies) {
9
+ throw new Error("Cookies must be installed.");
10
+ }
11
+ const session = new CookieSession(req.context.cookies, options);
12
+ req.context.session = session;
18
13
  const ref = res.writeHead;
19
14
  res.writeHead = function writeHead() {
20
15
  // gets invoked just before writing headers
@@ -24,4 +19,4 @@ export function cookieSession(options) {
24
19
  next();
25
20
  };
26
21
  }
27
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sRUFBRSxhQUFhLEVBQXlCLE1BQU0sa0JBQWtCLENBQUM7QUFleEUsOEhBQThIO0FBQzlILE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLENBQUMsT0FBd0IsRUFBRSxPQUE4QixFQUFFLEVBQUU7SUFDdkcsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFO1FBQ2pCLE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztLQUNuRDtJQUVELElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1FBQ2xCLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztLQUNqRDtJQUVELE9BQU8sR0FBb0IsRUFBRSxHQUFHLE9BQU8sRUFBRSxPQUFPLEVBQUUsSUFBSSxhQUFhLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDO0lBRWhHLE9BQU8sT0FBTyxDQUFDO0FBQ25CLENBQUMsQ0FBQztBQUVGLGdCQUFnQjtBQUNoQixNQUFNLFVBQVUsYUFBYSxDQUFDLE9BQThCO0lBQ3hELE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ3RCLEdBQUcsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0MsTUFBTSxPQUFPLEdBQWtCLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO1FBQ25ELE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFFMUIsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLFNBQVM7WUFDOUIsMkNBQTJDO1lBQzNDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQWdCLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQztJQUNYLENBQUMsQ0FBQTtBQUNMLENBQUMifQ==
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxhQUFhLEVBQXlCLE1BQU0sa0JBQWtCLENBQUM7QUFVeEUsbUVBQW1FO0FBQ25FLE1BQU0sVUFBVSxhQUFhLENBQUMsT0FBOEI7SUFDeEQsT0FBTyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUU7UUFDdEIsSUFBSSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtZQUNyQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7U0FDbkQ7UUFFRCxJQUFJLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDdEIsTUFBTSxJQUFJLEtBQUssQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1NBQ2pEO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxhQUFhLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFRLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDakUsR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFDO1FBRTlCLE1BQU0sR0FBRyxHQUFHLEdBQUcsQ0FBQyxTQUFTLENBQUM7UUFFMUIsR0FBRyxDQUFDLFNBQVMsR0FBRyxTQUFTLFNBQVM7WUFDOUIsMkNBQTJDO1lBQzNDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQztZQUN0QixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxFQUFFLFNBQWdCLENBQUMsQ0FBQztRQUM1QyxDQUFDLENBQUM7UUFFRixJQUFJLEVBQUUsQ0FBQztJQUNYLENBQUMsQ0FBQTtBQUNMLENBQUMifQ==
@@ -2,7 +2,7 @@ import { createConfig, IOptionsService } from "@shrub/core";
2
2
  import { ExpressModule, IExpressConfiguration } from "@shrub/express";
3
3
  import { ExpressCookiesModule } from "@shrub/express-cookies";
4
4
  import { ICookieSessionOptions } from "./cookie-session";
5
- import { addCookieSessionRequestBuilder, cookieSession } from "./middleware";
5
+ import { cookieSession } from "./middleware";
6
6
  export const IExpressSessionConfiguration = createConfig();
7
7
  export class ExpressSessionModule {
8
8
  constructor() {
@@ -14,21 +14,14 @@ export class ExpressSessionModule {
14
14
  }
15
15
  initialize({ config, settings }) {
16
16
  settings.bindToOptions(ICookieSessionOptions);
17
- config(IExpressSessionConfiguration).register(({ services }) => ({
18
- useCookieSession: options => {
19
- if (this.middleware) {
20
- throw new Error("Cookie session has already been initialized.");
21
- }
22
- options = options || services.get(IOptionsService).getOptions(ICookieSessionOptions);
23
- this.middleware = cookieSession(options);
24
- }
17
+ config(IExpressSessionConfiguration).register(() => ({
18
+ useCookieSession: options => this.options = options
25
19
  }));
26
20
  }
27
- configure({ config }) {
28
- config.get(IExpressConfiguration).useRequestBuilder("addCookieSession", addCookieSessionRequestBuilder);
29
- config.get(IExpressConfiguration).use((req, res, next) => {
30
- return this.middleware ? this.middleware(req, res, next) : next();
31
- });
21
+ configure({ config, next, services }) {
22
+ config.get(IExpressConfiguration).use((req, res, next) => cookieSession(this.options || {})(req, res, next));
23
+ // invoke next to allow modules downstream the ability to configure the cookie session middleware
24
+ next().then(() => this.options = this.options || services.get(IOptionsService).getOptions(ICookieSessionOptions));
32
25
  }
33
26
  }
34
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFvRCxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBRTlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFN0UsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxFQUFnQyxDQUFDO0FBU3pGLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFHYSxTQUFJLEdBQUcsaUJBQWlCLENBQUM7UUFDekIsaUJBQVksR0FBRztZQUNwQixvQkFBb0I7WUFDcEIsYUFBYTtTQUNoQixDQUFDO0lBc0JOLENBQUM7SUFwQkcsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBc0I7UUFDL0MsUUFBUSxDQUFDLGFBQWEsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0QsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ3hCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtvQkFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO2lCQUNuRTtnQkFFRCxPQUFPLEdBQUcsT0FBTyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsZUFBZSxDQUFDLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLENBQUM7Z0JBQ3JGLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1lBQzdDLENBQUM7U0FDSixDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQXVCO1FBQ3JDLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQyxpQkFBaUIsQ0FBQyxrQkFBa0IsRUFBRSw4QkFBOEIsQ0FBQyxDQUFDO1FBQ3hHLE1BQU0sQ0FBQyxHQUFHLENBQUMscUJBQXFCLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFZLEVBQUUsR0FBYSxFQUFFLElBQWtCLEVBQUUsRUFBRTtZQUN0RixPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDdEUsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0oifQ==
27
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFvRCxlQUFlLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDOUcsT0FBTyxFQUFFLGFBQWEsRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzlELE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFN0MsTUFBTSxDQUFDLE1BQU0sNEJBQTRCLEdBQUcsWUFBWSxFQUFnQyxDQUFDO0FBU3pGLE1BQU0sT0FBTyxvQkFBb0I7SUFBakM7UUFHYSxTQUFJLEdBQUcsaUJBQWlCLENBQUM7UUFDekIsaUJBQVksR0FBRztZQUNwQixvQkFBb0I7WUFDcEIsYUFBYTtTQUNoQixDQUFDO0lBY04sQ0FBQztJQVpHLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQXNCO1FBQy9DLFFBQVEsQ0FBQyxhQUFhLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNqRCxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTztTQUN0RCxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBdUI7UUFDckQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQyxhQUFhLENBQUMsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUMsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7UUFDN0csaUdBQWlHO1FBQ2pHLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksUUFBUSxDQUFDLEdBQUcsQ0FBQyxlQUFlLENBQUMsQ0FBQyxVQUFVLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDO0lBQ3RILENBQUM7Q0FDSiJ9
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from "./cookie-session";
1
2
  export * from "./middleware";
2
3
  export * from "./module";
3
4
  export * from "./session";
package/dist/index.js CHANGED
@@ -10,7 +10,8 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
10
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
+ __exportStar(require("./cookie-session"), exports);
13
14
  __exportStar(require("./middleware"), exports);
14
15
  __exportStar(require("./module"), exports);
15
16
  __exportStar(require("./session"), exports);
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsK0NBQTZCO0FBQzdCLDJDQUF5QjtBQUN6Qiw0Q0FBMEIifQ==
17
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsbURBQWlDO0FBQ2pDLCtDQUE2QjtBQUM3QiwyQ0FBeUI7QUFDekIsNENBQTBCIn0=
@@ -1,15 +1,11 @@
1
- import { IRequestContext } from "@shrub/express";
1
+ import { RequestHandler } from "express";
2
2
  import { ICookieSessionOptions } from "./cookie-session";
3
3
  import { ISession } from "./session";
4
4
  declare module "@shrub/express/dist/request-context" {
5
5
  interface IRequestContext {
6
6
  /** Session state for the request if session state is available. */
7
- readonly session?: ISession;
8
- }
9
- interface IRequestContextBuilder {
10
- /** Adds a cookie session to the request context. */
11
- addCookieSession(options: ICookieSessionOptions): IRequestContextBuilder;
7
+ session?: ISession;
12
8
  }
13
9
  }
14
- /** Adds a cookie session to the request context and requires cookies to be installed against the provided request context. */
15
- export declare const addCookieSessionRequestBuilder: (context: IRequestContext, options: ICookieSessionOptions) => IRequestContext;
10
+ /** Cookie session middleware that gets installed by the module. */
11
+ export declare function cookieSession(options: ICookieSessionOptions): RequestHandler;
@@ -1,24 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.cookieSession = exports.addCookieSessionRequestBuilder = void 0;
3
+ exports.cookieSession = void 0;
4
4
  const cookie_session_1 = require("./cookie-session");
5
- /** Adds a cookie session to the request context and requires cookies to be installed against the provided request context. */
6
- const addCookieSessionRequestBuilder = (context, options) => {
7
- if (context.session) {
8
- throw new Error("A Session is already in use.");
9
- }
10
- if (!context.cookies) {
11
- throw new Error("Cookies must be installed.");
12
- }
13
- context = { ...context, session: new cookie_session_1.CookieSession(context.cookies, options) };
14
- return context;
15
- };
16
- exports.addCookieSessionRequestBuilder = addCookieSessionRequestBuilder;
17
- /** @internal */
5
+ /** Cookie session middleware that gets installed by the module. */
18
6
  function cookieSession(options) {
19
7
  return (req, res, next) => {
20
- req.contextBuilder.addCookieSession(options);
21
- const session = req.context.session;
8
+ if (req.context.session) {
9
+ throw new Error("A Session is already in use.");
10
+ }
11
+ if (!req.context.cookies) {
12
+ throw new Error("Cookies must be installed.");
13
+ }
14
+ const session = new cookie_session_1.CookieSession(req.context.cookies, options);
15
+ req.context.session = session;
22
16
  const ref = res.writeHead;
23
17
  res.writeHead = function writeHead() {
24
18
  // gets invoked just before writing headers
@@ -29,4 +23,4 @@ function cookieSession(options) {
29
23
  };
30
24
  }
31
25
  exports.cookieSession = cookieSession;
32
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUVBLHFEQUF3RTtBQWV4RSw4SEFBOEg7QUFDdkgsTUFBTSw4QkFBOEIsR0FBRyxDQUFDLE9BQXdCLEVBQUUsT0FBOEIsRUFBRSxFQUFFO0lBQ3ZHLElBQUksT0FBTyxDQUFDLE9BQU8sRUFBRTtRQUNqQixNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7S0FDbkQ7SUFFRCxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtRQUNsQixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7S0FDakQ7SUFFRCxPQUFPLEdBQW9CLEVBQUUsR0FBRyxPQUFPLEVBQUUsT0FBTyxFQUFFLElBQUksOEJBQWEsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxFQUFFLENBQUM7SUFFaEcsT0FBTyxPQUFPLENBQUM7QUFDbkIsQ0FBQyxDQUFDO0FBWlcsUUFBQSw4QkFBOEIsa0NBWXpDO0FBRUYsZ0JBQWdCO0FBQ2hCLFNBQWdCLGFBQWEsQ0FBQyxPQUE4QjtJQUN4RCxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsRUFBRTtRQUN0QixHQUFHLENBQUMsY0FBYyxDQUFDLGdCQUFnQixDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzdDLE1BQU0sT0FBTyxHQUFrQixHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztRQUNuRCxNQUFNLEdBQUcsR0FBRyxHQUFHLENBQUMsU0FBUyxDQUFDO1FBRTFCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxTQUFTO1lBQzlCLDJDQUEyQztZQUMzQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUM7WUFDdEIsT0FBTyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxTQUFnQixDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDO1FBRUYsSUFBSSxFQUFFLENBQUM7SUFDWCxDQUFDLENBQUE7QUFDTCxDQUFDO0FBZEQsc0NBY0MifQ==
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWlkZGxld2FyZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9taWRkbGV3YXJlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUNBLHFEQUF3RTtBQVV4RSxtRUFBbUU7QUFDbkUsU0FBZ0IsYUFBYSxDQUFDLE9BQThCO0lBQ3hELE9BQU8sQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxFQUFFO1FBQ3RCLElBQUksR0FBRyxDQUFDLE9BQU8sQ0FBQyxPQUFPLEVBQUU7WUFDckIsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO1NBQ25EO1FBRUQsSUFBSSxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsT0FBTyxFQUFFO1lBQ3RCLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztTQUNqRDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksOEJBQWEsQ0FBQyxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQVEsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUNqRSxHQUFHLENBQUMsT0FBTyxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUM7UUFFOUIsTUFBTSxHQUFHLEdBQUcsR0FBRyxDQUFDLFNBQVMsQ0FBQztRQUUxQixHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsU0FBUztZQUM5QiwyQ0FBMkM7WUFDM0MsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQ3RCLE9BQU8sR0FBRyxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsU0FBZ0IsQ0FBQyxDQUFDO1FBQzVDLENBQUMsQ0FBQztRQUVGLElBQUksRUFBRSxDQUFDO0lBQ1gsQ0FBQyxDQUFBO0FBQ0wsQ0FBQztBQXZCRCxzQ0F1QkMifQ==
package/dist/module.d.ts CHANGED
@@ -11,9 +11,9 @@ export interface IExpressSessionConfiguration {
11
11
  useCookieSession(options?: ICookieSessionOptions): void;
12
12
  }
13
13
  export declare class ExpressSessionModule implements IModule {
14
- private middleware?;
14
+ private options?;
15
15
  readonly name = "express-session";
16
16
  readonly dependencies: (typeof ExpressCookiesModule | typeof ExpressModule)[];
17
17
  initialize({ config, settings }: IModuleInitializer): void;
18
- configure({ config }: IModuleConfigurator): void;
18
+ configure({ config, next, services }: IModuleConfigurator): void;
19
19
  }
package/dist/module.js CHANGED
@@ -17,22 +17,15 @@ class ExpressSessionModule {
17
17
  }
18
18
  initialize({ config, settings }) {
19
19
  settings.bindToOptions(cookie_session_1.ICookieSessionOptions);
20
- config(exports.IExpressSessionConfiguration).register(({ services }) => ({
21
- useCookieSession: options => {
22
- if (this.middleware) {
23
- throw new Error("Cookie session has already been initialized.");
24
- }
25
- options = options || services.get(core_1.IOptionsService).getOptions(cookie_session_1.ICookieSessionOptions);
26
- this.middleware = middleware_1.cookieSession(options);
27
- }
20
+ config(exports.IExpressSessionConfiguration).register(() => ({
21
+ useCookieSession: options => this.options = options
28
22
  }));
29
23
  }
30
- configure({ config }) {
31
- config.get(express_1.IExpressConfiguration).useRequestBuilder("addCookieSession", middleware_1.addCookieSessionRequestBuilder);
32
- config.get(express_1.IExpressConfiguration).use((req, res, next) => {
33
- return this.middleware ? this.middleware(req, res, next) : next();
34
- });
24
+ configure({ config, next, services }) {
25
+ config.get(express_1.IExpressConfiguration).use((req, res, next) => middleware_1.cookieSession(this.options || {})(req, res, next));
26
+ // invoke next to allow modules downstream the ability to configure the cookie session middleware
27
+ next().then(() => this.options = this.options || services.get(core_1.IOptionsService).getOptions(cookie_session_1.ICookieSessionOptions));
35
28
  }
36
29
  }
37
30
  exports.ExpressSessionModule = ExpressSessionModule;
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzQ0FBOEc7QUFDOUcsNENBQXNFO0FBQ3RFLDREQUE4RDtBQUU5RCxxREFBeUQ7QUFDekQsNkNBQTZFO0FBRWhFLFFBQUEsNEJBQTRCLEdBQUcsbUJBQVksRUFBZ0MsQ0FBQztBQVN6RixNQUFhLG9CQUFvQjtJQUFqQztRQUdhLFNBQUksR0FBRyxpQkFBaUIsQ0FBQztRQUN6QixpQkFBWSxHQUFHO1lBQ3BCLHNDQUFvQjtZQUNwQix1QkFBYTtTQUNoQixDQUFDO0lBc0JOLENBQUM7SUFwQkcsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBc0I7UUFDL0MsUUFBUSxDQUFDLGFBQWEsQ0FBQyxzQ0FBcUIsQ0FBQyxDQUFDO1FBQzlDLE1BQU0sQ0FBQyxvQ0FBNEIsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDN0QsZ0JBQWdCLEVBQUUsT0FBTyxDQUFDLEVBQUU7Z0JBQ3hCLElBQUksSUFBSSxDQUFDLFVBQVUsRUFBRTtvQkFDakIsTUFBTSxJQUFJLEtBQUssQ0FBQyw4Q0FBOEMsQ0FBQyxDQUFDO2lCQUNuRTtnQkFFRCxPQUFPLEdBQUcsT0FBTyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQWUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxzQ0FBcUIsQ0FBQyxDQUFDO2dCQUNyRixJQUFJLENBQUMsVUFBVSxHQUFHLDBCQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7WUFDN0MsQ0FBQztTQUNKLENBQUMsQ0FBQyxDQUFDO0lBQ1IsQ0FBQztJQUVELFNBQVMsQ0FBQyxFQUFFLE1BQU0sRUFBdUI7UUFDckMsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBcUIsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLGtCQUFrQixFQUFFLDJDQUE4QixDQUFDLENBQUM7UUFDeEcsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBcUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQVksRUFBRSxHQUFhLEVBQUUsSUFBa0IsRUFBRSxFQUFFO1lBQ3RGLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUN0RSxDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7Q0FDSjtBQTdCRCxvREE2QkMifQ==
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL21vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSxzQ0FBOEc7QUFDOUcsNENBQXNFO0FBQ3RFLDREQUE4RDtBQUM5RCxxREFBeUQ7QUFDekQsNkNBQTZDO0FBRWhDLFFBQUEsNEJBQTRCLEdBQUcsbUJBQVksRUFBZ0MsQ0FBQztBQVN6RixNQUFhLG9CQUFvQjtJQUFqQztRQUdhLFNBQUksR0FBRyxpQkFBaUIsQ0FBQztRQUN6QixpQkFBWSxHQUFHO1lBQ3BCLHNDQUFvQjtZQUNwQix1QkFBYTtTQUNoQixDQUFDO0lBY04sQ0FBQztJQVpHLFVBQVUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQXNCO1FBQy9DLFFBQVEsQ0FBQyxhQUFhLENBQUMsc0NBQXFCLENBQUMsQ0FBQztRQUM5QyxNQUFNLENBQUMsb0NBQTRCLENBQUMsQ0FBQyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztZQUNqRCxnQkFBZ0IsRUFBRSxPQUFPLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTztTQUN0RCxDQUFDLENBQUMsQ0FBQztJQUNSLENBQUM7SUFFRCxTQUFTLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBdUI7UUFDckQsTUFBTSxDQUFDLEdBQUcsQ0FBQywrQkFBcUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsQ0FBQywwQkFBYSxDQUFDLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxDQUFDLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxDQUFDO1FBQzdHLGlHQUFpRztRQUNqRyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLFFBQVEsQ0FBQyxHQUFHLENBQUMsc0JBQWUsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxzQ0FBcUIsQ0FBQyxDQUFDLENBQUM7SUFDdEgsQ0FBQztDQUNKO0FBckJELG9EQXFCQyJ9
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@shrub/express-session",
3
3
  "description": "Express module that provides simple session middleware.",
4
- "version": "0.5.34",
4
+ "version": "0.5.38",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",
@@ -28,10 +28,10 @@
28
28
  "@types/express": "4.17.9"
29
29
  },
30
30
  "dependencies": {
31
- "@shrub/core": "0.5.34",
32
- "@shrub/express": "0.5.34",
33
- "@shrub/express-cookies": "0.5.34",
31
+ "@shrub/core": "0.5.38",
32
+ "@shrub/express": "0.5.38",
33
+ "@shrub/express-cookies": "0.5.38",
34
34
  "express": "^4.17.1"
35
35
  },
36
- "gitHead": "c3cd05161eafc19d4c3e5a21f5440249c231eccf"
36
+ "gitHead": "5a3d3261a7689886094f6b7428d21e88ecece800"
37
37
  }