@toorieaa/sessionoptions

2.0.3 • Public • Published

1. Installing the package

npm i @toorieaa/sessionoptions

2. Import the module

import SessionOptions from "@toorieaa/sessionoptions";

3. How is it implemented?

import SingletonClassError from "@toorieaa/singletonclasserror";

class SessionOptions {
  static SESSION_CRYPTO_SESSION_LENGTH = 25;
  constructor() {
    throw new SingletonClassError();
  }

  static SESSION_EXPIRATION_OPTIONS = class SessionExpirationOptions {
    static #RATE = "minutes";
    static #AMOUNT_OF_TIME = "15";

    constructor() {
      throw new SingletonClassError();
    }

    static get RATE() {
      return SessionExpirationOptions.#RATE;
    }
    static get AMOUNT_OF_TIME() {
      return SessionExpirationOptions.#AMOUNT_OF_TIME;
    }

    static set RATE(value) {
      SessionExpirationOptions.#RATE = value;
    }

    static set AMOUNT_OF_TIME(value) {
      SessionExpirationOptions.#AMOUNT_OF_TIME = value;
    }
  };

  static SESSION_SLIDING_WINDOW_OPTIONS = class SessionSlidingWindowOptions {
    static #RATE = "days";
    static #AMOUNT_OF_TIME = "3";

    constructor() {
      throw new SingletonClassError();
    }

    static get RATE() {
      return SessionSlidingWindowOptions.#RATE;
    }
    static get AMOUNT_OF_TIME() {
      return SessionSlidingWindowOptions.#AMOUNT_OF_TIME;
    }

    static set RATE(value) {
      SessionSlidingWindowOptions.#RATE = value;
    }
    static set AMOUNT_OF_TIME(value) {
      SessionSlidingWindowOptions.#AMOUNT_OF_TIME = value;
    }
  };
}

export default SessionOptions;

3.1. License

[MIT]

Dependencies (0)

    Dev Dependencies (0)

      Package Sidebar

      Install

      npm i @toorieaa/sessionoptions

      Weekly Downloads

      0

      Version

      2.0.3

      License

      ISC

      Unpacked Size

      8.81 kB

      Total Files

      4

      Last publish

      Collaborators

      • toorieaa