UNPKG

@tai-kun/surrealdb

Version:

The SurrealDB SDK for JavaScript

59 lines (57 loc) 4.08 kB
"use strict"; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __name = (target, value) => __defProp(target, "name", { value, configurable: true }); var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/utils/serial.ts var serial_exports = {}; __export(serial_exports, { default: () => Serial }); module.exports = __toCommonJS(serial_exports); var import_errors = require("../errors/index.cjs"); var MAX_SAFE_INTEGER = 9007199254740991; var _Serial = class _Serial { /** * [API Reference](https://tai-kun.github.io/surrealdb.js/v2/api/utils/serial/#constructor) */ constructor(max = MAX_SAFE_INTEGER) { this._id = 0; if (Number.isSafeInteger(max) && max > 0) { this._max = max; } else { throw new import_errors.NumberRangeError([1, MAX_SAFE_INTEGER], max, { integer: true }); } } /** * [API Reference](https://tai-kun.github.io/surrealdb.js/v2/api/utils/serial/#next) */ next() { return this._id = this._id % this._max + 1; } /** * [API Reference](https://tai-kun.github.io/surrealdb.js/v2/api/utils/serial/#reset) */ reset() { this._id = 0; } }; __name(_Serial, "Serial"); var Serial = _Serial; //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vc3JjL3V0aWxzL3NlcmlhbC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiaW1wb3J0IHsgTnVtYmVyUmFuZ2VFcnJvciB9IGZyb20gXCJAdGFpLWt1bi9zdXJyZWFsZGIvZXJyb3JzXCI7XG5cbmNvbnN0IE1BWF9TQUZFX0lOVEVHRVIgPSA5MDA3MTk5MjU0NzQwOTkxO1xuXG4vKipcbiAqIFtBUEkgUmVmZXJlbmNlXShodHRwczovL3RhaS1rdW4uZ2l0aHViLmlvL3N1cnJlYWxkYi5qcy92Mi9hcGkvdXRpbHMvc2VyaWFsLylcbiAqL1xuZXhwb3J0IGRlZmF1bHQgY2xhc3MgU2VyaWFsIHtcbiAgcHJvdGVjdGVkIF9pZCA9IDA7XG4gIHByb3RlY3RlZCBfbWF4OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFtBUEkgUmVmZXJlbmNlXShodHRwczovL3RhaS1rdW4uZ2l0aHViLmlvL3N1cnJlYWxkYi5qcy92Mi9hcGkvdXRpbHMvc2VyaWFsLyNjb25zdHJ1Y3RvcilcbiAgICovXG4gIGNvbnN0cnVjdG9yKG1heDogbnVtYmVyIHwgdW5kZWZpbmVkID0gTUFYX1NBRkVfSU5URUdFUikge1xuICAgIGlmIChOdW1iZXIuaXNTYWZlSW50ZWdlcihtYXgpICYmIG1heCA+IDApIHtcbiAgICAgIHRoaXMuX21heCA9IG1heDtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IE51bWJlclJhbmdlRXJyb3IoWzEsIE1BWF9TQUZFX0lOVEVHRVJdLCBtYXgsIHtcbiAgICAgICAgaW50ZWdlcjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBbQVBJIFJlZmVyZW5jZV0oaHR0cHM6Ly90YWkta3VuLmdpdGh1Yi5pby9zdXJyZWFsZGIuanMvdjIvYXBpL3V0aWxzL3NlcmlhbC8jbmV4dClcbiAgICovXG4gIG5leHQoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gKHRoaXMuX2lkID0gdGhpcy5faWQgJSB0aGlzLl9tYXggKyAxKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBbQVBJIFJlZmVyZW5jZV0oaHR0cHM6Ly90YWkta3VuLmdpdGh1Yi5pby9zdXJyZWFsZGIuanMvdjIvYXBpL3V0aWxzL3NlcmlhbC8jcmVzZXQpXG4gICAqL1xuICByZXNldCgpOiB2b2lkIHtcbiAgICB0aGlzLl9pZCA9IDA7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxvQkFBaUM7QUFFakMsSUFBTSxtQkFBbUI7QUFLekIsSUFBcUIsVUFBckIsTUFBcUIsUUFBTztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTzFCLFlBQVksTUFBMEIsa0JBQWtCO0FBTnhELFNBQVUsTUFBTTtBQU9kLFFBQUksT0FBTyxjQUFjLEdBQUcsS0FBSyxNQUFNLEdBQUc7QUFDeEMsV0FBSyxPQUFPO0FBQUEsSUFDZCxPQUFPO0FBQ0wsWUFBTSxJQUFJLCtCQUFpQixDQUFDLEdBQUcsZ0JBQWdCLEdBQUcsS0FBSztBQUFBLFFBQ3JELFNBQVM7QUFBQSxNQUNYLENBQUM7QUFBQSxJQUNIO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsT0FBZTtBQUNiLFdBQVEsS0FBSyxNQUFNLEtBQUssTUFBTSxLQUFLLE9BQU87QUFBQSxFQUM1QztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS0EsUUFBYztBQUNaLFNBQUssTUFBTTtBQUFBLEVBQ2I7QUFDRjtBQTlCNEI7QUFBNUIsSUFBcUIsU0FBckI7IiwKICAibmFtZXMiOiBbXQp9Cg==