{"version":3,"file":"scion-toolkit-uuid.mjs","sources":["../../../../projects/scion/toolkit/uuid/src/uuid.util.ts","../../../../projects/scion/toolkit/uuid/src/public_api.ts","../../../../projects/scion/toolkit/uuid/src/scion-toolkit-uuid.ts"],"sourcesContent":["/*\n * Copyright (c) 2018-2023 Swiss Federal Railways\n *\n * This program and the accompanying materials are made\n * available under the terms of the Eclipse Public License 2.0\n * which is available at https://www.eclipse.org/legal/epl-2.0/\n *\n *  SPDX-License-Identifier: EPL-2.0\n */\n\nconst uuidIterator = generateUUID();\n\nfunction* generateUUID(): IterableIterator<string, string, string> {\n  const lut = [];\n  for (let i = 0; i < 256; i++) {\n    lut[i] = (i < 16 ? '0' : '') + (i).toString(16);\n  }\n\n  while (true) { // eslint-disable-line @typescript-eslint/no-unnecessary-condition\n    const d0 = Math.random() * 0xffffffff | 0;\n    const d1 = Math.random() * 0xffffffff | 0;\n    const d2 = Math.random() * 0xffffffff | 0;\n    const d3 = Math.random() * 0xffffffff | 0;\n\n    const uuid = lut[d0 & 0xff]! + lut[d0 >> 8 & 0xff]! + lut[d0 >> 16 & 0xff]! + lut[d0 >> 24 & 0xff]! + '-' +\n      lut[d1 & 0xff]! + lut[d1 >> 8 & 0xff]! + '-' + lut[d1 >> 16 & 0x0f | 0x40]! + lut[d1 >> 24 & 0xff]! + '-' +\n      lut[d2 & 0x3f | 0x80]! + lut[d2 >> 8 & 0xff]! + '-' + lut[d2 >> 16 & 0xff]! + lut[d2 >> 24 & 0xff]! +\n      lut[d3 & 0xff]! + lut[d3 >> 8 & 0xff]! + lut[d3 >> 16 & 0xff]! + lut[d3 >> 24 & 0xff]!;\n\n    yield uuid;\n  }\n}\n\n/**\n * Generates a UUID (universally unique identifier) compliant with the RFC 4122 version 4.\n */\nexport function randomUUID(): string {\n  return uuidIterator.next().value;\n}\n","/*\n * Copyright (c) 2018-2019 Swiss Federal Railways\n *\n * This program and the accompanying materials are made\n * available under the terms of the Eclipse Public License 2.0\n * which is available at https://www.eclipse.org/legal/epl-2.0/\n *\n *  SPDX-License-Identifier: EPL-2.0\n */\n\n/*\n * Secondary entrypoint: '@scion/toolkit/util'\n * This module does not depend on Angular.\n *\n * @see https://github.com/ng-packagr/ng-packagr/blob/master/docs/secondary-entrypoints.md\n */\nexport * as UUID from './uuid.util';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":"AAAA;;;;;;;;AAQG;AAEH,MAAM,YAAY,GAAG,YAAY,EAAE;AAEnC,UAAU,YAAY,GAAA;IACpB,MAAM,GAAG,GAAG,EAAE;AACd,IAAA,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;QAC5B,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,GAAG,GAAG,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,EAAE,CAAC;IACjD;AAEA,IAAA,OAAO,IAAI,EAAE;QACX,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC;QACzC,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,UAAU,GAAG,CAAC;AAEzC,QAAA,MAAM,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG;AACvG,YAAA,GAAG,CAAC,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAE,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG;AACzG,YAAA,GAAG,CAAC,EAAE,GAAG,IAAI,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAE,GAAG,GAAG,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE;AACnG,YAAA,GAAG,CAAC,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE,GAAG,GAAG,CAAC,EAAE,IAAI,EAAE,GAAG,IAAI,CAAE;AAExF,QAAA,MAAM,IAAI;IACZ;AACF;AAEA;;AAEG;SACa,UAAU,GAAA;AACxB,IAAA,OAAO,YAAY,CAAC,IAAI,EAAE,CAAC,KAAK;AAClC;;;;;;;ACtCA;;;;;;;;AAQG;AAEH;;;;;AAKG;;ACfH;;AAEG;;;;"}