// ╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗╔═══════╗ // ╚══╗ ╔══╝║ ╔╗ ╔╗ ║║ ╔═══╗ ║║ ╔═══╗ ║║ ╔═══╗ ║╚══╗ ╔══╝║ ╔═════╝ // ║ ║ ║ ║║ ║║ ║║ ╚═══╝ ║║ ║ ║ ║║ ╚═══╝ ║ ║ ║ ║ ╚═════╗ // ║ ║ ║ ║║ ║║ ║║ ╔═════╝║ ║ ║ ║║ ╔═╗ ╔═╝ ║ ║ ╚═════╗ ║ // ╔══╝ ╚══╗║ ║║ ║║ ║║ ║ ║ ╚═══╝ ║║ ║ ║ ╚═╗ ║ ║ ╔═════╝ ║ // ╚═══════╝╚═╝╚═╝╚═╝╚═╝ ╚═══════╝╚═╝ ╚═══╝ ╚═╝ ╚═══════╝ import * as userManagers from '../../managers/user-managers.js'; import * as userTypings from '../../typings/user-typings.js'; import * as requestModule from '../../../request/request-module.js'; import * as utilityEngine from '@xyz.warpmatter.com/utility-engine'; // ╔═══════╗╔═══════╗ // ╚══╗ ╔══╝╚╗ ╔══╗ ║ // ║ ║ ║ ║ ║ ║ // ║ ║ ║ ║ ║ ║ // ╔══╝ ╚══╗╔╝ ╚══╝ ║ // ╚═══════╝╚═══════╝ export async function createUser( userResource: Omit, requestContext: requestModule.RequestContext, ) { const response = await requestModule.sendRequest({ endpoint: 'users/upload', method: 'POST', body: [userResource], }, requestContext); const jsonResponse = await response.json(); if (utilityEngine.isArray(jsonResponse) && utilityEngine.isObject(jsonResponse[0]) && utilityEngine.isFilledString(jsonResponse[0].key) ) { await utilityEngine.sleep(200); const userId = jsonResponse[0].key; return userManagers.fetchUsersById(userId, requestContext); } else return null; }