working rss feed to nostr publish

This commit is contained in:
2023-11-24 00:43:28 -05:00
parent 06edcb57ae
commit 88d2f9cfec
8396 changed files with 783105 additions and 0 deletions
+10
View File
@@ -0,0 +1,10 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.fromIni = void 0;
const shared_ini_file_loader_1 = require("@smithy/shared-ini-file-loader");
const resolveProfileData_1 = require("./resolveProfileData");
const fromIni = (init = {}) => async () => {
const profiles = await (0, shared_ini_file_loader_1.parseKnownFiles)(init);
return (0, resolveProfileData_1.resolveProfileData)((0, shared_ini_file_loader_1.getProfileName)(init), profiles, init);
};
exports.fromIni = fromIni;
+4
View File
@@ -0,0 +1,4 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const tslib_1 = require("tslib");
tslib_1.__exportStar(require("./fromIni"), exports);
@@ -0,0 +1,52 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveAssumeRoleCredentials = exports.isAssumeRoleProfile = void 0;
const property_provider_1 = require("@smithy/property-provider");
const shared_ini_file_loader_1 = require("@smithy/shared-ini-file-loader");
const resolveCredentialSource_1 = require("./resolveCredentialSource");
const resolveProfileData_1 = require("./resolveProfileData");
const isAssumeRoleProfile = (arg) => Boolean(arg) &&
typeof arg === "object" &&
typeof arg.role_arn === "string" &&
["undefined", "string"].indexOf(typeof arg.role_session_name) > -1 &&
["undefined", "string"].indexOf(typeof arg.external_id) > -1 &&
["undefined", "string"].indexOf(typeof arg.mfa_serial) > -1 &&
(isAssumeRoleWithSourceProfile(arg) || isAssumeRoleWithProviderProfile(arg));
exports.isAssumeRoleProfile = isAssumeRoleProfile;
const isAssumeRoleWithSourceProfile = (arg) => typeof arg.source_profile === "string" && typeof arg.credential_source === "undefined";
const isAssumeRoleWithProviderProfile = (arg) => typeof arg.credential_source === "string" && typeof arg.source_profile === "undefined";
const resolveAssumeRoleCredentials = async (profileName, profiles, options, visitedProfiles = {}) => {
const data = profiles[profileName];
if (!options.roleAssumer) {
throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires a role to be assumed, but no role assumption callback was provided.`, false);
}
const { source_profile } = data;
if (source_profile && source_profile in visitedProfiles) {
throw new property_provider_1.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile` +
` ${(0, shared_ini_file_loader_1.getProfileName)(options)}. Profiles visited: ` +
Object.keys(visitedProfiles).join(", "), false);
}
const sourceCredsProvider = source_profile
? (0, resolveProfileData_1.resolveProfileData)(source_profile, profiles, options, {
...visitedProfiles,
[source_profile]: true,
})
: (0, resolveCredentialSource_1.resolveCredentialSource)(data.credential_source, profileName)();
const params = {
RoleArn: data.role_arn,
RoleSessionName: data.role_session_name || `aws-sdk-js-${Date.now()}`,
ExternalId: data.external_id,
DurationSeconds: parseInt(data.duration_seconds || "3600", 10),
};
const { mfa_serial } = data;
if (mfa_serial) {
if (!options.mfaCodeProvider) {
throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} requires multi-factor authentication, but no MFA code callback was provided.`, false);
}
params.SerialNumber = mfa_serial;
params.TokenCode = await options.mfaCodeProvider(mfa_serial);
}
const sourceCreds = await sourceCredsProvider;
return options.roleAssumer(sourceCreds, params);
};
exports.resolveAssumeRoleCredentials = resolveAssumeRoleCredentials;
@@ -0,0 +1,21 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveCredentialSource = void 0;
const credential_provider_env_1 = require("@aws-sdk/credential-provider-env");
const credential_provider_imds_1 = require("@smithy/credential-provider-imds");
const property_provider_1 = require("@smithy/property-provider");
const resolveCredentialSource = (credentialSource, profileName) => {
const sourceProvidersMap = {
EcsContainer: credential_provider_imds_1.fromContainerMetadata,
Ec2InstanceMetadata: credential_provider_imds_1.fromInstanceMetadata,
Environment: credential_provider_env_1.fromEnv,
};
if (credentialSource in sourceProvidersMap) {
return sourceProvidersMap[credentialSource]();
}
else {
throw new property_provider_1.CredentialsProviderError(`Unsupported credential source in profile ${profileName}. Got ${credentialSource}, ` +
`expected EcsContainer or Ec2InstanceMetadata or Environment.`);
}
};
exports.resolveCredentialSource = resolveCredentialSource;
@@ -0,0 +1,11 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveProcessCredentials = exports.isProcessProfile = void 0;
const credential_provider_process_1 = require("@aws-sdk/credential-provider-process");
const isProcessProfile = (arg) => Boolean(arg) && typeof arg === "object" && typeof arg.credential_process === "string";
exports.isProcessProfile = isProcessProfile;
const resolveProcessCredentials = async (options, profile) => (0, credential_provider_process_1.fromProcess)({
...options,
profile,
})();
exports.resolveProcessCredentials = resolveProcessCredentials;
@@ -0,0 +1,32 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveProfileData = void 0;
const property_provider_1 = require("@smithy/property-provider");
const resolveAssumeRoleCredentials_1 = require("./resolveAssumeRoleCredentials");
const resolveProcessCredentials_1 = require("./resolveProcessCredentials");
const resolveSsoCredentials_1 = require("./resolveSsoCredentials");
const resolveStaticCredentials_1 = require("./resolveStaticCredentials");
const resolveWebIdentityCredentials_1 = require("./resolveWebIdentityCredentials");
const resolveProfileData = async (profileName, profiles, options, visitedProfiles = {}) => {
const data = profiles[profileName];
if (Object.keys(visitedProfiles).length > 0 && (0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) {
return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data);
}
if ((0, resolveAssumeRoleCredentials_1.isAssumeRoleProfile)(data)) {
return (0, resolveAssumeRoleCredentials_1.resolveAssumeRoleCredentials)(profileName, profiles, options, visitedProfiles);
}
if ((0, resolveStaticCredentials_1.isStaticCredsProfile)(data)) {
return (0, resolveStaticCredentials_1.resolveStaticCredentials)(data);
}
if ((0, resolveWebIdentityCredentials_1.isWebIdentityProfile)(data)) {
return (0, resolveWebIdentityCredentials_1.resolveWebIdentityCredentials)(data, options);
}
if ((0, resolveProcessCredentials_1.isProcessProfile)(data)) {
return (0, resolveProcessCredentials_1.resolveProcessCredentials)(options, profileName);
}
if ((0, resolveSsoCredentials_1.isSsoProfile)(data)) {
return (0, resolveSsoCredentials_1.resolveSsoCredentials)(data);
}
throw new property_provider_1.CredentialsProviderError(`Profile ${profileName} could not be found or parsed in shared credentials file.`);
};
exports.resolveProfileData = resolveProfileData;
@@ -0,0 +1,17 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveSsoCredentials = exports.isSsoProfile = void 0;
const credential_provider_sso_1 = require("@aws-sdk/credential-provider-sso");
var credential_provider_sso_2 = require("@aws-sdk/credential-provider-sso");
Object.defineProperty(exports, "isSsoProfile", { enumerable: true, get: function () { return credential_provider_sso_2.isSsoProfile; } });
const resolveSsoCredentials = (data) => {
const { sso_start_url, sso_account_id, sso_session, sso_region, sso_role_name } = (0, credential_provider_sso_1.validateSsoProfile)(data);
return (0, credential_provider_sso_1.fromSSO)({
ssoStartUrl: sso_start_url,
ssoAccountId: sso_account_id,
ssoSession: sso_session,
ssoRegion: sso_region,
ssoRoleName: sso_role_name,
})();
};
exports.resolveSsoCredentials = resolveSsoCredentials;
@@ -0,0 +1,15 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveStaticCredentials = exports.isStaticCredsProfile = void 0;
const isStaticCredsProfile = (arg) => Boolean(arg) &&
typeof arg === "object" &&
typeof arg.aws_access_key_id === "string" &&
typeof arg.aws_secret_access_key === "string" &&
["undefined", "string"].indexOf(typeof arg.aws_session_token) > -1;
exports.isStaticCredsProfile = isStaticCredsProfile;
const resolveStaticCredentials = (profile) => Promise.resolve({
accessKeyId: profile.aws_access_key_id,
secretAccessKey: profile.aws_secret_access_key,
sessionToken: profile.aws_session_token,
});
exports.resolveStaticCredentials = resolveStaticCredentials;
@@ -0,0 +1,17 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.resolveWebIdentityCredentials = exports.isWebIdentityProfile = void 0;
const credential_provider_web_identity_1 = require("@aws-sdk/credential-provider-web-identity");
const isWebIdentityProfile = (arg) => Boolean(arg) &&
typeof arg === "object" &&
typeof arg.web_identity_token_file === "string" &&
typeof arg.role_arn === "string" &&
["undefined", "string"].indexOf(typeof arg.role_session_name) > -1;
exports.isWebIdentityProfile = isWebIdentityProfile;
const resolveWebIdentityCredentials = async (profile, options) => (0, credential_provider_web_identity_1.fromTokenFile)({
webIdentityTokenFile: profile.web_identity_token_file,
roleArn: profile.role_arn,
roleSessionName: profile.role_session_name,
roleAssumerWithWebIdentity: options.roleAssumerWithWebIdentity,
})();
exports.resolveWebIdentityCredentials = resolveWebIdentityCredentials;