@openshift-assisted/ui-lib
Version:
React component library for the Assisted Installer UI
36 lines • 1.49 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
const react_1 = tslib_1.__importDefault(require("react"));
const api_1 = require("../../common/api");
const common_1 = require("../../common");
const access_token_api_1 = require("../../common/api/accounts-management-service/access-token-api");
function usePullSecret() {
const [pullSecret, setPullSecret] = react_1.default.useState();
const { addAlert } = (0, common_1.useAlerts)();
const getPullSecret = react_1.default.useCallback(() => tslib_1.__awaiter(this, void 0, void 0, function* () {
try {
const accessTokenCfg = yield access_token_api_1.AccessTokenAPI.fetchPullSecret();
if (accessTokenCfg) {
setPullSecret(JSON.stringify(accessTokenCfg)); // unmarshalled response as a string
}
else {
setPullSecret('');
}
}
catch (e) {
(0, api_1.handleApiError)(e, (e) => {
setPullSecret('');
addAlert({ title: 'Failed to retrieve pull secret', message: (0, api_1.getApiErrorMessage)(e) });
});
}
}), [addAlert]);
react_1.default.useEffect(() => {
if (!pullSecret) {
void getPullSecret();
}
}, []); // eslint-disable-line react-hooks/exhaustive-deps
return pullSecret;
}
exports.default = usePullSecret;
//# sourceMappingURL=usePullSecret.js.map