27 lines
4.1 KiB
JavaScript
27 lines
4.1 KiB
JavaScript
"use strict";
|
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
};
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.createAnonymousRole = exports.createRole = void 0;
|
|
const type_assertions_1 = require("../errors/runtime/type-assertions");
|
|
const wrap_test_function_1 = __importDefault(require("../api/wrap-test-function"));
|
|
const test_page_url_1 = require("../api/test-page-url");
|
|
const role_1 = __importDefault(require("./role"));
|
|
function createRole(loginUrl, initFn, options = { preserveUrl: false }) {
|
|
(0, type_assertions_1.assertType)(type_assertions_1.is.string, 'Role', 'The "loginUrl" argument', loginUrl);
|
|
(0, type_assertions_1.assertType)(type_assertions_1.is.function, 'Role', 'The "initFn" argument', initFn);
|
|
(0, type_assertions_1.assertType)(type_assertions_1.is.nonNullObject, 'Role', 'The "options" argument', options);
|
|
if (options.preserveUrl !== void 0)
|
|
(0, type_assertions_1.assertType)(type_assertions_1.is.boolean, 'Role', 'The "preserveUrl" option', options.preserveUrl);
|
|
(0, test_page_url_1.assertRoleUrl)(loginUrl, 'Role');
|
|
loginUrl = (0, test_page_url_1.getUrl)(loginUrl);
|
|
initFn = (0, wrap_test_function_1.default)(initFn);
|
|
return new role_1.default(loginUrl, initFn, options);
|
|
}
|
|
exports.createRole = createRole;
|
|
function createAnonymousRole() {
|
|
return new role_1.default(null, null);
|
|
}
|
|
exports.createAnonymousRole = createAnonymousRole;
|
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcm9sZS9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSx1RUFBbUU7QUFDbkUsbUZBQXlEO0FBQ3pELHdEQUE2RDtBQUM3RCxrREFBMEI7QUFNMUIsU0FBZ0IsVUFBVSxDQUFFLFFBQWdCLEVBQUUsTUFBZ0IsRUFBRSxVQUF1QixFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUU7SUFDekcsSUFBQSw0QkFBVSxFQUFDLG9CQUFFLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSx5QkFBeUIsRUFBRSxRQUFRLENBQUMsQ0FBQztJQUNuRSxJQUFBLDRCQUFVLEVBQUMsb0JBQUUsQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLHVCQUF1QixFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBQ2pFLElBQUEsNEJBQVUsRUFBQyxvQkFBRSxDQUFDLGFBQWEsRUFBRSxNQUFNLEVBQUUsd0JBQXdCLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFFeEUsSUFBSSxPQUFPLENBQUMsV0FBVyxLQUFLLEtBQUssQ0FBQztRQUM5QixJQUFBLDRCQUFVLEVBQUMsb0JBQUUsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLDBCQUEwQixFQUFFLE9BQU8sQ0FBQyxXQUFXLENBQUMsQ0FBQztJQUVwRixJQUFBLDZCQUFhLEVBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxDQUFDO0lBRWhDLFFBQVEsR0FBRyxJQUFBLHNCQUFNLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUIsTUFBTSxHQUFLLElBQUEsNEJBQWdCLEVBQUMsTUFBTSxDQUFDLENBQUM7SUFFcEMsT0FBTyxJQUFJLGNBQUksQ0FBQyxRQUFRLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQy9DLENBQUM7QUFkRCxnQ0FjQztBQUVELFNBQWdCLG1CQUFtQjtJQUMvQixPQUFPLElBQUksY0FBSSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsQ0FBQztBQUNoQyxDQUFDO0FBRkQsa0RBRUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBhc3NlcnRUeXBlLCBpcyB9IGZyb20gJy4uL2Vycm9ycy9ydW50aW1lL3R5cGUtYXNzZXJ0aW9ucyc7XG5pbXBvcnQgd3JhcFRlc3RGdW5jdGlvbiBmcm9tICcuLi9hcGkvd3JhcC10ZXN0LWZ1bmN0aW9uJztcbmltcG9ydCB7IGdldFVybCwgYXNzZXJ0Um9sZVVybCB9IGZyb20gJy4uL2FwaS90ZXN0LXBhZ2UtdXJsJztcbmltcG9ydCBSb2xlIGZyb20gJy4vcm9sZSc7XG5cbmludGVyZmFjZSBSb2xlT3B0aW9ucyB7XG4gICAgcHJlc2VydmVVcmw/OiBib29sZWFuO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlUm9sZSAobG9naW5Vcmw6IHN0cmluZywgaW5pdEZuOiBGdW5jdGlvbiwgb3B0aW9uczogUm9sZU9wdGlvbnMgPSB7IHByZXNlcnZlVXJsOiBmYWxzZSB9KTogUm9sZSB7XG4gICAgYXNzZXJ0VHlwZShpcy5zdHJpbmcsICdSb2xlJywgJ1RoZSBcImxvZ2luVXJsXCIgYXJndW1lbnQnLCBsb2dpblVybCk7XG4gICAgYXNzZXJ0VHlwZShpcy5mdW5jdGlvbiwgJ1JvbGUnLCAnVGhlIFwiaW5pdEZuXCIgYXJndW1lbnQnLCBpbml0Rm4pO1xuICAgIGFzc2VydFR5cGUoaXMubm9uTnVsbE9iamVjdCwgJ1JvbGUnLCAnVGhlIFwib3B0aW9uc1wiIGFyZ3VtZW50Jywgb3B0aW9ucyk7XG5cbiAgICBpZiAob3B0aW9ucy5wcmVzZXJ2ZVVybCAhPT0gdm9pZCAwKVxuICAgICAgICBhc3NlcnRUeXBlKGlzLmJvb2xlYW4sICdSb2xlJywgJ1RoZSBcInByZXNlcnZlVXJsXCIgb3B0aW9uJywgb3B0aW9ucy5wcmVzZXJ2ZVVybCk7XG5cbiAgICBhc3NlcnRSb2xlVXJsKGxvZ2luVXJsLCAnUm9sZScpO1xuXG4gICAgbG9naW5VcmwgPSBnZXRVcmwobG9naW5VcmwpO1xuICAgIGluaXRGbiAgID0gd3JhcFRlc3RGdW5jdGlvbihpbml0Rm4pO1xuXG4gICAgcmV0dXJuIG5ldyBSb2xlKGxvZ2luVXJsLCBpbml0Rm4sIG9wdGlvbnMpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gY3JlYXRlQW5vbnltb3VzUm9sZSAoKTogUm9sZSB7XG4gICAgcmV0dXJuIG5ldyBSb2xlKG51bGwsIG51bGwpO1xufVxuIl19
|