From a12455159a9fc6822d8cb7fde7031bd817b210d8 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Tue, 21 Mar 2023 18:42:53 +0600 Subject: [PATCH 01/21] ci: deploy to dev --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index d3f046e..8e6fd7a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -48,4 +48,4 @@ workflows: filters: branches: only: - - main + - feature/dev From c71e661fc400cc48144c2c44e7427203f758f034 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 00:03:21 +0600 Subject: [PATCH 02/21] fix: use elasticsearch when opensearch-js is not availalbe - this is a temporary feature till we overhaul how we do indexing Signed-off-by: Rakib Ansary --- package.json | 4 + src/domain/Challenge.ts | 6 +- src/helpers/ElasticSearch.ts | 57 ++-- .../domain-layer/challenge/challenge.ts | 84 ----- yarn.lock | 287 +++++++++++++++++- 5 files changed, 330 insertions(+), 108 deletions(-) diff --git a/package.json b/package.json index 97d6f48..2af877c 100644 --- a/package.json +++ b/package.json @@ -25,10 +25,13 @@ "@opensearch-project/opensearch": "^2.2.0", "@topcoder-framework/domain-acl": "^0.7.0", "@topcoder-framework/lib-common": "^0.7.0", + "aws-sdk": "^2.1339.0", "axios": "^1.2.2", "dayjs": "^1.11.7", "dotenv": "^16.0.3", + "elasticsearch": "^16.7.3", "grpc-server-reflection": "^0.1.5", + "http-aws-es": "^6.0.0", "lodash": "^4.17.21", "moment": "^2.29.4", "source-map-support": "^0.5.21", @@ -43,6 +46,7 @@ "yarn": "1.22.19" }, "devDependencies": { + "@types/elasticsearch": "^5.0.40", "@types/lodash": "^4.14.191", "@types/node": "^18.11.17", "ts-node-dev": "^2.0.0", diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index 3ed4621..f8239e0 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -15,10 +15,7 @@ import xss from "xss"; import CoreOperations from "../common/CoreOperations"; import { Value } from "../dal/models/nosql/parti_ql"; import IdGenerator from "../helpers/IdGenerator"; -import { - DomainHelper, - Value as ProtobufValue, -} from "@topcoder-framework/lib-common"; +import { DomainHelper } from "@topcoder-framework/lib-common"; import { Challenge, ChallengeList, @@ -1407,6 +1404,7 @@ class ChallengeDomain extends CoreOperations { await this.esClient.update({ index: ES_INDEX, + type: process.env.OPENSEARCH === "true" ? undefined : "_doc", refresh: ES_REFRESH, id, body: { diff --git a/src/helpers/ElasticSearch.ts b/src/helpers/ElasticSearch.ts index 27ebb5f..291ef0f 100644 --- a/src/helpers/ElasticSearch.ts +++ b/src/helpers/ElasticSearch.ts @@ -1,26 +1,49 @@ -import { Client as ESClient } from "@opensearch-project/opensearch" +import { Client as ESClient } from "@opensearch-project/opensearch"; +import elasticsearch from "elasticsearch"; +import AWS from "aws-sdk"; class ElasticSearch { - private esClient: any; - private esHost: string | undefined; + private esClient: any; + private esHost: string | undefined; - constructor() { - const { ES_HOST } = process.env; - this.esHost = ES_HOST - } + public useOpenSearch: boolean = process.env.OPENSEARCH === "true"; + + constructor() { + const { ES_HOST } = process.env; + this.esHost = ES_HOST; + } - getESClient() { - if (this.esClient) { - return this.esClient; - } - this.esClient = new ESClient({ - node: this.esHost, - ssl: { - rejectUnauthorized: false, - }, + getESClient() { + if (this.esClient) { + return this.esClient; + } + if (this.useOpenSearch) { + if (/.*amazonaws.*/.test(this.esHost!)) { + AWS.config.update({ + region: "us-east-1", + credentials: new AWS.EnvironmentCredentials("AWS"), + }); + this.esClient = new elasticsearch.Client({ + apiVersion: "6.8", + hosts: this.esHost!, + connectionClass: require("http-aws-es"), // eslint-disable-line global-require + }); + } else { + this.esClient = new elasticsearch.Client({ + apiVersion: "6.8", + hosts: this.esHost!, }); - return this.esClient; + } + } else { + this.esClient = new ESClient({ + node: this.esHost, + ssl: { + rejectUnauthorized: false, + }, + }); } + return this.esClient; + } } export default new ElasticSearch(); diff --git a/src/models/domain-layer/challenge/challenge.ts b/src/models/domain-layer/challenge/challenge.ts index a1389d8..885973e 100644 --- a/src/models/domain-layer/challenge/challenge.ts +++ b/src/models/domain-layer/challenge/challenge.ts @@ -95,12 +95,6 @@ export interface Challenge_Phase { phaseId: string; id: string; isOpen: boolean; - constraints: Challenge_Phase_Constraint[]; -} - -export interface Challenge_Phase_Constraint { - name: string; - value: number; } export interface Challenge_Winner { @@ -1166,7 +1160,6 @@ function createBaseChallenge_Phase(): Challenge_Phase { phaseId: "", id: "", isOpen: false, - constraints: [], }; } @@ -1199,9 +1192,6 @@ export const Challenge_Phase = { if (message.isOpen === true) { writer.uint32(72).bool(message.isOpen); } - for (const v of message.constraints) { - Challenge_Phase_Constraint.encode(v!, writer.uint32(82).fork()).ldelim(); - } return writer; }, @@ -1239,9 +1229,6 @@ export const Challenge_Phase = { case 9: message.isOpen = reader.bool(); break; - case 10: - message.constraints.push(Challenge_Phase_Constraint.decode(reader, reader.uint32())); - break; default: reader.skipType(tag & 7); break; @@ -1261,9 +1248,6 @@ export const Challenge_Phase = { phaseId: isSet(object.phaseId) ? String(object.phaseId) : "", id: isSet(object.id) ? String(object.id) : "", isOpen: isSet(object.isOpen) ? Boolean(object.isOpen) : false, - constraints: Array.isArray(object?.constraints) - ? object.constraints.map((e: any) => Challenge_Phase_Constraint.fromJSON(e)) - : [], }; }, @@ -1278,11 +1262,6 @@ export const Challenge_Phase = { message.phaseId !== undefined && (obj.phaseId = message.phaseId); message.id !== undefined && (obj.id = message.id); message.isOpen !== undefined && (obj.isOpen = message.isOpen); - if (message.constraints) { - obj.constraints = message.constraints.map((e) => e ? Challenge_Phase_Constraint.toJSON(e) : undefined); - } else { - obj.constraints = []; - } return obj; }, @@ -1301,69 +1280,6 @@ export const Challenge_Phase = { message.phaseId = object.phaseId ?? ""; message.id = object.id ?? ""; message.isOpen = object.isOpen ?? false; - message.constraints = object.constraints?.map((e) => Challenge_Phase_Constraint.fromPartial(e)) || []; - return message; - }, -}; - -function createBaseChallenge_Phase_Constraint(): Challenge_Phase_Constraint { - return { name: "", value: 0 }; -} - -export const Challenge_Phase_Constraint = { - encode(message: Challenge_Phase_Constraint, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.value !== 0) { - writer.uint32(16).int32(message.value); - } - return writer; - }, - - decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Phase_Constraint { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); - let end = length === undefined ? reader.len : reader.pos + length; - const message = createBaseChallenge_Phase_Constraint(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.value = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }, - - fromJSON(object: any): Challenge_Phase_Constraint { - return { - name: isSet(object.name) ? String(object.name) : "", - value: isSet(object.value) ? Number(object.value) : 0, - }; - }, - - toJSON(message: Challenge_Phase_Constraint): unknown { - const obj: any = {}; - message.name !== undefined && (obj.name = message.name); - message.value !== undefined && (obj.value = Math.round(message.value)); - return obj; - }, - - create, I>>(base?: I): Challenge_Phase_Constraint { - return Challenge_Phase_Constraint.fromPartial(base ?? {}); - }, - - fromPartial, I>>(object: I): Challenge_Phase_Constraint { - const message = createBaseChallenge_Phase_Constraint(); - message.name = object.name ?? ""; - message.value = object.value ?? 0; return message; }, }; diff --git a/yarn.lock b/yarn.lock index dfc34bc..f595e58 100644 --- a/yarn.lock +++ b/yarn.lock @@ -919,6 +919,11 @@ dependencies: "@types/node" "*" +"@types/elasticsearch@^5.0.40": + version "5.0.40" + resolved "https://registry.yarnpkg.com/@types/elasticsearch/-/elasticsearch-5.0.40.tgz#811f6954088c264173e0a9876b97933250a4da10" + integrity sha512-lhnbkC0XorAD7Dt7X+94cXUSHEdDNnEVk/DgFLHgIZQNhixV631Lj4+KpXunTT5rCHyj9RqK3TfO7QrOiwEeUQ== + "@types/express-jwt@0.0.42": version "0.0.42" resolved "https://registry.yarnpkg.com/@types/express-jwt/-/express-jwt-0.0.42.tgz#4f04e1fadf9d18725950dc041808a4a4adf7f5ae" @@ -1028,6 +1033,13 @@ agent-base@6: dependencies: debug "4" +agentkeepalive@^3.4.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67" + integrity sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ== + dependencies: + humanize-ms "^1.2.1" + ajv@^6.12.3: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -1038,11 +1050,21 @@ ajv@^6.12.3: json-schema-traverse "^0.4.1" uri-js "^4.2.2" +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA== + ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-styles@^2.2.1: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe" + integrity sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA== + ansi-styles@^4.0.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" @@ -1080,6 +1102,27 @@ asynckit@^0.4.0: resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== +available-typed-arrays@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" + integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== + +aws-sdk@^2.1339.0: + version "2.1339.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1339.0.tgz#3de9aeced95a072abcd35c16ff560ec20cf8aa2d" + integrity sha512-3TS2bmjfsi0ezxGKPKsGl9V40tLiU0PxPg/NH8VL8npDPoQvZxwmHsiOS5DugNXqtSr/lUSWgYXXJ2oDbtmDXg== + dependencies: + buffer "4.9.2" + events "1.1.1" + ieee754 "1.1.13" + jmespath "0.16.0" + querystring "0.2.0" + sax "1.2.1" + url "0.10.3" + util "^0.12.4" + uuid "8.0.0" + xml2js "0.4.19" + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" @@ -1132,6 +1175,11 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +base64-js@^1.0.2: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -1174,6 +1222,15 @@ buffer-from@^1.0.0: resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== +buffer@4.9.2: + version "4.9.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-4.9.2.tgz#230ead344002988644841ab0244af8c44bbe3ef8" + integrity sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg== + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + isarray "^1.0.0" + bunyan@^1.8.12: version "1.8.15" resolved "https://registry.yarnpkg.com/bunyan/-/bunyan-1.8.15.tgz#8ce34ca908a17d0776576ca1b2f6cbd916e93b46" @@ -1184,6 +1241,14 @@ bunyan@^1.8.12: mv "~2" safe-json-stringify "~1" +call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + case-anything@^2.1.10: version "2.1.10" resolved "https://registry.yarnpkg.com/case-anything/-/case-anything-2.1.10.tgz#d18a6ca968d54ec3421df71e3e190f3bced23410" @@ -1194,6 +1259,17 @@ caseless@~0.12.0: resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha512-4tYFyifaFfGacoiObjJegolkwSU4xQNGbVgUiNYVUxbQ2x2lUsFvY4hVgVzGiIe6WLOPqycWXA40l+PWsxthUw== +chalk@^1.0.0: + version "1.1.3" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98" + integrity sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A== + dependencies: + ansi-styles "^2.2.1" + escape-string-regexp "^1.0.2" + has-ansi "^2.0.0" + strip-ansi "^3.0.0" + supports-color "^2.0.0" + chokidar@^3.5.1: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -1361,6 +1437,15 @@ ecdsa-sig-formatter@1.0.11: dependencies: safe-buffer "^5.0.1" +elasticsearch@^16.7.3: + version "16.7.3" + resolved "https://registry.yarnpkg.com/elasticsearch/-/elasticsearch-16.7.3.tgz#bf0e1cc129ab2e0f06911953a1b1f3c740715fab" + integrity sha512-e9kUNhwnIlu47fGAr4W6yZJbkpsgQJB0TqNK8rCANe1J4P65B1sGnbCFTgcKY3/dRgCWnuP1AJ4obvzW604xEQ== + dependencies: + agentkeepalive "^3.4.1" + chalk "^1.0.0" + lodash "^4.17.10" + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -1371,6 +1456,16 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== +escape-string-regexp@^1.0.2: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +events@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/events/-/events-1.1.1.tgz#9ebdb7635ad099c70dcc4c2a1f5004288e8bd924" + integrity sha512-kEcvvCBByWXGnZy6JUlgAp2gBIUjfCAV6P6TgT1/aaQKcmuAEC4OZTV1I4EWQLz2gxZw76atuVyvHhTxvi0Flw== + express-unless@*: version "2.1.3" resolved "https://registry.yarnpkg.com/express-unless/-/express-unless-2.1.3.tgz#f951c6cca52a24da3de32d42cfd4db57bc0f9a2e" @@ -1427,6 +1522,13 @@ follow-redirects@^1.14.0, follow-redirects@^1.15.0: resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== +for-each@^0.3.3: + version "0.3.3" + resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" + integrity sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw== + dependencies: + is-callable "^1.1.3" + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" @@ -1470,6 +1572,15 @@ get-caller-file@^2.0.5: resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== +get-intrinsic@^1.0.2, get-intrinsic@^1.1.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" + integrity sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.3" + getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -1512,6 +1623,13 @@ google-protobuf@^3.19.1: resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.21.2.tgz#4580a2bea8bbb291ee579d1fefb14d6fa3070ea4" integrity sha512-3MSOYFO5U9mPGikIYCzK0SaThypfGgS6bHqrUGXG3DPHCrb+txNqeEcns1W0lkGfk0rCyNXm7xB9rMxnCiZOoA== +gopd@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/gopd/-/gopd-1.0.1.tgz#29ff76de69dac7489b7c0918a5788e56477c332c" + integrity sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA== + dependencies: + get-intrinsic "^1.1.3" + grpc-server-reflection@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/grpc-server-reflection/-/grpc-server-reflection-0.1.5.tgz#76ba71649fd71b0ebae7d5254ddc781ba61054d0" @@ -1532,6 +1650,25 @@ har-validator@~5.1.3: ajv "^6.12.3" har-schema "^2.0.0" +has-ansi@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91" + integrity sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg== + dependencies: + ansi-regex "^2.0.0" + +has-symbols@^1.0.2, has-symbols@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.3.tgz#bb7b2c4349251dce87b125f7bdf874aa7c8b39f8" + integrity sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -1544,6 +1681,11 @@ hpagent@^1.2.0: resolved "https://registry.yarnpkg.com/hpagent/-/hpagent-1.2.0.tgz#0ae417895430eb3770c03443456b8d90ca464903" integrity sha512-A91dYTeIB6NoXG+PxTQpCCDDnfHsW9kc06Lvpu1TEe9gnd6ZFeiBoRO9JvzEv6xK7EX97/dUE8g/vBMTqTS3CA== +http-aws-es@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/http-aws-es/-/http-aws-es-6.0.0.tgz#1528978d2bee718b8732dcdced0856efa747aeff" + integrity sha512-g+qp7J110/m4aHrR3iit4akAlnW0UljZ6oTq/rCcbsI8KP9x+95vqUtx49M2XQ2JMpwJio3B6gDYx+E8WDxqiA== + http-proxy-agent@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" @@ -1570,6 +1712,23 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ== + dependencies: + ms "^2.0.0" + +ieee754@1.1.13: + version "1.1.13" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.1.13.tgz#ec168558e95aa181fd87d37f55c32bbcb6708b84" + integrity sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg== + +ieee754@^1.1.4: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + inflight@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" @@ -1578,11 +1737,19 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2: +inherits@2, inherits@^2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== +is-arguments@^1.0.4: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + is-binary-path@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" @@ -1590,6 +1757,11 @@ is-binary-path@~2.1.0: dependencies: binary-extensions "^2.0.0" +is-callable@^1.1.3: + version "1.2.7" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.7.tgz#3bc2a85ea742d9e36205dcacdd72ca1fdc51b055" + integrity sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA== + is-core-module@^2.9.0: version "2.11.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.11.0.tgz#ad4cb3e3863e814523c96f3f58d26cc570ff0144" @@ -1607,6 +1779,13 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-generator-function@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/is-generator-function/-/is-generator-function-1.0.10.tgz#f1558baf1ac17e0deea7c0415c438351ff2b3c72" + integrity sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A== + dependencies: + has-tostringtag "^1.0.0" + is-glob@^4.0.1, is-glob@~4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -1619,16 +1798,37 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-typed-array@^1.1.10, is-typed-array@^1.1.3: + version "1.1.10" + resolved "https://registry.yarnpkg.com/is-typed-array/-/is-typed-array-1.1.10.tgz#36a5b5cb4189b575d1a3e4b08536bfb485801e3f" + integrity sha512-PJqgEHiWZvMpaFZ3uTc8kHPM4+4ADTlDniuQL7cU/UDA0Ql7F70yGfHph3cLNe+c9toaigv+DFzTJKhc2CtO6A== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" + is-typedarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== +isarray@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + isstream@~0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha512-Yljz7ffyPbrLpLngrMtZ7NduUgVvi6wG9RJ9IUcyCd59YQ911PBJphODUcbOVbqYfxe1wuYf/LJ8PauMRwsM/g== +jmespath@0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/jmespath/-/jmespath-0.16.0.tgz#b15b0a85dfd4d930d43e69ed605943c802785076" + integrity sha512-9FzQjJ7MATs1tSpnco1K6ayiYE3figslrXA72G2HQ/n76RzvYlofyi5QM+iX4YRs/pu3yzxlVQSST23+dMDknw== + jsbn@~0.1.0: version "0.1.1" resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" @@ -1763,7 +1963,7 @@ lodash@4.17.15: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.15.tgz#b447f6670a0455bbfeedd11392eff330ea097548" integrity sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A== -lodash@^4.17.15, lodash@^4.17.21: +lodash@^4.17.10, lodash@^4.17.15, lodash@^4.17.21: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== @@ -1855,7 +2055,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@^2.1.1, ms@^2.1.2, ms@^2.1.3: +ms@^2.0.0, ms@^2.1.1, ms@^2.1.2, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -1978,6 +2178,11 @@ psl@^1.1.28: resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw== + punycode@^2.1.0, punycode@^2.1.1: version "2.3.0" resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" @@ -1988,6 +2193,11 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.3.tgz#3aeeffc91967ef6e35c0e488ef46fb296ab76aad" integrity sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA== +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== + r7insight_node@^1.8.4: version "1.8.4" resolved "https://registry.yarnpkg.com/r7insight_node/-/r7insight_node-1.8.4.tgz#875633032137545b3cc7c80763baf09f6ba66801" @@ -2090,6 +2300,16 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sax@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.1.tgz#7b8e656190b228e81a66aea748480d828cd2d37a" + integrity sha512-8I2a3LovHTOpm7NV5yOyO8IHqgVsfK4+UuySrXU8YXkSRX7k6hCV9b3HrkKCr3nMpgj+0bmocaJJWpvp1oc7ZA== + +sax@>=0.6.0: + version "1.2.4" + resolved "https://registry.yarnpkg.com/sax/-/sax-1.2.4.tgz#2816234e2378bddc4e5354fab5caa895df7100d9" + integrity sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw== + secure-json-parse@^2.4.0: version "2.7.0" resolved "https://registry.yarnpkg.com/secure-json-parse/-/secure-json-parse-2.7.0.tgz#5a5f9cd6ae47df23dba3151edd06855d47e09862" @@ -2147,6 +2367,13 @@ string-width@^4.1.0, string-width@^4.2.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +strip-ansi@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg== + dependencies: + ansi-regex "^2.0.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -2169,6 +2396,11 @@ strnum@^1.0.5: resolved "https://registry.yarnpkg.com/strnum/-/strnum-1.0.5.tgz#5c4e829fe15ad4ff0d20c3db5ac97b73c9b072db" integrity sha512-J8bbNyKKXl5qYcR36TIO8W3mVGVHrmmxsd5PAItGkmyzwJvybiw2IVq5nqd0i4LSNSkB/sx9VHllbfFdr9k1JA== +supports-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7" + integrity sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g== + supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" @@ -2318,6 +2550,30 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" +url@0.10.3: + version "0.10.3" + resolved "https://registry.yarnpkg.com/url/-/url-0.10.3.tgz#021e4d9c7705f21bbf37d03ceb58767402774c64" + integrity sha512-hzSUW2q06EqL1gKM/a+obYHLIO6ct2hwPuviqTTOcfFVc61UbfJ2Q32+uGL/HCPxKqrdGB5QUwIe7UqlDgwsOQ== + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +util@^0.12.4: + version "0.12.5" + resolved "https://registry.yarnpkg.com/util/-/util-0.12.5.tgz#5f17a6059b73db61a875668781a1c2b136bd6fbc" + integrity sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA== + dependencies: + inherits "^2.0.3" + is-arguments "^1.0.4" + is-generator-function "^1.0.7" + is-typed-array "^1.1.3" + which-typed-array "^1.1.2" + +uuid@8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" + integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== + uuid@8.3.2, uuid@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" @@ -2350,6 +2606,18 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" +which-typed-array@^1.1.2: + version "1.1.9" + resolved "https://registry.yarnpkg.com/which-typed-array/-/which-typed-array-1.1.9.tgz#307cf898025848cf995e795e8423c7f337efbde6" + integrity sha512-w9c4xkx6mPidwp7180ckYWfMmvxpjlZuIudNtDf4N/tTAUB8VJbX25qZoAsrtGuYNnGw3pa0AXgbGKRB8/EceA== + dependencies: + available-typed-arrays "^1.0.5" + call-bind "^1.0.2" + for-each "^0.3.3" + gopd "^1.0.1" + has-tostringtag "^1.0.0" + is-typed-array "^1.1.10" + wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -2364,6 +2632,19 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== +xml2js@0.4.19: + version "0.4.19" + resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.19.tgz#686c20f213209e94abf0d1bcf1efaa291c7827a7" + integrity sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q== + dependencies: + sax ">=0.6.0" + xmlbuilder "~9.0.1" + +xmlbuilder@~9.0.1: + version "9.0.7" + resolved "https://registry.yarnpkg.com/xmlbuilder/-/xmlbuilder-9.0.7.tgz#132ee63d2ec5565c557e20f4c22df9aca686b10d" + integrity sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ== + xss@^1.0.14: version "1.0.14" resolved "https://registry.yarnpkg.com/xss/-/xss-1.0.14.tgz#4f3efbde75ad0d82e9921cc3c95e6590dd336694" From b4f72665e3a2322810a51e4708097be1185c1e33 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 15:53:47 +0600 Subject: [PATCH 03/21] fix: project category id Signed-off-by: Rakib Ansary --- src/common/ConversionMap.ts | 2 +- src/util/LegacyMapper.ts | 61 +++++++++++++++++++++++++++++++------ 2 files changed, 52 insertions(+), 11 deletions(-) diff --git a/src/common/ConversionMap.ts b/src/common/ConversionMap.ts index 988049d..39901ae 100644 --- a/src/common/ConversionMap.ts +++ b/src/common/ConversionMap.ts @@ -58,7 +58,7 @@ const V4_TRACKS = { DESIGN: "DESIGN", }; -const V4_SUBTRACKS = { +export const V4_SUBTRACKS = { MARATHON_MATCH: "MARATHON_MATCH", DESIGN_FIRST_2_FINISH: "DESIGN_FIRST_2_FINISH", APPLICATION_FRONT_END_DESIGN: "APPLICATION_FRONT_END_DESIGN", diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 91226ba..0c22e20 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -1,6 +1,6 @@ import _ from "lodash"; import { PrizeSetTypes } from "../common/Constants"; -import { V5_TO_V4 } from "../common/ConversionMap"; +import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; import { legacyChallengeStatusesMap } from "./constants"; import DateUtil from "./DateUtil"; @@ -61,16 +61,57 @@ class LegacyMapper { projectStudioSpecId: number | undefined; projectMmSpecId: number | undefined; } { - subTrack = subTrack.replace(" ", "").toLowerCase(); + let projectCategoryId = 39; // V4_SUBTRACKS.CODE - let projectCategoryId = 39; // code - if (subTrack === "first2finish") { - projectCategoryId = 38; - } else if (subTrack === "marathonmatch") { - projectCategoryId = 37; - } else if (subTrack === "bughunt") { - projectCategoryId = 9; - } + if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) projectCategoryId = 38; + if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) projectCategoryId = 37; + // prettier-ignore + if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) projectCategoryId = 37; + if (subTrack === V4_SUBTRACKS.BUG_HUNT) projectCategoryId = 9; + if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) projectCategoryId = 40; + if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) projectCategoryId = 17; + /* + project_category_id,project_type_id,name + 1,1,Design + 2,1,Development + 3,1,Security + 4,1,Process + 5,1,Testing Competition + 6,2,Specification + 7,2,Architecture + 8,2,Component Production + 9,2,Bug Hunt + 10,2,Deployment + 11,2,Security + 12,2,Process + 13,2,Test Suites + 14,2,Assembly Competition + 15,2,Legacy + 16,3,Banners/Icons + 17,3,Web Design + 18,3,Wireframes + 19,2,UI Prototype Competition + 20,3,Logo Design + 21,3,Print/Presentation + 23,2,Conceptualization + 24,2,RIA Build Competition + 25,2,RIA Component Competition + 26,2,Test Scenarios + 27,2,Spec Review + 28,4,Generic Scorecards + 29,2,Copilot Posting + 35,2,Content Creation + 30,3,Widget or Mobile Screen Design + 31,3,Front-End Flash + 32,3,Application Front-End Design + 34,3,Studio Other + 22,3,Idea Generation + 36,2,Reporting + 37,2,Marathon Match + 38,2,First2Finish + 39,2,Code + 40,3,Design First2Finish + */ return { projectCategoryId, From e459d3c818f65a285de8d5ddec01961b33759b93 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 17:32:44 +0600 Subject: [PATCH 04/21] fix: project phase during challenge creation Signed-off-by: Rakib Ansary --- package.json | 6 +- .../models/nosql/google/protobuf/struct.ts | 88 +- src/dal/models/nosql/parti_ql.ts | 451 ++- src/models/common/common.ts | 152 +- .../domain-layer/challenge/attachment.ts | 149 +- .../domain-layer/challenge/challenge.ts | 2983 +++++++++++++---- .../challenge/challenge_timeline_template.ts | 131 +- .../domain-layer/challenge/challenge_track.ts | 131 +- .../domain-layer/challenge/challenge_type.ts | 149 +- src/models/domain-layer/challenge/phase.ts | 131 +- .../challenge/timeline_template.ts | 156 +- src/models/google/protobuf/empty.ts | 7 +- src/models/google/protobuf/struct.ts | 88 +- src/models/google/protobuf/timestamp.ts | 19 +- src/util/LegacyMapper.ts | 48 +- yarn.lock | 1282 +++---- 16 files changed, 4195 insertions(+), 1776 deletions(-) diff --git a/package.json b/package.json index 2af877c..4086373 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "@aws-sdk/util-utf8-node": "^3.259.0", "@grpc/grpc-js": "^1.7.1", "@opensearch-project/opensearch": "^2.2.0", - "@topcoder-framework/domain-acl": "^0.7.0", - "@topcoder-framework/lib-common": "^0.7.0", + "@topcoder-framework/domain-acl": "^0.7.3", + "@topcoder-framework/lib-common": "^0.7.3", "aws-sdk": "^2.1339.0", "axios": "^1.2.2", "dayjs": "^1.11.7", @@ -36,7 +36,7 @@ "moment": "^2.29.4", "source-map-support": "^0.5.21", "tc-core-library-js": "appirio-tech/tc-core-library-js.git#v2.6.4", - "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.29", + "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.30", "uuidv4": "^6.2.13", "xss": "^1.0.14" }, diff --git a/src/dal/models/nosql/google/protobuf/struct.ts b/src/dal/models/nosql/google/protobuf/struct.ts index 2fd4c31..d2c6c53 100644 --- a/src/dal/models/nosql/google/protobuf/struct.ts +++ b/src/dal/models/nosql/google/protobuf/struct.ts @@ -115,15 +115,20 @@ export const Struct = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + const entry1 = Struct_FieldsEntry.decode(reader, reader.uint32()); if (entry1.value !== undefined) { message.fields[entry1.key] = entry1.value; } - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -209,15 +214,24 @@ export const Struct_FieldsEntry = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.key = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.value = Value.unwrap(Value.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -282,27 +296,52 @@ export const Value = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.kind = { $case: "nullValue", nullValue: nullValueFromJSON(reader.int32()) }; - break; + continue; case 2: + if (tag != 17) { + break; + } + message.kind = { $case: "numberValue", numberValue: reader.double() }; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.kind = { $case: "stringValue", stringValue: reader.string() }; - break; + continue; case 4: + if (tag != 32) { + break; + } + message.kind = { $case: "boolValue", boolValue: reader.bool() }; - break; + continue; case 5: + if (tag != 42) { + break; + } + message.kind = { $case: "structValue", structValue: Struct.unwrap(Struct.decode(reader, reader.uint32())) }; - break; + continue; case 6: + if (tag != 50) { + break; + } + message.kind = { $case: "listValue", listValue: ListValue.unwrap(ListValue.decode(reader, reader.uint32())) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -435,12 +474,17 @@ export const ListValue = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.values.push(Value.unwrap(Value.decode(reader, reader.uint32()))); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/dal/models/nosql/parti_ql.ts b/src/dal/models/nosql/parti_ql.ts index e3db89a..c5b7766 100644 --- a/src/dal/models/nosql/parti_ql.ts +++ b/src/dal/models/nosql/parti_ql.ts @@ -675,12 +675,17 @@ export const StringSet = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.values.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -732,19 +737,26 @@ export const NumberSet = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - if ((tag & 7) === 2) { + if (tag == 9) { + message.values.push(reader.double()); + continue; + } + + if (tag == 10) { const end2 = reader.uint32() + reader.pos; while (reader.pos < end2) { message.values.push(reader.double()); } - } else { - message.values.push(reader.double()); + + continue; } - break; - default: - reader.skipType(tag & 7); + break; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -820,36 +832,73 @@ export const Value = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.kind = { $case: "boolean", boolean: reader.bool() }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "binary", binary: reader.bytes() as Buffer }; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.kind = { $case: "listValue", listValue: ListValue.unwrap(ListValue.decode(reader, reader.uint32())) }; - break; + continue; case 4: + if (tag != 34) { + break; + } + message.kind = { $case: "mapValue", mapValue: Struct.unwrap(Struct.decode(reader, reader.uint32())) }; - break; + continue; case 5: + if (tag != 40) { + break; + } + message.kind = { $case: "nullValue", nullValue: nullValueFromJSON(reader.int32()) }; - break; + continue; case 6: + if (tag != 49) { + break; + } + message.kind = { $case: "numberValue", numberValue: reader.double() }; - break; + continue; case 7: + if (tag != 58) { + break; + } + message.kind = { $case: "numberSetValue", numberSetValue: NumberSet.decode(reader, reader.uint32()) }; - break; + continue; case 8: + if (tag != 66) { + break; + } + message.kind = { $case: "stringValue", stringValue: reader.string() }; - break; + continue; case 9: + if (tag != 74) { + break; + } + message.kind = { $case: "stringSetValue", stringSetValue: StringSet.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -972,15 +1021,24 @@ export const Attribute = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.type = dataTypeFromJSON(reader.int32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1037,18 +1095,31 @@ export const Filter = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.operator = operatorFromJSON(reader.int32()); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.value = Value.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1114,24 +1185,45 @@ export const SelectQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.table = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.index = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.attributes.push(Attribute.decode(reader, reader.uint32())); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.filters.push(Filter.decode(reader, reader.uint32())); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.nextToken = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1202,15 +1294,24 @@ export const InsertQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.table = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.attributes = Struct.unwrap(Struct.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1275,21 +1376,38 @@ export const UpdateOperation = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.action = updateActionFromJSON(reader.int32()); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.attribute = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.type = updateTypeFromJSON(reader.int32()); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.value = Value.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1355,21 +1473,38 @@ export const UpdateQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.table = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updates.push(UpdateOperation.decode(reader, reader.uint32())); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.filters.push(Filter.decode(reader, reader.uint32())); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.returnValue = returnValueFromJSON(reader.int32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1441,18 +1576,31 @@ export const DeleteQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.table = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.filters.push(Filter.decode(reader, reader.uint32())); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.returnValues = returnValueFromJSON(reader.int32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1511,12 +1659,17 @@ export const ReadQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.queries.push(SelectQuery.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1574,18 +1727,31 @@ export const WriteQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.kind = { $case: "insert", insert: InsertQuery.decode(reader, reader.uint32()) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "update", update: UpdateQuery.decode(reader, reader.uint32()) }; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.kind = { $case: "delete", delete: DeleteQuery.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1652,12 +1818,17 @@ export const BulkWriteQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.queries.push(WriteQuery.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1712,15 +1883,24 @@ export const BulkQuery = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.kind = { $case: "read", read: ReadQuery.decode(reader, reader.uint32()) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "bulkWriteQueries", bulkWriteQueries: WriteQuery.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1799,21 +1979,38 @@ export const Query = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.kind = { $case: "select", select: SelectQuery.decode(reader, reader.uint32()) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "insert", insert: InsertQuery.decode(reader, reader.uint32()) }; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.kind = { $case: "update", update: UpdateQuery.decode(reader, reader.uint32()) }; - break; + continue; case 4: + if (tag != 34) { + break; + } + message.kind = { $case: "delete", delete: DeleteQuery.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1890,15 +2087,24 @@ export const Response = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(Struct.unwrap(Struct.decode(reader, reader.uint32()))); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.nextToken = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1958,15 +2164,24 @@ export const QueryRequest = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.kind = { $case: "query", query: Query.decode(reader, reader.uint32()) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "queries", queries: BulkQuery.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -2026,12 +2241,17 @@ export const ResponseError = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.message = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -2082,15 +2302,24 @@ export const QueryResponse = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.kind = { $case: "response", response: Response.decode(reader, reader.uint32()) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "error", error: ResponseError.decode(reader, reader.uint32()) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/common/common.ts b/src/models/common/common.ts index adc5229..2919c41 100644 --- a/src/models/common/common.ts +++ b/src/models/common/common.ts @@ -257,18 +257,31 @@ export const ScanCriteria = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.key = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.operator = reader.int32() as any; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.value = Value.unwrap(Value.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -326,15 +339,24 @@ export const ScanRequest = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.criteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.nextToken = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -392,15 +414,24 @@ export const ScanResult = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.nextToken = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.items.push(Struct.unwrap(Struct.decode(reader, reader.uint32()))); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -460,15 +491,24 @@ export const CreateResult = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.kind = { $case: "integerId", integerId: longToNumber(reader.int64() as Long) }; - break; + continue; case 2: + if (tag != 18) { + break; + } + message.kind = { $case: "stringId", stringId: reader.string() }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -529,15 +569,24 @@ export const UpdateResult = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.updatedCount = longToNumber(reader.int64() as Long); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.message = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -588,12 +637,17 @@ export const CheckExistsResult = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.exists = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -642,15 +696,24 @@ export const LookupCriteria = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.key = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.value = Value.unwrap(Value.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -701,15 +764,24 @@ export const GoogleProtobufTypesPlaceholder = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.timestamp = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.empty = Empty.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/attachment.ts b/src/models/domain-layer/challenge/attachment.ts index a90cf02..c39c7a9 100644 --- a/src/models/domain-layer/challenge/attachment.ts +++ b/src/models/domain-layer/challenge/attachment.ts @@ -72,27 +72,52 @@ export const Attachment = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.url = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.fileSize = longToNumber(reader.int64() as Long); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.name = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.challengeId = reader.string(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -155,12 +180,17 @@ export const AttachmentList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(Attachment.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -222,24 +252,45 @@ export const CreateAttachmentInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.url = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.fileSize = longToNumber(reader.int64() as Long); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.name = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.challengeId = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -302,15 +353,24 @@ export const UpdateAttachmentInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdateAttachmentInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -386,24 +446,45 @@ export const UpdateAttachmentInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.url = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.fileSize = longToNumber(reader.int64() as Long); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.name = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.challengeId = reader.string(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/challenge.ts b/src/models/domain-layer/challenge/challenge.ts index 885973e..ab5f0cd 100644 --- a/src/models/domain-layer/challenge/challenge.ts +++ b/src/models/domain-layer/challenge/challenge.ts @@ -95,6 +95,14 @@ export interface Challenge_Phase { phaseId: string; id: string; isOpen: boolean; + constraints: Challenge_Phase_Constraint[]; + description?: string | undefined; + predecessor?: string | undefined; +} + +export interface Challenge_Phase_Constraint { + name: string; + value: number; } export interface Challenge_Winner { @@ -203,7 +211,9 @@ export interface UpdateChallengeInputForACL_UpdateInputForACL { status?: string | undefined; phases?: UpdateChallengeInputForACL_PhasesACL | undefined; currentPhase?: Challenge_Phase | undefined; - currentPhaseNames?: UpdateChallengeInputForACL_CurrentPhaseNamesACL | undefined; + currentPhaseNames?: + | UpdateChallengeInputForACL_CurrentPhaseNamesACL + | undefined; registrationStartDate?: string | undefined; registrationEndDate?: string | undefined; submissionStartDate?: string | undefined; @@ -279,7 +289,10 @@ function createBaseChallenge(): Challenge { } export const Challenge = { - encode(message: Challenge, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -296,10 +309,16 @@ export const Challenge = { writer.uint32(42).string(message.trackId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode(message.legacy, writer.uint32(50).fork()).ldelim(); + Challenge_Legacy.encode( + message.legacy, + writer.uint32(50).fork() + ).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode(message.billing, writer.uint32(58).fork()).ldelim(); + Challenge_Billing.encode( + message.billing, + writer.uint32(58).fork() + ).ldelim(); } if (message.description !== "") { writer.uint32(66).string(message.description); @@ -371,115 +390,252 @@ export const Challenge = { writer.uint32(240).int64(message.updated); } if (message.overview !== undefined) { - Challenge_Overview.encode(message.overview, writer.uint32(250).fork()).ldelim(); + Challenge_Overview.encode( + message.overview, + writer.uint32(250).fork() + ).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.legacyId = reader.int32(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.name = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.typeId = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.trackId = reader.string(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.legacy = Challenge_Legacy.decode(reader, reader.uint32()); - break; + continue; case 7: + if (tag != 58) { + break; + } + message.billing = Challenge_Billing.decode(reader, reader.uint32()); - break; + continue; case 8: + if (tag != 66) { + break; + } + message.description = reader.string(); - break; + continue; case 9: + if (tag != 74) { + break; + } + message.privateDescription = reader.string(); - break; + continue; case 10: + if (tag != 82) { + break; + } + message.descriptionFormat = reader.string(); - break; + continue; case 11: - message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); - break; + if (tag != 90) { + break; + } + + message.metadata.push( + Challenge_Metadata.decode(reader, reader.uint32()) + ); + continue; case 12: + if (tag != 98) { + break; + } + message.task = Challenge_Task.decode(reader, reader.uint32()); - break; + continue; case 13: + if (tag != 106) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 14: + if (tag != 114) { + break; + } + message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); - break; + continue; case 15: + if (tag != 122) { + break; + } + message.events.push(Challenge_Event.decode(reader, reader.uint32())); - break; + continue; case 16: + if (tag != 130) { + break; + } + message.terms.push(Challenge_Term.decode(reader, reader.uint32())); - break; + continue; case 17: - message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); - break; + if (tag != 138) { + break; + } + + message.prizeSets.push( + Challenge_PrizeSet.decode(reader, reader.uint32()) + ); + continue; case 18: + if (tag != 146) { + break; + } + message.tags.push(reader.string()); - break; + continue; case 19: + if (tag != 152) { + break; + } + message.projectId = reader.int32(); - break; + continue; case 20: + if (tag != 160) { + break; + } + message.startDate = longToNumber(reader.int64() as Long); - break; + continue; case 21: + if (tag != 168) { + break; + } + message.endDate = longToNumber(reader.int64() as Long); - break; + continue; case 22: + if (tag != 178) { + break; + } + message.status = reader.string(); - break; + continue; case 23: + if (tag != 186) { + break; + } + message.attachments.push(reader.string()); - break; + continue; case 24: + if (tag != 194) { + break; + } + message.groups.push(reader.string()); - break; + continue; case 25: - message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); - break; + if (tag != 202) { + break; + } + + message.winners.push( + Challenge_Winner.decode(reader, reader.uint32()) + ); + continue; case 26: - message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); - break; + if (tag != 210) { + break; + } + + message.discussions.push( + Challenge_Discussion.decode(reader, reader.uint32()) + ); + continue; case 27: + if (tag != 218) { + break; + } + message.createdBy = reader.string(); - break; + continue; case 28: + if (tag != 226) { + break; + } + message.updatedBy = reader.string(); - break; + continue; case 29: + if (tag != 232) { + break; + } + message.created = longToNumber(reader.int64() as Long); - break; + continue; case 30: + if (tag != 240) { + break; + } + message.updated = longToNumber(reader.int64() as Long); - break; + continue; case 31: + if (tag != 250) { + break; + } + message.overview = Challenge_Overview.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -491,28 +647,56 @@ export const Challenge = { name: isSet(object.name) ? String(object.name) : "", typeId: isSet(object.typeId) ? String(object.typeId) : "", trackId: isSet(object.trackId) ? String(object.trackId) : "", - legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, - billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, + legacy: isSet(object.legacy) + ? Challenge_Legacy.fromJSON(object.legacy) + : undefined, + billing: isSet(object.billing) + ? Challenge_Billing.fromJSON(object.billing) + : undefined, description: isSet(object.description) ? String(object.description) : "", - privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, - descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, - metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], - task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, - timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, - phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], - events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], - terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], + privateDescription: isSet(object.privateDescription) + ? String(object.privateDescription) + : undefined, + descriptionFormat: isSet(object.descriptionFormat) + ? String(object.descriptionFormat) + : undefined, + metadata: Array.isArray(object?.metadata) + ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) + : [], + task: isSet(object.task) + ? Challenge_Task.fromJSON(object.task) + : undefined, + timelineTemplateId: isSet(object.timelineTemplateId) + ? String(object.timelineTemplateId) + : undefined, + phases: Array.isArray(object?.phases) + ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) + : [], + events: Array.isArray(object?.events) + ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) + : [], + terms: Array.isArray(object?.terms) + ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) + : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], + tags: Array.isArray(object?.tags) + ? object.tags.map((e: any) => String(e)) + : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : "", - attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], - groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], - winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], + attachments: Array.isArray(object?.attachments) + ? object.attachments.map((e: any) => String(e)) + : [], + groups: Array.isArray(object?.groups) + ? object.groups.map((e: any) => String(e)) + : [], + winners: Array.isArray(object?.winners) + ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) + : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -520,47 +704,72 @@ export const Challenge = { updatedBy: isSet(object.updatedBy) ? String(object.updatedBy) : undefined, created: isSet(object.created) ? Number(object.created) : 0, updated: isSet(object.updated) ? Number(object.updated) : undefined, - overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, + overview: isSet(object.overview) + ? Challenge_Overview.fromJSON(object.overview) + : undefined, }; }, toJSON(message: Challenge): unknown { const obj: any = {}; message.id !== undefined && (obj.id = message.id); - message.legacyId !== undefined && (obj.legacyId = Math.round(message.legacyId)); + message.legacyId !== undefined && + (obj.legacyId = Math.round(message.legacyId)); message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); + message.legacy !== undefined && + (obj.legacy = message.legacy + ? Challenge_Legacy.toJSON(message.legacy) + : undefined); message.billing !== undefined && - (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); - message.description !== undefined && (obj.description = message.description); - message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing + ? Challenge_Billing.toJSON(message.billing) + : undefined); + message.description !== undefined && + (obj.description = message.description); + message.privateDescription !== undefined && + (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && + (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); + obj.metadata = message.metadata.map((e) => + e ? Challenge_Metadata.toJSON(e) : undefined + ); } else { obj.metadata = []; } - message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); - message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); + message.task !== undefined && + (obj.task = message.task + ? Challenge_Task.toJSON(message.task) + : undefined); + message.timelineTemplateId !== undefined && + (obj.timelineTemplateId = message.timelineTemplateId); if (message.phases) { - obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); + obj.phases = message.phases.map((e) => + e ? Challenge_Phase.toJSON(e) : undefined + ); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); + obj.events = message.events.map((e) => + e ? Challenge_Event.toJSON(e) : undefined + ); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); + obj.terms = message.terms.map((e) => + e ? Challenge_Term.toJSON(e) : undefined + ); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); + obj.prizeSets = message.prizeSets.map((e) => + e ? Challenge_PrizeSet.toJSON(e) : undefined + ); } else { obj.prizeSets = []; } @@ -569,9 +778,12 @@ export const Challenge = { } else { obj.tags = []; } - message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && + (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && + (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && + (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -584,21 +796,29 @@ export const Challenge = { obj.groups = []; } if (message.winners) { - obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); + obj.winners = message.winners.map((e) => + e ? Challenge_Winner.toJSON(e) : undefined + ); } else { obj.winners = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); + obj.discussions = message.discussions.map((e) => + e ? Challenge_Discussion.toJSON(e) : undefined + ); } else { obj.discussions = []; } message.createdBy !== undefined && (obj.createdBy = message.createdBy); message.updatedBy !== undefined && (obj.updatedBy = message.updatedBy); - message.created !== undefined && (obj.created = Math.round(message.created)); - message.updated !== undefined && (obj.updated = Math.round(message.updated)); + message.created !== undefined && + (obj.created = Math.round(message.created)); + message.updated !== undefined && + (obj.updated = Math.round(message.updated)); message.overview !== undefined && - (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); + (obj.overview = message.overview + ? Challenge_Overview.toJSON(message.overview) + : undefined); return obj; }, @@ -606,31 +826,41 @@ export const Challenge = { return Challenge.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge { + fromPartial, I>>( + object: I + ): Challenge { const message = createBaseChallenge(); message.id = object.id ?? ""; message.legacyId = object.legacyId ?? undefined; message.name = object.name ?? ""; message.typeId = object.typeId ?? ""; message.trackId = object.trackId ?? ""; - message.legacy = (object.legacy !== undefined && object.legacy !== null) - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = (object.billing !== undefined && object.billing !== null) - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = + object.legacy !== undefined && object.legacy !== null + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = + object.billing !== undefined && object.billing !== null + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? ""; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = (object.task !== undefined && object.task !== null) - ? Challenge_Task.fromPartial(object.task) - : undefined; + message.metadata = + object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = + object.task !== undefined && object.task !== null + ? Challenge_Task.fromPartial(object.task) + : undefined; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.phases = + object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = + object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = + object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = + object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -638,15 +868,18 @@ export const Challenge = { message.status = object.status ?? ""; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; - message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.winners = + object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; + message.discussions = + object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; message.createdBy = object.createdBy ?? ""; message.updatedBy = object.updatedBy ?? undefined; message.created = object.created ?? 0; message.updated = object.updated ?? undefined; - message.overview = (object.overview !== undefined && object.overview !== null) - ? Challenge_Overview.fromPartial(object.overview) - : undefined; + message.overview = + object.overview !== undefined && object.overview !== null + ? Challenge_Overview.fromPartial(object.overview) + : undefined; return message; }, }; @@ -668,7 +901,10 @@ function createBaseChallenge_Legacy(): Challenge_Legacy { } export const Challenge_Legacy = { - encode(message: Challenge_Legacy, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Legacy, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.track !== undefined) { writer.uint32(10).string(message.track); } @@ -706,49 +942,95 @@ export const Challenge_Legacy = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Legacy { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Legacy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.track = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.subTrack = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.forumId = reader.int32(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.directProjectId = reader.int32(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.reviewType = reader.string(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.confidentialityType = reader.string(); - break; + continue; case 7: + if (tag != 56) { + break; + } + message.reviewScorecardId = reader.int32(); - break; + continue; case 8: + if (tag != 64) { + break; + } + message.screeningScorecardId = reader.int32(); - break; + continue; case 9: + if (tag != 72) { + break; + } + message.pureV5Task = reader.bool(); - break; + continue; case 10: + if (tag != 80) { + break; + } + message.selfService = reader.bool(); - break; + continue; case 11: + if (tag != 90) { + break; + } + message.selfServiceCopilot = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -758,14 +1040,28 @@ export const Challenge_Legacy = { track: isSet(object.track) ? String(object.track) : undefined, subTrack: isSet(object.subTrack) ? String(object.subTrack) : undefined, forumId: isSet(object.forumId) ? Number(object.forumId) : undefined, - directProjectId: isSet(object.directProjectId) ? Number(object.directProjectId) : 0, + directProjectId: isSet(object.directProjectId) + ? Number(object.directProjectId) + : 0, reviewType: isSet(object.reviewType) ? String(object.reviewType) : "", - confidentialityType: isSet(object.confidentialityType) ? String(object.confidentialityType) : "", - reviewScorecardId: isSet(object.reviewScorecardId) ? Number(object.reviewScorecardId) : undefined, - screeningScorecardId: isSet(object.screeningScorecardId) ? Number(object.screeningScorecardId) : undefined, - pureV5Task: isSet(object.pureV5Task) ? Boolean(object.pureV5Task) : undefined, - selfService: isSet(object.selfService) ? Boolean(object.selfService) : undefined, - selfServiceCopilot: isSet(object.selfServiceCopilot) ? String(object.selfServiceCopilot) : undefined, + confidentialityType: isSet(object.confidentialityType) + ? String(object.confidentialityType) + : "", + reviewScorecardId: isSet(object.reviewScorecardId) + ? Number(object.reviewScorecardId) + : undefined, + screeningScorecardId: isSet(object.screeningScorecardId) + ? Number(object.screeningScorecardId) + : undefined, + pureV5Task: isSet(object.pureV5Task) + ? Boolean(object.pureV5Task) + : undefined, + selfService: isSet(object.selfService) + ? Boolean(object.selfService) + : undefined, + selfServiceCopilot: isSet(object.selfServiceCopilot) + ? String(object.selfServiceCopilot) + : undefined, }; }, @@ -773,23 +1069,34 @@ export const Challenge_Legacy = { const obj: any = {}; message.track !== undefined && (obj.track = message.track); message.subTrack !== undefined && (obj.subTrack = message.subTrack); - message.forumId !== undefined && (obj.forumId = Math.round(message.forumId)); - message.directProjectId !== undefined && (obj.directProjectId = Math.round(message.directProjectId)); + message.forumId !== undefined && + (obj.forumId = Math.round(message.forumId)); + message.directProjectId !== undefined && + (obj.directProjectId = Math.round(message.directProjectId)); message.reviewType !== undefined && (obj.reviewType = message.reviewType); - message.confidentialityType !== undefined && (obj.confidentialityType = message.confidentialityType); - message.reviewScorecardId !== undefined && (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); - message.screeningScorecardId !== undefined && (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); + message.confidentialityType !== undefined && + (obj.confidentialityType = message.confidentialityType); + message.reviewScorecardId !== undefined && + (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); + message.screeningScorecardId !== undefined && + (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); message.pureV5Task !== undefined && (obj.pureV5Task = message.pureV5Task); - message.selfService !== undefined && (obj.selfService = message.selfService); - message.selfServiceCopilot !== undefined && (obj.selfServiceCopilot = message.selfServiceCopilot); + message.selfService !== undefined && + (obj.selfService = message.selfService); + message.selfServiceCopilot !== undefined && + (obj.selfServiceCopilot = message.selfServiceCopilot); return obj; }, - create, I>>(base?: I): Challenge_Legacy { + create, I>>( + base?: I + ): Challenge_Legacy { return Challenge_Legacy.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Legacy { + fromPartial, I>>( + object: I + ): Challenge_Legacy { const message = createBaseChallenge_Legacy(); message.track = object.track ?? undefined; message.subTrack = object.subTrack ?? undefined; @@ -811,7 +1118,10 @@ function createBaseChallenge_Billing(): Challenge_Billing { } export const Challenge_Billing = { - encode(message: Challenge_Billing, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Billing, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.billingAccountId !== 0) { writer.uint32(8).int32(message.billingAccountId); } @@ -822,45 +1132,62 @@ export const Challenge_Billing = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Billing { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Billing(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.billingAccountId = reader.int32(); - break; + continue; case 2: + if (tag != 21) { + break; + } + message.markup = reader.float(); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): Challenge_Billing { return { - billingAccountId: isSet(object.billingAccountId) ? Number(object.billingAccountId) : 0, + billingAccountId: isSet(object.billingAccountId) + ? Number(object.billingAccountId) + : 0, markup: isSet(object.markup) ? Number(object.markup) : 0, }; }, toJSON(message: Challenge_Billing): unknown { const obj: any = {}; - message.billingAccountId !== undefined && (obj.billingAccountId = Math.round(message.billingAccountId)); + message.billingAccountId !== undefined && + (obj.billingAccountId = Math.round(message.billingAccountId)); message.markup !== undefined && (obj.markup = message.markup); return obj; }, - create, I>>(base?: I): Challenge_Billing { + create, I>>( + base?: I + ): Challenge_Billing { return Challenge_Billing.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Billing { + fromPartial, I>>( + object: I + ): Challenge_Billing { const message = createBaseChallenge_Billing(); message.billingAccountId = object.billingAccountId ?? 0; message.markup = object.markup ?? 0; @@ -873,7 +1200,10 @@ function createBaseChallenge_Event(): Challenge_Event { } export const Challenge_Event = { - encode(message: Challenge_Event, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Event, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.id !== undefined) { writer.uint32(8).int32(message.id); } @@ -887,25 +1217,39 @@ export const Challenge_Event = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Event { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Event(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.id = reader.int32(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.key = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -926,11 +1270,15 @@ export const Challenge_Event = { return obj; }, - create, I>>(base?: I): Challenge_Event { + create, I>>( + base?: I + ): Challenge_Event { return Challenge_Event.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Event { + fromPartial, I>>( + object: I + ): Challenge_Event { const message = createBaseChallenge_Event(); message.id = object.id ?? undefined; message.name = object.name ?? ""; @@ -944,7 +1292,10 @@ function createBaseChallenge_Term(): Challenge_Term { } export const Challenge_Term = { - encode(message: Challenge_Term, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Term, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -955,28 +1306,41 @@ export const Challenge_Term = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Term { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Term(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.roleId = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): Challenge_Term { - return { id: isSet(object.id) ? String(object.id) : "", roleId: isSet(object.roleId) ? String(object.roleId) : "" }; + return { + id: isSet(object.id) ? String(object.id) : "", + roleId: isSet(object.roleId) ? String(object.roleId) : "", + }; }, toJSON(message: Challenge_Term): unknown { @@ -986,11 +1350,15 @@ export const Challenge_Term = { return obj; }, - create, I>>(base?: I): Challenge_Term { + create, I>>( + base?: I + ): Challenge_Term { return Challenge_Term.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Term { + fromPartial, I>>( + object: I + ): Challenge_Term { const message = createBaseChallenge_Term(); message.id = object.id ?? ""; message.roleId = object.roleId ?? ""; @@ -1003,7 +1371,10 @@ function createBaseChallenge_Metadata(): Challenge_Metadata { } export const Challenge_Metadata = { - encode(message: Challenge_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Metadata, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1014,22 +1385,32 @@ export const Challenge_Metadata = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Metadata { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Metadata(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.value = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1048,11 +1429,15 @@ export const Challenge_Metadata = { return obj; }, - create, I>>(base?: I): Challenge_Metadata { + create, I>>( + base?: I + ): Challenge_Metadata { return Challenge_Metadata.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Metadata { + fromPartial, I>>( + object: I + ): Challenge_Metadata { const message = createBaseChallenge_Metadata(); message.name = object.name ?? ""; message.value = object.value ?? ""; @@ -1065,7 +1450,10 @@ function createBaseChallenge_Discussion(): Challenge_Discussion { } export const Challenge_Discussion = { - encode(message: Challenge_Discussion, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Discussion, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.id !== undefined) { writer.uint32(10).string(message.id); } @@ -1084,32 +1472,57 @@ export const Challenge_Discussion = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Discussion { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): Challenge_Discussion { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Discussion(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.type = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.provider = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.url = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1134,11 +1547,15 @@ export const Challenge_Discussion = { return obj; }, - create, I>>(base?: I): Challenge_Discussion { + create, I>>( + base?: I + ): Challenge_Discussion { return Challenge_Discussion.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Discussion { + fromPartial, I>>( + object: I + ): Challenge_Discussion { const message = createBaseChallenge_Discussion(); message.id = object.id ?? undefined; message.name = object.name ?? ""; @@ -1160,25 +1577,43 @@ function createBaseChallenge_Phase(): Challenge_Phase { phaseId: "", id: "", isOpen: false, + constraints: [], + description: undefined, + predecessor: undefined, }; } export const Challenge_Phase = { - encode(message: Challenge_Phase, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Phase, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.duration !== 0) { writer.uint32(8).int32(message.duration); } if (message.scheduledStartDate !== undefined) { - Timestamp.encode(toTimestamp(message.scheduledStartDate), writer.uint32(18).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.scheduledStartDate), + writer.uint32(18).fork() + ).ldelim(); } if (message.scheduledEndDate !== undefined) { - Timestamp.encode(toTimestamp(message.scheduledEndDate), writer.uint32(26).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.scheduledEndDate), + writer.uint32(26).fork() + ).ldelim(); } if (message.actualStartDate !== undefined) { - Timestamp.encode(toTimestamp(message.actualStartDate), writer.uint32(34).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.actualStartDate), + writer.uint32(34).fork() + ).ldelim(); } if (message.actualEndDate !== undefined) { - Timestamp.encode(toTimestamp(message.actualEndDate), writer.uint32(42).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.actualEndDate), + writer.uint32(42).fork() + ).ldelim(); } if (message.name !== "") { writer.uint32(50).string(message.name); @@ -1192,47 +1627,125 @@ export const Challenge_Phase = { if (message.isOpen === true) { writer.uint32(72).bool(message.isOpen); } + for (const v of message.constraints) { + Challenge_Phase_Constraint.encode(v!, writer.uint32(82).fork()).ldelim(); + } + if (message.description !== undefined) { + writer.uint32(90).string(message.description); + } + if (message.predecessor !== undefined) { + writer.uint32(98).string(message.predecessor); + } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Phase { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Phase(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.duration = reader.int32(); - break; + continue; case 2: - message.scheduledStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 18) { + break; + } + + message.scheduledStartDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 3: - message.scheduledEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 26) { + break; + } + + message.scheduledEndDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 4: - message.actualStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 34) { + break; + } + + message.actualStartDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 5: - message.actualEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 42) { + break; + } + + message.actualEndDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 6: + if (tag != 50) { + break; + } + message.name = reader.string(); - break; + continue; case 7: + if (tag != 58) { + break; + } + message.phaseId = reader.string(); - break; + continue; case 8: + if (tag != 66) { + break; + } + message.id = reader.string(); - break; + continue; case 9: + if (tag != 72) { + break; + } + message.isOpen = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + case 10: + if (tag != 82) { + break; + } + + message.constraints.push( + Challenge_Phase_Constraint.decode(reader, reader.uint32()) + ); + continue; + case 11: + if (tag != 90) { + break; + } + + message.description = reader.string(); + continue; + case 12: + if (tag != 98) { + break; + } + + message.predecessor = reader.string(); + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1240,36 +1753,75 @@ export const Challenge_Phase = { fromJSON(object: any): Challenge_Phase { return { duration: isSet(object.duration) ? Number(object.duration) : 0, - scheduledStartDate: isSet(object.scheduledStartDate) ? String(object.scheduledStartDate) : undefined, - scheduledEndDate: isSet(object.scheduledEndDate) ? String(object.scheduledEndDate) : undefined, - actualStartDate: isSet(object.actualStartDate) ? String(object.actualStartDate) : undefined, - actualEndDate: isSet(object.actualEndDate) ? String(object.actualEndDate) : undefined, + scheduledStartDate: isSet(object.scheduledStartDate) + ? String(object.scheduledStartDate) + : undefined, + scheduledEndDate: isSet(object.scheduledEndDate) + ? String(object.scheduledEndDate) + : undefined, + actualStartDate: isSet(object.actualStartDate) + ? String(object.actualStartDate) + : undefined, + actualEndDate: isSet(object.actualEndDate) + ? String(object.actualEndDate) + : undefined, name: isSet(object.name) ? String(object.name) : "", phaseId: isSet(object.phaseId) ? String(object.phaseId) : "", id: isSet(object.id) ? String(object.id) : "", isOpen: isSet(object.isOpen) ? Boolean(object.isOpen) : false, + constraints: Array.isArray(object?.constraints) + ? object.constraints.map((e: any) => + Challenge_Phase_Constraint.fromJSON(e) + ) + : [], + description: isSet(object.description) + ? String(object.description) + : undefined, + predecessor: isSet(object.predecessor) + ? String(object.predecessor) + : undefined, }; }, toJSON(message: Challenge_Phase): unknown { const obj: any = {}; - message.duration !== undefined && (obj.duration = Math.round(message.duration)); - message.scheduledStartDate !== undefined && (obj.scheduledStartDate = message.scheduledStartDate); - message.scheduledEndDate !== undefined && (obj.scheduledEndDate = message.scheduledEndDate); - message.actualStartDate !== undefined && (obj.actualStartDate = message.actualStartDate); - message.actualEndDate !== undefined && (obj.actualEndDate = message.actualEndDate); + message.duration !== undefined && + (obj.duration = Math.round(message.duration)); + message.scheduledStartDate !== undefined && + (obj.scheduledStartDate = message.scheduledStartDate); + message.scheduledEndDate !== undefined && + (obj.scheduledEndDate = message.scheduledEndDate); + message.actualStartDate !== undefined && + (obj.actualStartDate = message.actualStartDate); + message.actualEndDate !== undefined && + (obj.actualEndDate = message.actualEndDate); message.name !== undefined && (obj.name = message.name); message.phaseId !== undefined && (obj.phaseId = message.phaseId); message.id !== undefined && (obj.id = message.id); message.isOpen !== undefined && (obj.isOpen = message.isOpen); + if (message.constraints) { + obj.constraints = message.constraints.map((e) => + e ? Challenge_Phase_Constraint.toJSON(e) : undefined + ); + } else { + obj.constraints = []; + } + message.description !== undefined && + (obj.description = message.description); + message.predecessor !== undefined && + (obj.predecessor = message.predecessor); return obj; }, - create, I>>(base?: I): Challenge_Phase { + create, I>>( + base?: I + ): Challenge_Phase { return Challenge_Phase.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Phase { + fromPartial, I>>( + object: I + ): Challenge_Phase { const message = createBaseChallenge_Phase(); message.duration = object.duration ?? 0; message.scheduledStartDate = object.scheduledStartDate ?? undefined; @@ -1280,6 +1832,94 @@ export const Challenge_Phase = { message.phaseId = object.phaseId ?? ""; message.id = object.id ?? ""; message.isOpen = object.isOpen ?? false; + message.constraints = + object.constraints?.map((e) => + Challenge_Phase_Constraint.fromPartial(e) + ) || []; + message.description = object.description ?? undefined; + message.predecessor = object.predecessor ?? undefined; + return message; + }, +}; + +function createBaseChallenge_Phase_Constraint(): Challenge_Phase_Constraint { + return { name: "", value: 0 }; +} + +export const Challenge_Phase_Constraint = { + encode( + message: Challenge_Phase_Constraint, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { + if (message.name !== "") { + writer.uint32(10).string(message.name); + } + if (message.value !== 0) { + writer.uint32(16).int32(message.value); + } + return writer; + }, + + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): Challenge_Phase_Constraint { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseChallenge_Phase_Constraint(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.name = reader.string(); + continue; + case 2: + if (tag != 16) { + break; + } + + message.value = reader.int32(); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): Challenge_Phase_Constraint { + return { + name: isSet(object.name) ? String(object.name) : "", + value: isSet(object.value) ? Number(object.value) : 0, + }; + }, + + toJSON(message: Challenge_Phase_Constraint): unknown { + const obj: any = {}; + message.name !== undefined && (obj.name = message.name); + message.value !== undefined && (obj.value = Math.round(message.value)); + return obj; + }, + + create, I>>( + base?: I + ): Challenge_Phase_Constraint { + return Challenge_Phase_Constraint.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I + ): Challenge_Phase_Constraint { + const message = createBaseChallenge_Phase_Constraint(); + message.name = object.name ?? ""; + message.value = object.value ?? 0; return message; }, }; @@ -1289,7 +1929,10 @@ function createBaseChallenge_Winner(): Challenge_Winner { } export const Challenge_Winner = { - encode(message: Challenge_Winner, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Winner, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.handle !== "") { writer.uint32(10).string(message.handle); } @@ -1303,25 +1946,39 @@ export const Challenge_Winner = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Winner { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Winner(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.handle = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.placement = reader.int32(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.userId = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1337,16 +1994,21 @@ export const Challenge_Winner = { toJSON(message: Challenge_Winner): unknown { const obj: any = {}; message.handle !== undefined && (obj.handle = message.handle); - message.placement !== undefined && (obj.placement = Math.round(message.placement)); + message.placement !== undefined && + (obj.placement = Math.round(message.placement)); message.userId !== undefined && (obj.userId = Math.round(message.userId)); return obj; }, - create, I>>(base?: I): Challenge_Winner { + create, I>>( + base?: I + ): Challenge_Winner { return Challenge_Winner.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Winner { + fromPartial, I>>( + object: I + ): Challenge_Winner { const message = createBaseChallenge_Winner(); message.handle = object.handle ?? ""; message.placement = object.placement ?? 0; @@ -1360,7 +2022,10 @@ function createBaseChallenge_Task(): Challenge_Task { } export const Challenge_Task = { - encode(message: Challenge_Task, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Task, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.isTask === true) { writer.uint32(8).bool(message.isTask); } @@ -1374,25 +2039,39 @@ export const Challenge_Task = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Task { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Task(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.isTask = reader.bool(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.isAssigned = reader.bool(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.memberId = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1409,15 +2088,20 @@ export const Challenge_Task = { const obj: any = {}; message.isTask !== undefined && (obj.isTask = message.isTask); message.isAssigned !== undefined && (obj.isAssigned = message.isAssigned); - message.memberId !== undefined && (obj.memberId = Math.round(message.memberId)); + message.memberId !== undefined && + (obj.memberId = Math.round(message.memberId)); return obj; }, - create, I>>(base?: I): Challenge_Task { + create, I>>( + base?: I + ): Challenge_Task { return Challenge_Task.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Task { + fromPartial, I>>( + object: I + ): Challenge_Task { const message = createBaseChallenge_Task(); message.isTask = object.isTask ?? false; message.isAssigned = object.isAssigned ?? false; @@ -1431,7 +2115,10 @@ function createBaseChallenge_PrizeSet(): Challenge_PrizeSet { } export const Challenge_PrizeSet = { - encode(message: Challenge_PrizeSet, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_PrizeSet, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.type !== "") { writer.uint32(10).string(message.type); } @@ -1445,25 +2132,41 @@ export const Challenge_PrizeSet = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_PrizeSet { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_PrizeSet(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.type = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.description = reader.string(); - break; + continue; case 3: - message.prizes.push(Challenge_PrizeSet_Prize.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 26) { + break; + } + + message.prizes.push( + Challenge_PrizeSet_Prize.decode(reader, reader.uint32()) + ); + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -1471,32 +2174,44 @@ export const Challenge_PrizeSet = { fromJSON(object: any): Challenge_PrizeSet { return { type: isSet(object.type) ? String(object.type) : "", - description: isSet(object.description) ? String(object.description) : undefined, - prizes: Array.isArray(object?.prizes) ? object.prizes.map((e: any) => Challenge_PrizeSet_Prize.fromJSON(e)) : [], + description: isSet(object.description) + ? String(object.description) + : undefined, + prizes: Array.isArray(object?.prizes) + ? object.prizes.map((e: any) => Challenge_PrizeSet_Prize.fromJSON(e)) + : [], }; }, toJSON(message: Challenge_PrizeSet): unknown { const obj: any = {}; message.type !== undefined && (obj.type = message.type); - message.description !== undefined && (obj.description = message.description); + message.description !== undefined && + (obj.description = message.description); if (message.prizes) { - obj.prizes = message.prizes.map((e) => e ? Challenge_PrizeSet_Prize.toJSON(e) : undefined); + obj.prizes = message.prizes.map((e) => + e ? Challenge_PrizeSet_Prize.toJSON(e) : undefined + ); } else { obj.prizes = []; } return obj; }, - create, I>>(base?: I): Challenge_PrizeSet { + create, I>>( + base?: I + ): Challenge_PrizeSet { return Challenge_PrizeSet.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_PrizeSet { + fromPartial, I>>( + object: I + ): Challenge_PrizeSet { const message = createBaseChallenge_PrizeSet(); message.type = object.type ?? ""; message.description = object.description ?? undefined; - message.prizes = object.prizes?.map((e) => Challenge_PrizeSet_Prize.fromPartial(e)) || []; + message.prizes = + object.prizes?.map((e) => Challenge_PrizeSet_Prize.fromPartial(e)) || []; return message; }, }; @@ -1506,7 +2221,10 @@ function createBaseChallenge_PrizeSet_Prize(): Challenge_PrizeSet_Prize { } export const Challenge_PrizeSet_Prize = { - encode(message: Challenge_PrizeSet_Prize, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_PrizeSet_Prize, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.value !== 0) { writer.uint32(13).float(message.value); } @@ -1516,23 +2234,36 @@ export const Challenge_PrizeSet_Prize = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_PrizeSet_Prize { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): Challenge_PrizeSet_Prize { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_PrizeSet_Prize(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 13) { + break; + } + message.value = reader.float(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.type = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1551,11 +2282,15 @@ export const Challenge_PrizeSet_Prize = { return obj; }, - create, I>>(base?: I): Challenge_PrizeSet_Prize { + create, I>>( + base?: I + ): Challenge_PrizeSet_Prize { return Challenge_PrizeSet_Prize.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_PrizeSet_Prize { + fromPartial, I>>( + object: I + ): Challenge_PrizeSet_Prize { const message = createBaseChallenge_PrizeSet_Prize(); message.value = object.value ?? 0; message.type = object.type ?? ""; @@ -1568,7 +2303,10 @@ function createBaseChallenge_Overview(): Challenge_Overview { } export const Challenge_Overview = { - encode(message: Challenge_Overview, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: Challenge_Overview, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.totalPrizes !== 0) { writer.uint32(8).int32(message.totalPrizes); } @@ -1576,38 +2314,51 @@ export const Challenge_Overview = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Overview { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Overview(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.totalPrizes = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): Challenge_Overview { - return { totalPrizes: isSet(object.totalPrizes) ? Number(object.totalPrizes) : 0 }; + return { + totalPrizes: isSet(object.totalPrizes) ? Number(object.totalPrizes) : 0, + }; }, toJSON(message: Challenge_Overview): unknown { const obj: any = {}; - message.totalPrizes !== undefined && (obj.totalPrizes = Math.round(message.totalPrizes)); + message.totalPrizes !== undefined && + (obj.totalPrizes = Math.round(message.totalPrizes)); return obj; }, - create, I>>(base?: I): Challenge_Overview { + create, I>>( + base?: I + ): Challenge_Overview { return Challenge_Overview.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): Challenge_Overview { + fromPartial, I>>( + object: I + ): Challenge_Overview { const message = createBaseChallenge_Overview(); message.totalPrizes = object.totalPrizes ?? 0; return message; @@ -1619,7 +2370,10 @@ function createBaseChallengeList(): ChallengeList { } export const ChallengeList = { - encode(message: ChallengeList, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: ChallengeList, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.items) { Challenge.encode(v!, writer.uint32(10).fork()).ldelim(); } @@ -1627,42 +2381,58 @@ export const ChallengeList = { }, decode(input: _m0.Reader | Uint8Array, length?: number): ChallengeList { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallengeList(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(Challenge.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): ChallengeList { - return { items: Array.isArray(object?.items) ? object.items.map((e: any) => Challenge.fromJSON(e)) : [] }; + return { + items: Array.isArray(object?.items) + ? object.items.map((e: any) => Challenge.fromJSON(e)) + : [], + }; }, toJSON(message: ChallengeList): unknown { const obj: any = {}; if (message.items) { - obj.items = message.items.map((e) => e ? Challenge.toJSON(e) : undefined); + obj.items = message.items.map((e) => + e ? Challenge.toJSON(e) : undefined + ); } else { obj.items = []; } return obj; }, - create, I>>(base?: I): ChallengeList { + create, I>>( + base?: I + ): ChallengeList { return ChallengeList.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): ChallengeList { + fromPartial, I>>( + object: I + ): ChallengeList { const message = createBaseChallengeList(); message.items = object.items?.map((e) => Challenge.fromPartial(e)) || []; return message; @@ -1698,7 +2468,10 @@ function createBaseCreateChallengeInput(): CreateChallengeInput { } export const CreateChallengeInput = { - encode(message: CreateChallengeInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: CreateChallengeInput, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1712,10 +2485,16 @@ export const CreateChallengeInput = { writer.uint32(34).string(message.timelineTemplateId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode(message.legacy, writer.uint32(42).fork()).ldelim(); + Challenge_Legacy.encode( + message.legacy, + writer.uint32(42).fork() + ).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode(message.billing, writer.uint32(50).fork()).ldelim(); + Challenge_Billing.encode( + message.billing, + writer.uint32(50).fork() + ).ldelim(); } if (message.description !== undefined) { writer.uint32(58).string(message.description); @@ -1771,86 +2550,189 @@ export const CreateChallengeInput = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): CreateChallengeInput { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): CreateChallengeInput { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCreateChallengeInput(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.typeId = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.trackId = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.legacy = Challenge_Legacy.decode(reader, reader.uint32()); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.billing = Challenge_Billing.decode(reader, reader.uint32()); - break; + continue; case 7: + if (tag != 58) { + break; + } + message.description = reader.string(); - break; + continue; case 8: + if (tag != 66) { + break; + } + message.privateDescription = reader.string(); - break; + continue; case 9: + if (tag != 74) { + break; + } + message.descriptionFormat = reader.string(); - break; + continue; case 10: - message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); - break; + if (tag != 82) { + break; + } + + message.metadata.push( + Challenge_Metadata.decode(reader, reader.uint32()) + ); + continue; case 11: + if (tag != 90) { + break; + } + message.task = Challenge_Task.decode(reader, reader.uint32()); - break; + continue; case 12: + if (tag != 98) { + break; + } + message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); - break; + continue; case 13: + if (tag != 106) { + break; + } + message.events.push(Challenge_Event.decode(reader, reader.uint32())); - break; + continue; case 14: + if (tag != 114) { + break; + } + message.terms.push(Challenge_Term.decode(reader, reader.uint32())); - break; + continue; case 15: - message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); - break; + if (tag != 122) { + break; + } + + message.prizeSets.push( + Challenge_PrizeSet.decode(reader, reader.uint32()) + ); + continue; case 16: + if (tag != 130) { + break; + } + message.tags.push(reader.string()); - break; + continue; case 17: + if (tag != 136) { + break; + } + message.projectId = reader.int32(); - break; + continue; case 18: + if (tag != 144) { + break; + } + message.startDate = longToNumber(reader.int64() as Long); - break; + continue; case 19: + if (tag != 152) { + break; + } + message.endDate = longToNumber(reader.int64() as Long); - break; + continue; case 20: + if (tag != 162) { + break; + } + message.status = reader.string(); - break; + continue; case 21: + if (tag != 170) { + break; + } + message.attachments.push(reader.string()); - break; + continue; case 22: + if (tag != 178) { + break; + } + message.groups.push(reader.string()); - break; + continue; case 23: - message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 186) { + break; + } + + message.discussions.push( + Challenge_Discussion.decode(reader, reader.uint32()) + ); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -1860,27 +2742,55 @@ export const CreateChallengeInput = { name: isSet(object.name) ? String(object.name) : "", typeId: isSet(object.typeId) ? String(object.typeId) : "", trackId: isSet(object.trackId) ? String(object.trackId) : "", - timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, - legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, - billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, - description: isSet(object.description) ? String(object.description) : undefined, - privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, - descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, - metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], - task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, - phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], - events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], - terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], + timelineTemplateId: isSet(object.timelineTemplateId) + ? String(object.timelineTemplateId) + : undefined, + legacy: isSet(object.legacy) + ? Challenge_Legacy.fromJSON(object.legacy) + : undefined, + billing: isSet(object.billing) + ? Challenge_Billing.fromJSON(object.billing) + : undefined, + description: isSet(object.description) + ? String(object.description) + : undefined, + privateDescription: isSet(object.privateDescription) + ? String(object.privateDescription) + : undefined, + descriptionFormat: isSet(object.descriptionFormat) + ? String(object.descriptionFormat) + : undefined, + metadata: Array.isArray(object?.metadata) + ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) + : [], + task: isSet(object.task) + ? Challenge_Task.fromJSON(object.task) + : undefined, + phases: Array.isArray(object?.phases) + ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) + : [], + events: Array.isArray(object?.events) + ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) + : [], + terms: Array.isArray(object?.terms) + ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) + : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], + tags: Array.isArray(object?.tags) + ? object.tags.map((e: any) => String(e)) + : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : "", - attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], - groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], + attachments: Array.isArray(object?.attachments) + ? object.attachments.map((e: any) => String(e)) + : [], + groups: Array.isArray(object?.groups) + ? object.groups.map((e: any) => String(e)) + : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -1892,36 +2802,58 @@ export const CreateChallengeInput = { message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); - message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); + message.timelineTemplateId !== undefined && + (obj.timelineTemplateId = message.timelineTemplateId); + message.legacy !== undefined && + (obj.legacy = message.legacy + ? Challenge_Legacy.toJSON(message.legacy) + : undefined); message.billing !== undefined && - (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); - message.description !== undefined && (obj.description = message.description); - message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing + ? Challenge_Billing.toJSON(message.billing) + : undefined); + message.description !== undefined && + (obj.description = message.description); + message.privateDescription !== undefined && + (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && + (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); + obj.metadata = message.metadata.map((e) => + e ? Challenge_Metadata.toJSON(e) : undefined + ); } else { obj.metadata = []; } - message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); + message.task !== undefined && + (obj.task = message.task + ? Challenge_Task.toJSON(message.task) + : undefined); if (message.phases) { - obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); + obj.phases = message.phases.map((e) => + e ? Challenge_Phase.toJSON(e) : undefined + ); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); + obj.events = message.events.map((e) => + e ? Challenge_Event.toJSON(e) : undefined + ); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); + obj.terms = message.terms.map((e) => + e ? Challenge_Term.toJSON(e) : undefined + ); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); + obj.prizeSets = message.prizeSets.map((e) => + e ? Challenge_PrizeSet.toJSON(e) : undefined + ); } else { obj.prizeSets = []; } @@ -1930,9 +2862,12 @@ export const CreateChallengeInput = { } else { obj.tags = []; } - message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && + (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && + (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && + (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -1945,40 +2880,54 @@ export const CreateChallengeInput = { obj.groups = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); + obj.discussions = message.discussions.map((e) => + e ? Challenge_Discussion.toJSON(e) : undefined + ); } else { obj.discussions = []; } return obj; }, - create, I>>(base?: I): CreateChallengeInput { + create, I>>( + base?: I + ): CreateChallengeInput { return CreateChallengeInput.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): CreateChallengeInput { + fromPartial, I>>( + object: I + ): CreateChallengeInput { const message = createBaseCreateChallengeInput(); message.name = object.name ?? ""; message.typeId = object.typeId ?? ""; message.trackId = object.trackId ?? ""; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.legacy = (object.legacy !== undefined && object.legacy !== null) - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = (object.billing !== undefined && object.billing !== null) - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = + object.legacy !== undefined && object.legacy !== null + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = + object.billing !== undefined && object.billing !== null + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? undefined; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = (object.task !== undefined && object.task !== null) - ? Challenge_Task.fromPartial(object.task) - : undefined; - message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.metadata = + object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = + object.task !== undefined && object.task !== null + ? Challenge_Task.fromPartial(object.task) + : undefined; + message.phases = + object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = + object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = + object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = + object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -1986,7 +2935,8 @@ export const CreateChallengeInput = { message.status = object.status ?? ""; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.discussions = + object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; return message; }, }; @@ -1996,33 +2946,57 @@ function createBaseUpdateChallengeInput(): UpdateChallengeInput { } export const UpdateChallengeInput = { - encode(message: UpdateChallengeInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInput, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.filterCriteria) { ScanCriteria.encode(v!, writer.uint32(10).fork()).ldelim(); } if (message.updateInput !== undefined) { - UpdateChallengeInput_UpdateInput.encode(message.updateInput, writer.uint32(18).fork()).ldelim(); + UpdateChallengeInput_UpdateInput.encode( + message.updateInput, + writer.uint32(18).fork() + ).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInput { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInput(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + if (tag != 10) { + break; + } + + message.filterCriteria.push( + ScanCriteria.decode(reader, reader.uint32()) + ); + continue; case 2: - message.updateInput = UpdateChallengeInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 18) { + break; + } + + message.updateInput = UpdateChallengeInput_UpdateInput.decode( + reader, + reader.uint32() + ); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -2041,7 +3015,9 @@ export const UpdateChallengeInput = { toJSON(message: UpdateChallengeInput): unknown { const obj: any = {}; if (message.filterCriteria) { - obj.filterCriteria = message.filterCriteria.map((e) => e ? ScanCriteria.toJSON(e) : undefined); + obj.filterCriteria = message.filterCriteria.map((e) => + e ? ScanCriteria.toJSON(e) : undefined + ); } else { obj.filterCriteria = []; } @@ -2052,16 +3028,22 @@ export const UpdateChallengeInput = { return obj; }, - create, I>>(base?: I): UpdateChallengeInput { + create, I>>( + base?: I + ): UpdateChallengeInput { return UpdateChallengeInput.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): UpdateChallengeInput { + fromPartial, I>>( + object: I + ): UpdateChallengeInput { const message = createBaseUpdateChallengeInput(); - message.filterCriteria = object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; - message.updateInput = (object.updateInput !== undefined && object.updateInput !== null) - ? UpdateChallengeInput_UpdateInput.fromPartial(object.updateInput) - : undefined; + message.filterCriteria = + object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; + message.updateInput = + object.updateInput !== undefined && object.updateInput !== null + ? UpdateChallengeInput_UpdateInput.fromPartial(object.updateInput) + : undefined; return message; }, }; @@ -2103,7 +3085,10 @@ function createBaseUpdateChallengeInput_UpdateInput(): UpdateChallengeInput_Upda } export const UpdateChallengeInput_UpdateInput = { - encode(message: UpdateChallengeInput_UpdateInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInput_UpdateInput, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -2120,10 +3105,16 @@ export const UpdateChallengeInput_UpdateInput = { writer.uint32(42).string(message.trackId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode(message.legacy, writer.uint32(50).fork()).ldelim(); + Challenge_Legacy.encode( + message.legacy, + writer.uint32(50).fork() + ).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode(message.billing, writer.uint32(58).fork()).ldelim(); + Challenge_Billing.encode( + message.billing, + writer.uint32(58).fork() + ).ldelim(); } if (message.description !== undefined) { writer.uint32(66).string(message.description); @@ -2195,115 +3186,255 @@ export const UpdateChallengeInput_UpdateInput = { writer.uint32(240).int64(message.updated); } if (message.overview !== undefined) { - Challenge_Overview.encode(message.overview, writer.uint32(250).fork()).ldelim(); + Challenge_Overview.encode( + message.overview, + writer.uint32(250).fork() + ).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInput_UpdateInput { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInput_UpdateInput(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.legacyId = reader.int32(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.name = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.typeId = reader.string(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.trackId = reader.string(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.legacy = Challenge_Legacy.decode(reader, reader.uint32()); - break; + continue; case 7: + if (tag != 58) { + break; + } + message.billing = Challenge_Billing.decode(reader, reader.uint32()); - break; + continue; case 8: + if (tag != 66) { + break; + } + message.description = reader.string(); - break; + continue; case 9: + if (tag != 74) { + break; + } + message.privateDescription = reader.string(); - break; + continue; case 10: + if (tag != 82) { + break; + } + message.descriptionFormat = reader.string(); - break; + continue; case 11: - message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); - break; + if (tag != 90) { + break; + } + + message.metadata.push( + Challenge_Metadata.decode(reader, reader.uint32()) + ); + continue; case 12: + if (tag != 98) { + break; + } + message.task = Challenge_Task.decode(reader, reader.uint32()); - break; + continue; case 13: + if (tag != 106) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 14: + if (tag != 114) { + break; + } + message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); - break; + continue; case 15: + if (tag != 122) { + break; + } + message.events.push(Challenge_Event.decode(reader, reader.uint32())); - break; + continue; case 16: + if (tag != 130) { + break; + } + message.terms.push(Challenge_Term.decode(reader, reader.uint32())); - break; + continue; case 17: - message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); - break; + if (tag != 138) { + break; + } + + message.prizeSets.push( + Challenge_PrizeSet.decode(reader, reader.uint32()) + ); + continue; case 18: + if (tag != 146) { + break; + } + message.tags.push(reader.string()); - break; + continue; case 19: + if (tag != 152) { + break; + } + message.projectId = reader.int32(); - break; + continue; case 20: + if (tag != 160) { + break; + } + message.startDate = longToNumber(reader.int64() as Long); - break; + continue; case 21: + if (tag != 168) { + break; + } + message.endDate = longToNumber(reader.int64() as Long); - break; + continue; case 22: + if (tag != 178) { + break; + } + message.status = reader.string(); - break; + continue; case 23: + if (tag != 186) { + break; + } + message.attachments.push(reader.string()); - break; + continue; case 24: + if (tag != 194) { + break; + } + message.groups.push(reader.string()); - break; + continue; case 25: - message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); - break; + if (tag != 202) { + break; + } + + message.winners.push( + Challenge_Winner.decode(reader, reader.uint32()) + ); + continue; case 26: - message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); - break; + if (tag != 210) { + break; + } + + message.discussions.push( + Challenge_Discussion.decode(reader, reader.uint32()) + ); + continue; case 27: + if (tag != 218) { + break; + } + message.createdBy = reader.string(); - break; + continue; case 28: + if (tag != 226) { + break; + } + message.updatedBy = reader.string(); - break; + continue; case 29: + if (tag != 232) { + break; + } + message.created = longToNumber(reader.int64() as Long); - break; + continue; case 30: + if (tag != 240) { + break; + } + message.updated = longToNumber(reader.int64() as Long); - break; + continue; case 31: + if (tag != 250) { + break; + } + message.overview = Challenge_Overview.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -2315,28 +3446,58 @@ export const UpdateChallengeInput_UpdateInput = { name: isSet(object.name) ? String(object.name) : undefined, typeId: isSet(object.typeId) ? String(object.typeId) : undefined, trackId: isSet(object.trackId) ? String(object.trackId) : undefined, - legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, - billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, - description: isSet(object.description) ? String(object.description) : undefined, - privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, - descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, - metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], - task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, - timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, - phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], - events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], - terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], + legacy: isSet(object.legacy) + ? Challenge_Legacy.fromJSON(object.legacy) + : undefined, + billing: isSet(object.billing) + ? Challenge_Billing.fromJSON(object.billing) + : undefined, + description: isSet(object.description) + ? String(object.description) + : undefined, + privateDescription: isSet(object.privateDescription) + ? String(object.privateDescription) + : undefined, + descriptionFormat: isSet(object.descriptionFormat) + ? String(object.descriptionFormat) + : undefined, + metadata: Array.isArray(object?.metadata) + ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) + : [], + task: isSet(object.task) + ? Challenge_Task.fromJSON(object.task) + : undefined, + timelineTemplateId: isSet(object.timelineTemplateId) + ? String(object.timelineTemplateId) + : undefined, + phases: Array.isArray(object?.phases) + ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) + : [], + events: Array.isArray(object?.events) + ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) + : [], + terms: Array.isArray(object?.terms) + ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) + : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], + tags: Array.isArray(object?.tags) + ? object.tags.map((e: any) => String(e)) + : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : undefined, - attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], - groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], - winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], + attachments: Array.isArray(object?.attachments) + ? object.attachments.map((e: any) => String(e)) + : [], + groups: Array.isArray(object?.groups) + ? object.groups.map((e: any) => String(e)) + : [], + winners: Array.isArray(object?.winners) + ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) + : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -2344,47 +3505,72 @@ export const UpdateChallengeInput_UpdateInput = { updatedBy: isSet(object.updatedBy) ? String(object.updatedBy) : undefined, created: isSet(object.created) ? Number(object.created) : undefined, updated: isSet(object.updated) ? Number(object.updated) : undefined, - overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, + overview: isSet(object.overview) + ? Challenge_Overview.fromJSON(object.overview) + : undefined, }; }, toJSON(message: UpdateChallengeInput_UpdateInput): unknown { const obj: any = {}; message.id !== undefined && (obj.id = message.id); - message.legacyId !== undefined && (obj.legacyId = Math.round(message.legacyId)); + message.legacyId !== undefined && + (obj.legacyId = Math.round(message.legacyId)); message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); + message.legacy !== undefined && + (obj.legacy = message.legacy + ? Challenge_Legacy.toJSON(message.legacy) + : undefined); message.billing !== undefined && - (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); - message.description !== undefined && (obj.description = message.description); - message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing + ? Challenge_Billing.toJSON(message.billing) + : undefined); + message.description !== undefined && + (obj.description = message.description); + message.privateDescription !== undefined && + (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && + (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); + obj.metadata = message.metadata.map((e) => + e ? Challenge_Metadata.toJSON(e) : undefined + ); } else { obj.metadata = []; } - message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); - message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); + message.task !== undefined && + (obj.task = message.task + ? Challenge_Task.toJSON(message.task) + : undefined); + message.timelineTemplateId !== undefined && + (obj.timelineTemplateId = message.timelineTemplateId); if (message.phases) { - obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); + obj.phases = message.phases.map((e) => + e ? Challenge_Phase.toJSON(e) : undefined + ); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); + obj.events = message.events.map((e) => + e ? Challenge_Event.toJSON(e) : undefined + ); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); + obj.terms = message.terms.map((e) => + e ? Challenge_Term.toJSON(e) : undefined + ); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); + obj.prizeSets = message.prizeSets.map((e) => + e ? Challenge_PrizeSet.toJSON(e) : undefined + ); } else { obj.prizeSets = []; } @@ -2393,9 +3579,12 @@ export const UpdateChallengeInput_UpdateInput = { } else { obj.tags = []; } - message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && + (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && + (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && + (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -2408,57 +3597,73 @@ export const UpdateChallengeInput_UpdateInput = { obj.groups = []; } if (message.winners) { - obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); + obj.winners = message.winners.map((e) => + e ? Challenge_Winner.toJSON(e) : undefined + ); } else { obj.winners = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); + obj.discussions = message.discussions.map((e) => + e ? Challenge_Discussion.toJSON(e) : undefined + ); } else { obj.discussions = []; } message.createdBy !== undefined && (obj.createdBy = message.createdBy); message.updatedBy !== undefined && (obj.updatedBy = message.updatedBy); - message.created !== undefined && (obj.created = Math.round(message.created)); - message.updated !== undefined && (obj.updated = Math.round(message.updated)); + message.created !== undefined && + (obj.created = Math.round(message.created)); + message.updated !== undefined && + (obj.updated = Math.round(message.updated)); message.overview !== undefined && - (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); + (obj.overview = message.overview + ? Challenge_Overview.toJSON(message.overview) + : undefined); return obj; }, create, I>>( - base?: I, + base?: I ): UpdateChallengeInput_UpdateInput { return UpdateChallengeInput_UpdateInput.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInput_UpdateInput { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInput_UpdateInput { const message = createBaseUpdateChallengeInput_UpdateInput(); message.id = object.id ?? ""; message.legacyId = object.legacyId ?? undefined; message.name = object.name ?? undefined; message.typeId = object.typeId ?? undefined; message.trackId = object.trackId ?? undefined; - message.legacy = (object.legacy !== undefined && object.legacy !== null) - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = (object.billing !== undefined && object.billing !== null) - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = + object.legacy !== undefined && object.legacy !== null + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = + object.billing !== undefined && object.billing !== null + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? undefined; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = (object.task !== undefined && object.task !== null) - ? Challenge_Task.fromPartial(object.task) - : undefined; + message.metadata = + object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = + object.task !== undefined && object.task !== null + ? Challenge_Task.fromPartial(object.task) + : undefined; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.phases = + object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = + object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = + object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = + object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -2466,15 +3671,18 @@ export const UpdateChallengeInput_UpdateInput = { message.status = object.status ?? undefined; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; - message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.winners = + object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; + message.discussions = + object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; message.createdBy = object.createdBy ?? undefined; message.updatedBy = object.updatedBy ?? undefined; message.created = object.created ?? undefined; message.updated = object.updated ?? undefined; - message.overview = (object.overview !== undefined && object.overview !== null) - ? Challenge_Overview.fromPartial(object.overview) - : undefined; + message.overview = + object.overview !== undefined && object.overview !== null + ? Challenge_Overview.fromPartial(object.overview) + : undefined; return message; }, }; @@ -2484,33 +3692,58 @@ function createBaseUpdateChallengeInputForACL(): UpdateChallengeInputForACL { } export const UpdateChallengeInputForACL = { - encode(message: UpdateChallengeInputForACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.filterCriteria) { ScanCriteria.encode(v!, writer.uint32(10).fork()).ldelim(); } if (message.updateInputForAcl !== undefined) { - UpdateChallengeInputForACL_UpdateInputForACL.encode(message.updateInputForAcl, writer.uint32(18).fork()).ldelim(); + UpdateChallengeInputForACL_UpdateInputForACL.encode( + message.updateInputForAcl, + writer.uint32(18).fork() + ).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + if (tag != 10) { + break; + } + + message.filterCriteria.push( + ScanCriteria.decode(reader, reader.uint32()) + ); + continue; case 2: - message.updateInputForAcl = UpdateChallengeInputForACL_UpdateInputForACL.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 18) { + break; + } + + message.updateInputForAcl = + UpdateChallengeInputForACL_UpdateInputForACL.decode( + reader, + reader.uint32() + ); + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -2521,7 +3754,9 @@ export const UpdateChallengeInputForACL = { ? object.filterCriteria.map((e: any) => ScanCriteria.fromJSON(e)) : [], updateInputForAcl: isSet(object.updateInputForAcl) - ? UpdateChallengeInputForACL_UpdateInputForACL.fromJSON(object.updateInputForAcl) + ? UpdateChallengeInputForACL_UpdateInputForACL.fromJSON( + object.updateInputForAcl + ) : undefined, }; }, @@ -2529,26 +3764,40 @@ export const UpdateChallengeInputForACL = { toJSON(message: UpdateChallengeInputForACL): unknown { const obj: any = {}; if (message.filterCriteria) { - obj.filterCriteria = message.filterCriteria.map((e) => e ? ScanCriteria.toJSON(e) : undefined); + obj.filterCriteria = message.filterCriteria.map((e) => + e ? ScanCriteria.toJSON(e) : undefined + ); } else { obj.filterCriteria = []; } - message.updateInputForAcl !== undefined && (obj.updateInputForAcl = message.updateInputForAcl - ? UpdateChallengeInputForACL_UpdateInputForACL.toJSON(message.updateInputForAcl) - : undefined); + message.updateInputForAcl !== undefined && + (obj.updateInputForAcl = message.updateInputForAcl + ? UpdateChallengeInputForACL_UpdateInputForACL.toJSON( + message.updateInputForAcl + ) + : undefined); return obj; }, - create, I>>(base?: I): UpdateChallengeInputForACL { + create, I>>( + base?: I + ): UpdateChallengeInputForACL { return UpdateChallengeInputForACL.fromPartial(base ?? {}); }, - fromPartial, I>>(object: I): UpdateChallengeInputForACL { + fromPartial, I>>( + object: I + ): UpdateChallengeInputForACL { const message = createBaseUpdateChallengeInputForACL(); - message.filterCriteria = object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; - message.updateInputForAcl = (object.updateInputForAcl !== undefined && object.updateInputForAcl !== null) - ? UpdateChallengeInputForACL_UpdateInputForACL.fromPartial(object.updateInputForAcl) - : undefined; + message.filterCriteria = + object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; + message.updateInputForAcl = + object.updateInputForAcl !== undefined && + object.updateInputForAcl !== null + ? UpdateChallengeInputForACL_UpdateInputForACL.fromPartial( + object.updateInputForAcl + ) + : undefined; return message; }, }; @@ -2573,106 +3822,239 @@ function createBaseUpdateChallengeInputForACL_UpdateInputForACL(): UpdateChallen } export const UpdateChallengeInputForACL_UpdateInputForACL = { - encode(message: UpdateChallengeInputForACL_UpdateInputForACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_UpdateInputForACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.status !== undefined) { writer.uint32(10).string(message.status); } if (message.phases !== undefined) { - UpdateChallengeInputForACL_PhasesACL.encode(message.phases, writer.uint32(18).fork()).ldelim(); + UpdateChallengeInputForACL_PhasesACL.encode( + message.phases, + writer.uint32(18).fork() + ).ldelim(); } if (message.currentPhase !== undefined) { - Challenge_Phase.encode(message.currentPhase, writer.uint32(26).fork()).ldelim(); + Challenge_Phase.encode( + message.currentPhase, + writer.uint32(26).fork() + ).ldelim(); } if (message.currentPhaseNames !== undefined) { - UpdateChallengeInputForACL_CurrentPhaseNamesACL.encode(message.currentPhaseNames, writer.uint32(34).fork()) - .ldelim(); + UpdateChallengeInputForACL_CurrentPhaseNamesACL.encode( + message.currentPhaseNames, + writer.uint32(34).fork() + ).ldelim(); } if (message.registrationStartDate !== undefined) { - Timestamp.encode(toTimestamp(message.registrationStartDate), writer.uint32(42).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.registrationStartDate), + writer.uint32(42).fork() + ).ldelim(); } if (message.registrationEndDate !== undefined) { - Timestamp.encode(toTimestamp(message.registrationEndDate), writer.uint32(50).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.registrationEndDate), + writer.uint32(50).fork() + ).ldelim(); } if (message.submissionStartDate !== undefined) { - Timestamp.encode(toTimestamp(message.submissionStartDate), writer.uint32(58).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.submissionStartDate), + writer.uint32(58).fork() + ).ldelim(); } if (message.submissionEndDate !== undefined) { - Timestamp.encode(toTimestamp(message.submissionEndDate), writer.uint32(66).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.submissionEndDate), + writer.uint32(66).fork() + ).ldelim(); } if (message.startDate !== undefined) { - Timestamp.encode(toTimestamp(message.startDate), writer.uint32(74).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.startDate), + writer.uint32(74).fork() + ).ldelim(); } if (message.endDate !== undefined) { - Timestamp.encode(toTimestamp(message.endDate), writer.uint32(82).fork()).ldelim(); + Timestamp.encode( + toTimestamp(message.endDate), + writer.uint32(82).fork() + ).ldelim(); } if (message.legacy !== undefined) { - UpdateChallengeInputForACL_LegacyACL.encode(message.legacy, writer.uint32(90).fork()).ldelim(); + UpdateChallengeInputForACL_LegacyACL.encode( + message.legacy, + writer.uint32(90).fork() + ).ldelim(); } if (message.prizeSets !== undefined) { - UpdateChallengeInputForACL_PrizeSetsACL.encode(message.prizeSets, writer.uint32(98).fork()).ldelim(); + UpdateChallengeInputForACL_PrizeSetsACL.encode( + message.prizeSets, + writer.uint32(98).fork() + ).ldelim(); } if (message.overview !== undefined) { - Challenge_Overview.encode(message.overview, writer.uint32(106).fork()).ldelim(); + Challenge_Overview.encode( + message.overview, + writer.uint32(106).fork() + ).ldelim(); } if (message.winners !== undefined) { - UpdateChallengeInputForACL_WinnersACL.encode(message.winners, writer.uint32(114).fork()).ldelim(); + UpdateChallengeInputForACL_WinnersACL.encode( + message.winners, + writer.uint32(114).fork() + ).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_UpdateInputForACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_UpdateInputForACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_UpdateInputForACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.status = reader.string(); - break; + continue; case 2: - message.phases = UpdateChallengeInputForACL_PhasesACL.decode(reader, reader.uint32()); - break; + if (tag != 18) { + break; + } + + message.phases = UpdateChallengeInputForACL_PhasesACL.decode( + reader, + reader.uint32() + ); + continue; case 3: - message.currentPhase = Challenge_Phase.decode(reader, reader.uint32()); - break; + if (tag != 26) { + break; + } + + message.currentPhase = Challenge_Phase.decode( + reader, + reader.uint32() + ); + continue; case 4: - message.currentPhaseNames = UpdateChallengeInputForACL_CurrentPhaseNamesACL.decode(reader, reader.uint32()); - break; + if (tag != 34) { + break; + } + + message.currentPhaseNames = + UpdateChallengeInputForACL_CurrentPhaseNamesACL.decode( + reader, + reader.uint32() + ); + continue; case 5: - message.registrationStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 42) { + break; + } + + message.registrationStartDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 6: - message.registrationEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 50) { + break; + } + + message.registrationEndDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 7: - message.submissionStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 58) { + break; + } + + message.submissionStartDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 8: - message.submissionEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 66) { + break; + } + + message.submissionEndDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 9: - message.startDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 74) { + break; + } + + message.startDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 10: - message.endDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - break; + if (tag != 82) { + break; + } + + message.endDate = fromTimestamp( + Timestamp.decode(reader, reader.uint32()) + ); + continue; case 11: - message.legacy = UpdateChallengeInputForACL_LegacyACL.decode(reader, reader.uint32()); - break; + if (tag != 90) { + break; + } + + message.legacy = UpdateChallengeInputForACL_LegacyACL.decode( + reader, + reader.uint32() + ); + continue; case 12: - message.prizeSets = UpdateChallengeInputForACL_PrizeSetsACL.decode(reader, reader.uint32()); - break; + if (tag != 98) { + break; + } + + message.prizeSets = UpdateChallengeInputForACL_PrizeSetsACL.decode( + reader, + reader.uint32() + ); + continue; case 13: + if (tag != 106) { + break; + } + message.overview = Challenge_Overview.decode(reader, reader.uint32()); - break; + continue; case 14: - message.winners = UpdateChallengeInputForACL_WinnersACL.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 114) { + break; + } + + message.winners = UpdateChallengeInputForACL_WinnersACL.decode( + reader, + reader.uint32() + ); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -2680,23 +4062,43 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { fromJSON(object: any): UpdateChallengeInputForACL_UpdateInputForACL { return { status: isSet(object.status) ? String(object.status) : undefined, - phases: isSet(object.phases) ? UpdateChallengeInputForACL_PhasesACL.fromJSON(object.phases) : undefined, - currentPhase: isSet(object.currentPhase) ? Challenge_Phase.fromJSON(object.currentPhase) : undefined, + phases: isSet(object.phases) + ? UpdateChallengeInputForACL_PhasesACL.fromJSON(object.phases) + : undefined, + currentPhase: isSet(object.currentPhase) + ? Challenge_Phase.fromJSON(object.currentPhase) + : undefined, currentPhaseNames: isSet(object.currentPhaseNames) - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromJSON(object.currentPhaseNames) + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromJSON( + object.currentPhaseNames + ) + : undefined, + registrationStartDate: isSet(object.registrationStartDate) + ? String(object.registrationStartDate) + : undefined, + registrationEndDate: isSet(object.registrationEndDate) + ? String(object.registrationEndDate) + : undefined, + submissionStartDate: isSet(object.submissionStartDate) + ? String(object.submissionStartDate) + : undefined, + submissionEndDate: isSet(object.submissionEndDate) + ? String(object.submissionEndDate) : undefined, - registrationStartDate: isSet(object.registrationStartDate) ? String(object.registrationStartDate) : undefined, - registrationEndDate: isSet(object.registrationEndDate) ? String(object.registrationEndDate) : undefined, - submissionStartDate: isSet(object.submissionStartDate) ? String(object.submissionStartDate) : undefined, - submissionEndDate: isSet(object.submissionEndDate) ? String(object.submissionEndDate) : undefined, startDate: isSet(object.startDate) ? String(object.startDate) : undefined, endDate: isSet(object.endDate) ? String(object.endDate) : undefined, - legacy: isSet(object.legacy) ? UpdateChallengeInputForACL_LegacyACL.fromJSON(object.legacy) : undefined, + legacy: isSet(object.legacy) + ? UpdateChallengeInputForACL_LegacyACL.fromJSON(object.legacy) + : undefined, prizeSets: isSet(object.prizeSets) ? UpdateChallengeInputForACL_PrizeSetsACL.fromJSON(object.prizeSets) : undefined, - overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, - winners: isSet(object.winners) ? UpdateChallengeInputForACL_WinnersACL.fromJSON(object.winners) : undefined, + overview: isSet(object.overview) + ? Challenge_Overview.fromJSON(object.overview) + : undefined, + winners: isSet(object.winners) + ? UpdateChallengeInputForACL_WinnersACL.fromJSON(object.winners) + : undefined, }; }, @@ -2704,69 +4106,102 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { const obj: any = {}; message.status !== undefined && (obj.status = message.status); message.phases !== undefined && - (obj.phases = message.phases ? UpdateChallengeInputForACL_PhasesACL.toJSON(message.phases) : undefined); + (obj.phases = message.phases + ? UpdateChallengeInputForACL_PhasesACL.toJSON(message.phases) + : undefined); message.currentPhase !== undefined && - (obj.currentPhase = message.currentPhase ? Challenge_Phase.toJSON(message.currentPhase) : undefined); - message.currentPhaseNames !== undefined && (obj.currentPhaseNames = message.currentPhaseNames - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.toJSON(message.currentPhaseNames) - : undefined); - message.registrationStartDate !== undefined && (obj.registrationStartDate = message.registrationStartDate); - message.registrationEndDate !== undefined && (obj.registrationEndDate = message.registrationEndDate); - message.submissionStartDate !== undefined && (obj.submissionStartDate = message.submissionStartDate); - message.submissionEndDate !== undefined && (obj.submissionEndDate = message.submissionEndDate); + (obj.currentPhase = message.currentPhase + ? Challenge_Phase.toJSON(message.currentPhase) + : undefined); + message.currentPhaseNames !== undefined && + (obj.currentPhaseNames = message.currentPhaseNames + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.toJSON( + message.currentPhaseNames + ) + : undefined); + message.registrationStartDate !== undefined && + (obj.registrationStartDate = message.registrationStartDate); + message.registrationEndDate !== undefined && + (obj.registrationEndDate = message.registrationEndDate); + message.submissionStartDate !== undefined && + (obj.submissionStartDate = message.submissionStartDate); + message.submissionEndDate !== undefined && + (obj.submissionEndDate = message.submissionEndDate); message.startDate !== undefined && (obj.startDate = message.startDate); message.endDate !== undefined && (obj.endDate = message.endDate); message.legacy !== undefined && - (obj.legacy = message.legacy ? UpdateChallengeInputForACL_LegacyACL.toJSON(message.legacy) : undefined); + (obj.legacy = message.legacy + ? UpdateChallengeInputForACL_LegacyACL.toJSON(message.legacy) + : undefined); message.prizeSets !== undefined && (obj.prizeSets = message.prizeSets ? UpdateChallengeInputForACL_PrizeSetsACL.toJSON(message.prizeSets) : undefined); message.overview !== undefined && - (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); + (obj.overview = message.overview + ? Challenge_Overview.toJSON(message.overview) + : undefined); message.winners !== undefined && - (obj.winners = message.winners ? UpdateChallengeInputForACL_WinnersACL.toJSON(message.winners) : undefined); + (obj.winners = message.winners + ? UpdateChallengeInputForACL_WinnersACL.toJSON(message.winners) + : undefined); return obj; }, - create, I>>( - base?: I, - ): UpdateChallengeInputForACL_UpdateInputForACL { + create< + I extends Exact< + DeepPartial, + I + > + >(base?: I): UpdateChallengeInputForACL_UpdateInputForACL { return UpdateChallengeInputForACL_UpdateInputForACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_UpdateInputForACL { + fromPartial< + I extends Exact< + DeepPartial, + I + > + >(object: I): UpdateChallengeInputForACL_UpdateInputForACL { const message = createBaseUpdateChallengeInputForACL_UpdateInputForACL(); message.status = object.status ?? undefined; - message.phases = (object.phases !== undefined && object.phases !== null) - ? UpdateChallengeInputForACL_PhasesACL.fromPartial(object.phases) - : undefined; - message.currentPhase = (object.currentPhase !== undefined && object.currentPhase !== null) - ? Challenge_Phase.fromPartial(object.currentPhase) - : undefined; - message.currentPhaseNames = (object.currentPhaseNames !== undefined && object.currentPhaseNames !== null) - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial(object.currentPhaseNames) - : undefined; + message.phases = + object.phases !== undefined && object.phases !== null + ? UpdateChallengeInputForACL_PhasesACL.fromPartial(object.phases) + : undefined; + message.currentPhase = + object.currentPhase !== undefined && object.currentPhase !== null + ? Challenge_Phase.fromPartial(object.currentPhase) + : undefined; + message.currentPhaseNames = + object.currentPhaseNames !== undefined && + object.currentPhaseNames !== null + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial( + object.currentPhaseNames + ) + : undefined; message.registrationStartDate = object.registrationStartDate ?? undefined; message.registrationEndDate = object.registrationEndDate ?? undefined; message.submissionStartDate = object.submissionStartDate ?? undefined; message.submissionEndDate = object.submissionEndDate ?? undefined; message.startDate = object.startDate ?? undefined; message.endDate = object.endDate ?? undefined; - message.legacy = (object.legacy !== undefined && object.legacy !== null) - ? UpdateChallengeInputForACL_LegacyACL.fromPartial(object.legacy) - : undefined; - message.prizeSets = (object.prizeSets !== undefined && object.prizeSets !== null) - ? UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(object.prizeSets) - : undefined; - message.overview = (object.overview !== undefined && object.overview !== null) - ? Challenge_Overview.fromPartial(object.overview) - : undefined; - message.winners = (object.winners !== undefined && object.winners !== null) - ? UpdateChallengeInputForACL_WinnersACL.fromPartial(object.winners) - : undefined; + message.legacy = + object.legacy !== undefined && object.legacy !== null + ? UpdateChallengeInputForACL_LegacyACL.fromPartial(object.legacy) + : undefined; + message.prizeSets = + object.prizeSets !== undefined && object.prizeSets !== null + ? UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(object.prizeSets) + : undefined; + message.overview = + object.overview !== undefined && object.overview !== null + ? Challenge_Overview.fromPartial(object.overview) + : undefined; + message.winners = + object.winners !== undefined && object.winners !== null + ? UpdateChallengeInputForACL_WinnersACL.fromPartial(object.winners) + : undefined; return message; }, }; @@ -2776,39 +4211,57 @@ function createBaseUpdateChallengeInputForACL_PhasesACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_PhasesACL = { - encode(message: UpdateChallengeInputForACL_PhasesACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_PhasesACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.phases) { Challenge_Phase.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_PhasesACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_PhasesACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_PhasesACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): UpdateChallengeInputForACL_PhasesACL { - return { phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [] }; + return { + phases: Array.isArray(object?.phases) + ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) + : [], + }; }, toJSON(message: UpdateChallengeInputForACL_PhasesACL): unknown { const obj: any = {}; if (message.phases) { - obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); + obj.phases = message.phases.map((e) => + e ? Challenge_Phase.toJSON(e) : undefined + ); } else { obj.phases = []; } @@ -2816,16 +4269,17 @@ export const UpdateChallengeInputForACL_PhasesACL = { }, create, I>>( - base?: I, + base?: I ): UpdateChallengeInputForACL_PhasesACL { return UpdateChallengeInputForACL_PhasesACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_PhasesACL { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInputForACL_PhasesACL { const message = createBaseUpdateChallengeInputForACL_PhasesACL(); - message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.phases = + object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; return message; }, }; @@ -2837,7 +4291,7 @@ function createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(): UpdateChal export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { encode( message: UpdateChallengeInputForACL_CurrentPhaseNamesACL, - writer: _m0.Writer = _m0.Writer.create(), + writer: _m0.Writer = _m0.Writer.create() ): _m0.Writer { for (const v of message.currentPhaseNames) { writer.uint32(10).string(v!); @@ -2845,20 +4299,29 @@ export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_CurrentPhaseNamesACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.currentPhaseNames.push(reader.string()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -2881,15 +4344,23 @@ export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { return obj; }, - create, I>>( - base?: I, - ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { - return UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial(base ?? {}); + create< + I extends Exact< + DeepPartial, + I + > + >(base?: I): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + return UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial( + base ?? {} + ); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + fromPartial< + I extends Exact< + DeepPartial, + I + > + >(object: I): UpdateChallengeInputForACL_CurrentPhaseNamesACL { const message = createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(); message.currentPhaseNames = object.currentPhaseNames?.map((e) => e) || []; return message; @@ -2901,7 +4372,10 @@ function createBaseUpdateChallengeInputForACL_LegacyACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_LegacyACL = { - encode(message: UpdateChallengeInputForACL_LegacyACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_LegacyACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.reviewScorecardId !== undefined) { writer.uint32(8).int32(message.reviewScorecardId); } @@ -2911,50 +4385,69 @@ export const UpdateChallengeInputForACL_LegacyACL = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_LegacyACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_LegacyACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_LegacyACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.reviewScorecardId = reader.int32(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.screeningScorecardId = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, fromJSON(object: any): UpdateChallengeInputForACL_LegacyACL { return { - reviewScorecardId: isSet(object.reviewScorecardId) ? Number(object.reviewScorecardId) : undefined, - screeningScorecardId: isSet(object.screeningScorecardId) ? Number(object.screeningScorecardId) : undefined, + reviewScorecardId: isSet(object.reviewScorecardId) + ? Number(object.reviewScorecardId) + : undefined, + screeningScorecardId: isSet(object.screeningScorecardId) + ? Number(object.screeningScorecardId) + : undefined, }; }, toJSON(message: UpdateChallengeInputForACL_LegacyACL): unknown { const obj: any = {}; - message.reviewScorecardId !== undefined && (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); - message.screeningScorecardId !== undefined && (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); + message.reviewScorecardId !== undefined && + (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); + message.screeningScorecardId !== undefined && + (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); return obj; }, create, I>>( - base?: I, + base?: I ): UpdateChallengeInputForACL_LegacyACL { return UpdateChallengeInputForACL_LegacyACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_LegacyACL { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInputForACL_LegacyACL { const message = createBaseUpdateChallengeInputForACL_LegacyACL(); message.reviewScorecardId = object.reviewScorecardId ?? undefined; message.screeningScorecardId = object.screeningScorecardId ?? undefined; @@ -2967,27 +4460,41 @@ function createBaseUpdateChallengeInputForACL_PrizeSetsACL(): UpdateChallengeInp } export const UpdateChallengeInputForACL_PrizeSetsACL = { - encode(message: UpdateChallengeInputForACL_PrizeSetsACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_PrizeSetsACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.prizeSets) { Challenge_PrizeSet.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_PrizeSetsACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_PrizeSetsACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_PrizeSetsACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 10) { + break; + } + + message.prizeSets.push( + Challenge_PrizeSet.decode(reader, reader.uint32()) + ); + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -3003,24 +4510,27 @@ export const UpdateChallengeInputForACL_PrizeSetsACL = { toJSON(message: UpdateChallengeInputForACL_PrizeSetsACL): unknown { const obj: any = {}; if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); + obj.prizeSets = message.prizeSets.map((e) => + e ? Challenge_PrizeSet.toJSON(e) : undefined + ); } else { obj.prizeSets = []; } return obj; }, - create, I>>( - base?: I, - ): UpdateChallengeInputForACL_PrizeSetsACL { + create< + I extends Exact, I> + >(base?: I): UpdateChallengeInputForACL_PrizeSetsACL { return UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_PrizeSetsACL { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInputForACL_PrizeSetsACL { const message = createBaseUpdateChallengeInputForACL_PrizeSetsACL(); - message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.prizeSets = + object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; return message; }, }; @@ -3030,27 +4540,44 @@ function createBaseUpdateChallengeInputForACL_WinnersACL(): UpdateChallengeInput } export const UpdateChallengeInputForACL_WinnersACL = { - encode(message: UpdateChallengeInputForACL_WinnersACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_WinnersACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { for (const v of message.winners) { - UpdateChallengeInputForACL_WinnerACL.encode(v!, writer.uint32(10).fork()).ldelim(); + UpdateChallengeInputForACL_WinnerACL.encode( + v!, + writer.uint32(10).fork() + ).ldelim(); } return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_WinnersACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_WinnersACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_WinnersACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.winners.push(UpdateChallengeInputForACL_WinnerACL.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + if (tag != 10) { + break; + } + + message.winners.push( + UpdateChallengeInputForACL_WinnerACL.decode(reader, reader.uint32()) + ); + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -3058,7 +4585,9 @@ export const UpdateChallengeInputForACL_WinnersACL = { fromJSON(object: any): UpdateChallengeInputForACL_WinnersACL { return { winners: Array.isArray(object?.winners) - ? object.winners.map((e: any) => UpdateChallengeInputForACL_WinnerACL.fromJSON(e)) + ? object.winners.map((e: any) => + UpdateChallengeInputForACL_WinnerACL.fromJSON(e) + ) : [], }; }, @@ -3066,24 +4595,29 @@ export const UpdateChallengeInputForACL_WinnersACL = { toJSON(message: UpdateChallengeInputForACL_WinnersACL): unknown { const obj: any = {}; if (message.winners) { - obj.winners = message.winners.map((e) => e ? UpdateChallengeInputForACL_WinnerACL.toJSON(e) : undefined); + obj.winners = message.winners.map((e) => + e ? UpdateChallengeInputForACL_WinnerACL.toJSON(e) : undefined + ); } else { obj.winners = []; } return obj; }, - create, I>>( - base?: I, - ): UpdateChallengeInputForACL_WinnersACL { + create< + I extends Exact, I> + >(base?: I): UpdateChallengeInputForACL_WinnersACL { return UpdateChallengeInputForACL_WinnersACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_WinnersACL { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInputForACL_WinnersACL { const message = createBaseUpdateChallengeInputForACL_WinnersACL(); - message.winners = object.winners?.map((e) => UpdateChallengeInputForACL_WinnerACL.fromPartial(e)) || []; + message.winners = + object.winners?.map((e) => + UpdateChallengeInputForACL_WinnerACL.fromPartial(e) + ) || []; return message; }, }; @@ -3093,7 +4627,10 @@ function createBaseUpdateChallengeInputForACL_WinnerACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_WinnerACL = { - encode(message: UpdateChallengeInputForACL_WinnerACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + encode( + message: UpdateChallengeInputForACL_WinnerACL, + writer: _m0.Writer = _m0.Writer.create() + ): _m0.Writer { if (message.handle !== "") { writer.uint32(10).string(message.handle); } @@ -3103,23 +4640,36 @@ export const UpdateChallengeInputForACL_WinnerACL = { return writer; }, - decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_WinnerACL { - const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode( + input: _m0.Reader | Uint8Array, + length?: number + ): UpdateChallengeInputForACL_WinnerACL { + const reader = + input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_WinnerACL(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.handle = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.placement = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -3134,19 +4684,20 @@ export const UpdateChallengeInputForACL_WinnerACL = { toJSON(message: UpdateChallengeInputForACL_WinnerACL): unknown { const obj: any = {}; message.handle !== undefined && (obj.handle = message.handle); - message.placement !== undefined && (obj.placement = Math.round(message.placement)); + message.placement !== undefined && + (obj.placement = Math.round(message.placement)); return obj; }, create, I>>( - base?: I, + base?: I ): UpdateChallengeInputForACL_WinnerACL { return UpdateChallengeInputForACL_WinnerACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I, - ): UpdateChallengeInputForACL_WinnerACL { + fromPartial< + I extends Exact, I> + >(object: I): UpdateChallengeInputForACL_WinnerACL { const message = createBaseUpdateChallengeInputForACL_WinnerACL(); message.handle = object.handle ?? ""; message.placement = object.placement ?? 0; @@ -3173,17 +4724,35 @@ var tsProtoGlobalThis: any = (() => { throw "Unable to locate global object"; })(); -type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; - -type DeepPartial = T extends Builtin ? T - : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> - : T extends { $case: string } ? { [K in keyof Omit]?: DeepPartial } & { $case: T["$case"] } - : T extends {} ? { [K in keyof T]?: DeepPartial } +type Builtin = + | Date + | Function + | Uint8Array + | string + | number + | boolean + | undefined; + +type DeepPartial = T extends Builtin + ? T + : T extends Array + ? Array> + : T extends ReadonlyArray + ? ReadonlyArray> + : T extends { $case: string } + ? { [K in keyof Omit]?: DeepPartial } & { + $case: T["$case"]; + } + : T extends {} + ? { [K in keyof T]?: DeepPartial } : Partial; type KeysOfUnion = T extends T ? keyof T : never; -type Exact = P extends Builtin ? P - : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; +type Exact = P extends Builtin + ? P + : P & { [K in keyof P]: Exact } & { + [K in Exclude>]: never; + }; function toTimestamp(dateStr: string): Timestamp { const date = new Date(dateStr); @@ -3200,7 +4769,9 @@ function fromTimestamp(t: Timestamp): string { function longToNumber(long: Long): number { if (long.gt(Number.MAX_SAFE_INTEGER)) { - throw new tsProtoGlobalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); + throw new tsProtoGlobalThis.Error( + "Value is larger than Number.MAX_SAFE_INTEGER" + ); } return long.toNumber(); } diff --git a/src/models/domain-layer/challenge/challenge_timeline_template.ts b/src/models/domain-layer/challenge/challenge_timeline_template.ts index c2eeeee..5c846f5 100644 --- a/src/models/domain-layer/challenge/challenge_timeline_template.ts +++ b/src/models/domain-layer/challenge/challenge_timeline_template.ts @@ -65,24 +65,45 @@ export const ChallengeTimelineTemplate = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.trackId = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.typeId = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.isDefault = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -142,12 +163,17 @@ export const ChallengeTimelineTemplateList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(ChallengeTimelineTemplate.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -210,21 +236,38 @@ export const CreateChallengeTimelineTemplateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.trackId = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.typeId = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isDefault = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -288,15 +331,24 @@ export const UpdateChallengeTimelineTemplateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdateChallengeTimelineTemplateInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -375,21 +427,38 @@ export const UpdateChallengeTimelineTemplateInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.trackId = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.typeId = reader.string(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.timelineTemplateId = reader.string(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.isDefault = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/challenge_track.ts b/src/models/domain-layer/challenge/challenge_track.ts index 45bc212..ccb8e20 100644 --- a/src/models/domain-layer/challenge/challenge_track.ts +++ b/src/models/domain-layer/challenge/challenge_track.ts @@ -65,24 +65,45 @@ export const ChallengeTrack = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -142,12 +163,17 @@ export const ChallengeTrackList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(ChallengeTrack.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -206,21 +232,38 @@ export const CreateChallengeTrackInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.description = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -280,15 +323,24 @@ export const UpdateChallengeTrackInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdateChallengeTrackInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -360,21 +412,38 @@ export const UpdateChallengeTrackInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/challenge_type.ts b/src/models/domain-layer/challenge/challenge_type.ts index a8c9e5c..a9e2035 100644 --- a/src/models/domain-layer/challenge/challenge_type.ts +++ b/src/models/domain-layer/challenge/challenge_type.ts @@ -71,27 +71,52 @@ export const ChallengeType = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.isTask = reader.bool(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -154,12 +179,17 @@ export const ChallengeTypeList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(ChallengeType.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -221,24 +251,45 @@ export const CreateChallengeTypeInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.description = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isTask = reader.bool(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -301,15 +352,24 @@ export const UpdateChallengeTypeInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdateChallengeTypeInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -384,24 +444,45 @@ export const UpdateChallengeTypeInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.isTask = reader.bool(); - break; + continue; case 6: + if (tag != 50) { + break; + } + message.abbreviation = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/phase.ts b/src/models/domain-layer/challenge/phase.ts index 1a05e96..cc242b1 100644 --- a/src/models/domain-layer/challenge/phase.ts +++ b/src/models/domain-layer/challenge/phase.ts @@ -66,24 +66,45 @@ export const Phase = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isOpen = reader.bool(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.duration = longToNumber(reader.int64() as Long); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -143,12 +164,17 @@ export const PhaseList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(Phase.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -207,21 +233,38 @@ export const CreatePhaseInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.description = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.isOpen = reader.bool(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.duration = longToNumber(reader.int64() as Long); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -281,15 +324,24 @@ export const UpdatePhaseInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdatePhaseInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -358,21 +410,38 @@ export const UpdatePhaseInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isOpen = reader.bool(); - break; + continue; case 5: + if (tag != 40) { + break; + } + message.duration = longToNumber(reader.int64() as Long); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/domain-layer/challenge/timeline_template.ts b/src/models/domain-layer/challenge/timeline_template.ts index 1f3f948..7b88833 100644 --- a/src/models/domain-layer/challenge/timeline_template.ts +++ b/src/models/domain-layer/challenge/timeline_template.ts @@ -66,18 +66,31 @@ export const TimelineTemplatePhase = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.phaseId = reader.string(); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.defaultDuration = longToNumber(reader.int64() as Long); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.predecessor = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -143,24 +156,45 @@ export const TimelineTemplate = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.id = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.phases.push(TimelineTemplatePhase.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -224,12 +258,17 @@ export const TimelineTemplateList = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.items.push(TimelineTemplate.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -288,21 +327,38 @@ export const CreateTimelineTemplateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.name = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.description = reader.string(); - break; + continue; case 3: + if (tag != 24) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 4: + if (tag != 34) { + break; + } + message.phases.push(TimelineTemplatePhase.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -366,15 +422,24 @@ export const UpdateTimelineTemplateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.updateInput = UpdateTimelineTemplateInput_UpdateInput.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; + continue; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, @@ -446,21 +511,38 @@ export const UpdateTimelineTemplateInput_UpdateInput = { const tag = reader.uint32(); switch (tag >>> 3) { case 2: + if (tag != 18) { + break; + } + message.name = reader.string(); - break; + continue; case 3: + if (tag != 26) { + break; + } + message.description = reader.string(); - break; + continue; case 4: + if (tag != 32) { + break; + } + message.isActive = reader.bool(); - break; + continue; case 5: + if (tag != 42) { + break; + } + message.phases.push(TimelineTemplatePhase.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/google/protobuf/empty.ts b/src/models/google/protobuf/empty.ts index a56f883..33339a0 100644 --- a/src/models/google/protobuf/empty.ts +++ b/src/models/google/protobuf/empty.ts @@ -29,10 +29,11 @@ export const Empty = { while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { - default: - reader.skipType(tag & 7); - break; } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/google/protobuf/struct.ts b/src/models/google/protobuf/struct.ts index 362dcd5..5a7e118 100644 --- a/src/models/google/protobuf/struct.ts +++ b/src/models/google/protobuf/struct.ts @@ -105,15 +105,20 @@ export const Struct = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + const entry1 = Struct_FieldsEntry.decode(reader, reader.uint32()); if (entry1.value !== undefined) { message.fields[entry1.key] = entry1.value; } - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -199,15 +204,24 @@ export const Struct_FieldsEntry = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.key = reader.string(); - break; + continue; case 2: + if (tag != 18) { + break; + } + message.value = Value.unwrap(Value.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -272,27 +286,52 @@ export const Value = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.kind = { $case: "nullValue", nullValue: reader.int32() as any }; - break; + continue; case 2: + if (tag != 17) { + break; + } + message.kind = { $case: "numberValue", numberValue: reader.double() }; - break; + continue; case 3: + if (tag != 26) { + break; + } + message.kind = { $case: "stringValue", stringValue: reader.string() }; - break; + continue; case 4: + if (tag != 32) { + break; + } + message.kind = { $case: "boolValue", boolValue: reader.bool() }; - break; + continue; case 5: + if (tag != 42) { + break; + } + message.kind = { $case: "structValue", structValue: Struct.unwrap(Struct.decode(reader, reader.uint32())) }; - break; + continue; case 6: + if (tag != 50) { + break; + } + message.kind = { $case: "listValue", listValue: ListValue.unwrap(ListValue.decode(reader, reader.uint32())) }; - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, @@ -425,12 +464,17 @@ export const ListValue = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 10) { + break; + } + message.values.push(Value.unwrap(Value.decode(reader, reader.uint32()))); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/models/google/protobuf/timestamp.ts b/src/models/google/protobuf/timestamp.ts index 23d4800..255892d 100644 --- a/src/models/google/protobuf/timestamp.ts +++ b/src/models/google/protobuf/timestamp.ts @@ -132,15 +132,24 @@ export const Timestamp = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: + if (tag != 8) { + break; + } + message.seconds = longToNumber(reader.int64() as Long); - break; + continue; case 2: + if (tag != 16) { + break; + } + message.nanos = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; } + reader.skipType(tag & 7); } return message; }, diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 0c22e20..2080e9e 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -1,6 +1,7 @@ import _ from "lodash"; import { PrizeSetTypes } from "../common/Constants"; import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; +import { Challenge_Phase } from "../models/domain-layer/challenge/challenge"; import { legacyChallengeStatusesMap } from "./constants"; import DateUtil from "./DateUtil"; @@ -27,21 +28,7 @@ class LegacyMapper { type: PrizeSetTypes.ChallengePrizes, }) ) ?? [], - phases: input.phases.map((phase: any, index: number) => ({ - phaseTypeId: this.mapPhaseNameToPhaseTypeId(phase.name), - phaseStatusId: 1, - fixedStartTime: - index == 0 - ? DateUtil.formatDateForIfx(phase.scheduledStartDate) - : undefined, // Registration Phase needs a fixedStartTime - scheduledStartTime: DateUtil.formatDateForIfx(phase.scheduledStartDate), - scheduledEndTime: DateUtil.formatDateForIfx(phase.scheduledEndDate), - // TODO: Confirm this is correct - // actualStartTime: DateUtil.formatDateForIfx(phase.actualStartDate), - // actualEndTime: DateUtil.formatDateForIfx(phase.actualEndDate), - duration: phase.duration, - phaseCriteria: this.mapPhaseCriteria(phase), - })), + phases: this.mapPhases(input.phases), reviewType: input.legacy?.reviewType ?? "INTERNAL", confidentialityType: input.legacy?.confidentialityType ?? "public", billingProject: input.billing?.billingAccountId!, @@ -193,27 +180,38 @@ class LegacyMapper { }; } - private mapPhaseCriteria(phase: any) { + // prettier-ignore + public mapPhases(phases: Challenge_Phase[]) { + return phases.map((phase: Challenge_Phase, index: number) => ({ + phaseTypeId: this.mapPhaseNameToPhaseTypeId(phase.name), + phaseStatusId: phase.isOpen ? 2 : 1, // Set Open if phase is open, otherwise mark it Scheduled [1: Scheduled, 2: Open, 3: Closed] + fixedStartTime: phase.name === "Registration" ? DateUtil.formatDateForIfx(phase.scheduledStartDate!) : undefined, // Registration Phase needs a fixedStartTime + scheduledStartTime: DateUtil.formatDateForIfx(phase.scheduledStartDate!), + scheduledEndTime: DateUtil.formatDateForIfx(phase.scheduledEndDate!), + actualStartTime: !phase.actualStartDate ? undefined: DateUtil.formatDateForIfx(phase.actualStartDate) , + actualEndTime: !phase.actualEndDate ? undefined: DateUtil.formatDateForIfx(phase.actualEndDate) , + duration: phase.duration, + phaseCriteria: this.mapPhaseCriteria(phase), + })); + } + + // prettier-ignore + private mapPhaseCriteria(phase: Challenge_Phase) { const reviewPhaseConstraint = phase.constraints?.find( (constraint: { name: string; value: number }) => constraint.name === "Number of Reviewers" ); const submissionPhaseConstraint = phase.constraints?.find( - (constraint: { name: string; value: number }) => - constraint.name === "Number of Submissions" + (constraint: { name: string; value: number }) => constraint.name === "Number of Submissions" ); return { 1: phase.name === "Review" ? 30001610 : undefined, // Scorecard ID 2: phase.name === "Registration" ? 1 : undefined, // Registration Number - 3: - phase.name === "Submission" - ? submissionPhaseConstraint?.value ?? - reviewPhaseConstraint?.value != null - ? 1 - : undefined - : undefined, // Submission Number + 3: phase.name === "Submission" ? submissionPhaseConstraint?.value ?? // if we have a submission phase constraint use it + reviewPhaseConstraint?.value != null ? 1 : undefined // otherwise if we have a review phase constraint use 1 + : undefined, 4: undefined, // View Response During Appeals 5: undefined, // Manual Screening 6: diff --git a/yarn.lock b/yarn.lock index f595e58..133a264 100644 --- a/yarn.lock +++ b/yarn.lock @@ -48,295 +48,295 @@ "@aws-sdk/util-utf8-browser" "^3.0.0" tslib "^1.11.1" -"@aws-sdk/abort-controller@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.292.0.tgz#37c43fd2ce5bcb158aa62e3a5632045ee8a7e3cc" - integrity sha512-lf+OPptL01kvryIJy7+dvFux5KbJ6OTwLPPEekVKZ2AfEvwcVtOZWFUhyw3PJCBTVncjKB1Kjl3V/eTS3YuPXQ== +"@aws-sdk/abort-controller@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/abort-controller/-/abort-controller-3.296.0.tgz#0e34a93366ee59eb5d24ea164e1cc2687e2071de" + integrity sha512-gNUFBlBw6+sEMfDjPVa83iscpQwXBS4uoiZXnfeQ6s6tnaxqQpJDrBBmNvYqDEXNdaAJX4FhayEwkSvtir/f3A== dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" "@aws-sdk/client-lambda@^3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-lambda/-/client-lambda-3.294.0.tgz#725705142560601af6e3cd212b13567cce72fd43" - integrity sha512-zqkRsODF7R/4d597mjPExqyrRqwut+PCffQvLsfmxCnRHQPWVmMRBVl9xAvmsPM0mWlvrqcwa/GGOJplG3z/vQ== + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-lambda/-/client-lambda-3.296.0.tgz#382946ba77f0a3b948d9c10751d014d91149103c" + integrity sha512-MOjP9hKBWv63yh0/2rNbRSR9l/VeXHS1BvR3NigcYC7Do3dZMgpJEebDN5a6ON/7NFLZNoctS9q8EAu65gpKhQ== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/client-sts" "3.294.0" - "@aws-sdk/config-resolver" "3.292.0" - "@aws-sdk/credential-provider-node" "3.294.0" - "@aws-sdk/fetch-http-handler" "3.292.0" - "@aws-sdk/hash-node" "3.292.0" - "@aws-sdk/invalid-dependency" "3.292.0" - "@aws-sdk/middleware-content-length" "3.292.0" - "@aws-sdk/middleware-endpoint" "3.292.0" - "@aws-sdk/middleware-host-header" "3.292.0" - "@aws-sdk/middleware-logger" "3.292.0" - "@aws-sdk/middleware-recursion-detection" "3.292.0" - "@aws-sdk/middleware-retry" "3.293.0" - "@aws-sdk/middleware-serde" "3.292.0" - "@aws-sdk/middleware-signing" "3.292.0" - "@aws-sdk/middleware-stack" "3.292.0" - "@aws-sdk/middleware-user-agent" "3.293.0" - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/node-http-handler" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/smithy-client" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - "@aws-sdk/util-base64" "3.292.0" - "@aws-sdk/util-body-length-browser" "3.292.0" - "@aws-sdk/util-body-length-node" "3.292.0" - "@aws-sdk/util-defaults-mode-browser" "3.292.0" - "@aws-sdk/util-defaults-mode-node" "3.292.0" - "@aws-sdk/util-endpoints" "3.293.0" - "@aws-sdk/util-retry" "3.292.0" - "@aws-sdk/util-user-agent-browser" "3.292.0" - "@aws-sdk/util-user-agent-node" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" - "@aws-sdk/util-waiter" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/client-sso-oidc@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.294.0.tgz#eeb1689c5ee1cc77d92ea341fcd919e04d45372d" - integrity sha512-/ZfDud76MdSPJ/TxjV2xLE30XbBQDZwKQ32axwoK1eziPvrAIUBYVgpBwj+m0quhoiQhBKkg3aFl6j39AF2thw== + "@aws-sdk/client-sts" "3.296.0" + "@aws-sdk/config-resolver" "3.296.0" + "@aws-sdk/credential-provider-node" "3.296.0" + "@aws-sdk/fetch-http-handler" "3.296.0" + "@aws-sdk/hash-node" "3.296.0" + "@aws-sdk/invalid-dependency" "3.296.0" + "@aws-sdk/middleware-content-length" "3.296.0" + "@aws-sdk/middleware-endpoint" "3.296.0" + "@aws-sdk/middleware-host-header" "3.296.0" + "@aws-sdk/middleware-logger" "3.296.0" + "@aws-sdk/middleware-recursion-detection" "3.296.0" + "@aws-sdk/middleware-retry" "3.296.0" + "@aws-sdk/middleware-serde" "3.296.0" + "@aws-sdk/middleware-signing" "3.296.0" + "@aws-sdk/middleware-stack" "3.296.0" + "@aws-sdk/middleware-user-agent" "3.296.0" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/node-http-handler" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/smithy-client" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + "@aws-sdk/util-base64" "3.295.0" + "@aws-sdk/util-body-length-browser" "3.295.0" + "@aws-sdk/util-body-length-node" "3.295.0" + "@aws-sdk/util-defaults-mode-browser" "3.296.0" + "@aws-sdk/util-defaults-mode-node" "3.296.0" + "@aws-sdk/util-endpoints" "3.296.0" + "@aws-sdk/util-retry" "3.296.0" + "@aws-sdk/util-user-agent-browser" "3.296.0" + "@aws-sdk/util-user-agent-node" "3.296.0" + "@aws-sdk/util-utf8" "3.295.0" + "@aws-sdk/util-waiter" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/client-sso-oidc@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.296.0.tgz#0edd5a3a065215cbf3e04e6f48b41b31531bf109" + integrity sha512-GRycCVdlFICvWwv9z6Mc/2BvSBOvchWO7UTklvbKXeDn6D05C+02PfxeoocMTc4r8/eFoEQWs67h5u/lPpyHDw== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.292.0" - "@aws-sdk/fetch-http-handler" "3.292.0" - "@aws-sdk/hash-node" "3.292.0" - "@aws-sdk/invalid-dependency" "3.292.0" - "@aws-sdk/middleware-content-length" "3.292.0" - "@aws-sdk/middleware-endpoint" "3.292.0" - "@aws-sdk/middleware-host-header" "3.292.0" - "@aws-sdk/middleware-logger" "3.292.0" - "@aws-sdk/middleware-recursion-detection" "3.292.0" - "@aws-sdk/middleware-retry" "3.293.0" - "@aws-sdk/middleware-serde" "3.292.0" - "@aws-sdk/middleware-stack" "3.292.0" - "@aws-sdk/middleware-user-agent" "3.293.0" - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/node-http-handler" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/smithy-client" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - "@aws-sdk/util-base64" "3.292.0" - "@aws-sdk/util-body-length-browser" "3.292.0" - "@aws-sdk/util-body-length-node" "3.292.0" - "@aws-sdk/util-defaults-mode-browser" "3.292.0" - "@aws-sdk/util-defaults-mode-node" "3.292.0" - "@aws-sdk/util-endpoints" "3.293.0" - "@aws-sdk/util-retry" "3.292.0" - "@aws-sdk/util-user-agent-browser" "3.292.0" - "@aws-sdk/util-user-agent-node" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/client-sso@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.294.0.tgz#27391306759fd071fdb715ff3bb0693ae6053a84" - integrity sha512-+FuxQTi5WvnaXM5JbNLkBIzQ3An4gA0ox61N1u+3xled+nywKb1yQ7WmRpyMG5bLbkmnj3aqoo5/uskFc4c4EA== + "@aws-sdk/config-resolver" "3.296.0" + "@aws-sdk/fetch-http-handler" "3.296.0" + "@aws-sdk/hash-node" "3.296.0" + "@aws-sdk/invalid-dependency" "3.296.0" + "@aws-sdk/middleware-content-length" "3.296.0" + "@aws-sdk/middleware-endpoint" "3.296.0" + "@aws-sdk/middleware-host-header" "3.296.0" + "@aws-sdk/middleware-logger" "3.296.0" + "@aws-sdk/middleware-recursion-detection" "3.296.0" + "@aws-sdk/middleware-retry" "3.296.0" + "@aws-sdk/middleware-serde" "3.296.0" + "@aws-sdk/middleware-stack" "3.296.0" + "@aws-sdk/middleware-user-agent" "3.296.0" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/node-http-handler" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/smithy-client" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + "@aws-sdk/util-base64" "3.295.0" + "@aws-sdk/util-body-length-browser" "3.295.0" + "@aws-sdk/util-body-length-node" "3.295.0" + "@aws-sdk/util-defaults-mode-browser" "3.296.0" + "@aws-sdk/util-defaults-mode-node" "3.296.0" + "@aws-sdk/util-endpoints" "3.296.0" + "@aws-sdk/util-retry" "3.296.0" + "@aws-sdk/util-user-agent-browser" "3.296.0" + "@aws-sdk/util-user-agent-node" "3.296.0" + "@aws-sdk/util-utf8" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/client-sso@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sso/-/client-sso-3.296.0.tgz#97c2061b2f98cda0e5c65e8f13408f15dac7ae7d" + integrity sha512-0P0x++jhlmhzViFPOHvTb7+Z6tSV9aONwB8CchIseg2enSPBbGfml7y5gQu1jdOTDS6pBUmrPZ+9sOI4/GvAfA== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.292.0" - "@aws-sdk/fetch-http-handler" "3.292.0" - "@aws-sdk/hash-node" "3.292.0" - "@aws-sdk/invalid-dependency" "3.292.0" - "@aws-sdk/middleware-content-length" "3.292.0" - "@aws-sdk/middleware-endpoint" "3.292.0" - "@aws-sdk/middleware-host-header" "3.292.0" - "@aws-sdk/middleware-logger" "3.292.0" - "@aws-sdk/middleware-recursion-detection" "3.292.0" - "@aws-sdk/middleware-retry" "3.293.0" - "@aws-sdk/middleware-serde" "3.292.0" - "@aws-sdk/middleware-stack" "3.292.0" - "@aws-sdk/middleware-user-agent" "3.293.0" - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/node-http-handler" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/smithy-client" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - "@aws-sdk/util-base64" "3.292.0" - "@aws-sdk/util-body-length-browser" "3.292.0" - "@aws-sdk/util-body-length-node" "3.292.0" - "@aws-sdk/util-defaults-mode-browser" "3.292.0" - "@aws-sdk/util-defaults-mode-node" "3.292.0" - "@aws-sdk/util-endpoints" "3.293.0" - "@aws-sdk/util-retry" "3.292.0" - "@aws-sdk/util-user-agent-browser" "3.292.0" - "@aws-sdk/util-user-agent-node" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/client-sts@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.294.0.tgz#1d89acb6d49d02b0840c5a8b93e1b14acfb43b23" - integrity sha512-AefqwhFjTDzelZuSYhriJbiI+GQwf2yKiKAnCt0gRj6rswewStM63Gtlhfb01sFPp+ZiqPcyQ47LqUaHp1mz/g== + "@aws-sdk/config-resolver" "3.296.0" + "@aws-sdk/fetch-http-handler" "3.296.0" + "@aws-sdk/hash-node" "3.296.0" + "@aws-sdk/invalid-dependency" "3.296.0" + "@aws-sdk/middleware-content-length" "3.296.0" + "@aws-sdk/middleware-endpoint" "3.296.0" + "@aws-sdk/middleware-host-header" "3.296.0" + "@aws-sdk/middleware-logger" "3.296.0" + "@aws-sdk/middleware-recursion-detection" "3.296.0" + "@aws-sdk/middleware-retry" "3.296.0" + "@aws-sdk/middleware-serde" "3.296.0" + "@aws-sdk/middleware-stack" "3.296.0" + "@aws-sdk/middleware-user-agent" "3.296.0" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/node-http-handler" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/smithy-client" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + "@aws-sdk/util-base64" "3.295.0" + "@aws-sdk/util-body-length-browser" "3.295.0" + "@aws-sdk/util-body-length-node" "3.295.0" + "@aws-sdk/util-defaults-mode-browser" "3.296.0" + "@aws-sdk/util-defaults-mode-node" "3.296.0" + "@aws-sdk/util-endpoints" "3.296.0" + "@aws-sdk/util-retry" "3.296.0" + "@aws-sdk/util-user-agent-browser" "3.296.0" + "@aws-sdk/util-user-agent-node" "3.296.0" + "@aws-sdk/util-utf8" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/client-sts@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/client-sts/-/client-sts-3.296.0.tgz#98aee362858f2cad775ee037f1bb8f259d4bf4fc" + integrity sha512-ew7hSVNpitnLCIRVhnI2L1HZB/yYpRQFReR62fOqCUnpKqm6WGga37bnvgYbY5y0Rv23C0VHARovwunVg1gabA== dependencies: "@aws-crypto/sha256-browser" "3.0.0" "@aws-crypto/sha256-js" "3.0.0" - "@aws-sdk/config-resolver" "3.292.0" - "@aws-sdk/credential-provider-node" "3.294.0" - "@aws-sdk/fetch-http-handler" "3.292.0" - "@aws-sdk/hash-node" "3.292.0" - "@aws-sdk/invalid-dependency" "3.292.0" - "@aws-sdk/middleware-content-length" "3.292.0" - "@aws-sdk/middleware-endpoint" "3.292.0" - "@aws-sdk/middleware-host-header" "3.292.0" - "@aws-sdk/middleware-logger" "3.292.0" - "@aws-sdk/middleware-recursion-detection" "3.292.0" - "@aws-sdk/middleware-retry" "3.293.0" - "@aws-sdk/middleware-sdk-sts" "3.292.0" - "@aws-sdk/middleware-serde" "3.292.0" - "@aws-sdk/middleware-signing" "3.292.0" - "@aws-sdk/middleware-stack" "3.292.0" - "@aws-sdk/middleware-user-agent" "3.293.0" - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/node-http-handler" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/smithy-client" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - "@aws-sdk/util-base64" "3.292.0" - "@aws-sdk/util-body-length-browser" "3.292.0" - "@aws-sdk/util-body-length-node" "3.292.0" - "@aws-sdk/util-defaults-mode-browser" "3.292.0" - "@aws-sdk/util-defaults-mode-node" "3.292.0" - "@aws-sdk/util-endpoints" "3.293.0" - "@aws-sdk/util-retry" "3.292.0" - "@aws-sdk/util-user-agent-browser" "3.292.0" - "@aws-sdk/util-user-agent-node" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" + "@aws-sdk/config-resolver" "3.296.0" + "@aws-sdk/credential-provider-node" "3.296.0" + "@aws-sdk/fetch-http-handler" "3.296.0" + "@aws-sdk/hash-node" "3.296.0" + "@aws-sdk/invalid-dependency" "3.296.0" + "@aws-sdk/middleware-content-length" "3.296.0" + "@aws-sdk/middleware-endpoint" "3.296.0" + "@aws-sdk/middleware-host-header" "3.296.0" + "@aws-sdk/middleware-logger" "3.296.0" + "@aws-sdk/middleware-recursion-detection" "3.296.0" + "@aws-sdk/middleware-retry" "3.296.0" + "@aws-sdk/middleware-sdk-sts" "3.296.0" + "@aws-sdk/middleware-serde" "3.296.0" + "@aws-sdk/middleware-signing" "3.296.0" + "@aws-sdk/middleware-stack" "3.296.0" + "@aws-sdk/middleware-user-agent" "3.296.0" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/node-http-handler" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/smithy-client" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + "@aws-sdk/util-base64" "3.295.0" + "@aws-sdk/util-body-length-browser" "3.295.0" + "@aws-sdk/util-body-length-node" "3.295.0" + "@aws-sdk/util-defaults-mode-browser" "3.296.0" + "@aws-sdk/util-defaults-mode-node" "3.296.0" + "@aws-sdk/util-endpoints" "3.296.0" + "@aws-sdk/util-retry" "3.296.0" + "@aws-sdk/util-user-agent-browser" "3.296.0" + "@aws-sdk/util-user-agent-node" "3.296.0" + "@aws-sdk/util-utf8" "3.295.0" fast-xml-parser "4.1.2" - tslib "^2.3.1" - -"@aws-sdk/config-resolver@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.292.0.tgz#c5c9b86a2a75aa591bc7acdbe94557367a2a7d90" - integrity sha512-cB3twnNR7vYvlt2jvw8VlA1+iv/tVzl+/S39MKqw2tepU+AbJAM0EHwb/dkf1OKSmlrnANXhshx80MHF9zL4mA== - dependencies: - "@aws-sdk/signature-v4" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-config-provider" "3.292.0" - "@aws-sdk/util-middleware" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-env@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.292.0.tgz#bde3333b7bee715c8a41113f1c6deb0e896a59da" - integrity sha512-YbafSG0ZEKE2969CJWVtUhh3hfOeLPecFVoXOtegCyAJgY5Ghtu4TsVhL4DgiGAgOC30ojAmUVQEXzd7xJF5xA== - dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-imds@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.292.0.tgz#557e59c637c3852cac54534319c75eb015aa3081" - integrity sha512-W/peOgDSRYulgzFpUhvgi1pCm6piBz6xrVN17N4QOy+3NHBXRVMVzYk6ct2qpLPgJUSEZkcpP+Gds+bBm8ed1A== - dependencies: - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-ini@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.294.0.tgz#b4ff9f5da2c46b12c61acf85caab9eb3ed5330cd" - integrity sha512-pdTPbaAb5bWA+DnuKoL2TpXeNDp6Ejpv/OYt+bw2gdzl9w5r/ZCtUTTbW+Vvejr4WL5s3c1bY96kwdqCn7iLqA== - dependencies: - "@aws-sdk/credential-provider-env" "3.292.0" - "@aws-sdk/credential-provider-imds" "3.292.0" - "@aws-sdk/credential-provider-process" "3.292.0" - "@aws-sdk/credential-provider-sso" "3.294.0" - "@aws-sdk/credential-provider-web-identity" "3.292.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-node@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.294.0.tgz#0475d63f9627e3e429cda19b8b0f164fc01437a0" - integrity sha512-zUL1Qhb4BsQIZCs/TPpG4oIYH/9YsGiS+Se1tasSGjTOLfBy7jhOZ0QIdpEeyAx/EP8blOBredM9xWfEXgiHVA== - dependencies: - "@aws-sdk/credential-provider-env" "3.292.0" - "@aws-sdk/credential-provider-imds" "3.292.0" - "@aws-sdk/credential-provider-ini" "3.294.0" - "@aws-sdk/credential-provider-process" "3.292.0" - "@aws-sdk/credential-provider-sso" "3.294.0" - "@aws-sdk/credential-provider-web-identity" "3.292.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-process@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.292.0.tgz#52caa9d46d227e02fda5807d32a177a0819eee97" - integrity sha512-CFVXuMuUvg/a4tknzRikEDwZBnKlHs1LZCpTXIGjBdUTdosoi4WNzDLzGp93ZRTtcgFz+4wirz2f7P3lC0NrQw== - dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-sso@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.294.0.tgz#719ad377a41c80bdf087ca11e80890c3b8cbb8f4" - integrity sha512-UxrcAA/0l7j9+3tolYcG5M61D/IE1Bjd/9H87H1i2A2BrwUUBhW1Dp/vvROEDrrywlMDG3CDF3T/7ADtTak+sg== - dependencies: - "@aws-sdk/client-sso" "3.294.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/token-providers" "3.294.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/credential-provider-web-identity@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.292.0.tgz#60e180eadd0947891ed041f6a4574fa2074d0d4c" - integrity sha512-4DbtIEM9gGVfqYlMdYXg3XY+vBhemjB1zXIequottW8loLYM8Vuz4/uGxxKNze6evVVzowsA0wKrYclE1aj/Rg== - dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/fetch-http-handler@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.292.0.tgz#a99d915e019e888bfdfa3e5da68606bfc4c80522" - integrity sha512-zh3bhUJbL8RSa39ZKDcy+AghtUkIP8LwcNlwRIoxMQh3Row4D1s4fCq0KZCx98NJBEXoiTLyTQlZxxI//BOb1Q== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/querystring-builder" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-base64" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/hash-node@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.292.0.tgz#4f62e36a7cdefd0f4bca4c1d16261d36a4596442" - integrity sha512-1yLxmIsvE+eK36JXEgEIouTITdykQLVhsA5Oai//Lar6Ddgu1sFpLDbdkMtKbrh4I0jLN9RacNCkeVQjZPTCCQ== - dependencies: - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-buffer-from" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/invalid-dependency@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.292.0.tgz#0e5b47cacf459db6ae8dddc02d613a5bd0ff3555" - integrity sha512-39OUV78CD3TmEbjhpt+V+Fk4wAGWhixqHxDSN8+4WL0uB4Fl7k5m3Z9hNY78AttHQSl2twR7WtLztnXPAFsriw== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + tslib "^2.5.0" + +"@aws-sdk/config-resolver@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/config-resolver/-/config-resolver-3.296.0.tgz#be6971d182ef53de21140b6fa00f15e86aa9fd4b" + integrity sha512-Ecdp7fmIitHo49NRCyIEHb9xlI43J7qkvhcwaKGGqN5jvoh0YhR2vNr195wWG8Ip/9PwsD4QV4g/XT5EY7XkMA== + dependencies: + "@aws-sdk/signature-v4" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-config-provider" "3.295.0" + "@aws-sdk/util-middleware" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-env@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-env/-/credential-provider-env-3.296.0.tgz#9812fc635876cba5650cd6d1f30c70f34b41dcde" + integrity sha512-eDWSU3p04gytkkVXnYn05YzrP5SEaj/DQiafd4y+iBl8IFfF3zM6982rs6qFhvpwrHeSbLqHNfKR1HDWVwfG5g== + dependencies: + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-imds@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.296.0.tgz#200ea2af352451cdd99584baac846bb86cb636b1" + integrity sha512-DXqksHyT/GVVYbPGknMARKi6Rk6cqCHJUAejePIx5cz1SCKlDrV704hykafHIjaDoy/Zeoj1wzjfwy83sJfDCg== + dependencies: + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-ini@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.296.0.tgz#c2afe7c064e6dd6f7f3900870a2c1b9b98f00fa5" + integrity sha512-U0ecY0GX2jeDAgmTzaVO9YgjlLUfb8wgZSu1OwbOxCJscL/5eFkhcF0/xJQXDbRgcj4H4dlquqeSWsBVl/PgvQ== + dependencies: + "@aws-sdk/credential-provider-env" "3.296.0" + "@aws-sdk/credential-provider-imds" "3.296.0" + "@aws-sdk/credential-provider-process" "3.296.0" + "@aws-sdk/credential-provider-sso" "3.296.0" + "@aws-sdk/credential-provider-web-identity" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-node@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-node/-/credential-provider-node-3.296.0.tgz#62c5a1600f5b60013c474476d943b831e56b17f0" + integrity sha512-oCkmh2b1DQhHkhd/qA9jiSIOkrBBK7cMg1/PVIgLw8e15NkzUHBObLJ/ZQw6ZzCxZzjlMYaFv9oCB8hyO8txmA== + dependencies: + "@aws-sdk/credential-provider-env" "3.296.0" + "@aws-sdk/credential-provider-imds" "3.296.0" + "@aws-sdk/credential-provider-ini" "3.296.0" + "@aws-sdk/credential-provider-process" "3.296.0" + "@aws-sdk/credential-provider-sso" "3.296.0" + "@aws-sdk/credential-provider-web-identity" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-process@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-process/-/credential-provider-process-3.296.0.tgz#d18399dc70306240d8b96b8de1eeba545457f92f" + integrity sha512-AY7sTX2dGi8ripuCpcJLYHOZB2wJ6NnseyK/kK5TfJn/pgboKwuGtz0hkJCVprNWomKa6IpHksm7vLQ4O2E+UA== + dependencies: + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-sso@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.296.0.tgz#c26648e9a16d25eadfe1c8125e507afa3f723566" + integrity sha512-zPFHDX/niXfcQrKQhmBv1XPYEe4b7im4vRKrzjYXgDRpG2M3LP0KaWIwN6Ap+GRYBNBthen86vhTlmKGzyU5YA== + dependencies: + "@aws-sdk/client-sso" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/token-providers" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/credential-provider-web-identity@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.296.0.tgz#91323cc41aea384e755f053b44e51a1d101ecd38" + integrity sha512-Rl6Ohoekxe+pccA55XXQDW5wApbg3rGWr6FkmPRcg7Ld6Vfe+HL8OtfsFf83/0eoFerevbif+00BdknXWT05LA== + dependencies: + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/fetch-http-handler@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.296.0.tgz#067426b5e1b6edf375abb61070fd918f44e59493" + integrity sha512-wHuKQ+PGKQkYGVuIGscbcbbASl8yIVOSC+QTrZQ4PNsMDvQd9ey2npsmxZk1Z2ULaxY+qYtZCmByyGc8k51TtQ== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/querystring-builder" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-base64" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/hash-node@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/hash-node/-/hash-node-3.296.0.tgz#ccf08fe0154d1e83bccd9cb4015a6f41245b8e44" + integrity sha512-01Sgxm0NE3rtEznLY8vx1bfNsIeM5Sk5SjY9RXqnvCf9EyaKH9x5FMS/DX/SgDdIYi3aXbTwiwScNVCNBzOIQA== + dependencies: + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-buffer-from" "3.295.0" + "@aws-sdk/util-utf8" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/invalid-dependency@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/invalid-dependency/-/invalid-dependency-3.296.0.tgz#d3f7d059be44e9a3de2111f82df9f9b560fd1634" + integrity sha512-dmy4fUds0woHGjxwziaSYCLtb/SOfoEeQjW0GFvHj+YGFyY5hJzna4C759Tt8X5obh1evUXlQcH+FL7TS+7tRQ== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" "@aws-sdk/is-array-buffer@3.201.0": version "3.201.0" @@ -345,261 +345,261 @@ dependencies: tslib "^2.3.1" -"@aws-sdk/is-array-buffer@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/is-array-buffer/-/is-array-buffer-3.292.0.tgz#d599c7ad4ad104918d52b8d2160091ca5b0a1971" - integrity sha512-kW/G5T/fzI0sJH5foZG6XJiNCevXqKLxV50qIT4B1pMuw7regd4ALIy0HwSqj1nnn9mSbRWBfmby0jWCJsMcwg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/middleware-content-length@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.292.0.tgz#f2035aee536abf553b743202879ee86171c4c3c7" - integrity sha512-2gMWzQus5mj14menolpPDbYBeaOYcj7KNFZOjTjjI3iQ0KqyetG6XasirNrcJ/8QX1BRmpTol8Xjp2Ue3Gbzwg== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-endpoint@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.292.0.tgz#c6809a2e001ab03cac223dfae48439e893da627b" - integrity sha512-cPMkiSxpZGG6tYlW4OS+ucS6r43f9ddX9kcUoemJCY10MOuogdPjulCAjE0HTs2PLKSOrrG4CTP4Q4wWDrH4Bw== - dependencies: - "@aws-sdk/middleware-serde" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/signature-v4" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/url-parser" "3.292.0" - "@aws-sdk/util-config-provider" "3.292.0" - "@aws-sdk/util-middleware" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-host-header@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.292.0.tgz#513b011fcabedf29e0a6706a4aa3867bc7d813e4" - integrity sha512-mHuCWe3Yg2S5YZ7mB7sKU6C97XspfqrimWjMW9pfV2usAvLA3R0HrB03jpR5vpZ3P4q7HB6wK3S6CjYMGGRNag== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-logger@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.292.0.tgz#dd5ca0f20b06b1b74f918ddf0264ece1e9887aa1" - integrity sha512-yZNY1XYmG3NG+uonET7jzKXNiwu61xm/ZZ6i/l51SusuaYN+qQtTAhOFsieQqTehF9kP4FzbsWgPDwD8ZZX9lw== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-recursion-detection@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.292.0.tgz#d422bbc9efa2df2481ad56d0db553b0c0652e615" - integrity sha512-kA3VZpPko0Zqd7CYPTKAxhjEv0HJqFu2054L04dde1JLr43ro+2MTdX7vsHzeAFUVRphqatFFofCumvXmU6Mig== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-retry@3.293.0": - version "3.293.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.293.0.tgz#e7706c926cce1f21e5dbea2ab8d2828e50d6a303" - integrity sha512-7tiaz2GzRecNHaZ6YnF+Nrtk3au8qF6oiipf11R7MJiqJ0fkMLnz/iRrlakDziS9qF/a9v+3yxb4W4NHK3f4Tw== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/service-error-classification" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-middleware" "3.292.0" - "@aws-sdk/util-retry" "3.292.0" - tslib "^2.3.1" +"@aws-sdk/is-array-buffer@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/is-array-buffer/-/is-array-buffer-3.295.0.tgz#09de3d0fb9fb9d28c9edc48e86ca546d34fd8c98" + integrity sha512-SCIt10cr5dud7hvwveU4wkLjvkGssJ3GrcbHCds2NwI+JHmpcaaNYLAqi305JAuT29T36U5ssTFDSmrrEOcfag== + dependencies: + tslib "^2.5.0" + +"@aws-sdk/middleware-content-length@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-content-length/-/middleware-content-length-3.296.0.tgz#7e7fa9c6b7618f0021387fe4ee3e977a06c7b514" + integrity sha512-e7lJm3kkC2pWZdIw23gpMUk1GrpRTBRqhdFfVwyduXw6Wo4nBYv8Z5MOYy3/SlpjE1BDCaPBoZ3O19cO3arHxg== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-endpoint@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.296.0.tgz#df65c578ea6b216cd722b4e4a6baeaf28214333f" + integrity sha512-t8gc7FHr6KkFD35eSzv3VEYl2vNqzAHbux5Bn0su6TJbaTxXiQKcf2jZDTAh7LzUyrB1LH39mNN+at7r3Qm/3g== + dependencies: + "@aws-sdk/middleware-serde" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/signature-v4" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/url-parser" "3.296.0" + "@aws-sdk/util-config-provider" "3.295.0" + "@aws-sdk/util-middleware" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-host-header@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-host-header/-/middleware-host-header-3.296.0.tgz#e5c0f548c68751669f036e2a4637b05705629085" + integrity sha512-V47dFtfkX5lXWv9GDp71gZVCRws4fEdQ9QF9BQ/2UMSNrYjQLg6mFe7NibH+IJoNOid2FIwWIl94Eos636VGYQ== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-logger@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-logger/-/middleware-logger-3.296.0.tgz#5d8d7e688697bdb2470751ded15b7be7728e5461" + integrity sha512-LzfEEFyBR9LXdWwLdtBrmi1vLdzgdJNntEgzqktVF8LwaCyY+9xIE6TGu/2V+9fJHAwECxjOC1eQbNQdAZ0Tmw== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-recursion-detection@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.296.0.tgz#776d4a1f32ae745896fc3b46fd40b7937f5b47b9" + integrity sha512-UG7TLDPz9ImQG0uVklHTxE9Us7rTImwN+6el6qZCpoTBuGeXgOkfb0/p8izJyFgY/hMUR4cZqs7IdCDUkxQF3w== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-retry@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-retry/-/middleware-retry-3.296.0.tgz#71d4b9213cbbf28f7c156b30fa333b04fd1f0123" + integrity sha512-Tz3gDZm5viQg7BG5bF9Cg0qbm4+Ur3a7wcGkj1XHQdzGDYR76gxvU0bfnSNUmWRz3kaVNyISyXSOUygG0cbhbw== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/service-error-classification" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-middleware" "3.296.0" + "@aws-sdk/util-retry" "3.296.0" + tslib "^2.5.0" uuid "^8.3.2" -"@aws-sdk/middleware-sdk-sts@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.292.0.tgz#927cecb0167b84aceddc959039f368ea2a593e87" - integrity sha512-GN5ZHEqXZqDi+HkVbaXRX9HaW/vA5rikYpWKYsmxTUZ7fB7ijvEO3co3lleJv2C+iGYRtUIHC4wYNB5xgoTCxg== - dependencies: - "@aws-sdk/middleware-signing" "3.292.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/signature-v4" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-serde@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.292.0.tgz#4834ee9b03c50e11349306753c27086bac4dac08" - integrity sha512-6hN9mTQwSvV8EcGvtXbS/MpK7WMCokUku5Wu7X24UwCNMVkoRHLIkYcxHcvBTwttuOU0d8hph1/lIX4dkLwkQw== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-signing@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.292.0.tgz#51868199d23d28d264a06adcec52373c8da88c85" - integrity sha512-GVfoSjDjEQ4TaO6x9MffyP3uRV+2KcS5FtexLCYOM9pJcnE9tqq9FJOrZ1xl1g+YjUVKxo4x8lu3tpEtIb17qg== - dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/signature-v4" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-middleware" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/middleware-stack@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.292.0.tgz#279f4b688d91f9757cedd5311ae86ad6e3e6ac63" - integrity sha512-WdQpRkuMysrEwrkByCM1qCn2PPpFGGQ2iXqaFha5RzCdZDlxJni9cVNb6HzWUcgjLEYVTXCmOR9Wxm3CNW44Qg== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/middleware-user-agent@3.293.0": - version "3.293.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.293.0.tgz#ce802bc73c5d4db043b5454e894e4dd1663442b2" - integrity sha512-gZ7/e6XwpKk9mvgA78q4Ffc796jTn02TUKx2qMDnkLVbeJXBNN2jnvYEKq8v70+o7fd/ALRudg8gBDmkkhM/Hw== - dependencies: - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-endpoints" "3.293.0" - tslib "^2.3.1" - -"@aws-sdk/node-config-provider@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.292.0.tgz#52817db9e056fedb967704b156fde4b5516dacf1" - integrity sha512-S3NnC9dQ5GIbJYSDIldZb4zdpCOEua1tM7bjYL3VS5uqCEM93kIi/o/UkIUveMp/eqTS2LJa5HjNIz5Te6je0A== - dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/node-http-handler@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.292.0.tgz#f7a8fca359932ba56acf65eafd169db9d2cebc9d" - integrity sha512-L/E3UDSwXLXjt1XWWh0RBD55F+aZI1AEdPwdES9i1PjnZLyuxuDhEDptVibNN56+I9/4Q3SbmuVRVlOD0uzBag== - dependencies: - "@aws-sdk/abort-controller" "3.292.0" - "@aws-sdk/protocol-http" "3.292.0" - "@aws-sdk/querystring-builder" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/property-provider@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.292.0.tgz#2bdf9f6e15521350936636107a2057a19c1e55ec" - integrity sha512-dHArSvsiqhno/g55N815gXmAMrmN8DP7OeFNqJ4wJG42xsF2PFN3DAsjIuHuXMwu+7A3R1LHqIpvv0hA9KeoJQ== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/protocol-http@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.292.0.tgz#1829036bdec59698f44daadb590e3fa552494955" - integrity sha512-NLi4fq3k41aXIh1I97yX0JTy+3p6aW1NdwFwdMa674z86QNfb4SfRQRZBQe9wEnAZ/eWHVnlKIuII+U1URk/Kg== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/querystring-builder@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.292.0.tgz#a2fd9c2540a80718fb2f52c606926f8d2e08a695" - integrity sha512-XElIFJaReIm24eEvBtV2dOtZvcm3gXsGu/ftG8MLJKbKXFKpAP1q+K6En0Bs7/T88voKghKdKpKT+eZUWgTqlg== - dependencies: - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-uri-escape" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/querystring-parser@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.292.0.tgz#32645c834b4dd1660176bf0b6df201d688242c66" - integrity sha512-iTYpYo7a8X9RxiPbjjewIpm6XQPx2EOcF1dWCPRII9EFlmZ4bwnX+PDI36fIo9oVs8TIKXmwNGODU9nsg7CSAw== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/service-error-classification@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.292.0.tgz#8fef4ee8e553218234eca91dd479902092b12bac" - integrity sha512-X1k3sixCeC45XSNHBe+kRBQBwPDyTFtFITb8O5Qw4dS9XWGhrUJT4CX0qE5aj8qP3F9U5nRizs9c2mBVVP0Caw== - -"@aws-sdk/shared-ini-file-loader@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.292.0.tgz#08260536116c4e0b44ebd0d0bd197ff15815090f" - integrity sha512-Av2TTYg1Jig2kbkD56ybiqZJB6vVrYjv1W5UQwY/q3nA/T2mcrgQ20ByCOt5Bv9VvY7FSgC+znj+L4a7RLGmBg== - dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/signature-v4@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.292.0.tgz#1fbb9ceea4c80c079b64f836af365985970f2a5f" - integrity sha512-+rw47VY5mvBecn13tDQTl1ipGWg5tE63faWgmZe68HoBL87ZiDzsd7bUKOvjfW21iMgWlwAppkaNNQayYRb2zg== - dependencies: - "@aws-sdk/is-array-buffer" "3.292.0" - "@aws-sdk/types" "3.292.0" - "@aws-sdk/util-hex-encoding" "3.292.0" - "@aws-sdk/util-middleware" "3.292.0" - "@aws-sdk/util-uri-escape" "3.292.0" - "@aws-sdk/util-utf8" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/smithy-client@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.292.0.tgz#232b7bac2115d52390057bab6a79d14cffe06698" - integrity sha512-S8PKzjPkZ6SXYZuZiU787dMsvQ0d/LFEhw2OI4Oe2An9Fc2IwJ2FYukyHoQJOV2tV0DiuMebPo7eMyQyjKElvA== - dependencies: - "@aws-sdk/middleware-stack" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/token-providers@3.294.0": - version "3.294.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.294.0.tgz#cac10f395f89680fda464015723439bcdabc0903" - integrity sha512-6nwO04LtC5f4AsUvGZXyjaswuEK4Rr2VsuANpMKrPCgunRfI58a8YXLniudOSXN6e7CFJ6M3uo/h5YXqtnzGug== - dependencies: - "@aws-sdk/client-sso-oidc" "3.294.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/shared-ini-file-loader" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/types@3.292.0", "@aws-sdk/types@^3.222.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.292.0.tgz#54aa7347123116ac368f08df5e02954207328c63" - integrity sha512-1teYAY2M73UXZxMAxqZxVS2qwXjQh0OWtt7qyLfha0TtIk/fZ1hRwFgxbDCHUFcdNBSOSbKH/ESor90KROXLCQ== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/url-parser@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.292.0.tgz#b8b81d1c099e248813afbc33206e24b97f14228a" - integrity sha512-NZeAuZCk1x6TIiWuRfbOU6wHPBhf0ly2qOHzWut4BCH+b4RrDmFF8EmXcH1auEfGhE7yRyR6XqIN0t3S+hYACA== - dependencies: - "@aws-sdk/querystring-parser" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/util-base64@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-base64/-/util-base64-3.292.0.tgz#b07fc9752edad18b32ad4b1cc752b5df2d133377" - integrity sha512-zjNCwNdy617yFvEjZorepNWXB2sQCVfsShCwFy/kIQ5iW5tT2jQKaqc0K77diU9atkooxw9p1W9m9sOgrkOFNw== - dependencies: - "@aws-sdk/util-buffer-from" "3.292.0" - tslib "^2.3.1" - -"@aws-sdk/util-body-length-browser@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.292.0.tgz#1baefd126c8881ff140c83111aeb79c6d5b21cb3" - integrity sha512-Wd/BM+JsMiKvKs/bN3z6TredVEHh2pKudGfg3CSjTRpqFpOG903KDfyHBD42yg5PuCHoHoewJvTPKwgn7/vhaw== - dependencies: - tslib "^2.3.1" - -"@aws-sdk/util-body-length-node@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-node/-/util-body-length-node-3.292.0.tgz#9f3f91c80e9b4e2afb226550e9a0b3acde8bcd02" - integrity sha512-BBgipZ2P6RhogWE/qj0oqpdlyd3iSBYmb+aD/TBXwB2lA/X8A99GxweBd/kp06AmcJRoMS9WIXgbWkiiBlRlSA== - dependencies: - tslib "^2.3.1" +"@aws-sdk/middleware-sdk-sts@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.296.0.tgz#19c29a7e916af16c51132339c71af526a3ec4c10" + integrity sha512-0EnHtiRzcRcXaF6zEgcRGUtVgX0RqczwlGXjtryHcxiqU/+adqbRuckC7bdMF4Zva6GVPS25XppvGF4M+UzAEw== + dependencies: + "@aws-sdk/middleware-signing" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/signature-v4" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-serde@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-serde/-/middleware-serde-3.296.0.tgz#489454861c21446100dfc609d73073b4d164a864" + integrity sha512-xk2PpWAAX758oUTGkGBAncpOr7ddIXisjD2Y2r9DDXuE4JMho2x6zcrVSiYsGIQ6MHZ9XNJKBVDiK9PA4iQWGQ== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-signing@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-signing/-/middleware-signing-3.296.0.tgz#44816a5c7244f812587f8e8f970a5e51b4cca373" + integrity sha512-wyiG+WPDvugGTIPpKchGOdvvpcMZEN2IfP6iK//QAqGXsC6rDm5+SNZ3+elvduZjPUdVA06W0CcFYBAkVz8D7Q== + dependencies: + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/signature-v4" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-middleware" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/middleware-stack@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-stack/-/middleware-stack-3.296.0.tgz#4c95d9aeb655270710f3e1fd2af39a6b8a760e33" + integrity sha512-Rgo7/mdk9tt4qa9+pzG3AoGNhuj7NmnF5H+3DoPm75h58BYP8hKbKobdPGgI2rZLPtO3PGgmyw/4K4tQJPIZ8g== + dependencies: + tslib "^2.5.0" + +"@aws-sdk/middleware-user-agent@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.296.0.tgz#e2fb57b8427b7b347a971d93cf4fe92831221640" + integrity sha512-L7jacxSt6gxX1gD3tQtfwHqBDk5rT2wWD3rxBa6rs7f81b9ObgY/sPT2IgRT7JNCVzvKLYFxJaTklDj65mY1SQ== + dependencies: + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-endpoints" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/node-config-provider@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/node-config-provider/-/node-config-provider-3.296.0.tgz#d333190ed96881cebb266f5ed968f1da50c5501d" + integrity sha512-S/tYcuw9ACOWRmRe5oUkmutQ+TApjVs0yDl504DKs74f3p4kRgI/MGWkBiR3mcfThHaxu81z0gkRL2qfW2SDwg== + dependencies: + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/node-http-handler@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/node-http-handler/-/node-http-handler-3.296.0.tgz#163e71eec6524746d2a93681bd353c5bdf870ae2" + integrity sha512-D15jjPqYSNhEq58BwkmIpD3VwqG4bL5acAaNu5wWAI4S4236JlG+nmpi3gEeE25z1KCwtBl7G30fVRgXYJ2CWA== + dependencies: + "@aws-sdk/abort-controller" "3.296.0" + "@aws-sdk/protocol-http" "3.296.0" + "@aws-sdk/querystring-builder" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/property-provider@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/property-provider/-/property-provider-3.296.0.tgz#10dae9edcdfa8ef97d1781c2f7fdf34f8545831c" + integrity sha512-kjczxE9Od5LoAKQOmxVWISJ9oPG3aCsB+2+NdI+k9EJFDXUUdMcVV3Skei5uHGgKLMsI6CZy8ezZx6YxOSLSew== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/protocol-http@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/protocol-http/-/protocol-http-3.296.0.tgz#064d7ceb739f9721bde89b23545a35704b8b7dc7" + integrity sha512-0U1Z/+tpwdRiSToWo1bpdkbTzjbLugTnd02ATjvK4B7zi363SUGlKfoWgV+v7FU/22CIUI1ZIe7XzXvq5rJfjA== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/querystring-builder@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-builder/-/querystring-builder-3.296.0.tgz#18ef70d03e1abf76e75db0603cb5e9d30fe04814" + integrity sha512-+ZrZdTRaVI1R1xKQNrTwuiRoPateUaJ/DNw/myJpTPt+ZRg0H7LKBGaJYwL4pl5l/z1UM/E1fOttSfSW7GHxfw== + dependencies: + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-uri-escape" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/querystring-parser@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/querystring-parser/-/querystring-parser-3.296.0.tgz#9c708831e27a06afc0e01f33db1cbfbfbcae5cb9" + integrity sha512-nLNZKVQfK42euv7101cE5qfg17YCtGcfccx3B5XSAzvyTROR46kwYqbEvYSsWisbZoRhbQc905gB/5E0U5HDIw== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/service-error-classification@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/service-error-classification/-/service-error-classification-3.296.0.tgz#3596bcb45c0ae8619e214ac1ce5351eeee502135" + integrity sha512-YIsWSQ38e1+FqXz3CMrkKS0JD8OLlHf6I72PJhbfegePpQQFqi9R8OREjP5V7UR9Z972yruv4i96ROH6SCtmoA== + +"@aws-sdk/shared-ini-file-loader@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.296.0.tgz#49ef62821ad19aa674edcd688b2c87b229e20b9a" + integrity sha512-S31VfdiruN2trayoeB7HifsEB+WXhtfECosj90K903rzfyX+Eo+uUoK9O07UotxJ2gB3MBQ7R8pNnZio3Lb66w== + dependencies: + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/signature-v4@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/signature-v4/-/signature-v4-3.296.0.tgz#15d3a5712cb767cb93be9791f80ace9edcbeb440" + integrity sha512-NQyJ/FClty4VmF1WoV4rOkbN0Unn0zevzy8iJrYhqxE3Sc7lySM4Btnsd4Iqelm2dR6l+jNRApGgD8NvoGjGig== + dependencies: + "@aws-sdk/is-array-buffer" "3.295.0" + "@aws-sdk/types" "3.296.0" + "@aws-sdk/util-hex-encoding" "3.295.0" + "@aws-sdk/util-middleware" "3.296.0" + "@aws-sdk/util-uri-escape" "3.295.0" + "@aws-sdk/util-utf8" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/smithy-client@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/smithy-client/-/smithy-client-3.296.0.tgz#8a534da9405ba2144bbf41d27feda91b52407a4b" + integrity sha512-HEpsLNozGe9XOWouq5A1TFw5KhFodi8tZqYVNEbSpLoRR+EQKf6OCRvKIRkOn7FnnaOasOR1n7S0D51UG6/irw== + dependencies: + "@aws-sdk/middleware-stack" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/token-providers@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/token-providers/-/token-providers-3.296.0.tgz#1e9b09e2ace5a469a4c908efdc1c8321e978a367" + integrity sha512-yC1ku7A5S+o/CLlgbgDB2bx8+Wq43qj8xfohmTuIhpiP2m/NyUiRVv6S6ARONLI6bVeo1T2/BFk5Q9DfE2xzAQ== + dependencies: + "@aws-sdk/client-sso-oidc" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/shared-ini-file-loader" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/types@3.296.0", "@aws-sdk/types@^3.222.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/types/-/types-3.296.0.tgz#4de4a7c8e16a97e04a0cedf3c51ce96779a7f686" + integrity sha512-s0wIac64rrMEo2ioUxP9IarGiiCGmelCspNcoNTPSjGl25QqjhyfQqTeGgS58qJ4fHoQb07qra39930xp1IzJg== + dependencies: + tslib "^2.5.0" + +"@aws-sdk/url-parser@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/url-parser/-/url-parser-3.296.0.tgz#d063a1566ac92722cf13e86572e0ca54c33be489" + integrity sha512-nBgeGF+ziuDSLz+y8UAl6zL2tXxDwh3wqeXFe9ZcR4YW71BWuh+vEqEsaEMutOrfnJacCrYKTs9TkIOW41cEGg== + dependencies: + "@aws-sdk/querystring-parser" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" + +"@aws-sdk/util-base64@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-base64/-/util-base64-3.295.0.tgz#99046cac5ab052252f9bd3340dc9c0e7cf483570" + integrity sha512-z1r40BsBiOTALnzASvLb4qutGwPpL+jH2UKTCV5WJLXZFMzRnpZaRfeZGE8lMJ/i0+jv9H9G1FmVzE8UgB4rhw== + dependencies: + "@aws-sdk/util-buffer-from" "3.295.0" + tslib "^2.5.0" + +"@aws-sdk/util-body-length-browser@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.295.0.tgz#eb0400b7bec4fd5969fe18ce0ddf552db8a2e441" + integrity sha512-NbG4/RSHV1VueStPRclSo5zRjNUmcDlNAs29sniZF+YaN0+Ad7hEdu/YgJw39shBfUaurz2Wv0pufU3cxE5Tng== + dependencies: + tslib "^2.5.0" + +"@aws-sdk/util-body-length-node@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-body-length-node/-/util-body-length-node-3.295.0.tgz#587761de7cd79c91ca033de9545527a502e61133" + integrity sha512-dvGf8VBmrT66lM0n6P/h7wnlHS4Atafyivyl8f4TUCMvRdpqryvvrtnX6yYcq3T7VKQmas/2SOlgDvcrhGXaiw== + dependencies: + tslib "^2.5.0" "@aws-sdk/util-buffer-from@3.208.0": version "3.208.0" @@ -609,104 +609,104 @@ "@aws-sdk/is-array-buffer" "3.201.0" tslib "^2.3.1" -"@aws-sdk/util-buffer-from@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-buffer-from/-/util-buffer-from-3.292.0.tgz#b2d0eff4e63b0cc8a5d5dc133b76c3fe3daee2fc" - integrity sha512-RxNZjLoXNxHconH9TYsk5RaEBjSgTtozHeyIdacaHPj5vlQKi4hgL2hIfKeeNiAfQEVjaUFF29lv81xpNMzVMQ== +"@aws-sdk/util-buffer-from@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-buffer-from/-/util-buffer-from-3.295.0.tgz#616f0643a205733e03d4b00d1f00ba16b112c5aa" + integrity sha512-5ezVEITQnrQKn+CU9qfZHgRp2nrrbX0Clmlm9aiNjAEQEPHY33tWl0t6n8h8yU+IpGiNRMWBVC4aSJaE5NA1mA== dependencies: - "@aws-sdk/is-array-buffer" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/is-array-buffer" "3.295.0" + tslib "^2.5.0" -"@aws-sdk/util-config-provider@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-config-provider/-/util-config-provider-3.292.0.tgz#6a9c7b7e29028135862ba880c615e2f975d68c6d" - integrity sha512-t3noYll6bPRSxeeNNEkC5czVjAiTPcsq00OwfJ2xyUqmquhLEfLwoJKmrT1uP7DjIEXdUtfoIQ2jWiIVm/oO5A== +"@aws-sdk/util-config-provider@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz#c0f76407181722791b0a7bf80a9f01e78fd80250" + integrity sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w== dependencies: - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-defaults-mode-browser@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.292.0.tgz#8890ee4ff8939c9ada363cae14ec7196269ff14c" - integrity sha512-7+zVUlMGfa8/KT++9humHo6IDxTnxMCmWUj5jVNlkpk6h7Ecmppf7aXotviyVIA43lhtz0p2AErs0N0ekEUK+w== +"@aws-sdk/util-defaults-mode-browser@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.296.0.tgz#c87fcf217de8b827b2c4f8604eeaa109719741ea" + integrity sha512-R+nzc0PuTMaOG3LV4FoS5W7oMAqqr8G1IyI+A4Q5iem6YDMF157qV5h6wpIt3A8n9YfjyssLsAT/WPfyv/M79w== dependencies: - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" bowser "^2.11.0" - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-defaults-mode-node@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.292.0.tgz#fc7f54cd935b8974d1b16d6c8bed8b9ae99af20e" - integrity sha512-SSIw85eF4BVs0fOJRyshT+R3b/UmBPhiVKCUZm2rq6+lIGkDPiSwQU3d/80AhXtiL5SFT/IzAKKgQd8qMa7q3A== +"@aws-sdk/util-defaults-mode-node@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.296.0.tgz#1c09f936eadc0e82ec519951d4b49c119c6e9b23" + integrity sha512-zsIYynqjBE2xlzpJsT3lb5gy06undSgYq9ziId7QaHFagqtrecHI2ZMcu2tBFcONpu9NPj3nqJB+kJUAnBc8sQ== dependencies: - "@aws-sdk/config-resolver" "3.292.0" - "@aws-sdk/credential-provider-imds" "3.292.0" - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/property-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/config-resolver" "3.296.0" + "@aws-sdk/credential-provider-imds" "3.296.0" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/property-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" -"@aws-sdk/util-endpoints@3.293.0": - version "3.293.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.293.0.tgz#fd3ecd35a84b91a8ba1672f6e2e92cf39ef205ba" - integrity sha512-R/99aNV49Refpv5guiUjEUrZYlvnfaNBniB+/ZtMO3ixxUopapssCrUivuJrmhccmrYaTCZw7dRzIWjU1jJhKg== +"@aws-sdk/util-endpoints@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-endpoints/-/util-endpoints-3.296.0.tgz#ed4b77d92bb39b3b80d6e36a1a8a7eb3e7f19cda" + integrity sha512-YraGGLJepXM6HCTaqEGTFf8RFRBdJ0C6uG5k0kVhiXmYxBkeupn8J07CVp9jfWqcPYWElAnMGVEZKU1OjRo4HQ== dependencies: - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" -"@aws-sdk/util-hex-encoding@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.292.0.tgz#a8b8b989fcf518a18606cb6d81f90d92b0660db4" - integrity sha512-qBd5KFIUywQ3qSSbj814S2srk0vfv8A6QMI+Obs1y2LHZFdQN5zViptI4UhXhKOHe+NnrHWxSuLC/LMH6q3SmA== +"@aws-sdk/util-hex-encoding@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz#13acb924f88785d317c9bec37e5ca173ccc4a0ca" + integrity sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ== dependencies: - tslib "^2.3.1" + tslib "^2.5.0" "@aws-sdk/util-locate-window@^3.0.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.292.0.tgz#cba0911be4fdf1db31a0b379cc6229a5a0ba1ae0" - integrity sha512-6xnFJXZI9pKw5lQCDvuWA5PnOaUtNRKWwdxvGkkLx5orboFaoVMS6zowjSQxwVNRjW82u6dYNkhmj9mZ8VSjWg== + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz#b421047b977ef53a8575b7b72780c7209ff5480e" + integrity sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA== dependencies: - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-middleware@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.292.0.tgz#d4819246c66229df405850004d9e3ae4a6fca8ea" - integrity sha512-KjhS7flfoBKDxbiBZjLjMvEizXgjfQb7GQEItgzGoI9rfGCmZtvqCcqQQoIlxb8bIzGRggAUHtBGWnlLbpb+GQ== +"@aws-sdk/util-middleware@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-middleware/-/util-middleware-3.296.0.tgz#cc7162e3c84ae67a16841910244a97c4b0c02bfc" + integrity sha512-MNWU+doVuX+mIehEManP6OP+f08T33qQpHoBqKIeKpn3TjZjMHG7ujACTkJiEOHUrnwTov7h0Sm+3OZwk3kh9w== dependencies: - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-retry@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-retry/-/util-retry-3.292.0.tgz#a72dd74760864aa03feb00f2cee8b97c25c297c4" - integrity sha512-JEHyF7MpVeRF5uR4LDYgpOKcFpOPiAj8TqN46SVOQQcL1K+V7cSr7O7N7J6MwJaN9XOzAcBadeIupMm7/BFbgw== +"@aws-sdk/util-retry@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-retry/-/util-retry-3.296.0.tgz#271f8bd2d05f5e6e200b5fe9b7aa09ba6e49e0dc" + integrity sha512-0mh7SqOMjuJ4vE423SzA/AfCLM68jykbfpEBkTmfqkpjkeQSW+UXHAUdXsMmfzIneiq7go5Z548F868C3cZnwQ== dependencies: - "@aws-sdk/service-error-classification" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/service-error-classification" "3.296.0" + tslib "^2.5.0" -"@aws-sdk/util-uri-escape@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-uri-escape/-/util-uri-escape-3.292.0.tgz#306a36e3574af3509c542c7224669082f6abc633" - integrity sha512-hOQtUMQ4VcQ9iwKz50AoCp1XBD5gJ9nly/gJZccAM7zSA5mOO8RRKkbdonqquVHxrO0CnYgiFeCh3V35GFecUw== +"@aws-sdk/util-uri-escape@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-uri-escape/-/util-uri-escape-3.295.0.tgz#c8ffb883d5398b3659fbf209391ecbbb1ff5888d" + integrity sha512-1H5DcyIoXF8XcPBWf7wzHt0l+TW2EoR8Oq4gsVrPTQkHMTVclC2Yn8EF3gc4arwVBzwLulI9LMBE2L8fexGfTQ== dependencies: - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-user-agent-browser@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.292.0.tgz#26c4e5ffbe046cebe9d15c357839ea38ada95c56" - integrity sha512-dld+lpC3QdmTQHdBWJ0WFDkXDSrJgfz03q6mQ8+7H+BC12ZhT0I0g9iuvUjolqy7QR00OxOy47Y9FVhq8EC0Gg== +"@aws-sdk/util-user-agent-browser@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.296.0.tgz#d8050ebaa25bc988ba4bafc11e9e967fdc7e6850" + integrity sha512-MGGG+09VkF0N+8KEht8NNE6Q7bqmddgqLkUbvzSky0y18UPEZyq9LTC4JZtzDDOzf/swgbq2IQ/5wtB81iouog== dependencies: - "@aws-sdk/types" "3.292.0" + "@aws-sdk/types" "3.296.0" bowser "^2.11.0" - tslib "^2.3.1" + tslib "^2.5.0" -"@aws-sdk/util-user-agent-node@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.292.0.tgz#9065307641eb246f32fee78eec5d961cffbba6a9" - integrity sha512-f+NfIMal5E61MDc5WGhUEoicr7b1eNNhA+GgVdSB/Hg5fYhEZvFK9RZizH5rrtsLjjgcr9nPYSR7/nDKCJLumw== +"@aws-sdk/util-user-agent-node@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.296.0.tgz#2335b229931cc0b2624f2853d794318eb617c35d" + integrity sha512-AMWac8aIBnaa9nxAEpZ752j29a/UQTViRfR5gnCX38ECBKGfOQMpgYnee5HdlMr4GHJj0WkOzQxBtInW4pV58g== dependencies: - "@aws-sdk/node-config-provider" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/node-config-provider" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" "@aws-sdk/util-utf8-browser@^3.0.0": version "3.259.0" @@ -723,22 +723,22 @@ "@aws-sdk/util-buffer-from" "3.208.0" tslib "^2.3.1" -"@aws-sdk/util-utf8@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8/-/util-utf8-3.292.0.tgz#c12049a01de36f1133232f95cbb0c0177e8d3c36" - integrity sha512-FPkj+Z59/DQWvoVu2wFaRncc3KVwe/pgK3MfVb0Lx+Ibey5KUx+sNpJmYcVYHUAe/Nv/JeIpOtYuC96IXOnI6w== +"@aws-sdk/util-utf8@3.295.0": + version "3.295.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-utf8/-/util-utf8-3.295.0.tgz#4d855e229ba18ee3893d588f231a8e6c9905389e" + integrity sha512-ITN8v3F63ZkA4sdmCtSbS/mhav4F0MEAiXDAUXtMJLNqVtaVcyQST4i9vNmPpIVthAPAtP0QjyF2tq/Di8bxtQ== dependencies: - "@aws-sdk/util-buffer-from" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/util-buffer-from" "3.295.0" + tslib "^2.5.0" -"@aws-sdk/util-waiter@3.292.0": - version "3.292.0" - resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.292.0.tgz#860b6615f1d5d0cd545b2d5fefd0bb3c03b0a32d" - integrity sha512-+7j+mcWUY4GwU8nTK4MvLWpOzS34SJZL85qLxQ04pysoCSHkInyS51D1ejBVNlJdbUSFvIcU0WHU0y6MDDeJzg== +"@aws-sdk/util-waiter@3.296.0": + version "3.296.0" + resolved "https://registry.yarnpkg.com/@aws-sdk/util-waiter/-/util-waiter-3.296.0.tgz#5322f03870f5d09421e5ee7901344806864386d3" + integrity sha512-L57uIC74VyTjAdCH0wQqtvJtwK4+gIT/51K/BJHEqVg6C1pOwgrdT6dHC3q8b+gdOrZ6Ff/vTEfh7FZmVcPPjg== dependencies: - "@aws-sdk/abort-controller" "3.292.0" - "@aws-sdk/types" "3.292.0" - tslib "^2.3.1" + "@aws-sdk/abort-controller" "3.296.0" + "@aws-sdk/types" "3.296.0" + tslib "^2.5.0" "@cspotcode/source-map-support@^0.8.0": version "0.8.1" @@ -853,35 +853,35 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@topcoder-framework/client-relational@^0.7.0": - version "0.7.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.7.0.tgz#bd219fb466ce2d436ca393b1f1bb4bdd0f05be80" - integrity sha512-AXkKyzmKfQap+eib9FehQZbZ7oAYGW+41gMXNFpxmqrZ0/TMgh8znnaw6uPmwyalVPh1bZdvxIGadCQxgi3jWw== +"@topcoder-framework/client-relational@^0.7.3": + version "0.7.3" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.7.3.tgz#c1ded75b4e00dc93e4ff05abd01dacbee971b484" + integrity sha512-6QF2yjp4NG6Qdw6W6WmAj9N4y2+ZZd3gL7oTr78y03v9qDKzUP11EwFCLEjL2oiqDZbyB5QV7OQyf77buvcDyw== dependencies: "@grpc/grpc-js" "^1.8.0" - "@topcoder-framework/lib-common" "^0.7.0" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.29" + "@topcoder-framework/lib-common" "^0.7.3" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" tslib "^2.4.1" -"@topcoder-framework/domain-acl@^0.7.0": - version "0.7.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.7.0.tgz#76d8c2090a7df2a9aa476d4344b6cc2edf504482" - integrity sha512-g3PLnglWIrETT/ESDe3GBP2VIIk6DAykuuMTdGe95Xx8czHbSrN6Oav3konxvVlCuilRxN62D/kwxEZivEpvYQ== +"@topcoder-framework/domain-acl@^0.7.3": + version "0.7.3" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.7.3.tgz#5c43286a48e778cac5adc7c5e71c66e0bdb1965e" + integrity sha512-ckE8phDzjkI6xLp3Ztr0+69AZysiitHNyhCuCT6j25gKJVUcNuHi6xfvL/KBKsuXIV9rJcM0YreiOY2SDNb/Fw== dependencies: "@grpc/grpc-js" "^1.8.7" - "@topcoder-framework/client-relational" "^0.7.0" - "@topcoder-framework/lib-common" "^0.7.0" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.29" + "@topcoder-framework/client-relational" "^0.7.3" + "@topcoder-framework/lib-common" "^0.7.3" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" tslib "^2.4.1" -"@topcoder-framework/lib-common@^0.7.0": - version "0.7.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.7.0.tgz#557900413fe2e0b67d233f04c63db2e81eac5dbc" - integrity sha512-3qjcRYGHqRiBWPbOM2C/BwpZEswIqCbc+scskIHmtY/FYn52lTT1w7Cm/KOcgBpE3S/mmWq0YwtZKNNzbRwglA== +"@topcoder-framework/lib-common@^0.7.3": + version "0.7.3" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.7.3.tgz#67893108d36580716875283ff72c71c6fd2dfa38" + integrity sha512-CqoQJhUPjTp4sDZ6SirujuHxbnUduL5ZRiaeEyZN6jrcpRaScB95vE7rzvUFrd4FVzGd4BhcA4QMhNPPnO1mKw== dependencies: "@grpc/grpc-js" "^1.8.0" rimraf "^3.0.2" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.29" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" tslib "^2.4.1" "@tsconfig/node10@^1.0.7": @@ -974,9 +974,9 @@ integrity sha512-Y4XFY5VJAuw0FgAqPNd6NNoV44jbq9Bz2L7Rh/J6jLTiHBSBJa9fxqQIvkIld4GsoDOcCbvzOUAbLPsSKKg+uA== "@types/node@*", "@types/node@>=12.12.47", "@types/node@>=13.7.0", "@types/node@^18.11.17": - version "18.15.3" - resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.3.tgz#f0b991c32cfc6a4e7f3399d6cb4b8cf9a0315014" - integrity sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw== + version "18.15.5" + resolved "https://registry.yarnpkg.com/@types/node/-/node-18.15.5.tgz#3af577099a99c61479149b716183e70b5239324a" + integrity sha512-Ark2WDjjZO7GmvsyFFf81MXuGTA/d6oP38anyxWOL6EREyBKAxKoFHwBhaZxCfLRLpO8JgVXwqOwSwa7jRcjew== "@types/object-hash@^1.3.0": version "1.3.4" @@ -1108,9 +1108,9 @@ available-typed-arrays@^1.0.5: integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== aws-sdk@^2.1339.0: - version "2.1339.0" - resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1339.0.tgz#3de9aeced95a072abcd35c16ff560ec20cf8aa2d" - integrity sha512-3TS2bmjfsi0ezxGKPKsGl9V40tLiU0PxPg/NH8VL8npDPoQvZxwmHsiOS5DugNXqtSr/lUSWgYXXJ2oDbtmDXg== + version "2.1340.0" + resolved "https://registry.yarnpkg.com/aws-sdk/-/aws-sdk-2.1340.0.tgz#2a64158bd4f350f85f8063440880b38bd92081ae" + integrity sha512-5amtFHWmJz+x0mKcwKJUBm2nKOJjO0MzzuVhrHFnmDWsUqP1VUsTxENoRdGitwoCH/o+MttLmf1/+lvgkYzbiw== dependencies: buffer "4.9.2" events "1.1.1" @@ -2426,9 +2426,9 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.29": +"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.30": version "1.0.0" - resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/6ad366c0dc28a8452bd71ed87d718ac559bee62b" + resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/704a8d8ed31bb5f7edfd328aeaedaa3d36d56e33" tough-cookie@~2.5.0: version "2.5.0" @@ -2494,9 +2494,9 @@ ts-proto-descriptors@1.7.1: protobufjs "^6.8.8" ts-proto@^1.126.1: - version "1.142.1" - resolved "https://registry.yarnpkg.com/ts-proto/-/ts-proto-1.142.1.tgz#1bd42195bcff35dedd0d9e7ae56dba9888f95be2" - integrity sha512-J0W3OWrX/+xNVu+AdukLOjYrFDsinngQ9uh+/jnYwObd6VwCjc6sbBz8VFVbQgTSDGv3ysEagCbimkCXcvYDWQ== + version "1.143.0" + resolved "https://registry.yarnpkg.com/ts-proto/-/ts-proto-1.143.0.tgz#2a757eadc03f6baefe454bf0fb4f3a16b11c1af7" + integrity sha512-a6pxp7y/R6PlaB+4adDVVTTZPHfNt4QLlm4wU8zBn5yXHbofBOIKLJ5bymwl0nizOAnuSMqt0GllOSAUnzkvYw== dependencies: "@types/object-hash" "^1.3.0" case-anything "^2.1.10" @@ -2521,7 +2521,7 @@ tslib@^1.11.1: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== -tslib@^2.3.1, tslib@^2.4.1: +tslib@^2.3.1, tslib@^2.4.1, tslib@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.5.0.tgz#42bfed86f5787aeb41d031866c8f402429e0fddf" integrity sha512-336iVw3rtn2BUK7ORdIAHTyxHGRIHVReokCR3XjbckJMK7ms8FysBfhLR8IXnAgy7T0PTPNBWKiH514FOW/WSg== From b2851488ee3c40aa4792a200cf8a215d2bbc28e7 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 17:51:37 +0600 Subject: [PATCH 05/21] fix: scorecards to use Signed-off-by: Rakib Ansary --- src/domain/Challenge.ts | 24 +- .../domain-layer/challenge/challenge.ts | 1759 +++++------------ src/util/LegacyMapper.ts | 34 +- 3 files changed, 525 insertions(+), 1292 deletions(-) diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index c6f31b8..29ac1c4 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -340,15 +340,17 @@ class ChallengeDomain extends CoreOperations { await legacyPhaseDomain.updateProjectPhase({ projectPhaseId: phase.projectPhaseId, phaseStatusId: newStatus, - ...(phaseOrder === 0 ? { - fixedStartTime: moment(phase.fixedStartTime).format( - "yyyy-MM-DD HH:mm:ss" - ) - ? moment(v5Equivalent.scheduledStartDate).format( + ...(phaseOrder === 0 + ? { + fixedStartTime: moment(phase.fixedStartTime).format( "yyyy-MM-DD HH:mm:ss" ) - : undefined, - } : {}), + ? moment(v5Equivalent.scheduledStartDate).format( + "yyyy-MM-DD HH:mm:ss" + ) + : undefined, + } + : {}), scheduledStartTime: moment( v5Equivalent.scheduledStartDate ).format("yyyy-MM-DD HH:mm:ss"), @@ -962,7 +964,11 @@ class ChallengeDomain extends CoreOperations { const createdByUserId = 22838965; // TODO: Extract from interceptors const updatedByUserId = 22838965; // TODO: Extract from interceptors - if (!input?.legacyId && input?.status && input?.status !== ChallengeStatuses.New) { + if ( + !input?.legacyId && + input?.status && + input?.status !== ChallengeStatuses.New + ) { console.log(`Legacy ID does not exist. Creating challenge in legacy...`); const { track, subTrack, isTask, technologies } = legacyMapper.mapTrackAndType( @@ -1262,7 +1268,7 @@ class ChallengeDomain extends CoreOperations { // "prizeSets"]) { // _.set(input, key, JSON.stringify(_.get(input, key))) // } - console.log('------ before save --------'); + console.log("------ before save --------"); // console.log(input); console.log(_.omit(input, ["id"])); diff --git a/src/models/domain-layer/challenge/challenge.ts b/src/models/domain-layer/challenge/challenge.ts index ab5f0cd..e33316b 100644 --- a/src/models/domain-layer/challenge/challenge.ts +++ b/src/models/domain-layer/challenge/challenge.ts @@ -211,9 +211,7 @@ export interface UpdateChallengeInputForACL_UpdateInputForACL { status?: string | undefined; phases?: UpdateChallengeInputForACL_PhasesACL | undefined; currentPhase?: Challenge_Phase | undefined; - currentPhaseNames?: - | UpdateChallengeInputForACL_CurrentPhaseNamesACL - | undefined; + currentPhaseNames?: UpdateChallengeInputForACL_CurrentPhaseNamesACL | undefined; registrationStartDate?: string | undefined; registrationEndDate?: string | undefined; submissionStartDate?: string | undefined; @@ -289,10 +287,7 @@ function createBaseChallenge(): Challenge { } export const Challenge = { - encode( - message: Challenge, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -309,16 +304,10 @@ export const Challenge = { writer.uint32(42).string(message.trackId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode( - message.legacy, - writer.uint32(50).fork() - ).ldelim(); + Challenge_Legacy.encode(message.legacy, writer.uint32(50).fork()).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode( - message.billing, - writer.uint32(58).fork() - ).ldelim(); + Challenge_Billing.encode(message.billing, writer.uint32(58).fork()).ldelim(); } if (message.description !== "") { writer.uint32(66).string(message.description); @@ -390,17 +379,13 @@ export const Challenge = { writer.uint32(240).int64(message.updated); } if (message.overview !== undefined) { - Challenge_Overview.encode( - message.overview, - writer.uint32(250).fork() - ).ldelim(); + Challenge_Overview.encode(message.overview, writer.uint32(250).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge(); while (reader.pos < end) { @@ -481,9 +466,7 @@ export const Challenge = { break; } - message.metadata.push( - Challenge_Metadata.decode(reader, reader.uint32()) - ); + message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); continue; case 12: if (tag != 98) { @@ -525,9 +508,7 @@ export const Challenge = { break; } - message.prizeSets.push( - Challenge_PrizeSet.decode(reader, reader.uint32()) - ); + message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); continue; case 18: if (tag != 146) { @@ -583,18 +564,14 @@ export const Challenge = { break; } - message.winners.push( - Challenge_Winner.decode(reader, reader.uint32()) - ); + message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); continue; case 26: if (tag != 210) { break; } - message.discussions.push( - Challenge_Discussion.decode(reader, reader.uint32()) - ); + message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); continue; case 27: if (tag != 218) { @@ -647,56 +624,28 @@ export const Challenge = { name: isSet(object.name) ? String(object.name) : "", typeId: isSet(object.typeId) ? String(object.typeId) : "", trackId: isSet(object.trackId) ? String(object.trackId) : "", - legacy: isSet(object.legacy) - ? Challenge_Legacy.fromJSON(object.legacy) - : undefined, - billing: isSet(object.billing) - ? Challenge_Billing.fromJSON(object.billing) - : undefined, + legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, + billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, description: isSet(object.description) ? String(object.description) : "", - privateDescription: isSet(object.privateDescription) - ? String(object.privateDescription) - : undefined, - descriptionFormat: isSet(object.descriptionFormat) - ? String(object.descriptionFormat) - : undefined, - metadata: Array.isArray(object?.metadata) - ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) - : [], - task: isSet(object.task) - ? Challenge_Task.fromJSON(object.task) - : undefined, - timelineTemplateId: isSet(object.timelineTemplateId) - ? String(object.timelineTemplateId) - : undefined, - phases: Array.isArray(object?.phases) - ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) - : [], - events: Array.isArray(object?.events) - ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) - : [], - terms: Array.isArray(object?.terms) - ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) - : [], + privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, + descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, + metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], + task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, + timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, + phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], + events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], + terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) - ? object.tags.map((e: any) => String(e)) - : [], + tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : "", - attachments: Array.isArray(object?.attachments) - ? object.attachments.map((e: any) => String(e)) - : [], - groups: Array.isArray(object?.groups) - ? object.groups.map((e: any) => String(e)) - : [], - winners: Array.isArray(object?.winners) - ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) - : [], + attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], + groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], + winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -704,72 +653,47 @@ export const Challenge = { updatedBy: isSet(object.updatedBy) ? String(object.updatedBy) : undefined, created: isSet(object.created) ? Number(object.created) : 0, updated: isSet(object.updated) ? Number(object.updated) : undefined, - overview: isSet(object.overview) - ? Challenge_Overview.fromJSON(object.overview) - : undefined, + overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, }; }, toJSON(message: Challenge): unknown { const obj: any = {}; message.id !== undefined && (obj.id = message.id); - message.legacyId !== undefined && - (obj.legacyId = Math.round(message.legacyId)); + message.legacyId !== undefined && (obj.legacyId = Math.round(message.legacyId)); message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.legacy !== undefined && - (obj.legacy = message.legacy - ? Challenge_Legacy.toJSON(message.legacy) - : undefined); + message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); message.billing !== undefined && - (obj.billing = message.billing - ? Challenge_Billing.toJSON(message.billing) - : undefined); - message.description !== undefined && - (obj.description = message.description); - message.privateDescription !== undefined && - (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && - (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); + message.description !== undefined && (obj.description = message.description); + message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => - e ? Challenge_Metadata.toJSON(e) : undefined - ); + obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); } else { obj.metadata = []; } - message.task !== undefined && - (obj.task = message.task - ? Challenge_Task.toJSON(message.task) - : undefined); - message.timelineTemplateId !== undefined && - (obj.timelineTemplateId = message.timelineTemplateId); + message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); + message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); if (message.phases) { - obj.phases = message.phases.map((e) => - e ? Challenge_Phase.toJSON(e) : undefined - ); + obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => - e ? Challenge_Event.toJSON(e) : undefined - ); + obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => - e ? Challenge_Term.toJSON(e) : undefined - ); + obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => - e ? Challenge_PrizeSet.toJSON(e) : undefined - ); + obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); } else { obj.prizeSets = []; } @@ -778,12 +702,9 @@ export const Challenge = { } else { obj.tags = []; } - message.projectId !== undefined && - (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && - (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && - (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -796,29 +717,21 @@ export const Challenge = { obj.groups = []; } if (message.winners) { - obj.winners = message.winners.map((e) => - e ? Challenge_Winner.toJSON(e) : undefined - ); + obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); } else { obj.winners = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => - e ? Challenge_Discussion.toJSON(e) : undefined - ); + obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); } else { obj.discussions = []; } message.createdBy !== undefined && (obj.createdBy = message.createdBy); message.updatedBy !== undefined && (obj.updatedBy = message.updatedBy); - message.created !== undefined && - (obj.created = Math.round(message.created)); - message.updated !== undefined && - (obj.updated = Math.round(message.updated)); + message.created !== undefined && (obj.created = Math.round(message.created)); + message.updated !== undefined && (obj.updated = Math.round(message.updated)); message.overview !== undefined && - (obj.overview = message.overview - ? Challenge_Overview.toJSON(message.overview) - : undefined); + (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); return obj; }, @@ -826,41 +739,31 @@ export const Challenge = { return Challenge.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge { + fromPartial, I>>(object: I): Challenge { const message = createBaseChallenge(); message.id = object.id ?? ""; message.legacyId = object.legacyId ?? undefined; message.name = object.name ?? ""; message.typeId = object.typeId ?? ""; message.trackId = object.trackId ?? ""; - message.legacy = - object.legacy !== undefined && object.legacy !== null - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = - object.billing !== undefined && object.billing !== null - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = (object.legacy !== undefined && object.legacy !== null) + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = (object.billing !== undefined && object.billing !== null) + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? ""; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = - object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = - object.task !== undefined && object.task !== null - ? Challenge_Task.fromPartial(object.task) - : undefined; + message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = (object.task !== undefined && object.task !== null) + ? Challenge_Task.fromPartial(object.task) + : undefined; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.phases = - object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = - object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = - object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = - object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -868,18 +771,15 @@ export const Challenge = { message.status = object.status ?? ""; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.winners = - object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; - message.discussions = - object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; + message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; message.createdBy = object.createdBy ?? ""; message.updatedBy = object.updatedBy ?? undefined; message.created = object.created ?? 0; message.updated = object.updated ?? undefined; - message.overview = - object.overview !== undefined && object.overview !== null - ? Challenge_Overview.fromPartial(object.overview) - : undefined; + message.overview = (object.overview !== undefined && object.overview !== null) + ? Challenge_Overview.fromPartial(object.overview) + : undefined; return message; }, }; @@ -901,10 +801,7 @@ function createBaseChallenge_Legacy(): Challenge_Legacy { } export const Challenge_Legacy = { - encode( - message: Challenge_Legacy, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Legacy, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.track !== undefined) { writer.uint32(10).string(message.track); } @@ -942,8 +839,7 @@ export const Challenge_Legacy = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Legacy { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Legacy(); while (reader.pos < end) { @@ -1040,28 +936,14 @@ export const Challenge_Legacy = { track: isSet(object.track) ? String(object.track) : undefined, subTrack: isSet(object.subTrack) ? String(object.subTrack) : undefined, forumId: isSet(object.forumId) ? Number(object.forumId) : undefined, - directProjectId: isSet(object.directProjectId) - ? Number(object.directProjectId) - : 0, + directProjectId: isSet(object.directProjectId) ? Number(object.directProjectId) : 0, reviewType: isSet(object.reviewType) ? String(object.reviewType) : "", - confidentialityType: isSet(object.confidentialityType) - ? String(object.confidentialityType) - : "", - reviewScorecardId: isSet(object.reviewScorecardId) - ? Number(object.reviewScorecardId) - : undefined, - screeningScorecardId: isSet(object.screeningScorecardId) - ? Number(object.screeningScorecardId) - : undefined, - pureV5Task: isSet(object.pureV5Task) - ? Boolean(object.pureV5Task) - : undefined, - selfService: isSet(object.selfService) - ? Boolean(object.selfService) - : undefined, - selfServiceCopilot: isSet(object.selfServiceCopilot) - ? String(object.selfServiceCopilot) - : undefined, + confidentialityType: isSet(object.confidentialityType) ? String(object.confidentialityType) : "", + reviewScorecardId: isSet(object.reviewScorecardId) ? Number(object.reviewScorecardId) : undefined, + screeningScorecardId: isSet(object.screeningScorecardId) ? Number(object.screeningScorecardId) : undefined, + pureV5Task: isSet(object.pureV5Task) ? Boolean(object.pureV5Task) : undefined, + selfService: isSet(object.selfService) ? Boolean(object.selfService) : undefined, + selfServiceCopilot: isSet(object.selfServiceCopilot) ? String(object.selfServiceCopilot) : undefined, }; }, @@ -1069,34 +951,23 @@ export const Challenge_Legacy = { const obj: any = {}; message.track !== undefined && (obj.track = message.track); message.subTrack !== undefined && (obj.subTrack = message.subTrack); - message.forumId !== undefined && - (obj.forumId = Math.round(message.forumId)); - message.directProjectId !== undefined && - (obj.directProjectId = Math.round(message.directProjectId)); + message.forumId !== undefined && (obj.forumId = Math.round(message.forumId)); + message.directProjectId !== undefined && (obj.directProjectId = Math.round(message.directProjectId)); message.reviewType !== undefined && (obj.reviewType = message.reviewType); - message.confidentialityType !== undefined && - (obj.confidentialityType = message.confidentialityType); - message.reviewScorecardId !== undefined && - (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); - message.screeningScorecardId !== undefined && - (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); + message.confidentialityType !== undefined && (obj.confidentialityType = message.confidentialityType); + message.reviewScorecardId !== undefined && (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); + message.screeningScorecardId !== undefined && (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); message.pureV5Task !== undefined && (obj.pureV5Task = message.pureV5Task); - message.selfService !== undefined && - (obj.selfService = message.selfService); - message.selfServiceCopilot !== undefined && - (obj.selfServiceCopilot = message.selfServiceCopilot); + message.selfService !== undefined && (obj.selfService = message.selfService); + message.selfServiceCopilot !== undefined && (obj.selfServiceCopilot = message.selfServiceCopilot); return obj; }, - create, I>>( - base?: I - ): Challenge_Legacy { + create, I>>(base?: I): Challenge_Legacy { return Challenge_Legacy.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Legacy { + fromPartial, I>>(object: I): Challenge_Legacy { const message = createBaseChallenge_Legacy(); message.track = object.track ?? undefined; message.subTrack = object.subTrack ?? undefined; @@ -1118,10 +989,7 @@ function createBaseChallenge_Billing(): Challenge_Billing { } export const Challenge_Billing = { - encode( - message: Challenge_Billing, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Billing, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.billingAccountId !== 0) { writer.uint32(8).int32(message.billingAccountId); } @@ -1132,8 +1000,7 @@ export const Challenge_Billing = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Billing { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Billing(); while (reader.pos < end) { @@ -1164,30 +1031,23 @@ export const Challenge_Billing = { fromJSON(object: any): Challenge_Billing { return { - billingAccountId: isSet(object.billingAccountId) - ? Number(object.billingAccountId) - : 0, + billingAccountId: isSet(object.billingAccountId) ? Number(object.billingAccountId) : 0, markup: isSet(object.markup) ? Number(object.markup) : 0, }; }, toJSON(message: Challenge_Billing): unknown { const obj: any = {}; - message.billingAccountId !== undefined && - (obj.billingAccountId = Math.round(message.billingAccountId)); + message.billingAccountId !== undefined && (obj.billingAccountId = Math.round(message.billingAccountId)); message.markup !== undefined && (obj.markup = message.markup); return obj; }, - create, I>>( - base?: I - ): Challenge_Billing { + create, I>>(base?: I): Challenge_Billing { return Challenge_Billing.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Billing { + fromPartial, I>>(object: I): Challenge_Billing { const message = createBaseChallenge_Billing(); message.billingAccountId = object.billingAccountId ?? 0; message.markup = object.markup ?? 0; @@ -1200,10 +1060,7 @@ function createBaseChallenge_Event(): Challenge_Event { } export const Challenge_Event = { - encode( - message: Challenge_Event, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Event, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== undefined) { writer.uint32(8).int32(message.id); } @@ -1217,8 +1074,7 @@ export const Challenge_Event = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Event { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Event(); while (reader.pos < end) { @@ -1270,15 +1126,11 @@ export const Challenge_Event = { return obj; }, - create, I>>( - base?: I - ): Challenge_Event { + create, I>>(base?: I): Challenge_Event { return Challenge_Event.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Event { + fromPartial, I>>(object: I): Challenge_Event { const message = createBaseChallenge_Event(); message.id = object.id ?? undefined; message.name = object.name ?? ""; @@ -1292,10 +1144,7 @@ function createBaseChallenge_Term(): Challenge_Term { } export const Challenge_Term = { - encode( - message: Challenge_Term, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Term, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -1306,8 +1155,7 @@ export const Challenge_Term = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Term { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Term(); while (reader.pos < end) { @@ -1337,10 +1185,7 @@ export const Challenge_Term = { }, fromJSON(object: any): Challenge_Term { - return { - id: isSet(object.id) ? String(object.id) : "", - roleId: isSet(object.roleId) ? String(object.roleId) : "", - }; + return { id: isSet(object.id) ? String(object.id) : "", roleId: isSet(object.roleId) ? String(object.roleId) : "" }; }, toJSON(message: Challenge_Term): unknown { @@ -1350,15 +1195,11 @@ export const Challenge_Term = { return obj; }, - create, I>>( - base?: I - ): Challenge_Term { + create, I>>(base?: I): Challenge_Term { return Challenge_Term.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Term { + fromPartial, I>>(object: I): Challenge_Term { const message = createBaseChallenge_Term(); message.id = object.id ?? ""; message.roleId = object.roleId ?? ""; @@ -1371,10 +1212,7 @@ function createBaseChallenge_Metadata(): Challenge_Metadata { } export const Challenge_Metadata = { - encode( - message: Challenge_Metadata, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1385,8 +1223,7 @@ export const Challenge_Metadata = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Metadata { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Metadata(); while (reader.pos < end) { @@ -1429,15 +1266,11 @@ export const Challenge_Metadata = { return obj; }, - create, I>>( - base?: I - ): Challenge_Metadata { + create, I>>(base?: I): Challenge_Metadata { return Challenge_Metadata.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Metadata { + fromPartial, I>>(object: I): Challenge_Metadata { const message = createBaseChallenge_Metadata(); message.name = object.name ?? ""; message.value = object.value ?? ""; @@ -1450,10 +1283,7 @@ function createBaseChallenge_Discussion(): Challenge_Discussion { } export const Challenge_Discussion = { - encode( - message: Challenge_Discussion, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Discussion, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== undefined) { writer.uint32(10).string(message.id); } @@ -1472,12 +1302,8 @@ export const Challenge_Discussion = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): Challenge_Discussion { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Discussion { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Discussion(); while (reader.pos < end) { @@ -1547,15 +1373,11 @@ export const Challenge_Discussion = { return obj; }, - create, I>>( - base?: I - ): Challenge_Discussion { + create, I>>(base?: I): Challenge_Discussion { return Challenge_Discussion.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Discussion { + fromPartial, I>>(object: I): Challenge_Discussion { const message = createBaseChallenge_Discussion(); message.id = object.id ?? undefined; message.name = object.name ?? ""; @@ -1584,36 +1406,21 @@ function createBaseChallenge_Phase(): Challenge_Phase { } export const Challenge_Phase = { - encode( - message: Challenge_Phase, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Phase, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.duration !== 0) { writer.uint32(8).int32(message.duration); } if (message.scheduledStartDate !== undefined) { - Timestamp.encode( - toTimestamp(message.scheduledStartDate), - writer.uint32(18).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.scheduledStartDate), writer.uint32(18).fork()).ldelim(); } if (message.scheduledEndDate !== undefined) { - Timestamp.encode( - toTimestamp(message.scheduledEndDate), - writer.uint32(26).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.scheduledEndDate), writer.uint32(26).fork()).ldelim(); } if (message.actualStartDate !== undefined) { - Timestamp.encode( - toTimestamp(message.actualStartDate), - writer.uint32(34).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.actualStartDate), writer.uint32(34).fork()).ldelim(); } if (message.actualEndDate !== undefined) { - Timestamp.encode( - toTimestamp(message.actualEndDate), - writer.uint32(42).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.actualEndDate), writer.uint32(42).fork()).ldelim(); } if (message.name !== "") { writer.uint32(50).string(message.name); @@ -1640,8 +1447,7 @@ export const Challenge_Phase = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Phase { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Phase(); while (reader.pos < end) { @@ -1659,36 +1465,28 @@ export const Challenge_Phase = { break; } - message.scheduledStartDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.scheduledStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 3: if (tag != 26) { break; } - message.scheduledEndDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.scheduledEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 4: if (tag != 34) { break; } - message.actualStartDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.actualStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 5: if (tag != 42) { break; } - message.actualEndDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.actualEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 6: if (tag != 50) { @@ -1723,9 +1521,7 @@ export const Challenge_Phase = { break; } - message.constraints.push( - Challenge_Phase_Constraint.decode(reader, reader.uint32()) - ); + message.constraints.push(Challenge_Phase_Constraint.decode(reader, reader.uint32())); continue; case 11: if (tag != 90) { @@ -1753,75 +1549,48 @@ export const Challenge_Phase = { fromJSON(object: any): Challenge_Phase { return { duration: isSet(object.duration) ? Number(object.duration) : 0, - scheduledStartDate: isSet(object.scheduledStartDate) - ? String(object.scheduledStartDate) - : undefined, - scheduledEndDate: isSet(object.scheduledEndDate) - ? String(object.scheduledEndDate) - : undefined, - actualStartDate: isSet(object.actualStartDate) - ? String(object.actualStartDate) - : undefined, - actualEndDate: isSet(object.actualEndDate) - ? String(object.actualEndDate) - : undefined, + scheduledStartDate: isSet(object.scheduledStartDate) ? String(object.scheduledStartDate) : undefined, + scheduledEndDate: isSet(object.scheduledEndDate) ? String(object.scheduledEndDate) : undefined, + actualStartDate: isSet(object.actualStartDate) ? String(object.actualStartDate) : undefined, + actualEndDate: isSet(object.actualEndDate) ? String(object.actualEndDate) : undefined, name: isSet(object.name) ? String(object.name) : "", phaseId: isSet(object.phaseId) ? String(object.phaseId) : "", id: isSet(object.id) ? String(object.id) : "", isOpen: isSet(object.isOpen) ? Boolean(object.isOpen) : false, constraints: Array.isArray(object?.constraints) - ? object.constraints.map((e: any) => - Challenge_Phase_Constraint.fromJSON(e) - ) + ? object.constraints.map((e: any) => Challenge_Phase_Constraint.fromJSON(e)) : [], - description: isSet(object.description) - ? String(object.description) - : undefined, - predecessor: isSet(object.predecessor) - ? String(object.predecessor) - : undefined, + description: isSet(object.description) ? String(object.description) : undefined, + predecessor: isSet(object.predecessor) ? String(object.predecessor) : undefined, }; }, toJSON(message: Challenge_Phase): unknown { const obj: any = {}; - message.duration !== undefined && - (obj.duration = Math.round(message.duration)); - message.scheduledStartDate !== undefined && - (obj.scheduledStartDate = message.scheduledStartDate); - message.scheduledEndDate !== undefined && - (obj.scheduledEndDate = message.scheduledEndDate); - message.actualStartDate !== undefined && - (obj.actualStartDate = message.actualStartDate); - message.actualEndDate !== undefined && - (obj.actualEndDate = message.actualEndDate); + message.duration !== undefined && (obj.duration = Math.round(message.duration)); + message.scheduledStartDate !== undefined && (obj.scheduledStartDate = message.scheduledStartDate); + message.scheduledEndDate !== undefined && (obj.scheduledEndDate = message.scheduledEndDate); + message.actualStartDate !== undefined && (obj.actualStartDate = message.actualStartDate); + message.actualEndDate !== undefined && (obj.actualEndDate = message.actualEndDate); message.name !== undefined && (obj.name = message.name); message.phaseId !== undefined && (obj.phaseId = message.phaseId); message.id !== undefined && (obj.id = message.id); message.isOpen !== undefined && (obj.isOpen = message.isOpen); if (message.constraints) { - obj.constraints = message.constraints.map((e) => - e ? Challenge_Phase_Constraint.toJSON(e) : undefined - ); + obj.constraints = message.constraints.map((e) => e ? Challenge_Phase_Constraint.toJSON(e) : undefined); } else { obj.constraints = []; } - message.description !== undefined && - (obj.description = message.description); - message.predecessor !== undefined && - (obj.predecessor = message.predecessor); + message.description !== undefined && (obj.description = message.description); + message.predecessor !== undefined && (obj.predecessor = message.predecessor); return obj; }, - create, I>>( - base?: I - ): Challenge_Phase { + create, I>>(base?: I): Challenge_Phase { return Challenge_Phase.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Phase { + fromPartial, I>>(object: I): Challenge_Phase { const message = createBaseChallenge_Phase(); message.duration = object.duration ?? 0; message.scheduledStartDate = object.scheduledStartDate ?? undefined; @@ -1832,10 +1601,7 @@ export const Challenge_Phase = { message.phaseId = object.phaseId ?? ""; message.id = object.id ?? ""; message.isOpen = object.isOpen ?? false; - message.constraints = - object.constraints?.map((e) => - Challenge_Phase_Constraint.fromPartial(e) - ) || []; + message.constraints = object.constraints?.map((e) => Challenge_Phase_Constraint.fromPartial(e)) || []; message.description = object.description ?? undefined; message.predecessor = object.predecessor ?? undefined; return message; @@ -1847,10 +1613,7 @@ function createBaseChallenge_Phase_Constraint(): Challenge_Phase_Constraint { } export const Challenge_Phase_Constraint = { - encode( - message: Challenge_Phase_Constraint, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Phase_Constraint, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -1860,12 +1623,8 @@ export const Challenge_Phase_Constraint = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): Challenge_Phase_Constraint { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Phase_Constraint { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Phase_Constraint(); while (reader.pos < end) { @@ -1908,15 +1667,11 @@ export const Challenge_Phase_Constraint = { return obj; }, - create, I>>( - base?: I - ): Challenge_Phase_Constraint { + create, I>>(base?: I): Challenge_Phase_Constraint { return Challenge_Phase_Constraint.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Phase_Constraint { + fromPartial, I>>(object: I): Challenge_Phase_Constraint { const message = createBaseChallenge_Phase_Constraint(); message.name = object.name ?? ""; message.value = object.value ?? 0; @@ -1929,10 +1684,7 @@ function createBaseChallenge_Winner(): Challenge_Winner { } export const Challenge_Winner = { - encode( - message: Challenge_Winner, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Winner, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.handle !== "") { writer.uint32(10).string(message.handle); } @@ -1946,8 +1698,7 @@ export const Challenge_Winner = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Winner { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Winner(); while (reader.pos < end) { @@ -1994,21 +1745,16 @@ export const Challenge_Winner = { toJSON(message: Challenge_Winner): unknown { const obj: any = {}; message.handle !== undefined && (obj.handle = message.handle); - message.placement !== undefined && - (obj.placement = Math.round(message.placement)); + message.placement !== undefined && (obj.placement = Math.round(message.placement)); message.userId !== undefined && (obj.userId = Math.round(message.userId)); return obj; }, - create, I>>( - base?: I - ): Challenge_Winner { + create, I>>(base?: I): Challenge_Winner { return Challenge_Winner.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Winner { + fromPartial, I>>(object: I): Challenge_Winner { const message = createBaseChallenge_Winner(); message.handle = object.handle ?? ""; message.placement = object.placement ?? 0; @@ -2022,10 +1768,7 @@ function createBaseChallenge_Task(): Challenge_Task { } export const Challenge_Task = { - encode( - message: Challenge_Task, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Task, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.isTask === true) { writer.uint32(8).bool(message.isTask); } @@ -2039,8 +1782,7 @@ export const Challenge_Task = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Task { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Task(); while (reader.pos < end) { @@ -2088,20 +1830,15 @@ export const Challenge_Task = { const obj: any = {}; message.isTask !== undefined && (obj.isTask = message.isTask); message.isAssigned !== undefined && (obj.isAssigned = message.isAssigned); - message.memberId !== undefined && - (obj.memberId = Math.round(message.memberId)); + message.memberId !== undefined && (obj.memberId = Math.round(message.memberId)); return obj; }, - create, I>>( - base?: I - ): Challenge_Task { + create, I>>(base?: I): Challenge_Task { return Challenge_Task.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Task { + fromPartial, I>>(object: I): Challenge_Task { const message = createBaseChallenge_Task(); message.isTask = object.isTask ?? false; message.isAssigned = object.isAssigned ?? false; @@ -2115,10 +1852,7 @@ function createBaseChallenge_PrizeSet(): Challenge_PrizeSet { } export const Challenge_PrizeSet = { - encode( - message: Challenge_PrizeSet, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_PrizeSet, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.type !== "") { writer.uint32(10).string(message.type); } @@ -2132,8 +1866,7 @@ export const Challenge_PrizeSet = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_PrizeSet { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_PrizeSet(); while (reader.pos < end) { @@ -2158,9 +1891,7 @@ export const Challenge_PrizeSet = { break; } - message.prizes.push( - Challenge_PrizeSet_Prize.decode(reader, reader.uint32()) - ); + message.prizes.push(Challenge_PrizeSet_Prize.decode(reader, reader.uint32())); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -2174,44 +1905,32 @@ export const Challenge_PrizeSet = { fromJSON(object: any): Challenge_PrizeSet { return { type: isSet(object.type) ? String(object.type) : "", - description: isSet(object.description) - ? String(object.description) - : undefined, - prizes: Array.isArray(object?.prizes) - ? object.prizes.map((e: any) => Challenge_PrizeSet_Prize.fromJSON(e)) - : [], + description: isSet(object.description) ? String(object.description) : undefined, + prizes: Array.isArray(object?.prizes) ? object.prizes.map((e: any) => Challenge_PrizeSet_Prize.fromJSON(e)) : [], }; }, toJSON(message: Challenge_PrizeSet): unknown { const obj: any = {}; message.type !== undefined && (obj.type = message.type); - message.description !== undefined && - (obj.description = message.description); + message.description !== undefined && (obj.description = message.description); if (message.prizes) { - obj.prizes = message.prizes.map((e) => - e ? Challenge_PrizeSet_Prize.toJSON(e) : undefined - ); + obj.prizes = message.prizes.map((e) => e ? Challenge_PrizeSet_Prize.toJSON(e) : undefined); } else { obj.prizes = []; } return obj; }, - create, I>>( - base?: I - ): Challenge_PrizeSet { + create, I>>(base?: I): Challenge_PrizeSet { return Challenge_PrizeSet.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_PrizeSet { + fromPartial, I>>(object: I): Challenge_PrizeSet { const message = createBaseChallenge_PrizeSet(); message.type = object.type ?? ""; message.description = object.description ?? undefined; - message.prizes = - object.prizes?.map((e) => Challenge_PrizeSet_Prize.fromPartial(e)) || []; + message.prizes = object.prizes?.map((e) => Challenge_PrizeSet_Prize.fromPartial(e)) || []; return message; }, }; @@ -2221,10 +1940,7 @@ function createBaseChallenge_PrizeSet_Prize(): Challenge_PrizeSet_Prize { } export const Challenge_PrizeSet_Prize = { - encode( - message: Challenge_PrizeSet_Prize, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_PrizeSet_Prize, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.value !== 0) { writer.uint32(13).float(message.value); } @@ -2234,12 +1950,8 @@ export const Challenge_PrizeSet_Prize = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): Challenge_PrizeSet_Prize { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_PrizeSet_Prize { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_PrizeSet_Prize(); while (reader.pos < end) { @@ -2282,15 +1994,11 @@ export const Challenge_PrizeSet_Prize = { return obj; }, - create, I>>( - base?: I - ): Challenge_PrizeSet_Prize { + create, I>>(base?: I): Challenge_PrizeSet_Prize { return Challenge_PrizeSet_Prize.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_PrizeSet_Prize { + fromPartial, I>>(object: I): Challenge_PrizeSet_Prize { const message = createBaseChallenge_PrizeSet_Prize(); message.value = object.value ?? 0; message.type = object.type ?? ""; @@ -2303,10 +2011,7 @@ function createBaseChallenge_Overview(): Challenge_Overview { } export const Challenge_Overview = { - encode( - message: Challenge_Overview, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: Challenge_Overview, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.totalPrizes !== 0) { writer.uint32(8).int32(message.totalPrizes); } @@ -2314,8 +2019,7 @@ export const Challenge_Overview = { }, decode(input: _m0.Reader | Uint8Array, length?: number): Challenge_Overview { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallenge_Overview(); while (reader.pos < end) { @@ -2338,27 +2042,20 @@ export const Challenge_Overview = { }, fromJSON(object: any): Challenge_Overview { - return { - totalPrizes: isSet(object.totalPrizes) ? Number(object.totalPrizes) : 0, - }; + return { totalPrizes: isSet(object.totalPrizes) ? Number(object.totalPrizes) : 0 }; }, toJSON(message: Challenge_Overview): unknown { const obj: any = {}; - message.totalPrizes !== undefined && - (obj.totalPrizes = Math.round(message.totalPrizes)); + message.totalPrizes !== undefined && (obj.totalPrizes = Math.round(message.totalPrizes)); return obj; }, - create, I>>( - base?: I - ): Challenge_Overview { + create, I>>(base?: I): Challenge_Overview { return Challenge_Overview.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): Challenge_Overview { + fromPartial, I>>(object: I): Challenge_Overview { const message = createBaseChallenge_Overview(); message.totalPrizes = object.totalPrizes ?? 0; return message; @@ -2370,10 +2067,7 @@ function createBaseChallengeList(): ChallengeList { } export const ChallengeList = { - encode( - message: ChallengeList, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: ChallengeList, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.items) { Challenge.encode(v!, writer.uint32(10).fork()).ldelim(); } @@ -2381,8 +2075,7 @@ export const ChallengeList = { }, decode(input: _m0.Reader | Uint8Array, length?: number): ChallengeList { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseChallengeList(); while (reader.pos < end) { @@ -2405,34 +2098,24 @@ export const ChallengeList = { }, fromJSON(object: any): ChallengeList { - return { - items: Array.isArray(object?.items) - ? object.items.map((e: any) => Challenge.fromJSON(e)) - : [], - }; + return { items: Array.isArray(object?.items) ? object.items.map((e: any) => Challenge.fromJSON(e)) : [] }; }, toJSON(message: ChallengeList): unknown { const obj: any = {}; if (message.items) { - obj.items = message.items.map((e) => - e ? Challenge.toJSON(e) : undefined - ); + obj.items = message.items.map((e) => e ? Challenge.toJSON(e) : undefined); } else { obj.items = []; } return obj; }, - create, I>>( - base?: I - ): ChallengeList { + create, I>>(base?: I): ChallengeList { return ChallengeList.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): ChallengeList { + fromPartial, I>>(object: I): ChallengeList { const message = createBaseChallengeList(); message.items = object.items?.map((e) => Challenge.fromPartial(e)) || []; return message; @@ -2468,10 +2151,7 @@ function createBaseCreateChallengeInput(): CreateChallengeInput { } export const CreateChallengeInput = { - encode( - message: CreateChallengeInput, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: CreateChallengeInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.name !== "") { writer.uint32(10).string(message.name); } @@ -2485,16 +2165,10 @@ export const CreateChallengeInput = { writer.uint32(34).string(message.timelineTemplateId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode( - message.legacy, - writer.uint32(42).fork() - ).ldelim(); + Challenge_Legacy.encode(message.legacy, writer.uint32(42).fork()).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode( - message.billing, - writer.uint32(50).fork() - ).ldelim(); + Challenge_Billing.encode(message.billing, writer.uint32(50).fork()).ldelim(); } if (message.description !== undefined) { writer.uint32(58).string(message.description); @@ -2550,12 +2224,8 @@ export const CreateChallengeInput = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): CreateChallengeInput { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): CreateChallengeInput { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseCreateChallengeInput(); while (reader.pos < end) { @@ -2629,9 +2299,7 @@ export const CreateChallengeInput = { break; } - message.metadata.push( - Challenge_Metadata.decode(reader, reader.uint32()) - ); + message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); continue; case 11: if (tag != 90) { @@ -2666,9 +2334,7 @@ export const CreateChallengeInput = { break; } - message.prizeSets.push( - Challenge_PrizeSet.decode(reader, reader.uint32()) - ); + message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); continue; case 16: if (tag != 130) { @@ -2724,9 +2390,7 @@ export const CreateChallengeInput = { break; } - message.discussions.push( - Challenge_Discussion.decode(reader, reader.uint32()) - ); + message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -2742,55 +2406,27 @@ export const CreateChallengeInput = { name: isSet(object.name) ? String(object.name) : "", typeId: isSet(object.typeId) ? String(object.typeId) : "", trackId: isSet(object.trackId) ? String(object.trackId) : "", - timelineTemplateId: isSet(object.timelineTemplateId) - ? String(object.timelineTemplateId) - : undefined, - legacy: isSet(object.legacy) - ? Challenge_Legacy.fromJSON(object.legacy) - : undefined, - billing: isSet(object.billing) - ? Challenge_Billing.fromJSON(object.billing) - : undefined, - description: isSet(object.description) - ? String(object.description) - : undefined, - privateDescription: isSet(object.privateDescription) - ? String(object.privateDescription) - : undefined, - descriptionFormat: isSet(object.descriptionFormat) - ? String(object.descriptionFormat) - : undefined, - metadata: Array.isArray(object?.metadata) - ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) - : [], - task: isSet(object.task) - ? Challenge_Task.fromJSON(object.task) - : undefined, - phases: Array.isArray(object?.phases) - ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) - : [], - events: Array.isArray(object?.events) - ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) - : [], - terms: Array.isArray(object?.terms) - ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) - : [], + timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, + legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, + billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, + description: isSet(object.description) ? String(object.description) : undefined, + privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, + descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, + metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], + task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, + phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], + events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], + terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) - ? object.tags.map((e: any) => String(e)) - : [], + tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : "", - attachments: Array.isArray(object?.attachments) - ? object.attachments.map((e: any) => String(e)) - : [], - groups: Array.isArray(object?.groups) - ? object.groups.map((e: any) => String(e)) - : [], + attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], + groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -2802,58 +2438,36 @@ export const CreateChallengeInput = { message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.timelineTemplateId !== undefined && - (obj.timelineTemplateId = message.timelineTemplateId); - message.legacy !== undefined && - (obj.legacy = message.legacy - ? Challenge_Legacy.toJSON(message.legacy) - : undefined); + message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); + message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); message.billing !== undefined && - (obj.billing = message.billing - ? Challenge_Billing.toJSON(message.billing) - : undefined); - message.description !== undefined && - (obj.description = message.description); - message.privateDescription !== undefined && - (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && - (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); + message.description !== undefined && (obj.description = message.description); + message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => - e ? Challenge_Metadata.toJSON(e) : undefined - ); + obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); } else { obj.metadata = []; } - message.task !== undefined && - (obj.task = message.task - ? Challenge_Task.toJSON(message.task) - : undefined); + message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); if (message.phases) { - obj.phases = message.phases.map((e) => - e ? Challenge_Phase.toJSON(e) : undefined - ); + obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => - e ? Challenge_Event.toJSON(e) : undefined - ); + obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => - e ? Challenge_Term.toJSON(e) : undefined - ); + obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => - e ? Challenge_PrizeSet.toJSON(e) : undefined - ); + obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); } else { obj.prizeSets = []; } @@ -2862,12 +2476,9 @@ export const CreateChallengeInput = { } else { obj.tags = []; } - message.projectId !== undefined && - (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && - (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && - (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -2880,54 +2491,40 @@ export const CreateChallengeInput = { obj.groups = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => - e ? Challenge_Discussion.toJSON(e) : undefined - ); + obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); } else { obj.discussions = []; } return obj; }, - create, I>>( - base?: I - ): CreateChallengeInput { + create, I>>(base?: I): CreateChallengeInput { return CreateChallengeInput.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): CreateChallengeInput { + fromPartial, I>>(object: I): CreateChallengeInput { const message = createBaseCreateChallengeInput(); message.name = object.name ?? ""; message.typeId = object.typeId ?? ""; message.trackId = object.trackId ?? ""; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.legacy = - object.legacy !== undefined && object.legacy !== null - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = - object.billing !== undefined && object.billing !== null - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = (object.legacy !== undefined && object.legacy !== null) + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = (object.billing !== undefined && object.billing !== null) + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? undefined; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = - object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = - object.task !== undefined && object.task !== null - ? Challenge_Task.fromPartial(object.task) - : undefined; - message.phases = - object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = - object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = - object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = - object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = (object.task !== undefined && object.task !== null) + ? Challenge_Task.fromPartial(object.task) + : undefined; + message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -2935,8 +2532,7 @@ export const CreateChallengeInput = { message.status = object.status ?? ""; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.discussions = - object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; return message; }, }; @@ -2946,28 +2542,18 @@ function createBaseUpdateChallengeInput(): UpdateChallengeInput { } export const UpdateChallengeInput = { - encode( - message: UpdateChallengeInput, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.filterCriteria) { ScanCriteria.encode(v!, writer.uint32(10).fork()).ldelim(); } if (message.updateInput !== undefined) { - UpdateChallengeInput_UpdateInput.encode( - message.updateInput, - writer.uint32(18).fork() - ).ldelim(); + UpdateChallengeInput_UpdateInput.encode(message.updateInput, writer.uint32(18).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInput { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInput(); while (reader.pos < end) { @@ -2978,19 +2564,14 @@ export const UpdateChallengeInput = { break; } - message.filterCriteria.push( - ScanCriteria.decode(reader, reader.uint32()) - ); + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); continue; case 2: if (tag != 18) { break; } - message.updateInput = UpdateChallengeInput_UpdateInput.decode( - reader, - reader.uint32() - ); + message.updateInput = UpdateChallengeInput_UpdateInput.decode(reader, reader.uint32()); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -3015,9 +2596,7 @@ export const UpdateChallengeInput = { toJSON(message: UpdateChallengeInput): unknown { const obj: any = {}; if (message.filterCriteria) { - obj.filterCriteria = message.filterCriteria.map((e) => - e ? ScanCriteria.toJSON(e) : undefined - ); + obj.filterCriteria = message.filterCriteria.map((e) => e ? ScanCriteria.toJSON(e) : undefined); } else { obj.filterCriteria = []; } @@ -3028,22 +2607,16 @@ export const UpdateChallengeInput = { return obj; }, - create, I>>( - base?: I - ): UpdateChallengeInput { + create, I>>(base?: I): UpdateChallengeInput { return UpdateChallengeInput.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): UpdateChallengeInput { + fromPartial, I>>(object: I): UpdateChallengeInput { const message = createBaseUpdateChallengeInput(); - message.filterCriteria = - object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; - message.updateInput = - object.updateInput !== undefined && object.updateInput !== null - ? UpdateChallengeInput_UpdateInput.fromPartial(object.updateInput) - : undefined; + message.filterCriteria = object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; + message.updateInput = (object.updateInput !== undefined && object.updateInput !== null) + ? UpdateChallengeInput_UpdateInput.fromPartial(object.updateInput) + : undefined; return message; }, }; @@ -3085,10 +2658,7 @@ function createBaseUpdateChallengeInput_UpdateInput(): UpdateChallengeInput_Upda } export const UpdateChallengeInput_UpdateInput = { - encode( - message: UpdateChallengeInput_UpdateInput, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInput_UpdateInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.id !== "") { writer.uint32(10).string(message.id); } @@ -3105,16 +2675,10 @@ export const UpdateChallengeInput_UpdateInput = { writer.uint32(42).string(message.trackId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode( - message.legacy, - writer.uint32(50).fork() - ).ldelim(); + Challenge_Legacy.encode(message.legacy, writer.uint32(50).fork()).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode( - message.billing, - writer.uint32(58).fork() - ).ldelim(); + Challenge_Billing.encode(message.billing, writer.uint32(58).fork()).ldelim(); } if (message.description !== undefined) { writer.uint32(66).string(message.description); @@ -3186,20 +2750,13 @@ export const UpdateChallengeInput_UpdateInput = { writer.uint32(240).int64(message.updated); } if (message.overview !== undefined) { - Challenge_Overview.encode( - message.overview, - writer.uint32(250).fork() - ).ldelim(); + Challenge_Overview.encode(message.overview, writer.uint32(250).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInput_UpdateInput { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInput_UpdateInput(); while (reader.pos < end) { @@ -3280,9 +2837,7 @@ export const UpdateChallengeInput_UpdateInput = { break; } - message.metadata.push( - Challenge_Metadata.decode(reader, reader.uint32()) - ); + message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); continue; case 12: if (tag != 98) { @@ -3324,9 +2879,7 @@ export const UpdateChallengeInput_UpdateInput = { break; } - message.prizeSets.push( - Challenge_PrizeSet.decode(reader, reader.uint32()) - ); + message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); continue; case 18: if (tag != 146) { @@ -3382,18 +2935,14 @@ export const UpdateChallengeInput_UpdateInput = { break; } - message.winners.push( - Challenge_Winner.decode(reader, reader.uint32()) - ); + message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); continue; case 26: if (tag != 210) { break; } - message.discussions.push( - Challenge_Discussion.decode(reader, reader.uint32()) - ); + message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); continue; case 27: if (tag != 218) { @@ -3446,58 +2995,28 @@ export const UpdateChallengeInput_UpdateInput = { name: isSet(object.name) ? String(object.name) : undefined, typeId: isSet(object.typeId) ? String(object.typeId) : undefined, trackId: isSet(object.trackId) ? String(object.trackId) : undefined, - legacy: isSet(object.legacy) - ? Challenge_Legacy.fromJSON(object.legacy) - : undefined, - billing: isSet(object.billing) - ? Challenge_Billing.fromJSON(object.billing) - : undefined, - description: isSet(object.description) - ? String(object.description) - : undefined, - privateDescription: isSet(object.privateDescription) - ? String(object.privateDescription) - : undefined, - descriptionFormat: isSet(object.descriptionFormat) - ? String(object.descriptionFormat) - : undefined, - metadata: Array.isArray(object?.metadata) - ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) - : [], - task: isSet(object.task) - ? Challenge_Task.fromJSON(object.task) - : undefined, - timelineTemplateId: isSet(object.timelineTemplateId) - ? String(object.timelineTemplateId) - : undefined, - phases: Array.isArray(object?.phases) - ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) - : [], - events: Array.isArray(object?.events) - ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) - : [], - terms: Array.isArray(object?.terms) - ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) - : [], + legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, + billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, + description: isSet(object.description) ? String(object.description) : undefined, + privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, + descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, + metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], + task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, + timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, + phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], + events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], + terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], prizeSets: Array.isArray(object?.prizeSets) ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) : [], - tags: Array.isArray(object?.tags) - ? object.tags.map((e: any) => String(e)) - : [], + tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : undefined, - attachments: Array.isArray(object?.attachments) - ? object.attachments.map((e: any) => String(e)) - : [], - groups: Array.isArray(object?.groups) - ? object.groups.map((e: any) => String(e)) - : [], - winners: Array.isArray(object?.winners) - ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) - : [], + attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], + groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], + winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], discussions: Array.isArray(object?.discussions) ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) : [], @@ -3505,72 +3024,47 @@ export const UpdateChallengeInput_UpdateInput = { updatedBy: isSet(object.updatedBy) ? String(object.updatedBy) : undefined, created: isSet(object.created) ? Number(object.created) : undefined, updated: isSet(object.updated) ? Number(object.updated) : undefined, - overview: isSet(object.overview) - ? Challenge_Overview.fromJSON(object.overview) - : undefined, + overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, }; }, toJSON(message: UpdateChallengeInput_UpdateInput): unknown { const obj: any = {}; message.id !== undefined && (obj.id = message.id); - message.legacyId !== undefined && - (obj.legacyId = Math.round(message.legacyId)); + message.legacyId !== undefined && (obj.legacyId = Math.round(message.legacyId)); message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); - message.legacy !== undefined && - (obj.legacy = message.legacy - ? Challenge_Legacy.toJSON(message.legacy) - : undefined); + message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); message.billing !== undefined && - (obj.billing = message.billing - ? Challenge_Billing.toJSON(message.billing) - : undefined); - message.description !== undefined && - (obj.description = message.description); - message.privateDescription !== undefined && - (obj.privateDescription = message.privateDescription); - message.descriptionFormat !== undefined && - (obj.descriptionFormat = message.descriptionFormat); + (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); + message.description !== undefined && (obj.description = message.description); + message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); + message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); if (message.metadata) { - obj.metadata = message.metadata.map((e) => - e ? Challenge_Metadata.toJSON(e) : undefined - ); + obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); } else { obj.metadata = []; } - message.task !== undefined && - (obj.task = message.task - ? Challenge_Task.toJSON(message.task) - : undefined); - message.timelineTemplateId !== undefined && - (obj.timelineTemplateId = message.timelineTemplateId); + message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); + message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); if (message.phases) { - obj.phases = message.phases.map((e) => - e ? Challenge_Phase.toJSON(e) : undefined - ); + obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); } else { obj.phases = []; } if (message.events) { - obj.events = message.events.map((e) => - e ? Challenge_Event.toJSON(e) : undefined - ); + obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); } else { obj.events = []; } if (message.terms) { - obj.terms = message.terms.map((e) => - e ? Challenge_Term.toJSON(e) : undefined - ); + obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); } else { obj.terms = []; } if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => - e ? Challenge_PrizeSet.toJSON(e) : undefined - ); + obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); } else { obj.prizeSets = []; } @@ -3579,12 +3073,9 @@ export const UpdateChallengeInput_UpdateInput = { } else { obj.tags = []; } - message.projectId !== undefined && - (obj.projectId = Math.round(message.projectId)); - message.startDate !== undefined && - (obj.startDate = Math.round(message.startDate)); - message.endDate !== undefined && - (obj.endDate = Math.round(message.endDate)); + message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); + message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); + message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); if (message.attachments) { obj.attachments = message.attachments.map((e) => e); @@ -3597,73 +3088,57 @@ export const UpdateChallengeInput_UpdateInput = { obj.groups = []; } if (message.winners) { - obj.winners = message.winners.map((e) => - e ? Challenge_Winner.toJSON(e) : undefined - ); + obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); } else { obj.winners = []; } if (message.discussions) { - obj.discussions = message.discussions.map((e) => - e ? Challenge_Discussion.toJSON(e) : undefined - ); + obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); } else { obj.discussions = []; } message.createdBy !== undefined && (obj.createdBy = message.createdBy); message.updatedBy !== undefined && (obj.updatedBy = message.updatedBy); - message.created !== undefined && - (obj.created = Math.round(message.created)); - message.updated !== undefined && - (obj.updated = Math.round(message.updated)); + message.created !== undefined && (obj.created = Math.round(message.created)); + message.updated !== undefined && (obj.updated = Math.round(message.updated)); message.overview !== undefined && - (obj.overview = message.overview - ? Challenge_Overview.toJSON(message.overview) - : undefined); + (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); return obj; }, create, I>>( - base?: I + base?: I, ): UpdateChallengeInput_UpdateInput { return UpdateChallengeInput_UpdateInput.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInput_UpdateInput { + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput { const message = createBaseUpdateChallengeInput_UpdateInput(); message.id = object.id ?? ""; message.legacyId = object.legacyId ?? undefined; message.name = object.name ?? undefined; message.typeId = object.typeId ?? undefined; message.trackId = object.trackId ?? undefined; - message.legacy = - object.legacy !== undefined && object.legacy !== null - ? Challenge_Legacy.fromPartial(object.legacy) - : undefined; - message.billing = - object.billing !== undefined && object.billing !== null - ? Challenge_Billing.fromPartial(object.billing) - : undefined; + message.legacy = (object.legacy !== undefined && object.legacy !== null) + ? Challenge_Legacy.fromPartial(object.legacy) + : undefined; + message.billing = (object.billing !== undefined && object.billing !== null) + ? Challenge_Billing.fromPartial(object.billing) + : undefined; message.description = object.description ?? undefined; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = - object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; - message.task = - object.task !== undefined && object.task !== null - ? Challenge_Task.fromPartial(object.task) - : undefined; + message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + message.task = (object.task !== undefined && object.task !== null) + ? Challenge_Task.fromPartial(object.task) + : undefined; message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.phases = - object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = - object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = - object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = - object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; message.tags = object.tags?.map((e) => e) || []; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; @@ -3671,18 +3146,15 @@ export const UpdateChallengeInput_UpdateInput = { message.status = object.status ?? undefined; message.attachments = object.attachments?.map((e) => e) || []; message.groups = object.groups?.map((e) => e) || []; - message.winners = - object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; - message.discussions = - object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; + message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; message.createdBy = object.createdBy ?? undefined; message.updatedBy = object.updatedBy ?? undefined; message.created = object.created ?? undefined; message.updated = object.updated ?? undefined; - message.overview = - object.overview !== undefined && object.overview !== null - ? Challenge_Overview.fromPartial(object.overview) - : undefined; + message.overview = (object.overview !== undefined && object.overview !== null) + ? Challenge_Overview.fromPartial(object.overview) + : undefined; return message; }, }; @@ -3692,28 +3164,18 @@ function createBaseUpdateChallengeInputForACL(): UpdateChallengeInputForACL { } export const UpdateChallengeInputForACL = { - encode( - message: UpdateChallengeInputForACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.filterCriteria) { ScanCriteria.encode(v!, writer.uint32(10).fork()).ldelim(); } if (message.updateInputForAcl !== undefined) { - UpdateChallengeInputForACL_UpdateInputForACL.encode( - message.updateInputForAcl, - writer.uint32(18).fork() - ).ldelim(); + UpdateChallengeInputForACL_UpdateInputForACL.encode(message.updateInputForAcl, writer.uint32(18).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL(); while (reader.pos < end) { @@ -3724,20 +3186,14 @@ export const UpdateChallengeInputForACL = { break; } - message.filterCriteria.push( - ScanCriteria.decode(reader, reader.uint32()) - ); + message.filterCriteria.push(ScanCriteria.decode(reader, reader.uint32())); continue; case 2: if (tag != 18) { break; } - message.updateInputForAcl = - UpdateChallengeInputForACL_UpdateInputForACL.decode( - reader, - reader.uint32() - ); + message.updateInputForAcl = UpdateChallengeInputForACL_UpdateInputForACL.decode(reader, reader.uint32()); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -3754,9 +3210,7 @@ export const UpdateChallengeInputForACL = { ? object.filterCriteria.map((e: any) => ScanCriteria.fromJSON(e)) : [], updateInputForAcl: isSet(object.updateInputForAcl) - ? UpdateChallengeInputForACL_UpdateInputForACL.fromJSON( - object.updateInputForAcl - ) + ? UpdateChallengeInputForACL_UpdateInputForACL.fromJSON(object.updateInputForAcl) : undefined, }; }, @@ -3764,40 +3218,26 @@ export const UpdateChallengeInputForACL = { toJSON(message: UpdateChallengeInputForACL): unknown { const obj: any = {}; if (message.filterCriteria) { - obj.filterCriteria = message.filterCriteria.map((e) => - e ? ScanCriteria.toJSON(e) : undefined - ); + obj.filterCriteria = message.filterCriteria.map((e) => e ? ScanCriteria.toJSON(e) : undefined); } else { obj.filterCriteria = []; } - message.updateInputForAcl !== undefined && - (obj.updateInputForAcl = message.updateInputForAcl - ? UpdateChallengeInputForACL_UpdateInputForACL.toJSON( - message.updateInputForAcl - ) - : undefined); + message.updateInputForAcl !== undefined && (obj.updateInputForAcl = message.updateInputForAcl + ? UpdateChallengeInputForACL_UpdateInputForACL.toJSON(message.updateInputForAcl) + : undefined); return obj; }, - create, I>>( - base?: I - ): UpdateChallengeInputForACL { + create, I>>(base?: I): UpdateChallengeInputForACL { return UpdateChallengeInputForACL.fromPartial(base ?? {}); }, - fromPartial, I>>( - object: I - ): UpdateChallengeInputForACL { + fromPartial, I>>(object: I): UpdateChallengeInputForACL { const message = createBaseUpdateChallengeInputForACL(); - message.filterCriteria = - object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; - message.updateInputForAcl = - object.updateInputForAcl !== undefined && - object.updateInputForAcl !== null - ? UpdateChallengeInputForACL_UpdateInputForACL.fromPartial( - object.updateInputForAcl - ) - : undefined; + message.filterCriteria = object.filterCriteria?.map((e) => ScanCriteria.fromPartial(e)) || []; + message.updateInputForAcl = (object.updateInputForAcl !== undefined && object.updateInputForAcl !== null) + ? UpdateChallengeInputForACL_UpdateInputForACL.fromPartial(object.updateInputForAcl) + : undefined; return message; }, }; @@ -3822,100 +3262,55 @@ function createBaseUpdateChallengeInputForACL_UpdateInputForACL(): UpdateChallen } export const UpdateChallengeInputForACL_UpdateInputForACL = { - encode( - message: UpdateChallengeInputForACL_UpdateInputForACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_UpdateInputForACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.status !== undefined) { writer.uint32(10).string(message.status); } if (message.phases !== undefined) { - UpdateChallengeInputForACL_PhasesACL.encode( - message.phases, - writer.uint32(18).fork() - ).ldelim(); + UpdateChallengeInputForACL_PhasesACL.encode(message.phases, writer.uint32(18).fork()).ldelim(); } if (message.currentPhase !== undefined) { - Challenge_Phase.encode( - message.currentPhase, - writer.uint32(26).fork() - ).ldelim(); + Challenge_Phase.encode(message.currentPhase, writer.uint32(26).fork()).ldelim(); } if (message.currentPhaseNames !== undefined) { - UpdateChallengeInputForACL_CurrentPhaseNamesACL.encode( - message.currentPhaseNames, - writer.uint32(34).fork() - ).ldelim(); + UpdateChallengeInputForACL_CurrentPhaseNamesACL.encode(message.currentPhaseNames, writer.uint32(34).fork()) + .ldelim(); } if (message.registrationStartDate !== undefined) { - Timestamp.encode( - toTimestamp(message.registrationStartDate), - writer.uint32(42).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.registrationStartDate), writer.uint32(42).fork()).ldelim(); } if (message.registrationEndDate !== undefined) { - Timestamp.encode( - toTimestamp(message.registrationEndDate), - writer.uint32(50).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.registrationEndDate), writer.uint32(50).fork()).ldelim(); } if (message.submissionStartDate !== undefined) { - Timestamp.encode( - toTimestamp(message.submissionStartDate), - writer.uint32(58).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.submissionStartDate), writer.uint32(58).fork()).ldelim(); } if (message.submissionEndDate !== undefined) { - Timestamp.encode( - toTimestamp(message.submissionEndDate), - writer.uint32(66).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.submissionEndDate), writer.uint32(66).fork()).ldelim(); } if (message.startDate !== undefined) { - Timestamp.encode( - toTimestamp(message.startDate), - writer.uint32(74).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.startDate), writer.uint32(74).fork()).ldelim(); } if (message.endDate !== undefined) { - Timestamp.encode( - toTimestamp(message.endDate), - writer.uint32(82).fork() - ).ldelim(); + Timestamp.encode(toTimestamp(message.endDate), writer.uint32(82).fork()).ldelim(); } if (message.legacy !== undefined) { - UpdateChallengeInputForACL_LegacyACL.encode( - message.legacy, - writer.uint32(90).fork() - ).ldelim(); + UpdateChallengeInputForACL_LegacyACL.encode(message.legacy, writer.uint32(90).fork()).ldelim(); } if (message.prizeSets !== undefined) { - UpdateChallengeInputForACL_PrizeSetsACL.encode( - message.prizeSets, - writer.uint32(98).fork() - ).ldelim(); + UpdateChallengeInputForACL_PrizeSetsACL.encode(message.prizeSets, writer.uint32(98).fork()).ldelim(); } if (message.overview !== undefined) { - Challenge_Overview.encode( - message.overview, - writer.uint32(106).fork() - ).ldelim(); + Challenge_Overview.encode(message.overview, writer.uint32(106).fork()).ldelim(); } if (message.winners !== undefined) { - UpdateChallengeInputForACL_WinnersACL.encode( - message.winners, - writer.uint32(114).fork() - ).ldelim(); + UpdateChallengeInputForACL_WinnersACL.encode(message.winners, writer.uint32(114).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_UpdateInputForACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_UpdateInputForACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_UpdateInputForACL(); while (reader.pos < end) { @@ -3933,105 +3328,77 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { break; } - message.phases = UpdateChallengeInputForACL_PhasesACL.decode( - reader, - reader.uint32() - ); + message.phases = UpdateChallengeInputForACL_PhasesACL.decode(reader, reader.uint32()); continue; case 3: if (tag != 26) { break; } - message.currentPhase = Challenge_Phase.decode( - reader, - reader.uint32() - ); + message.currentPhase = Challenge_Phase.decode(reader, reader.uint32()); continue; case 4: if (tag != 34) { break; } - message.currentPhaseNames = - UpdateChallengeInputForACL_CurrentPhaseNamesACL.decode( - reader, - reader.uint32() - ); + message.currentPhaseNames = UpdateChallengeInputForACL_CurrentPhaseNamesACL.decode(reader, reader.uint32()); continue; case 5: if (tag != 42) { break; } - message.registrationStartDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.registrationStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 6: if (tag != 50) { break; } - message.registrationEndDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.registrationEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 7: if (tag != 58) { break; } - message.submissionStartDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.submissionStartDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 8: if (tag != 66) { break; } - message.submissionEndDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.submissionEndDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 9: if (tag != 74) { break; } - message.startDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.startDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 10: if (tag != 82) { break; } - message.endDate = fromTimestamp( - Timestamp.decode(reader, reader.uint32()) - ); + message.endDate = fromTimestamp(Timestamp.decode(reader, reader.uint32())); continue; case 11: if (tag != 90) { break; } - message.legacy = UpdateChallengeInputForACL_LegacyACL.decode( - reader, - reader.uint32() - ); + message.legacy = UpdateChallengeInputForACL_LegacyACL.decode(reader, reader.uint32()); continue; case 12: if (tag != 98) { break; } - message.prizeSets = UpdateChallengeInputForACL_PrizeSetsACL.decode( - reader, - reader.uint32() - ); + message.prizeSets = UpdateChallengeInputForACL_PrizeSetsACL.decode(reader, reader.uint32()); continue; case 13: if (tag != 106) { @@ -4045,10 +3412,7 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { break; } - message.winners = UpdateChallengeInputForACL_WinnersACL.decode( - reader, - reader.uint32() - ); + message.winners = UpdateChallengeInputForACL_WinnersACL.decode(reader, reader.uint32()); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -4062,43 +3426,23 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { fromJSON(object: any): UpdateChallengeInputForACL_UpdateInputForACL { return { status: isSet(object.status) ? String(object.status) : undefined, - phases: isSet(object.phases) - ? UpdateChallengeInputForACL_PhasesACL.fromJSON(object.phases) - : undefined, - currentPhase: isSet(object.currentPhase) - ? Challenge_Phase.fromJSON(object.currentPhase) - : undefined, + phases: isSet(object.phases) ? UpdateChallengeInputForACL_PhasesACL.fromJSON(object.phases) : undefined, + currentPhase: isSet(object.currentPhase) ? Challenge_Phase.fromJSON(object.currentPhase) : undefined, currentPhaseNames: isSet(object.currentPhaseNames) - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromJSON( - object.currentPhaseNames - ) - : undefined, - registrationStartDate: isSet(object.registrationStartDate) - ? String(object.registrationStartDate) - : undefined, - registrationEndDate: isSet(object.registrationEndDate) - ? String(object.registrationEndDate) - : undefined, - submissionStartDate: isSet(object.submissionStartDate) - ? String(object.submissionStartDate) - : undefined, - submissionEndDate: isSet(object.submissionEndDate) - ? String(object.submissionEndDate) + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromJSON(object.currentPhaseNames) : undefined, + registrationStartDate: isSet(object.registrationStartDate) ? String(object.registrationStartDate) : undefined, + registrationEndDate: isSet(object.registrationEndDate) ? String(object.registrationEndDate) : undefined, + submissionStartDate: isSet(object.submissionStartDate) ? String(object.submissionStartDate) : undefined, + submissionEndDate: isSet(object.submissionEndDate) ? String(object.submissionEndDate) : undefined, startDate: isSet(object.startDate) ? String(object.startDate) : undefined, endDate: isSet(object.endDate) ? String(object.endDate) : undefined, - legacy: isSet(object.legacy) - ? UpdateChallengeInputForACL_LegacyACL.fromJSON(object.legacy) - : undefined, + legacy: isSet(object.legacy) ? UpdateChallengeInputForACL_LegacyACL.fromJSON(object.legacy) : undefined, prizeSets: isSet(object.prizeSets) ? UpdateChallengeInputForACL_PrizeSetsACL.fromJSON(object.prizeSets) : undefined, - overview: isSet(object.overview) - ? Challenge_Overview.fromJSON(object.overview) - : undefined, - winners: isSet(object.winners) - ? UpdateChallengeInputForACL_WinnersACL.fromJSON(object.winners) - : undefined, + overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, + winners: isSet(object.winners) ? UpdateChallengeInputForACL_WinnersACL.fromJSON(object.winners) : undefined, }; }, @@ -4106,102 +3450,69 @@ export const UpdateChallengeInputForACL_UpdateInputForACL = { const obj: any = {}; message.status !== undefined && (obj.status = message.status); message.phases !== undefined && - (obj.phases = message.phases - ? UpdateChallengeInputForACL_PhasesACL.toJSON(message.phases) - : undefined); + (obj.phases = message.phases ? UpdateChallengeInputForACL_PhasesACL.toJSON(message.phases) : undefined); message.currentPhase !== undefined && - (obj.currentPhase = message.currentPhase - ? Challenge_Phase.toJSON(message.currentPhase) - : undefined); - message.currentPhaseNames !== undefined && - (obj.currentPhaseNames = message.currentPhaseNames - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.toJSON( - message.currentPhaseNames - ) - : undefined); - message.registrationStartDate !== undefined && - (obj.registrationStartDate = message.registrationStartDate); - message.registrationEndDate !== undefined && - (obj.registrationEndDate = message.registrationEndDate); - message.submissionStartDate !== undefined && - (obj.submissionStartDate = message.submissionStartDate); - message.submissionEndDate !== undefined && - (obj.submissionEndDate = message.submissionEndDate); + (obj.currentPhase = message.currentPhase ? Challenge_Phase.toJSON(message.currentPhase) : undefined); + message.currentPhaseNames !== undefined && (obj.currentPhaseNames = message.currentPhaseNames + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.toJSON(message.currentPhaseNames) + : undefined); + message.registrationStartDate !== undefined && (obj.registrationStartDate = message.registrationStartDate); + message.registrationEndDate !== undefined && (obj.registrationEndDate = message.registrationEndDate); + message.submissionStartDate !== undefined && (obj.submissionStartDate = message.submissionStartDate); + message.submissionEndDate !== undefined && (obj.submissionEndDate = message.submissionEndDate); message.startDate !== undefined && (obj.startDate = message.startDate); message.endDate !== undefined && (obj.endDate = message.endDate); message.legacy !== undefined && - (obj.legacy = message.legacy - ? UpdateChallengeInputForACL_LegacyACL.toJSON(message.legacy) - : undefined); + (obj.legacy = message.legacy ? UpdateChallengeInputForACL_LegacyACL.toJSON(message.legacy) : undefined); message.prizeSets !== undefined && (obj.prizeSets = message.prizeSets ? UpdateChallengeInputForACL_PrizeSetsACL.toJSON(message.prizeSets) : undefined); message.overview !== undefined && - (obj.overview = message.overview - ? Challenge_Overview.toJSON(message.overview) - : undefined); + (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); message.winners !== undefined && - (obj.winners = message.winners - ? UpdateChallengeInputForACL_WinnersACL.toJSON(message.winners) - : undefined); + (obj.winners = message.winners ? UpdateChallengeInputForACL_WinnersACL.toJSON(message.winners) : undefined); return obj; }, - create< - I extends Exact< - DeepPartial, - I - > - >(base?: I): UpdateChallengeInputForACL_UpdateInputForACL { + create, I>>( + base?: I, + ): UpdateChallengeInputForACL_UpdateInputForACL { return UpdateChallengeInputForACL_UpdateInputForACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact< - DeepPartial, - I - > - >(object: I): UpdateChallengeInputForACL_UpdateInputForACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_UpdateInputForACL { const message = createBaseUpdateChallengeInputForACL_UpdateInputForACL(); message.status = object.status ?? undefined; - message.phases = - object.phases !== undefined && object.phases !== null - ? UpdateChallengeInputForACL_PhasesACL.fromPartial(object.phases) - : undefined; - message.currentPhase = - object.currentPhase !== undefined && object.currentPhase !== null - ? Challenge_Phase.fromPartial(object.currentPhase) - : undefined; - message.currentPhaseNames = - object.currentPhaseNames !== undefined && - object.currentPhaseNames !== null - ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial( - object.currentPhaseNames - ) - : undefined; + message.phases = (object.phases !== undefined && object.phases !== null) + ? UpdateChallengeInputForACL_PhasesACL.fromPartial(object.phases) + : undefined; + message.currentPhase = (object.currentPhase !== undefined && object.currentPhase !== null) + ? Challenge_Phase.fromPartial(object.currentPhase) + : undefined; + message.currentPhaseNames = (object.currentPhaseNames !== undefined && object.currentPhaseNames !== null) + ? UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial(object.currentPhaseNames) + : undefined; message.registrationStartDate = object.registrationStartDate ?? undefined; message.registrationEndDate = object.registrationEndDate ?? undefined; message.submissionStartDate = object.submissionStartDate ?? undefined; message.submissionEndDate = object.submissionEndDate ?? undefined; message.startDate = object.startDate ?? undefined; message.endDate = object.endDate ?? undefined; - message.legacy = - object.legacy !== undefined && object.legacy !== null - ? UpdateChallengeInputForACL_LegacyACL.fromPartial(object.legacy) - : undefined; - message.prizeSets = - object.prizeSets !== undefined && object.prizeSets !== null - ? UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(object.prizeSets) - : undefined; - message.overview = - object.overview !== undefined && object.overview !== null - ? Challenge_Overview.fromPartial(object.overview) - : undefined; - message.winners = - object.winners !== undefined && object.winners !== null - ? UpdateChallengeInputForACL_WinnersACL.fromPartial(object.winners) - : undefined; + message.legacy = (object.legacy !== undefined && object.legacy !== null) + ? UpdateChallengeInputForACL_LegacyACL.fromPartial(object.legacy) + : undefined; + message.prizeSets = (object.prizeSets !== undefined && object.prizeSets !== null) + ? UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(object.prizeSets) + : undefined; + message.overview = (object.overview !== undefined && object.overview !== null) + ? Challenge_Overview.fromPartial(object.overview) + : undefined; + message.winners = (object.winners !== undefined && object.winners !== null) + ? UpdateChallengeInputForACL_WinnersACL.fromPartial(object.winners) + : undefined; return message; }, }; @@ -4211,22 +3522,15 @@ function createBaseUpdateChallengeInputForACL_PhasesACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_PhasesACL = { - encode( - message: UpdateChallengeInputForACL_PhasesACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_PhasesACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.phases) { Challenge_Phase.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_PhasesACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_PhasesACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_PhasesACL(); while (reader.pos < end) { @@ -4249,19 +3553,13 @@ export const UpdateChallengeInputForACL_PhasesACL = { }, fromJSON(object: any): UpdateChallengeInputForACL_PhasesACL { - return { - phases: Array.isArray(object?.phases) - ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) - : [], - }; + return { phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [] }; }, toJSON(message: UpdateChallengeInputForACL_PhasesACL): unknown { const obj: any = {}; if (message.phases) { - obj.phases = message.phases.map((e) => - e ? Challenge_Phase.toJSON(e) : undefined - ); + obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); } else { obj.phases = []; } @@ -4269,17 +3567,16 @@ export const UpdateChallengeInputForACL_PhasesACL = { }, create, I>>( - base?: I + base?: I, ): UpdateChallengeInputForACL_PhasesACL { return UpdateChallengeInputForACL_PhasesACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInputForACL_PhasesACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_PhasesACL { const message = createBaseUpdateChallengeInputForACL_PhasesACL(); - message.phases = - object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; return message; }, }; @@ -4291,7 +3588,7 @@ function createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(): UpdateChal export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { encode( message: UpdateChallengeInputForACL_CurrentPhaseNamesACL, - writer: _m0.Writer = _m0.Writer.create() + writer: _m0.Writer = _m0.Writer.create(), ): _m0.Writer { for (const v of message.currentPhaseNames) { writer.uint32(10).string(v!); @@ -4299,12 +3596,8 @@ export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(); while (reader.pos < end) { @@ -4344,23 +3637,15 @@ export const UpdateChallengeInputForACL_CurrentPhaseNamesACL = { return obj; }, - create< - I extends Exact< - DeepPartial, - I - > - >(base?: I): UpdateChallengeInputForACL_CurrentPhaseNamesACL { - return UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial( - base ?? {} - ); + create, I>>( + base?: I, + ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + return UpdateChallengeInputForACL_CurrentPhaseNamesACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact< - DeepPartial, - I - > - >(object: I): UpdateChallengeInputForACL_CurrentPhaseNamesACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_CurrentPhaseNamesACL { const message = createBaseUpdateChallengeInputForACL_CurrentPhaseNamesACL(); message.currentPhaseNames = object.currentPhaseNames?.map((e) => e) || []; return message; @@ -4372,10 +3657,7 @@ function createBaseUpdateChallengeInputForACL_LegacyACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_LegacyACL = { - encode( - message: UpdateChallengeInputForACL_LegacyACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_LegacyACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.reviewScorecardId !== undefined) { writer.uint32(8).int32(message.reviewScorecardId); } @@ -4385,12 +3667,8 @@ export const UpdateChallengeInputForACL_LegacyACL = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_LegacyACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_LegacyACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_LegacyACL(); while (reader.pos < end) { @@ -4421,33 +3699,27 @@ export const UpdateChallengeInputForACL_LegacyACL = { fromJSON(object: any): UpdateChallengeInputForACL_LegacyACL { return { - reviewScorecardId: isSet(object.reviewScorecardId) - ? Number(object.reviewScorecardId) - : undefined, - screeningScorecardId: isSet(object.screeningScorecardId) - ? Number(object.screeningScorecardId) - : undefined, + reviewScorecardId: isSet(object.reviewScorecardId) ? Number(object.reviewScorecardId) : undefined, + screeningScorecardId: isSet(object.screeningScorecardId) ? Number(object.screeningScorecardId) : undefined, }; }, toJSON(message: UpdateChallengeInputForACL_LegacyACL): unknown { const obj: any = {}; - message.reviewScorecardId !== undefined && - (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); - message.screeningScorecardId !== undefined && - (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); + message.reviewScorecardId !== undefined && (obj.reviewScorecardId = Math.round(message.reviewScorecardId)); + message.screeningScorecardId !== undefined && (obj.screeningScorecardId = Math.round(message.screeningScorecardId)); return obj; }, create, I>>( - base?: I + base?: I, ): UpdateChallengeInputForACL_LegacyACL { return UpdateChallengeInputForACL_LegacyACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInputForACL_LegacyACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_LegacyACL { const message = createBaseUpdateChallengeInputForACL_LegacyACL(); message.reviewScorecardId = object.reviewScorecardId ?? undefined; message.screeningScorecardId = object.screeningScorecardId ?? undefined; @@ -4460,22 +3732,15 @@ function createBaseUpdateChallengeInputForACL_PrizeSetsACL(): UpdateChallengeInp } export const UpdateChallengeInputForACL_PrizeSetsACL = { - encode( - message: UpdateChallengeInputForACL_PrizeSetsACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_PrizeSetsACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.prizeSets) { Challenge_PrizeSet.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_PrizeSetsACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_PrizeSetsACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_PrizeSetsACL(); while (reader.pos < end) { @@ -4486,9 +3751,7 @@ export const UpdateChallengeInputForACL_PrizeSetsACL = { break; } - message.prizeSets.push( - Challenge_PrizeSet.decode(reader, reader.uint32()) - ); + message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -4510,27 +3773,24 @@ export const UpdateChallengeInputForACL_PrizeSetsACL = { toJSON(message: UpdateChallengeInputForACL_PrizeSetsACL): unknown { const obj: any = {}; if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => - e ? Challenge_PrizeSet.toJSON(e) : undefined - ); + obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); } else { obj.prizeSets = []; } return obj; }, - create< - I extends Exact, I> - >(base?: I): UpdateChallengeInputForACL_PrizeSetsACL { + create, I>>( + base?: I, + ): UpdateChallengeInputForACL_PrizeSetsACL { return UpdateChallengeInputForACL_PrizeSetsACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInputForACL_PrizeSetsACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_PrizeSetsACL { const message = createBaseUpdateChallengeInputForACL_PrizeSetsACL(); - message.prizeSets = - object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; return message; }, }; @@ -4540,25 +3800,15 @@ function createBaseUpdateChallengeInputForACL_WinnersACL(): UpdateChallengeInput } export const UpdateChallengeInputForACL_WinnersACL = { - encode( - message: UpdateChallengeInputForACL_WinnersACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_WinnersACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.winners) { - UpdateChallengeInputForACL_WinnerACL.encode( - v!, - writer.uint32(10).fork() - ).ldelim(); + UpdateChallengeInputForACL_WinnerACL.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_WinnersACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_WinnersACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_WinnersACL(); while (reader.pos < end) { @@ -4569,9 +3819,7 @@ export const UpdateChallengeInputForACL_WinnersACL = { break; } - message.winners.push( - UpdateChallengeInputForACL_WinnerACL.decode(reader, reader.uint32()) - ); + message.winners.push(UpdateChallengeInputForACL_WinnerACL.decode(reader, reader.uint32())); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -4585,9 +3833,7 @@ export const UpdateChallengeInputForACL_WinnersACL = { fromJSON(object: any): UpdateChallengeInputForACL_WinnersACL { return { winners: Array.isArray(object?.winners) - ? object.winners.map((e: any) => - UpdateChallengeInputForACL_WinnerACL.fromJSON(e) - ) + ? object.winners.map((e: any) => UpdateChallengeInputForACL_WinnerACL.fromJSON(e)) : [], }; }, @@ -4595,29 +3841,24 @@ export const UpdateChallengeInputForACL_WinnersACL = { toJSON(message: UpdateChallengeInputForACL_WinnersACL): unknown { const obj: any = {}; if (message.winners) { - obj.winners = message.winners.map((e) => - e ? UpdateChallengeInputForACL_WinnerACL.toJSON(e) : undefined - ); + obj.winners = message.winners.map((e) => e ? UpdateChallengeInputForACL_WinnerACL.toJSON(e) : undefined); } else { obj.winners = []; } return obj; }, - create< - I extends Exact, I> - >(base?: I): UpdateChallengeInputForACL_WinnersACL { + create, I>>( + base?: I, + ): UpdateChallengeInputForACL_WinnersACL { return UpdateChallengeInputForACL_WinnersACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInputForACL_WinnersACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_WinnersACL { const message = createBaseUpdateChallengeInputForACL_WinnersACL(); - message.winners = - object.winners?.map((e) => - UpdateChallengeInputForACL_WinnerACL.fromPartial(e) - ) || []; + message.winners = object.winners?.map((e) => UpdateChallengeInputForACL_WinnerACL.fromPartial(e)) || []; return message; }, }; @@ -4627,10 +3868,7 @@ function createBaseUpdateChallengeInputForACL_WinnerACL(): UpdateChallengeInputF } export const UpdateChallengeInputForACL_WinnerACL = { - encode( - message: UpdateChallengeInputForACL_WinnerACL, - writer: _m0.Writer = _m0.Writer.create() - ): _m0.Writer { + encode(message: UpdateChallengeInputForACL_WinnerACL, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.handle !== "") { writer.uint32(10).string(message.handle); } @@ -4640,12 +3878,8 @@ export const UpdateChallengeInputForACL_WinnerACL = { return writer; }, - decode( - input: _m0.Reader | Uint8Array, - length?: number - ): UpdateChallengeInputForACL_WinnerACL { - const reader = - input instanceof _m0.Reader ? input : _m0.Reader.create(input); + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInputForACL_WinnerACL { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseUpdateChallengeInputForACL_WinnerACL(); while (reader.pos < end) { @@ -4684,20 +3918,19 @@ export const UpdateChallengeInputForACL_WinnerACL = { toJSON(message: UpdateChallengeInputForACL_WinnerACL): unknown { const obj: any = {}; message.handle !== undefined && (obj.handle = message.handle); - message.placement !== undefined && - (obj.placement = Math.round(message.placement)); + message.placement !== undefined && (obj.placement = Math.round(message.placement)); return obj; }, create, I>>( - base?: I + base?: I, ): UpdateChallengeInputForACL_WinnerACL { return UpdateChallengeInputForACL_WinnerACL.fromPartial(base ?? {}); }, - fromPartial< - I extends Exact, I> - >(object: I): UpdateChallengeInputForACL_WinnerACL { + fromPartial, I>>( + object: I, + ): UpdateChallengeInputForACL_WinnerACL { const message = createBaseUpdateChallengeInputForACL_WinnerACL(); message.handle = object.handle ?? ""; message.placement = object.placement ?? 0; @@ -4724,35 +3957,17 @@ var tsProtoGlobalThis: any = (() => { throw "Unable to locate global object"; })(); -type Builtin = - | Date - | Function - | Uint8Array - | string - | number - | boolean - | undefined; - -type DeepPartial = T extends Builtin - ? T - : T extends Array - ? Array> - : T extends ReadonlyArray - ? ReadonlyArray> - : T extends { $case: string } - ? { [K in keyof Omit]?: DeepPartial } & { - $case: T["$case"]; - } - : T extends {} - ? { [K in keyof T]?: DeepPartial } +type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; + +type DeepPartial = T extends Builtin ? T + : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> + : T extends { $case: string } ? { [K in keyof Omit]?: DeepPartial } & { $case: T["$case"] } + : T extends {} ? { [K in keyof T]?: DeepPartial } : Partial; type KeysOfUnion = T extends T ? keyof T : never; -type Exact = P extends Builtin - ? P - : P & { [K in keyof P]: Exact } & { - [K in Exclude>]: never; - }; +type Exact = P extends Builtin ? P + : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; function toTimestamp(dateStr: string): Timestamp { const date = new Date(dateStr); @@ -4769,9 +3984,7 @@ function fromTimestamp(t: Timestamp): string { function longToNumber(long: Long): number { if (long.gt(Number.MAX_SAFE_INTEGER)) { - throw new tsProtoGlobalThis.Error( - "Value is larger than Number.MAX_SAFE_INTEGER" - ); + throw new tsProtoGlobalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); } return long.toNumber(); } diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 2080e9e..bcdb422 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -28,7 +28,7 @@ class LegacyMapper { type: PrizeSetTypes.ChallengePrizes, }) ) ?? [], - phases: this.mapPhases(input.phases), + phases: this.mapPhases(input.legacy.subTrack, input.phases), reviewType: input.legacy?.reviewType ?? "INTERNAL", confidentialityType: input.legacy?.confidentialityType ?? "public", billingProject: input.billing?.billingAccountId!, @@ -181,7 +181,7 @@ class LegacyMapper { } // prettier-ignore - public mapPhases(phases: Challenge_Phase[]) { + public mapPhases(subTrack: string, phases: Challenge_Phase[]) { return phases.map((phase: Challenge_Phase, index: number) => ({ phaseTypeId: this.mapPhaseNameToPhaseTypeId(phase.name), phaseStatusId: phase.isOpen ? 2 : 1, // Set Open if phase is open, otherwise mark it Scheduled [1: Scheduled, 2: Open, 3: Closed] @@ -191,12 +191,12 @@ class LegacyMapper { actualStartTime: !phase.actualStartDate ? undefined: DateUtil.formatDateForIfx(phase.actualStartDate) , actualEndTime: !phase.actualEndDate ? undefined: DateUtil.formatDateForIfx(phase.actualEndDate) , duration: phase.duration, - phaseCriteria: this.mapPhaseCriteria(phase), + phaseCriteria: this.mapPhaseCriteria(subTrack, phase), })); } // prettier-ignore - private mapPhaseCriteria(phase: Challenge_Phase) { + private mapPhaseCriteria(subTrack: string, phase: Challenge_Phase): { [key: number]: string | undefined } { const reviewPhaseConstraint = phase.constraints?.find( (constraint: { name: string; value: number }) => constraint.name === "Number of Reviewers" @@ -207,16 +207,16 @@ class LegacyMapper { ); return { - 1: phase.name === "Review" ? 30001610 : undefined, // Scorecard ID - 2: phase.name === "Registration" ? 1 : undefined, // Registration Number - 3: phase.name === "Submission" ? submissionPhaseConstraint?.value ?? // if we have a submission phase constraint use it - reviewPhaseConstraint?.value != null ? 1 : undefined // otherwise if we have a review phase constraint use 1 + 1: phase.name === "Review" ? this.mapScorecard(subTrack) : undefined, // Scorecard ID + 2: phase.name === "Registration" ? '1' : undefined, // Registration Number + 3: phase.name === "Submission" ? submissionPhaseConstraint?.value.toString() ?? // if we have a submission phase constraint use it + reviewPhaseConstraint?.value != null ? '1' : undefined // otherwise if we have a review phase constraint use 1 : undefined, 4: undefined, // View Response During Appeals 5: undefined, // Manual Screening 6: - phase.name === "Review" ? reviewPhaseConstraint?.value ?? 2 : undefined, // Reviewer Number - 7: undefined, // View Reviews During Review + phase.name === "Review" ? reviewPhaseConstraint?.value.toString() ?? '2' : undefined, // Reviewer Number + '7': undefined, // View Reviews During Review }; } @@ -276,6 +276,20 @@ class LegacyMapper { return 18; } } + + private mapScorecard(subTrack: string): string { + let scorecard = 30002133; // DEV Challenge + + if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = 30002160; + if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = 30002133; // needs to be corrected + // prettier-ignore + if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = 30002160; + if (subTrack === V4_SUBTRACKS.BUG_HUNT) scorecard = 30002133; + if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = 30001040; + if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) scorecard = 30001101; + + return scorecard.toString(); + } } export default new LegacyMapper(); From 356877cb432a5133074fe579448a7cff4a87431d Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 18:17:11 +0600 Subject: [PATCH 06/21] fix: dev scorecard ids are different Signed-off-by: Rakib Ansary --- src/util/LegacyMapper.ts | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index bcdb422..bcadd89 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -206,6 +206,7 @@ class LegacyMapper { (constraint: { name: string; value: number }) => constraint.name === "Number of Submissions" ); + return { 1: phase.name === "Review" ? this.mapScorecard(subTrack) : undefined, // Scorecard ID 2: phase.name === "Registration" ? '1' : undefined, // Registration Number @@ -277,16 +278,20 @@ class LegacyMapper { } } + // prettier-ignore private mapScorecard(subTrack: string): string { - let scorecard = 30002133; // DEV Challenge + const isNonProd = process.env.ENV != "prod"; - if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = 30002160; - if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = 30002133; // needs to be corrected - // prettier-ignore - if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = 30002160; - if (subTrack === V4_SUBTRACKS.BUG_HUNT) scorecard = 30002133; - if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = 30001040; - if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) scorecard = 30001101; + // TODO: Update scorecard ids for all subtracks and check for dev environment + + let scorecard = isNonProd ? 30001610 : 30002133; // DEV Challenge + + if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = isNonProd ? 30002160 : 30002160; + if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // needs to be corrected + if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 :30002160; + if (subTrack === V4_SUBTRACKS.BUG_HUNT) scorecard = isNonProd ? 30001610 :30002133; + if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 :30001040; + if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) scorecard = isNonProd ? 30001610 :30001101; return scorecard.toString(); } From 7f22886068f00c941c744c582fabd03d9c589af1 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 18:23:52 +0600 Subject: [PATCH 07/21] chore: publish image --- .circleci/config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index de2d1e8..8e6fd7a 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -6,7 +6,7 @@ jobs: - image: cimg/aws:2023.01 environment: CODEARTIFACT_ENV: PROD - ECR_ENV: QA + ECR_ENV: DEV SERVICE_NAME: "domain-challenge" OUT_DIR: "buildscripts" steps: From b0d540e769effc785c59f962d22563350afb57d7 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 18:42:35 +0600 Subject: [PATCH 08/21] fix: save creator --- src/common/CoreOperations.ts | 15 ++++++++++++--- src/domain/Challenge.ts | 11 +++++++---- src/service/ChallengeService.ts | 4 ++-- 3 files changed, 21 insertions(+), 9 deletions(-) diff --git a/src/common/CoreOperations.ts b/src/common/CoreOperations.ts index 713f780..6e3248a 100644 --- a/src/common/CoreOperations.ts +++ b/src/common/CoreOperations.ts @@ -25,7 +25,7 @@ import { UpdateType, Value as PartiQLValue, } from "../dal/models/nosql/parti_ql"; -import { StatusBuilder } from "@grpc/grpc-js"; +import { Metadata, StatusBuilder } from "@grpc/grpc-js"; import { Status } from "@grpc/grpc-js/build/src/constants"; export type ValueType = @@ -150,7 +150,12 @@ abstract class CoreOperations< }; } - protected async create(entity: I & T): Promise { + protected async create(entity: I & T, metadata?: Metadata): Promise { + let handle = null; + if (metadata?.get("handle") != null) { + handle = metadata?.get("handle")?.toString(); + } + const queryRequest: QueryRequest = { kind: { $case: "query", @@ -159,7 +164,11 @@ abstract class CoreOperations< $case: "insert", insert: { table: this.entityName, - attributes: entity, + attributes: { + ...entity, + createdBy: handle != null ? handle : undefined, + updatedBy: handle != null ? handle : undefined, + }, }, }, }, diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index 29ac1c4..d1ad875 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -61,7 +61,7 @@ import { ScanCriteria } from "../models/common/common"; import constants from "../util/constants"; import legacyMapper from "../util/LegacyMapper"; import { CreateResult, Operator } from "@topcoder-framework/lib-common"; -import { StatusBuilder } from "@grpc/grpc-js"; +import { Metadata, StatusBuilder } from "@grpc/grpc-js"; import { Status } from "@grpc/grpc-js/build/src/constants"; import ChallengeScheduler from "../util/ChallengeScheduler"; @@ -151,7 +151,10 @@ class ChallengeDomain extends CoreOperations { return Challenge.fromJSON(item); } - public async create(input: CreateChallengeInput): Promise { + public async create( + input: CreateChallengeInput, + metadata: Metadata | undefined + ): Promise { input.name = xss(input.name); if (Array.isArray(input.discussions)) { @@ -196,7 +199,7 @@ class ChallengeDomain extends CoreOperations { // prettier-ignore const legacyChallengeCreateInput = LegacyCreateChallengeInput.fromPartial(legacyMapper.mapChallengeDraftUpdateInput(input)); // prettier-ignore - const legacyChallengeCreateResponse = await legacyChallengeDomain.create(legacyChallengeCreateInput); + const legacyChallengeCreateResponse = await legacyChallengeDomain.create(legacyChallengeCreateInput, metadata); if (legacyChallengeCreateResponse.kind?.$case === "integerId") { legacyChallengeId = legacyChallengeCreateResponse.kind.integerId; } @@ -240,7 +243,7 @@ class ChallengeDomain extends CoreOperations { }) ?? [], }; - return super.create(challenge); + return super.create(challenge, metadata); } async syncChallengePhases( diff --git a/src/service/ChallengeService.ts b/src/service/ChallengeService.ts index aa1c403..3f34d45 100644 --- a/src/service/ChallengeService.ts +++ b/src/service/ChallengeService.ts @@ -33,8 +33,8 @@ class ChallengeServerImpl implements ChallengeServer { call: ServerUnaryCall, callback: sendUnaryData ): Promise => { - const { request: createChallengeInput } = call; - Domain.create(createChallengeInput) + const { request: createChallengeInput, metadata } = call; + Domain.create(createChallengeInput, metadata) .then((challenge) => callback(null, challenge)) .catch((error) => callback(error, null)); }; From e93dd65ac5aca084507f2351e1f7136bd5e6c66c Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 18:55:22 +0600 Subject: [PATCH 09/21] fix: save createdBy and updatedBy Signed-off-by: Rakib Ansary --- src/common/CoreOperations.ts | 11 +---------- src/domain/Challenge.ts | 7 +++++-- 2 files changed, 6 insertions(+), 12 deletions(-) diff --git a/src/common/CoreOperations.ts b/src/common/CoreOperations.ts index 6e3248a..70d5fb1 100644 --- a/src/common/CoreOperations.ts +++ b/src/common/CoreOperations.ts @@ -151,11 +151,6 @@ abstract class CoreOperations< } protected async create(entity: I & T, metadata?: Metadata): Promise { - let handle = null; - if (metadata?.get("handle") != null) { - handle = metadata?.get("handle")?.toString(); - } - const queryRequest: QueryRequest = { kind: { $case: "query", @@ -164,11 +159,7 @@ abstract class CoreOperations< $case: "insert", insert: { table: this.entityName, - attributes: { - ...entity, - createdBy: handle != null ? handle : undefined, - updatedBy: handle != null ? handle : undefined, - }, + attributes: entity, }, }, }, diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index d1ad875..785d375 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -153,10 +153,13 @@ class ChallengeDomain extends CoreOperations { public async create( input: CreateChallengeInput, - metadata: Metadata | undefined + metadata: Metadata ): Promise { input.name = xss(input.name); + // prettier-ignore + const handle = metadata?.get("handle").length > 0 ? metadata?.get("handle")?.[0].toString() : "tcwebservice"; + if (Array.isArray(input.discussions)) { for (const discussion of input.discussions) { discussion.id = IdGenerator.generateUUID(); @@ -217,7 +220,7 @@ class ChallengeDomain extends CoreOperations { const challenge: Challenge = { id: IdGenerator.generateUUID(), created: now, - createdBy: "tcwebservice", // TODO: extract from JWT + createdBy: handle, // TODO: extract from JWT updated: now, updatedBy: "tcwebservice", // TODO: extract from JWT winners: [], From b3671549c7adde119b05f1c97c91664ea207c57e Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Wed, 22 Mar 2023 19:14:36 +0600 Subject: [PATCH 10/21] fix: turn autopilot on --- src/util/LegacyMapper.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index bcadd89..3d1cc79 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -130,10 +130,10 @@ class LegacyMapper { 3: "1", 4: "0", 7: "1.0", - 9: "Off", // Turn Auto Pilot Off + 9: "On", // Turn Auto Pilot Off 78: "Development", // Forum Type - value doesn't matter - 10: "Off", // Turn status notification off - 11: "Off", // Turn timeline notification off + 10: "On", // Turn status notification off + 11: "On", // Turn timeline notification off 12: "Yes", // Public -> Yes (make it dynamic) 13: "Yes", // Rated -> Yes (make it dynamic) 14: "Open", // Eligibility -> Open (value doesn't matter) From bfa9d4e508f88e9bcfe2d2abfc856e90e1244175 Mon Sep 17 00:00:00 2001 From: Thomas Kranitsas Date: Wed, 22 Mar 2023 19:07:34 +0200 Subject: [PATCH 11/21] update scorecard mapping (#16) --- src/util/LegacyMapper.ts | 39 +++++++++++++++++++++++++++++---------- 1 file changed, 29 insertions(+), 10 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 3d1cc79..db1d444 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -208,7 +208,7 @@ class LegacyMapper { return { - 1: phase.name === "Review" ? this.mapScorecard(subTrack) : undefined, // Scorecard ID + 1: this.mapScorecard(subTrack, phase.name), // Scorecard ID 2: phase.name === "Registration" ? '1' : undefined, // Registration Number 3: phase.name === "Submission" ? submissionPhaseConstraint?.value.toString() ?? // if we have a submission phase constraint use it reviewPhaseConstraint?.value != null ? '1' : undefined // otherwise if we have a review phase constraint use 1 @@ -279,21 +279,40 @@ class LegacyMapper { } // prettier-ignore - private mapScorecard(subTrack: string): string { + private mapScorecard(subTrack: string, phase: string): string|undefined { const isNonProd = process.env.ENV != "prod"; // TODO: Update scorecard ids for all subtracks and check for dev environment - let scorecard = isNonProd ? 30001610 : 30002133; // DEV Challenge + let scorecard = undefined; - if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = isNonProd ? 30002160 : 30002160; - if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // needs to be corrected - if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 :30002160; - if (subTrack === V4_SUBTRACKS.BUG_HUNT) scorecard = isNonProd ? 30001610 :30002133; - if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 :30001040; - if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) scorecard = isNonProd ? 30001610 :30001101; + // F2F + if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = isNonProd ? 30002160 : 30002160; // missing dev scorecard + if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 :30001101; // missing dev scorecard - return scorecard.toString(); + // QA + if (subTrack === V4_SUBTRACKS.BUG_HUNT) { + if (phase === "Review") scorecard = isNonProd ? 30001610 : 30001220; // missing dev scorecard + if (phase === "Specification Review") scorecard = isNonProd ? 30001610 : 30001120; // missing dev scorecard + } + + // DS + if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 :30002133; // missing dev scorecard + if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // missing dev scorecard + + // DESIGN + if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) { + if (phase === "Specification Review") scorecard = isNonProd ? 30001610 : 30001040; // missing dev scorecard + if (phase === "Checkpoint Screening") scorecard = isNonProd ? 30001610 : 30001364; // missing dev scorecard + if (phase === "Checkpoint Review") scorecard = isNonProd ? 30001610 : 30001004; // missing dev scorecard + if (phase === "Screening") scorecard = isNonProd ? 30001610 : 30001363; // missing dev scorecard + if (phase === "Review") scorecard = isNonProd ? 30001610 : 30001031; // missing dev scorecard + if (phase === "Approval") scorecard = isNonProd ? 30001610 : 30000720; // missing dev scorecard + } + + if (subTrack === V4_SUBTRACKS.CODE) scorecard = isNonProd ? 30002133 : 30002133; // missing dev scorecard + + return scorecard ? scorecard.toString() : undefined; } } From fead91fdaba1a1667c68ef9b7e80442214e597c6 Mon Sep 17 00:00:00 2001 From: eisbilir <72204071+eisbilir@users.noreply.github.com> Date: Thu, 23 Mar 2023 22:03:47 +0300 Subject: [PATCH 12/21] Feat/phase logic update (#17) * fix: legacy phase mapper * feat: remove timezone conversion --- src/util/LegacyMapper.ts | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index db1d444..b0054e7 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -3,7 +3,6 @@ import { PrizeSetTypes } from "../common/Constants"; import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; import { Challenge_Phase } from "../models/domain-layer/challenge/challenge"; import { legacyChallengeStatusesMap } from "./constants"; -import DateUtil from "./DateUtil"; class LegacyMapper { // To be used on challenge:update calls that change state from New -> Draft @@ -184,13 +183,13 @@ class LegacyMapper { public mapPhases(subTrack: string, phases: Challenge_Phase[]) { return phases.map((phase: Challenge_Phase, index: number) => ({ phaseTypeId: this.mapPhaseNameToPhaseTypeId(phase.name), - phaseStatusId: phase.isOpen ? 2 : 1, // Set Open if phase is open, otherwise mark it Scheduled [1: Scheduled, 2: Open, 3: Closed] - fixedStartTime: phase.name === "Registration" ? DateUtil.formatDateForIfx(phase.scheduledStartDate!) : undefined, // Registration Phase needs a fixedStartTime - scheduledStartTime: DateUtil.formatDateForIfx(phase.scheduledStartDate!), - scheduledEndTime: DateUtil.formatDateForIfx(phase.scheduledEndDate!), - actualStartTime: !phase.actualStartDate ? undefined: DateUtil.formatDateForIfx(phase.actualStartDate) , - actualEndTime: !phase.actualEndDate ? undefined: DateUtil.formatDateForIfx(phase.actualEndDate) , - duration: phase.duration, + phaseStatusId: phase.isOpen ? 2 : phase.actualEndDate ? 3 : 1, + fixedStartTime: !phase.predecessor ? undefined : phase.scheduledStartDate!, + scheduledStartTime: phase.scheduledStartDate!, + scheduledEndTime: phase.scheduledEndDate!, + actualStartTime: !phase.actualStartDate ? undefined : phase.actualStartDate, + actualEndTime: !phase.actualEndDate ? undefined : phase.actualEndDate, + duration: phase.duration * 1000, phaseCriteria: this.mapPhaseCriteria(subTrack, phase), })); } @@ -211,7 +210,7 @@ class LegacyMapper { 1: this.mapScorecard(subTrack, phase.name), // Scorecard ID 2: phase.name === "Registration" ? '1' : undefined, // Registration Number 3: phase.name === "Submission" ? submissionPhaseConstraint?.value.toString() ?? // if we have a submission phase constraint use it - reviewPhaseConstraint?.value != null ? '1' : undefined // otherwise if we have a review phase constraint use 1 + reviewPhaseConstraint?.value != null ? '1' : undefined // otherwise if we have a review phase constraint use 1 : undefined, 4: undefined, // View Response During Appeals 5: undefined, // Manual Screening @@ -279,7 +278,7 @@ class LegacyMapper { } // prettier-ignore - private mapScorecard(subTrack: string, phase: string): string|undefined { + private mapScorecard(subTrack: string, phase: string): string | undefined { const isNonProd = process.env.ENV != "prod"; // TODO: Update scorecard ids for all subtracks and check for dev environment @@ -288,7 +287,7 @@ class LegacyMapper { // F2F if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = isNonProd ? 30002160 : 30002160; // missing dev scorecard - if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 :30001101; // missing dev scorecard + if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 : 30001101; // missing dev scorecard // QA if (subTrack === V4_SUBTRACKS.BUG_HUNT) { @@ -297,7 +296,7 @@ class LegacyMapper { } // DS - if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 :30002133; // missing dev scorecard + if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // missing dev scorecard if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // missing dev scorecard // DESIGN From fbb50d48a1ecc82d428b36644ed3cd3566a5853c Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 02:40:26 +0600 Subject: [PATCH 13/21] fix: bump versions --- package.json | 6 +++--- yarn.lock | 40 ++++++++++++++++++++-------------------- 2 files changed, 23 insertions(+), 23 deletions(-) diff --git a/package.json b/package.json index 4086373..2d1fe3a 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,8 @@ "@aws-sdk/util-utf8-node": "^3.259.0", "@grpc/grpc-js": "^1.7.1", "@opensearch-project/opensearch": "^2.2.0", - "@topcoder-framework/domain-acl": "^0.7.3", - "@topcoder-framework/lib-common": "^0.7.3", + "@topcoder-framework/domain-acl": "^0.8.0", + "@topcoder-framework/lib-common": "^0.8.0", "aws-sdk": "^2.1339.0", "axios": "^1.2.2", "dayjs": "^1.11.7", @@ -36,7 +36,7 @@ "moment": "^2.29.4", "source-map-support": "^0.5.21", "tc-core-library-js": "appirio-tech/tc-core-library-js.git#v2.6.4", - "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.30", + "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.31", "uuidv4": "^6.2.13", "xss": "^1.0.14" }, diff --git a/yarn.lock b/yarn.lock index 133a264..7ca3566 100644 --- a/yarn.lock +++ b/yarn.lock @@ -853,35 +853,35 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@topcoder-framework/client-relational@^0.7.3": - version "0.7.3" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.7.3.tgz#c1ded75b4e00dc93e4ff05abd01dacbee971b484" - integrity sha512-6QF2yjp4NG6Qdw6W6WmAj9N4y2+ZZd3gL7oTr78y03v9qDKzUP11EwFCLEjL2oiqDZbyB5QV7OQyf77buvcDyw== +"@topcoder-framework/client-relational@^0.8.0": + version "0.8.0" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.8.0.tgz#66725c1b82498297aac911298a2cf1aeaed991c8" + integrity sha512-jSyyqDQuBC5PQ/QOh9amaqNmrnztnDp/zMC7MAhSAUa5mSJdoJcn7t3fTpi6wJ5BHT8hkOOAQbsFb4NkhYNhkw== dependencies: "@grpc/grpc-js" "^1.8.0" - "@topcoder-framework/lib-common" "^0.7.3" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" + "@topcoder-framework/lib-common" "^0.8.0" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" tslib "^2.4.1" -"@topcoder-framework/domain-acl@^0.7.3": - version "0.7.3" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.7.3.tgz#5c43286a48e778cac5adc7c5e71c66e0bdb1965e" - integrity sha512-ckE8phDzjkI6xLp3Ztr0+69AZysiitHNyhCuCT6j25gKJVUcNuHi6xfvL/KBKsuXIV9rJcM0YreiOY2SDNb/Fw== +"@topcoder-framework/domain-acl@^0.8.0": + version "0.8.0" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.8.0.tgz#fe34eedec6d7895cfb0a1522661b337d4d192fc3" + integrity sha512-g/9n54DQickL3g/n3KZEQ3L1eXB+KhAug90q7U6c+WgV2O4ycqdPzHVa3gFk/vFfCAa9PRSyIh/XcZWLq1DyuQ== dependencies: "@grpc/grpc-js" "^1.8.7" - "@topcoder-framework/client-relational" "^0.7.3" - "@topcoder-framework/lib-common" "^0.7.3" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" + "@topcoder-framework/client-relational" "^0.8.0" + "@topcoder-framework/lib-common" "^0.8.0" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" tslib "^2.4.1" -"@topcoder-framework/lib-common@^0.7.3": - version "0.7.3" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.7.3.tgz#67893108d36580716875283ff72c71c6fd2dfa38" - integrity sha512-CqoQJhUPjTp4sDZ6SirujuHxbnUduL5ZRiaeEyZN6jrcpRaScB95vE7rzvUFrd4FVzGd4BhcA4QMhNPPnO1mKw== +"@topcoder-framework/lib-common@^0.8.0": + version "0.8.0" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.8.0.tgz#3f29daace074734d74c638e860204011d5e83a21" + integrity sha512-xuyU3kQGiNOPPzwZLXzrTbu6o9FC2SVei7FWBwzL4HraD6aj3fDqME7dappY32QWB/lFxqyTm00SeekmkbCr1w== dependencies: "@grpc/grpc-js" "^1.8.0" rimraf "^3.0.2" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.30" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" tslib "^2.4.1" "@tsconfig/node10@^1.0.7": @@ -2426,9 +2426,9 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.30": +"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.31": version "1.0.0" - resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/704a8d8ed31bb5f7edfd328aeaedaa3d36d56e33" + resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/8fde0bf4ab310b887383c7b37b6ae919cd407388" tough-cookie@~2.5.0: version "2.5.0" From 92e90884a642e9aa8c7d33b5addd3a8b3bfd9a46 Mon Sep 17 00:00:00 2001 From: eisbilir Date: Fri, 24 Mar 2023 01:31:31 +0300 Subject: [PATCH 14/21] fix: fixed start time --- src/util/LegacyMapper.ts | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index b0054e7..9ab75e0 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -184,11 +184,11 @@ class LegacyMapper { return phases.map((phase: Challenge_Phase, index: number) => ({ phaseTypeId: this.mapPhaseNameToPhaseTypeId(phase.name), phaseStatusId: phase.isOpen ? 2 : phase.actualEndDate ? 3 : 1, - fixedStartTime: !phase.predecessor ? undefined : phase.scheduledStartDate!, - scheduledStartTime: phase.scheduledStartDate!, - scheduledEndTime: phase.scheduledEndDate!, - actualStartTime: !phase.actualStartDate ? undefined : phase.actualStartDate, - actualEndTime: !phase.actualEndDate ? undefined : phase.actualEndDate, + fixedStartTime: _.isUndefined(phase.predecessor) ? phase.scheduledStartDate : undefined, + scheduledStartTime: phase.scheduledStartDate, + scheduledEndTime: phase.scheduledEndDate, + actualStartTime: phase.actualStartDate, + actualEndTime: phase.actualEndDate, duration: phase.duration * 1000, phaseCriteria: this.mapPhaseCriteria(subTrack, phase), })); From c24c1f7e691c7516d18f285f3c0a2019c397d6a3 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 04:43:35 +0600 Subject: [PATCH 15/21] fix: use uuid --- package.json | 3 ++- src/helpers/IdGenerator.ts | 5 ++--- yarn.lock | 29 +++++++++++++---------------- 3 files changed, 17 insertions(+), 20 deletions(-) diff --git a/package.json b/package.json index 2d1fe3a..c4c4515 100644 --- a/package.json +++ b/package.json @@ -25,6 +25,7 @@ "@opensearch-project/opensearch": "^2.2.0", "@topcoder-framework/domain-acl": "^0.8.0", "@topcoder-framework/lib-common": "^0.8.0", + "@types/uuid": "^9.0.1", "aws-sdk": "^2.1339.0", "axios": "^1.2.2", "dayjs": "^1.11.7", @@ -37,7 +38,7 @@ "source-map-support": "^0.5.21", "tc-core-library-js": "appirio-tech/tc-core-library-js.git#v2.6.4", "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.31", - "uuidv4": "^6.2.13", + "uuid": "^9.0.0", "xss": "^1.0.14" }, "volta": { diff --git a/src/helpers/IdGenerator.ts b/src/helpers/IdGenerator.ts index 53223f1..ab6aef1 100644 --- a/src/helpers/IdGenerator.ts +++ b/src/helpers/IdGenerator.ts @@ -1,8 +1,7 @@ -import { uuid } from "uuidv4"; - +import { v4 as uuidv4 } from "uuid"; class IdGenerator { public generateUUID(): string { - return uuid(); + return uuidv4(); } } diff --git a/yarn.lock b/yarn.lock index 7ca3566..2041935 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1011,10 +1011,10 @@ resolved "https://registry.yarnpkg.com/@types/strip-json-comments/-/strip-json-comments-0.0.30.tgz#9aa30c04db212a9a0649d6ae6fd50accc40748a1" integrity sha512-7NQmHra/JILCd1QqpSzl8+mJRc8ZHz3uDm8YV1Ks9IhK0epEiTw8aIErbvH9PI+6XbqhyIQy3462nEsn7UVzjQ== -"@types/uuid@8.3.4": - version "8.3.4" - resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-8.3.4.tgz#bd86a43617df0594787d38b735f55c805becf1bc" - integrity sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw== +"@types/uuid@^9.0.1": + version "9.0.1" + resolved "https://registry.yarnpkg.com/@types/uuid/-/uuid-9.0.1.tgz#98586dc36aee8dacc98cc396dbca8d0429647aa6" + integrity sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA== acorn-walk@^8.1.1: version "8.2.0" @@ -2574,23 +2574,20 @@ uuid@8.0.0: resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.0.0.tgz#bc6ccf91b5ff0ac07bbcdbf1c7c4e150db4dbb6c" integrity sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw== -uuid@8.3.2, uuid@^8.3.2: - version "8.3.2" - resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" - integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== - uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -uuidv4@^6.2.13: - version "6.2.13" - resolved "https://registry.yarnpkg.com/uuidv4/-/uuidv4-6.2.13.tgz#8f95ec5ef22d1f92c8e5d4c70b735d1c89572cb7" - integrity sha512-AXyzMjazYB3ovL3q051VLH06Ixj//Knx7QnUSi1T//Ie3io6CpsPu9nVMOx5MoLWh6xV0B9J0hIaxungxXUbPQ== - dependencies: - "@types/uuid" "8.3.4" - uuid "8.3.2" +uuid@^8.3.2: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +uuid@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" + integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg== v8-compile-cache-lib@^3.0.1: version "3.0.1" From 81144b60107466bfae7b7f1fc643d5c2ac867b07 Mon Sep 17 00:00:00 2001 From: eisbilir <72204071+eisbilir@users.noreply.github.com> Date: Fri, 24 Mar 2023 02:28:12 +0300 Subject: [PATCH 16/21] Fix/sc (#19) * fix: scorecard mapping * fix: scorecard mapper --- src/common/Constants.ts | 21 +++++++++++ src/util/LegacyMapper.ts | 75 +++++++++++++++++++++++++--------------- 2 files changed, 69 insertions(+), 27 deletions(-) diff --git a/src/common/Constants.ts b/src/common/Constants.ts index dc2e4d5..06892c5 100644 --- a/src/common/Constants.ts +++ b/src/common/Constants.ts @@ -44,3 +44,24 @@ export const ChallengeStatuses = { New: "New", Active: "Active", }; + +export const PhaseTypeIds = { + Registration: 1, + Submission: 2, + Screening: 3, + Review: 4, + Appeals: 5, + AppealsResponse: 6, + Aggregation: 7, + AggregationReview: 8, + FinalFix: 9, + FinalReview: 10, + Approval: 11, + PostMortem: 12, + SpecificationSubmission: 13, + SpecificationReview: 14, + CheckpointSubmission: 15, + CheckpointScreening: 16, + CheckpointReview: 17, + IterativeReview: 18, +}; diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 9ab75e0..63b5da0 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -1,5 +1,5 @@ import _ from "lodash"; -import { PrizeSetTypes } from "../common/Constants"; +import { PhaseTypeIds, PrizeSetTypes } from "../common/Constants"; import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; import { Challenge_Phase } from "../models/domain-layer/challenge/challenge"; import { legacyChallengeStatusesMap } from "./constants"; @@ -207,7 +207,7 @@ class LegacyMapper { return { - 1: this.mapScorecard(subTrack, phase.name), // Scorecard ID + 1: this.mapScorecard(subTrack, this.mapPhaseNameToPhaseTypeId(phase.name)), // Scorecard ID 2: phase.name === "Registration" ? '1' : undefined, // Registration Number 3: phase.name === "Submission" ? submissionPhaseConstraint?.value.toString() ?? // if we have a submission phase constraint use it reviewPhaseConstraint?.value != null ? '1' : undefined // otherwise if we have a review phase constraint use 1 @@ -278,39 +278,60 @@ class LegacyMapper { } // prettier-ignore - private mapScorecard(subTrack: string, phase: string): string | undefined { + private mapScorecard(subTrack: string, phaseTypeId: number | undefined): string | undefined { const isNonProd = process.env.ENV != "prod"; // TODO: Update scorecard ids for all subtracks and check for dev environment let scorecard = undefined; - // F2F - if (subTrack === V4_SUBTRACKS.FIRST_2_FINISH) scorecard = isNonProd ? 30002160 : 30002160; // missing dev scorecard - if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) scorecard = isNonProd ? 30001610 : 30001101; // missing dev scorecard - - // QA - if (subTrack === V4_SUBTRACKS.BUG_HUNT) { - if (phase === "Review") scorecard = isNonProd ? 30001610 : 30001220; // missing dev scorecard - if (phase === "Specification Review") scorecard = isNonProd ? 30001610 : 30001120; // missing dev scorecard + if ( + subTrack === V4_SUBTRACKS.FIRST_2_FINISH && + phaseTypeId === PhaseTypeIds.IterativeReview + ) { + scorecard = isNonProd ? 30002160 : 30002160; + } else if ( + subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH && + phaseTypeId === PhaseTypeIds.Review + ) { + scorecard = isNonProd ? 30001610 : 30001101; + } else if (subTrack === V4_SUBTRACKS.BUG_HUNT) { + if (phaseTypeId === PhaseTypeIds.Review) { + scorecard = isNonProd ? 30001610 : 30001220; + } else if (phaseTypeId === PhaseTypeIds.SpecificationReview) { + scorecard = isNonProd ? 30001610 : 30001120; + } + } else if ( + subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH && + phaseTypeId === PhaseTypeIds.Review + ) { + scorecard = isNonProd ? 30001610 : 30002133; + } else if ( + subTrack === V4_SUBTRACKS.MARATHON_MATCH && + phaseTypeId === PhaseTypeIds.Review + ) { + scorecard = isNonProd ? 30001610 : 30002133; + } else if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) { + if (phaseTypeId === PhaseTypeIds.SpecificationReview) { + scorecard = isNonProd ? 30001610 : 30001040; + } else if (phaseTypeId === PhaseTypeIds.CheckpointScreening) { + scorecard = isNonProd ? 30001610 : 30001364; + } else if (phaseTypeId === PhaseTypeIds.CheckpointReview) { + scorecard = isNonProd ? 30001610 : 30001004; + } else if (phaseTypeId === PhaseTypeIds.Screening) { + scorecard = isNonProd ? 30001610 : 30001363; + } else if (phaseTypeId === PhaseTypeIds.Review) { + scorecard = isNonProd ? 30001610 : 30001031; + } else if (phaseTypeId === PhaseTypeIds.Approval) { + scorecard = isNonProd ? 30001610 : 30000720; + } + } else if ( + subTrack === V4_SUBTRACKS.CODE && + phaseTypeId === PhaseTypeIds.Review + ) { + scorecard = isNonProd ? 30002133 : 30002133; } - // DS - if (subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // missing dev scorecard - if (subTrack === V4_SUBTRACKS.MARATHON_MATCH) scorecard = isNonProd ? 30001610 : 30002133; // missing dev scorecard - - // DESIGN - if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) { - if (phase === "Specification Review") scorecard = isNonProd ? 30001610 : 30001040; // missing dev scorecard - if (phase === "Checkpoint Screening") scorecard = isNonProd ? 30001610 : 30001364; // missing dev scorecard - if (phase === "Checkpoint Review") scorecard = isNonProd ? 30001610 : 30001004; // missing dev scorecard - if (phase === "Screening") scorecard = isNonProd ? 30001610 : 30001363; // missing dev scorecard - if (phase === "Review") scorecard = isNonProd ? 30001610 : 30001031; // missing dev scorecard - if (phase === "Approval") scorecard = isNonProd ? 30001610 : 30000720; // missing dev scorecard - } - - if (subTrack === V4_SUBTRACKS.CODE) scorecard = isNonProd ? 30002133 : 30002133; // missing dev scorecard - return scorecard ? scorecard.toString() : undefined; } } From d3276561acba447807ec1c338a9c290f46a3f12f Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 13:07:20 +0600 Subject: [PATCH 17/21] wip: challenge updatge --- .prettierrc | 4 +- package.json | 7 +- src/common/Constants.ts | 1 + src/common/CoreOperations.ts | 47 +- src/domain/Challenge.ts | 1324 ++--------------- .../domain-layer/challenge/challenge.ts | 1164 +++++++++++---- src/service/ChallengeService.ts | 47 +- src/util/LegacyMapper.ts | 75 +- yarn.lock | 51 +- 9 files changed, 1149 insertions(+), 1571 deletions(-) diff --git a/.prettierrc b/.prettierrc index 0967ef4..de753c5 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1 +1,3 @@ -{} +{ + "printWidth": 100 +} diff --git a/package.json b/package.json index c4c4515..d21696b 100644 --- a/package.json +++ b/package.json @@ -23,8 +23,9 @@ "@aws-sdk/util-utf8-node": "^3.259.0", "@grpc/grpc-js": "^1.7.1", "@opensearch-project/opensearch": "^2.2.0", - "@topcoder-framework/domain-acl": "^0.8.0", - "@topcoder-framework/lib-common": "^0.8.0", + "@topcoder-framework/domain-acl": "^0.9.1", + "@topcoder-framework/domain-challenge": "^0.9.1", + "@topcoder-framework/lib-common": "^0.9.1", "@types/uuid": "^9.0.1", "aws-sdk": "^2.1339.0", "axios": "^1.2.2", @@ -37,7 +38,7 @@ "moment": "^2.29.4", "source-map-support": "^0.5.21", "tc-core-library-js": "appirio-tech/tc-core-library-js.git#v2.6.4", - "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.31", + "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.33", "uuid": "^9.0.0", "xss": "^1.0.14" }, diff --git a/src/common/Constants.ts b/src/common/Constants.ts index 06892c5..c128b72 100644 --- a/src/common/Constants.ts +++ b/src/common/Constants.ts @@ -43,6 +43,7 @@ export const ResourceInfoIds = { export const ChallengeStatuses = { New: "New", Active: "Active", + Draft: "Draft", }; export const PhaseTypeIds = { diff --git a/src/common/CoreOperations.ts b/src/common/CoreOperations.ts index 70d5fb1..d88e9d7 100644 --- a/src/common/CoreOperations.ts +++ b/src/common/CoreOperations.ts @@ -2,11 +2,7 @@ import { noSqlClient } from "../dal/client/nosql"; // TODO: Import from @topcoder-framework/lib-common -import { - LookupCriteria, - ScanCriteria, - ScanResult, -} from "../models/common/common"; +import { LookupCriteria, ScanCriteria, ScanResult } from "../models/common/common"; // TODO: Import from @topcoder-framework/lib-common import { Value } from "../models/google/protobuf/struct"; @@ -44,24 +40,20 @@ export type DynamoTableIndex = { }; }; -abstract class CoreOperations< - T extends { [key: string]: any }, - I extends { [key: string]: any } -> { +abstract class CoreOperations { public constructor( private entityName: string, private entityAttributes: Attribute[], private entityIndexList: DynamoTableIndex ) {} - private attributesKeyTypeMap: { [key: string]: DataType } = - this.entityAttributes.reduce( - (map, attribute) => ({ - ...map, - [attribute.name]: attribute.type, - }), - {} - ); + private attributesKeyTypeMap: { [key: string]: DataType } = this.entityAttributes.reduce( + (map, attribute) => ({ + ...map, + [attribute.name]: attribute.type, + }), + {} + ); public async lookup(lookupCriteria: LookupCriteria): Promise { const selectQuery: SelectQuery = { @@ -177,7 +169,8 @@ abstract class CoreOperations< public async update( scanCriteria: ScanCriteria[], - entity: unknown + entity: unknown, + metadata?: Metadata ): Promise<{ items: T[] }> { if (typeof entity != "object" || entity == null) { throw new Error("Expected key-value pairs to update"); @@ -193,12 +186,14 @@ abstract class CoreOperations< update: { table: this.entityName, // TODO: Write a convenience method in @topcoder-framework/lib-common to support additional update operations like LIST_APPEND, SET_ADD, SET_REMOVE, etc - updates: Object.entries(entity).map(([key, value]) => ({ - action: UpdateAction.UPDATE_ACTION_SET, - type: UpdateType.UPDATE_TYPE_VALUE, - attribute: key, - value: this.toValue(key, value), - })), + updates: Object.entries(entity) + .filter(([key, value]) => value !== undefined) + .map(([key, value]) => ({ + action: UpdateAction.UPDATE_ACTION_SET, + type: UpdateType.UPDATE_TYPE_VALUE, + attribute: key, + value: this.toValue(key, value), + })), filters, returnValue: ReturnValue.RETURN_VALUE_ALL_NEW, }, @@ -330,9 +325,7 @@ abstract class CoreOperations< break; default: - throw new Error( - "Lookups are only supported for string, number & boolean value" - ); + throw new Error("Lookups are only supported for string, number & boolean value"); } return value; diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index 785d375..f49b8b0 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -10,12 +10,12 @@ const { LEGACY_SUBMITTER_ROLE_ID, V5_TERMS_STANDARD_ID, } = process.env; -import moment from "moment"; +import { ChallengeDomain as LegacyChallengeDomain } from "@topcoder-framework/domain-acl"; +import { DomainHelper } from "@topcoder-framework/lib-common"; import xss from "xss"; import CoreOperations from "../common/CoreOperations"; import { Value } from "../dal/models/nosql/parti_ql"; import IdGenerator from "../helpers/IdGenerator"; -import { DomainHelper } from "@topcoder-framework/lib-common"; import { Challenge, ChallengeList, @@ -30,101 +30,29 @@ import { } from "../models/domain-layer/challenge/challenge"; import { ChallengeSchema } from "../schema/Challenge"; -import { - ChallengeDomain as LegacyChallengeDomain, - GroupContestEligibilityDomain as LegacyGroupContestEligibilityDomain, - PaymentDomain as LegacyPaymentDomain, - PhaseDomain as LegacyPhaseDomain, - PrizeDomain as LegacyPrizeDomain, - ProjectInfoDomain as LegacyProjectInfoDomain, - ResourceDomain as LegacyResourceDomain, - ReviewDomain as LegacyReviewDomain, - TermDomain as LegacyTermDomain, - CreateChallengeInput as LegacyCreateChallengeInput, -} from "@topcoder-framework/domain-acl"; +import { Metadata, StatusBuilder } from "@grpc/grpc-js"; +import { Status } from "@grpc/grpc-js/build/src/constants"; +import { CreateChallengeInput as LegacyCreateChallengeInput } from "@topcoder-framework/domain-acl"; import _ from "lodash"; -import * as v5Api from "../api/v5Api"; -import { - PaymentTypeIds, - PrizeSetTypes, - PrizeTypeIds, - ProjectInfoIds, - ProjectPaymentTypeIds, - ResourceRoleTypes, - ES_INDEX, - ES_REFRESH, - ChallengeStatuses, -} from "../common/Constants"; -import m2m from "../helpers/MachineToMachineToken"; +import { ChallengeStatuses, ES_INDEX, ES_REFRESH } from "../common/Constants"; import ElasticSearch from "../helpers/ElasticSearch"; import { ScanCriteria } from "../models/common/common"; -import constants from "../util/constants"; import legacyMapper from "../util/LegacyMapper"; -import { CreateResult, Operator } from "@topcoder-framework/lib-common"; -import { Metadata, StatusBuilder } from "@grpc/grpc-js"; -import { Status } from "@grpc/grpc-js/build/src/constants"; -import ChallengeScheduler from "../util/ChallengeScheduler"; if (!process.env.GRPC_ACL_SERVER_HOST || !process.env.GRPC_ACL_SERVER_PORT) { - throw new Error( - "Missing required configurations GRPC_ACL_SERVER_HOST and GRPC_ACL_SERVER_PORT" - ); + throw new Error("Missing required configurations GRPC_ACL_SERVER_HOST and GRPC_ACL_SERVER_PORT"); } -const legacyPrizeDomain = new LegacyPrizeDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); const legacyChallengeDomain = new LegacyChallengeDomain( process.env.GRPC_ACL_SERVER_HOST, process.env.GRPC_ACL_SERVER_PORT ); -const legacyProjectInfoDomain = new LegacyProjectInfoDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -const legacyPaymentDomain = new LegacyPaymentDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -const legacyResourceDomain = new LegacyResourceDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -const legacyReviewDomain = new LegacyReviewDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -const legacyPhaseDomain = new LegacyPhaseDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -const legacyGroupContestEligibilityDomain = - new LegacyGroupContestEligibilityDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT - ); -const legacyTermDomain = new LegacyTermDomain( - process.env.GRPC_ACL_SERVER_HOST, - process.env.GRPC_ACL_SERVER_PORT -); -interface GetGroupsResult { - groupsToBeAdded: any[]; - groupsToBeDeleted: any[]; -} class ChallengeDomain extends CoreOperations { private esClient = ElasticSearch.getESClient(); protected toEntity(item: { [key: string]: Value }): Challenge { - for (const key of [ - "phases", - "terms", - "tags", - "metadata", - "events", - "prizeSets", - ]) { + for (const key of ["phases", "terms", "tags", "metadata", "events", "prizeSets"]) { try { if (key === "metadata") { if (item["metadata"].kind?.$case === "listValue") { @@ -151,10 +79,72 @@ class ChallengeDomain extends CoreOperations { return Challenge.fromJSON(item); } - public async create( + private async createLegacyChallenge( input: CreateChallengeInput, - metadata: Metadata - ): Promise { + legacy: Challenge_Legacy | undefined, + status: string, + trackId: string, + typeId: string, + tags: string[], + metadata: Metadata = new Metadata() + ) { + let legacyChallengeId: number | null = null; + + if (legacy == null || legacy.pureV5Task !== true) { + const { track, subTrack, isTask, technologies } = legacyMapper.mapTrackAndType( + trackId, + typeId, + tags + ); + + if (input.legacy == null) { + input.legacy = { + track, + subTrack, + directProjectId: 0, + reviewType: "INTERNAL", + confidentialityType: "private", + }; + } + + legacy = { + ...legacy, + track, + subTrack, + pureV5Task: isTask, + forumId: 0, + directProjectId: legacy == null ? 0 : legacy.directProjectId, + reviewType: legacy == null ? "INTERNAL" : legacy.reviewType, + confidentialityType: legacy == null ? "private" : legacy.confidentialityType, + }; + + if (status === ChallengeStatuses.Draft) { + try { + // prettier-ignore + const legacyChallengeCreateInput = LegacyCreateChallengeInput.fromPartial(legacyMapper.mapChallengeDraftUpdateInput(input)); + // prettier-ignore + const legacyChallengeCreateResponse = await legacyChallengeDomain.create(legacyChallengeCreateInput, metadata); + + if (legacyChallengeCreateResponse.kind?.$case === "integerId") { + legacyChallengeId = legacyChallengeCreateResponse.kind.integerId; + } + } catch (err) { + console.log("err", err); + throw new StatusBuilder() + .withCode(Status.INTERNAL) + .withDetails("Failed to create legacy challenge") + .build(); + } + } + } + + return { + legacy, + legacyChallengeId, + }; + } + + public async create(input: CreateChallengeInput, metadata: Metadata): Promise { input.name = xss(input.name); // prettier-ignore @@ -182,38 +172,8 @@ class ChallengeDomain extends CoreOperations { // Begin Anti-Corruption Layer - const { track, subTrack, isTask, technologies } = - legacyMapper.mapTrackAndType(input.trackId, input.typeId, input.tags); - - input.legacy = { - ...input.legacy, - track, - subTrack, - pureV5Task: isTask, - forumId: 0, - directProjectId: input.legacy!.directProjectId, - reviewType: input.legacy!.reviewType, - confidentialityType: input.legacy!.confidentialityType, - }; - - let legacyChallengeId: number | null = null; - if (input.status === "Draft") { - try { - // prettier-ignore - const legacyChallengeCreateInput = LegacyCreateChallengeInput.fromPartial(legacyMapper.mapChallengeDraftUpdateInput(input)); - // prettier-ignore - const legacyChallengeCreateResponse = await legacyChallengeDomain.create(legacyChallengeCreateInput, metadata); - if (legacyChallengeCreateResponse.kind?.$case === "integerId") { - legacyChallengeId = legacyChallengeCreateResponse.kind.integerId; - } - } catch (err) { - console.log("err", err); - throw new StatusBuilder() - .withCode(Status.INTERNAL) - .withDetails("Failed to create legacy challenge") - .build(); - } - } + // prettier-ignore + const { legacy, legacyChallengeId } = await this.createLegacyChallenge(input, input.legacy, input.status, input.trackId, input.typeId, input.tags, metadata); // End Anti-Corruption Layer @@ -228,6 +188,7 @@ class ChallengeDomain extends CoreOperations { totalPrizes: placementPrizes, }, ...input, + legacy, legacyId: legacyChallengeId != null ? legacyChallengeId : undefined, description: xss(input.description ?? ""), privateDescription: xss(input.privateDescription ?? ""), @@ -249,1064 +210,102 @@ class ChallengeDomain extends CoreOperations { return super.create(challenge, metadata); } - async syncChallengePhases( - legacyId: number, - v5Phases: any[], - isSelfService: boolean, - numOfReviewers: number, - isBeingActivated: boolean - ) { - const { phaseTypes } = await legacyPhaseDomain.getPhaseTypes({}); - const { projectPhases: phasesFromIFx } = - await legacyPhaseDomain.getProjectPhases({ projectId: legacyId }); - console.log(`Phases from v5: ${JSON.stringify(v5Phases)}`); - console.log(`Phases from IFX: ${JSON.stringify(phasesFromIFx)}`); - let phaseGroups: any = {}; - _.forEach(phasesFromIFx, (p) => { - if (!phaseGroups[p.phaseTypeId]) { - phaseGroups[p.phaseTypeId] = []; - } - phaseGroups[p.phaseTypeId].push(p); - }); - _.forEach(_.cloneDeep(phaseGroups), (pg, pt) => { - phaseGroups[pt] = _.sortBy(pg, "scheduledStartTime"); - }); - - for (const key of _.keys(phaseGroups)) { - let phaseOrder = 0; - let v5Equivalents = undefined; - for (const phase of phaseGroups[key]) { - const phaseName = _.get( - _.find(phaseTypes, (pt) => pt.phaseTypeId === phase.phaseTypeId), - "name" - ); - if (_.isUndefined(v5Equivalents)) { - v5Equivalents = _.sortBy( - _.filter(v5Phases, (p) => p.name === phaseName), - "scheduledStartDate" - ); - } - if (v5Equivalents.length > 0) { - if (v5Equivalents.length === phaseGroups[key].length) { - const v5Equivalent = v5Equivalents[phaseOrder]; - console.log( - `Will update phase ${phaseName}/${v5Equivalent.name} from ${ - phase.duration - } to duration ${v5Equivalent.duration * 1000} milli` - ); - let newStatus = _.toInteger(phase.phaseStatusId); - if ( - v5Equivalent.isOpen && - _.toInteger(phase.phaseStatusId) === - constants.PhaseStatusTypes.Closed - ) { - newStatus = constants.PhaseStatusTypes.Scheduled; - } - - if ( - isBeingActivated && - ["Registration", "Submission"].indexOf(v5Equivalent.name) != -1 - ) { - const scheduledStartDate = v5Equivalent.scheduledStartDate; - const now = new Date().getTime(); - if ( - scheduledStartDate != null && - new Date(scheduledStartDate).getTime() < now - ) { - newStatus = constants.PhaseStatusTypes.Open; - } - - console.log( - `Challenge phase ${v5Equivalent.name} status is being set to: ${newStatus} on challenge activation.` - ); - } - console.log({ - projectPhaseId: phase.projectPhaseId, - phaseStatusId: newStatus, - fixedStartTime: moment(phase.fixedStartTime).format( - "yyyy-MM-DD HH:mm:ss" - ) - ? moment(v5Equivalent.scheduledStartDate).format( - "yyyy-MM-DD HH:mm:ss" - ) - : undefined, - scheduledStartTime: moment( - v5Equivalent.scheduledStartDate - ).format("yyyy-MM-DD HH:mm:ss"), - scheduledEndTime: moment(v5Equivalent.scheduledEndDate).format( - "yyyy-MM-DD HH:mm:ss" - ), - duration: v5Equivalent.duration * 1000, - ...(isBeingActivated && - newStatus == constants.PhaseStatusTypes.Open - ? { actualStartTime: moment().format("yyyy-MM-DD HH:mm:ss") } - : {}), - }); - - await legacyPhaseDomain.updateProjectPhase({ - projectPhaseId: phase.projectPhaseId, - phaseStatusId: newStatus, - ...(phaseOrder === 0 - ? { - fixedStartTime: moment(phase.fixedStartTime).format( - "yyyy-MM-DD HH:mm:ss" - ) - ? moment(v5Equivalent.scheduledStartDate).format( - "yyyy-MM-DD HH:mm:ss" - ) - : undefined, - } - : {}), - scheduledStartTime: moment( - v5Equivalent.scheduledStartDate - ).format("yyyy-MM-DD HH:mm:ss"), - scheduledEndTime: moment(v5Equivalent.scheduledEndDate).format( - "yyyy-MM-DD HH:mm:ss" - ), - duration: v5Equivalent.duration * 1000, - }); - } else { - console.log(`number of ${phaseName} does not match`); - } - } else { - console.log(`No v5 Equivalent Found for ${phaseName}`); - } - if (isSelfService && phaseName === "Review") { - // make sure to set the required reviewers to 2 - const { phaseCriteriaList } = - await legacyPhaseDomain.getPhaseCriteria({ - projectPhaseId: phase.projectPhaseId, - phaseCriteriaTypeId: 6, // TODO: fix magic number here - }); - if (phaseCriteriaList && phaseCriteriaList.length > 0) { - // delete existing criteria - await legacyPhaseDomain.deletePhaseCriteria({ - projectPhaseId: phase.projectPhaseId, - phaseCriteriaTypeId: 6, - }); - } - // create - await legacyPhaseDomain.createPhaseCriteria({ - projectPhaseId: phase.projectPhaseId, - phaseCriteriaTypeId: 6, - parameter: _.toString(numOfReviewers), - }); - } - phaseOrder = phaseOrder + 1; - } - } - // TODO: What about iterative reviews? There can be many for the same challenge. - // TODO: handle timeline template updates - } - - async addPhaseConstraints(legacyId: number, v5Phases: any[]) { - console.log( - `addPhaseConstraints :: start: ${legacyId}, ${JSON.stringify(v5Phases)}` - ); - - const { phaseTypes } = await legacyPhaseDomain.getPhaseTypes({}); // TODO: Update framework to not require any params - console.log( - `addPhaseConstraints :: phaseTypes: ${JSON.stringify(phaseTypes)}` - ); - - const { projectPhases: phasesFromIFx } = - await legacyPhaseDomain.getProjectPhases({ - projectId: legacyId, - }); - - for (const phase of v5Phases) { - console.log( - `addPhaseConstraints :: phase: ${legacyId} -> ${JSON.stringify(phase)}` - ); - if (phase.constraints == null || phase.constraints.length === 0) continue; - - const phaseLegacyId = _.get( - _.find(phaseTypes, (pt) => pt.name === phase.name), - "phaseTypeId" - ); - const existingLegacyPhase = _.find( - phasesFromIFx, - (p) => p.phaseTypeId === phaseLegacyId - ); - - const projectPhaseId = _.get(existingLegacyPhase, "projectPhaseId"); - if (!projectPhaseId) { - console.log(`Could not find phase ${phase.name} on legacy!`); - continue; - } - - let constraintName: any = null; - let constraintValue = null; - let phaseCriteriaTypeId = null; - - if (phase.name === "Submission") { - const numSubmissionsConstraint = phase.constraints.find( - (c: any) => c.name === "Number of Submissions" - ); - if (numSubmissionsConstraint) { - constraintName = "Submission Number"; - constraintValue = numSubmissionsConstraint.value; - phaseCriteriaTypeId = 3; - } - } - - if (phase.name === "Registration") { - const numRegistrantsConstraint = phase.constraints.find( - (c: any) => c.name === "Number of Registrants" - ); - if (numRegistrantsConstraint) { - constraintName = "Registration Number"; - constraintValue = numRegistrantsConstraint.value; - phaseCriteriaTypeId = 2; - } - } - - if (phase.name === "Review") { - const numReviewersConstraint = phase.constraints.find( - (c: any) => c.name === "Number of Reviewers" - ); - if (numReviewersConstraint) { - constraintName = "Reviewer Number"; - constraintValue = numReviewersConstraint.value; - phaseCriteriaTypeId = 6; - } - } - - // We have an interesting situation if a submission phase constraint was added but - // no registgration phase constraint was added. This ends up opening Post-Mortem - // phase if registration closes with 0 submissions. - // For now I'll leave it as is and handle this better in the new Autopilot implementation - // A quick solution would have been adding a registration constraint with value 1 if none is provided when there is a submission phase constraint - - if (constraintName && constraintValue) { - constraintValue = _.toString(constraintValue); - const { phaseCriteriaList } = await legacyPhaseDomain.getPhaseCriteria({ - projectPhaseId, - }); - console.log( - `phaseCriteriaList: ${JSON.stringify( - phaseCriteriaList - )} for projectPhaseId: ${projectPhaseId}` - ); - if (phaseCriteriaList && phaseCriteriaList.length > 0) { - console.log( - `Will create phase constraint ${constraintName} with value ${constraintValue}` - ); - // Ideally we should update the existing phase criteria, but this processor will go away in weeks - // and it's a backend processor, so we can just drop and recreate without slowing down anything - await legacyPhaseDomain.deletePhaseCriteria({ - projectPhaseId, - phaseCriteriaTypeId: phaseCriteriaTypeId as number, - }); - await legacyPhaseDomain.createPhaseCriteria({ - projectPhaseId, - phaseCriteriaTypeId: phaseCriteriaTypeId as number, - parameter: constraintValue, - }); - } else { - console.log( - `Could not find phase criteria type for ${constraintName}. Will create it with value ${constraintValue}` - ); - await legacyPhaseDomain.createPhaseCriteria({ - projectPhaseId, - phaseCriteriaTypeId: phaseCriteriaTypeId as number, - parameter: constraintValue, - }); - } - } - } - console.log("addPhaseConstraints :: end"); - } - - private async updateMemberPayments(legacyId: number, v5PrizeSets: any) { - const { prizes: prizesFromIfx } = await legacyPrizeDomain.get({ - criteria: [ - { - key: "projectId", - value: legacyId, - operator: Operator.OPERATOR_EQUAL, - }, - { - key: "prizeTypeId", - value: PrizeTypeIds.Contest, - operator: Operator.OPERATOR_EQUAL, - }, - ], - }); - const { prizes: checkpointPrizes } = await legacyPrizeDomain.get({ - criteria: [ - { - key: "projectId", - value: legacyId, - operator: Operator.OPERATOR_EQUAL, - }, - { - key: "prizeTypeId", - value: PrizeTypeIds.Checkpoint, - operator: Operator.OPERATOR_EQUAL, - }, - ], - }); - - const checkpointPrizesFromIfx = checkpointPrizes - ? checkpointPrizes[0] - : null; - const v5Prizes = _.map( - _.get( - _.find(v5PrizeSets, (p) => p.type === PrizeSetTypes.ChallengePrizes), - "prizes", - [] - ), - (prize) => prize.value - ); - const v5CheckPointPrizes = _.map( - _.get( - _.find(v5PrizeSets, (p) => p.type === PrizeSetTypes.CheckPoint), - "prizes", - [] - ), - (prize) => prize.value - ); - // compare prizes - if (v5Prizes && v5Prizes.length > 0) { - v5Prizes.sort((a, b) => b - a); - for (let i = 0; i < v5Prizes.length; i += 1) { - const ifxPrize = _.find(prizesFromIfx, (p) => p.place === i + 1); - if (ifxPrize) { - if (_.toInteger(ifxPrize.prizeAmount) !== v5Prizes[i]) { - await legacyPrizeDomain.update({ - updateCriteria: { - prizeId: ifxPrize.prizeId, - place: i + 1, - projectId: legacyId, - }, - updateInput: { - prizeAmount: v5Prizes[i], - }, - }); - } - } else { - await legacyPrizeDomain.create({ - projectId: legacyId, - place: i + 1, - prizeAmount: v5Prizes[i], - prizeTypeId: PrizeTypeIds.Contest, - numberOfSubmissions: 1, - }); - } - } - if (prizesFromIfx.length > v5Prizes.length) { - const prizesToDelete = _.filter( - prizesFromIfx, - (p) => p.place > v5Prizes.length - ); - for (const prizeToDelete of prizesToDelete) { - await legacyPrizeDomain.delete({ - prizeId: prizeToDelete.prizeId, - projectId: legacyId, - }); - } - } - } - // compare checkpoint prizes - if ( - checkpointPrizesFromIfx && - v5CheckPointPrizes && - v5CheckPointPrizes.length > 0 - ) { - // we assume that all checkpoint prizes will be the same - if ( - v5CheckPointPrizes.length !== - checkpointPrizesFromIfx.numberOfSubmissions || - v5CheckPointPrizes[0] !== - _.toInteger(checkpointPrizesFromIfx.prizeAmount) - ) { - await legacyPrizeDomain.update({ - updateCriteria: { - prizeId: checkpointPrizesFromIfx.prizeId, - projectId: legacyId, - }, - updateInput: { - prizeAmount: v5CheckPointPrizes[0], - numberOfSubmissions: v5CheckPointPrizes.length, - }, - }); - } - } else if (checkpointPrizesFromIfx) { - await legacyPrizeDomain.delete({ - prizeId: checkpointPrizesFromIfx.prizeId, - projectId: legacyId, - }); - } - } - - async associateChallengeTerms(v5Terms: any[], legacyChallengeId: number) { - // console.log(`v5Terms Terms Array: ${JSON.stringify(v5Terms)}`) - const { terms: legacyTermsArray } = - await legacyTermDomain.GetProjectRoleTermsOfUseXrefs({ - projectId: legacyChallengeId, - }); - // console.log(`Legacy Terms Array: ${JSON.stringify(legacyTermsArray)}`) - const nda = _.find(v5Terms, (e: any) => e.id === V5_TERMS_NDA_ID); - const legacyNDA: any = _.find( - legacyTermsArray, - (e: any) => _.toNumber(e.termsOfUseId) === _.toNumber(LEGACY_TERMS_NDA_ID) - ); - - const standardTerms = _.find(v5Terms, (e) => e.id === V5_TERMS_STANDARD_ID); - const legacyStandardTerms: any = _.find( - legacyTermsArray, - (e: any) => - _.toNumber(e.termsOfUseId) === _.toNumber(LEGACY_TERMS_STANDARD_ID) - ); - - // console.log(`NDA: ${config.V5_TERMS_NDA_ID} - ${JSON.stringify(nda)}`) - // console.log(`Standard Terms: ${config.V5_TERMS_STANDARD_ID} - ${JSON.stringify(standardTerms)}`) - // console.log(`Legacy NDA: ${JSON.stringify(legacyNDA)}`) - // console.log(`Legacy Standard Terms: ${JSON.stringify(legacyStandardTerms)}`) - - const m2mToken = await m2m.getM2MToken(); - if (standardTerms && standardTerms.id && !legacyStandardTerms) { - console.log( - "Associate Challenge Terms - v5 Standard Terms exist, not in legacy. Adding to Legacy." - ); - const v5StandardTerm = await v5Api.getRequest( - `${V5_TERMS_API_URL}/${standardTerms.id}`, - m2mToken - ); - await legacyTermDomain.createProjectRoleTermsOfUseXref({ - projectId: legacyChallengeId, - resourceRoleId: _.toInteger(LEGACY_SUBMITTER_ROLE_ID), - termsOfUseId: v5StandardTerm.legacyId, - }); - } else if ( - !standardTerms && - legacyStandardTerms && - legacyStandardTerms.id - ) { - console.log( - "Associate Challenge Terms - Legacy NDA exist, not in V5. Removing from Legacy." - ); - await legacyTermDomain.deleteProjectRoleTermsOfUseXref({ - projectId: legacyChallengeId, - resourceRoleId: _.toInteger(LEGACY_SUBMITTER_ROLE_ID), - termsOfUseId: legacyStandardTerms.id, - }); - } - - if (nda && nda.id && !legacyNDA) { - console.log( - "Associate Challenge Terms - v5 NDA exist, not in legacy. Adding to Legacy." - ); - const v5NDATerm = await v5Api.getRequest( - `${V5_TERMS_API_URL}/${nda.id}`, - m2mToken - ); - await legacyTermDomain.createProjectRoleTermsOfUseXref({ - projectId: legacyChallengeId, - resourceRoleId: _.toInteger(LEGACY_SUBMITTER_ROLE_ID), - termsOfUseId: v5NDATerm.legacyId, - }); - } else if (!nda && legacyNDA && legacyNDA.id) { - console.log( - "Associate Challenge Terms - Legacy NDA exist, not in V5. Removing from Legacy." - ); - await legacyTermDomain.deleteProjectRoleTermsOfUseXref({ - projectId: legacyChallengeId, - resourceRoleId: _.toInteger(LEGACY_SUBMITTER_ROLE_ID), - termsOfUseId: legacyNDA.id, - }); - } - - // console.log('Associate Challenge Terms - Nothing to Do') - } - - async getGroup(v5GroupId: string) { - const token = await m2m.getM2MToken(); - return await v5Api.getRequest(`${V5_GROUPS_API_URL}/${v5GroupId}`, token); - } - - async getGroups(v5Groups: any[], legacyId: number): Promise { - const { contestEligibilities } = - await legacyGroupContestEligibilityDomain.getContestEligibilities({ - contestId: legacyId, - }); - const v4GroupIds = []; - for (const ce of contestEligibilities) { - const { groupContestEligibilities } = - await legacyGroupContestEligibilityDomain.getGroupContestEligibilities({ - contestEligibilityId: ce.contestEligibilityId, - }); - for (const gce of groupContestEligibilities) { - v4GroupIds.push(gce.groupId); - } - } - // get groupContestEligibilities -> groupId - let groupsToBeAdded: any[] = []; - let groupsToBeDeleted: any[] = []; - if (v5Groups && v5Groups.length > 0) { - const oldGroups = _.map(v4GroupIds, (g) => _.toString(g)); - const newGroups = []; - - for (const group of v5Groups) { - try { - const groupInfo = await this.getGroup(group); - if (!_.isEmpty(_.get(groupInfo, "oldId"))) { - newGroups.push(_.toString(_.get(groupInfo, "oldId"))); - } - } catch (e) { - console.log(`Failed to load details for group ${group}`); - } - } - groupsToBeAdded = _.difference(newGroups, oldGroups); - groupsToBeDeleted = _.difference(oldGroups, newGroups); - if (groupsToBeAdded.length > 0) { - console.log( - `parsePayload :: Adding Groups ${JSON.stringify(groupsToBeAdded)}` - ); - } - if (groupsToBeDeleted.length > 0) { - console.log( - `parsePayload :: Deleting Groups ${JSON.stringify(groupsToBeDeleted)}` - ); - } - } else if (v4GroupIds && v4GroupIds.length > 0) { - groupsToBeDeleted = _.map(v4GroupIds, (g) => _.toString(g)); - } - return { - groupsToBeAdded, - groupsToBeDeleted, - }; - } - - async associateChallengeGroups( - v5groups: any[], - legacyId: number, - isStudio: number - ) { - const { groupsToBeAdded, groupsToBeDeleted } = await this.getGroups( - v5groups, - legacyId - ); - console.log( - `Groups to add to challenge: ${legacyId}: ${JSON.stringify( - groupsToBeAdded - )}` - ); - for (const group of groupsToBeAdded) { - // await groupService.addGroupToChallenge(legacyId, group) - const createdContestEligibility: CreateResult = - await legacyGroupContestEligibilityDomain.createContestEligibility({ - contestEligibilityId: group, - contestId: legacyId, - isStudio, - }); - const ceId = createdContestEligibility.kind - ? _.get( - createdContestEligibility.kind, - createdContestEligibility.kind?.$case, - undefined - ) - : undefined; - if (!ceId) throw new Error("cannot create contest eligibility"); - await legacyGroupContestEligibilityDomain.createGroupContestEligibility({ - contestEligibilityId: ceId, - groupId: group, - }); - } - console.log( - `Groups to remove from challenge: ${legacyId}: ${JSON.stringify( - groupsToBeDeleted - )}` - ); - for (const group of groupsToBeDeleted) { - // await groupService.removeGroupFromChallenge(legacyId, group) - const { contestEligibilities } = - await legacyGroupContestEligibilityDomain.getContestEligibilities({ - contestId: legacyId, - }); - const contestEligibilityToRemove = _.find( - contestEligibilities, - (ce) => ce.contestEligibilityId === group - ); - if (contestEligibilityToRemove) { - await legacyGroupContestEligibilityDomain.deleteContestEligibility({ - contestEligibilityId: contestEligibilityToRemove.contestEligibilityId, - }); - await legacyGroupContestEligibilityDomain.deleteGroupContestEligibility( - { - contestEligibilityId: - contestEligibilityToRemove.contestEligibilityId, - groupId: group, - } - ); - } - } - } - - async setCopilotPayment( - challengeId: string, - legacyChallengeId: number, - prizeSets: any = [] - ) { - try { - const token = await m2m.getM2MToken(); - const amount = _.get( - _.find(prizeSets, (p) => p.type === COPILOT_PAYMENT_TYPE), - "prizes[0].value", - 0 - ); - console.log("Fetching challenge copilot..."); - const [copilotResource] = await v5Api.getRequest( - `${V5_RESOURCES_API_URL}?challengeId=${challengeId}&roleId=${COPILOT_ROLE_ID}`, - token - ); - if (!copilotResource) { - console.log( - `Copilot does not exist for challenge ${challengeId} (legacy: ${legacyChallengeId})` - ); - return; - } - console.log( - `Setting Copilot Payment: ${amount} for legacyId ${legacyChallengeId} for copilot ${copilotResource.memberId}` - ); - const { resources } = await legacyResourceDomain.getResources({ - projectId: legacyChallengeId, - resourceRoleId: ResourceRoleTypes.Copilot, - }); - if (resources && resources.length > 0) { - const { resourceInfos } = await legacyResourceDomain.getResourceInfos({ - resourceId: resources[0].resourceId, - resourceInfoTypeId: PaymentTypeIds.Copilot, - }); - if (resourceInfos && resourceInfos.length > 0) { - // update - await legacyResourceDomain.updateResourceInfos({ - resourceId: resources[0].resourceId, - resourceInfoTypeId: PaymentTypeIds.Copilot, - value: "true", - }); - } else { - // create - await legacyResourceDomain.createResourceInfos({ - resourceId: resources[0].resourceId, - resourceInfoTypeId: PaymentTypeIds.Copilot, - value: "true", - }); - } - - // Set payment - const { projectPayments } = await legacyPaymentDomain.get({ - resourceId: resources[0].resourceId, - projectPaymentTypeId: ProjectPaymentTypeIds.Copilot, - }); - const copilotProjectPayment = - projectPayments?.length > 0 ? projectPayments[0] : undefined; - - const { projectInfos } = await legacyProjectInfoDomain.getProjectInfo({ - projectId: legacyChallengeId, - projectInfoTypeId: ProjectInfoIds.CopilotPayment, - }); - const copilotPayment = - projectInfos?.length > 0 ? projectInfos[0] : undefined; - - if (amount !== null && amount >= 0) { - if (copilotPayment) { - await legacyProjectInfoDomain.update({ - projectId: legacyChallengeId, - projectInfoTypeId: ProjectInfoIds.CopilotPayment, - value: amount, - }); - } else { - console.log( - `Creating copilot payment: ${amount}... with project id: ${legacyChallengeId} and project info type id: ${ProjectInfoIds.CopilotPayment}...` - ); - try { - await legacyProjectInfoDomain.create({ - projectId: legacyChallengeId, - projectInfoTypeId: ProjectInfoIds.CopilotPayment, - value: amount, - }); - } catch (e) { - console.log("Failed to create copilot payment!"); - console.log(e); - } - } - if (copilotProjectPayment) { - await legacyPaymentDomain.update({ - resourceId: resources[0].resourceId, - projectPaymentTypeId: ProjectPaymentTypeIds.Copilot, - amount, - }); - } else { - await legacyPaymentDomain.create({ - resourceId: resources[0].resourceId, - projectPaymentTypeId: ProjectPaymentTypeIds.Copilot, - amount, - }); - } - } else { - await legacyPaymentDomain.delete({ - resourceId: resources[0].resourceId, - projectPaymentTypeId: ProjectPaymentTypeIds.Copilot, - }); - await legacyProjectInfoDomain.delete({ - projectId: legacyChallengeId, - projectInfoTypeId: ProjectInfoIds.CopilotPayment, - }); - } - } - } catch (e) { - console.log("Failed to set the copilot payment!"); - console.log(e); - } - } - public async update( scanCriteria: ScanCriteria[], - input: UpdateChallengeInput_UpdateInput + input: UpdateChallengeInput_UpdateInput, + metadata: Metadata ): Promise { - // TODO: Use legacyChallengeDomain to backfill data in informix - const createdByUserId = 22838965; // TODO: Extract from interceptors - const updatedByUserId = 22838965; // TODO: Extract from interceptors - - if ( - !input?.legacyId && - input?.status && - input?.status !== ChallengeStatuses.New - ) { - console.log(`Legacy ID does not exist. Creating challenge in legacy...`); - const { track, subTrack, isTask, technologies } = - legacyMapper.mapTrackAndType( - input.trackId as string, - input.typeId as string, - input.tags - ); + let legacyId: number | null = null; - input.legacy = { - ...input.legacy, - track, - subTrack, - pureV5Task: isTask, - forumId: 0, - directProjectId: input.legacy!.directProjectId, - reviewType: input.legacy!.reviewType, - confidentialityType: input.legacy!.confidentialityType, - }; + let challenge = null; - let legacyChallengeId: number | null = null; + if (input.status === ChallengeStatuses.Draft || input.status === ChallengeStatuses.Active) { + const { items } = await this.scan(scanCriteria, undefined); - try { - // prettier-ignore - const legacyChallengeCreateInput = LegacyCreateChallengeInput.fromPartial(legacyMapper.mapChallengeDraftUpdateInput(input)); - // prettier-ignore - const legacyChallengeCreateResponse = await legacyChallengeDomain.create(legacyChallengeCreateInput); - if (legacyChallengeCreateResponse.kind?.$case === "integerId") { - legacyChallengeId = legacyChallengeCreateResponse.kind.integerId; - } - } catch (err) { - console.log("err", err); + if (items.length === 0) { throw new StatusBuilder() - .withCode(Status.INTERNAL) - .withDetails("Failed to create legacy challenge") + .withCode(Status.NOT_FOUND) + .withDetails("Challenge not found") .build(); } - input.legacyId = legacyChallengeId as number; + challenge = items[0]; } - console.log(`Updating challenge in legacy...`); - if (input?.legacyId) { - const legacyId = input.legacyId; - const legacyChallenge = await legacyChallengeDomain.getLegacyChallenge({ - legacyChallengeId: legacyId, - }); + if (challenge?.legacy.pureV5Task !== true) { + if (input.status === ChallengeStatuses.Draft) { + // Begin Anti-Corruption Layer - // Handle metadata (project_info) - let metaValue; - const { projectInfos } = await legacyProjectInfoDomain.getProjectInfo({ - projectId: legacyId, - }); - for (const metadataKey of _.keys(constants.supportedMetadata)) { - try { - metaValue = _.toString( - constants.supportedMetadata[metadataKey].method( - input, - constants.supportedMetadata[metadataKey].defaultValue - ) - ); - if (metaValue !== null && metaValue !== "") { - if ( - !_.find( - projectInfos, - (pi: any) => pi.projectInfoTypeId === _.toInteger(metadataKey) - ) - ) { - await legacyProjectInfoDomain.create({ - projectId: legacyId, - projectInfoTypeId: _.toInteger(metadataKey), - value: metaValue, - }); - } else { - await legacyProjectInfoDomain.update({ - projectId: legacyId, - projectInfoTypeId: _.toInteger(metadataKey), - value: metaValue, - }); - } - } - } catch (e) { - console.log( - `Failed to set ${constants.supportedMetadata[metadataKey].description} to ${metaValue} for challenge ${legacyId}` - ); - console.log(e); - } - } - - // updateMemberPayments - await this.updateMemberPayments(legacyId, input.prizeSets); - // associateChallengeGroups - await this.associateChallengeGroups( - input.groups, - legacyId, - _.includes( - constants.STUDIO_CATEGORY_TYPES, - legacyChallenge.projectCategoryId - ) - ? 1 - : 0 - ); - // associateChallengeTerms - await this.associateChallengeTerms(input.terms, legacyId); - // setCopilotPayment - await this.setCopilotPayment( - input.id, - legacyId, - _.get(input, "prizeSets") - ); + // prettier-ignore + const createChallengeInput: CreateChallengeInput = { + name: input.name ?? challenge.name, + typeId: input.typeId ?? challenge.typeId, + trackId: input.trackId ?? challenge.trackId, + metadata: input.metadataUpdate != null ? input.metadataUpdate.metadata : challenge.metadata, + phases: input.phaseUpdate != null ? input.phaseUpdate.phases : challenge.phases, + events: input.eventUpdate != null ? input.eventUpdate.events : challenge.events, + terms: input.termUpdate != null ? input.termUpdate.terms : challenge.terms, + prizeSets: input.prizeSetUpdate != null ? input.prizeSetUpdate.prizeSets : challenge.prizeSets, + tags: input.tagUpdate != null ? input.tagUpdate.tags : challenge.tags, + status: input.status ?? challenge.status, + attachments: input.attachmentUpdate != null ? input.attachmentUpdate.attachments : challenge.attachments, + groups: input.groupUpdate != null ? input.groupUpdate.groups : challenge.groups, + discussions: input.discussionUpdate != null ? input.discussionUpdate.discussions : challenge.discussions, + }; - // If iterative review is open - if ( - _.find( - _.get(input, "phases"), - (p) => p.isOpen && p.name === "Iterative Review" - ) - ) { - // Try to read reviews and insert them into informix DB - if (input.metadata && input.legacy?.reviewScorecardId) { - let orReviewFeedback: any = _.find( - input.metadata, - (meta) => meta.name === "or_review_feedback" - ); - let orReviewScore: any = _.find( - input.metadata, - (meta) => meta.name === "or_review_score" - ); - if ( - !_.isUndefined(orReviewFeedback) && - !_.isUndefined(orReviewScore) - ) { - orReviewFeedback = JSON.parse(_.toString(orReviewFeedback)); - const reviewResponses: any[] = []; - _.each(orReviewFeedback, (value, key) => { - if (input?.legacy?.reviewScorecardId) { - const questionId = _.get( - _.find( - _.get( - constants.scorecardQuestionMapping, - input.legacy.reviewScorecardId - ), - (item) => - _.toString(item.questionId) === _.toString(key) || - _.toLower(item.description) === _.toLower(key) - ), - "questionId" - ); - reviewResponses.push({ - questionId, - answer: value, - }); - } - }); - orReviewScore = _.toNumber(orReviewFeedback); - const { resources } = await legacyResourceDomain.getResources({ - projectId: input.legacyId, - resourceRoleId: ResourceRoleTypes.IterativeReviewer, - }); - if (resources.length === 0) - throw new Error("Cannot find iterative reviewer"); - const iterativeReviewer = resources[0]; - const submission = await legacyReviewDomain.getSubmission({ - projectId: input.legacyId, - resourceId: iterativeReviewer.resourceId, - }); - if (!submission) throw new Error("Cannot find submission"); - const { projectPhases } = await legacyPhaseDomain.getProjectPhases({ - projectId: input.legacyId, - phaseTypeId: 18, - }); - if (projectPhases.length === 0) - throw new Error("Cannot find project phase"); - const projectPhase = projectPhases[0]; - const review = await legacyReviewDomain.createReview({ - resourceId: iterativeReviewer.resourceId, - submissionId: submission.submissionId, - projectPhaseId: projectPhase.projectPhaseId, - scorecardId: input.legacy.reviewScorecardId, - committed: 1, - score: orReviewScore, - initialScore: orReviewScore, - }); - const reviewId = review.kind - ? _.get(review.kind, review.kind?.$case, undefined) - : undefined; - if (!reviewId) throw new Error("Cannot create review"); - for (let i = 0; i < reviewResponses.length; i += 1) { - await legacyReviewDomain.createReviewItem({ - reviewId, - scorecardQuestionId: reviewResponses[i].questionId, - uploadId: submission.uploadId, - answer: reviewResponses[i], - sort: i, - }); - } - } - } - } + // prettier-ignore + const { legacy, legacyChallengeId } = await this.createLegacyChallenge(createChallengeInput, input.legacy, input.status, challenge.trackId, challenge.typeId, challenge.tags, metadata); - let isBeingActivated = false; + input.legacy = legacy; + legacyId = legacyChallengeId; - if (input.status && legacyChallenge) { - if ( - input.status === constants.challengeStatuses.Active && - legacyChallenge.projectStatusId !== - constants.legacyChallengeStatusesMap.Active - ) { - isBeingActivated = true; - console.log("Activating challenge..."); - await legacyChallengeDomain.activate({ - legacyChallengeId: legacyId, - }); - console.log(`Activated! `); - // make sure autopilot is on - if (!_.find(projectInfos, (pi) => pi.projectInfoTypeId === 9)) { - try { - await legacyProjectInfoDomain.create({ - projectId: legacyId, - projectInfoTypeId: 9, - value: "On", - }); - } catch (e) { - console.log("Failed to set autopilot to On"); - console.log(e); - } - } else { - await legacyProjectInfoDomain.update({ - projectId: legacyId, - projectInfoTypeId: 9, - value: "On", - }); - } - } - if ( - input.status === constants.challengeStatuses.Completed && - legacyChallenge.projectStatusId !== - constants.legacyChallengeStatusesMap.Completed - ) { - if (input.task?.isTask) { - console.log("Challenge is a TASK"); - if (!input.winners || input.winners.length === 0) { - throw new Error("Cannot close challenge without winners"); - } - const winnerId = _.find( - input.winners, - (winner) => winner.placement === 1 - )?.userId; - console.log( - `Will close the challenge with ID ${legacyId}. Winner ${winnerId}!` - ); - if (!winnerId) throw new Error("Cannot find winner"); - await legacyChallengeDomain.closeChallenge({ - projectId: legacyId, - winnerId, - }); - } else { - console.log( - "Challenge type is not a task.. Skip closing challenge..." - ); - } - } + // End Anti-Corruption Layer + } - if (!_.get(input, "task.isTask")) { - const numOfReviewers = 2; - await this.syncChallengePhases( - legacyId, - input.phases, - _.get(input, "legacy.selfService", false), - numOfReviewers, - isBeingActivated - ); - await this.addPhaseConstraints(legacyId, input.phases); - } else { - console.log("Will skip syncing phases as the challenge is a task..."); - } - if ( - input.status === constants.challengeStatuses.CancelledClientRequest && - legacyChallenge.projectStatusId !== - constants.legacyChallengeStatusesMap.CancelledClientRequest - ) { - console.log("Cancelling challenge..."); - await legacyChallengeDomain.update({ - projectId: legacyId, - projectStatusId: - constants.legacyChallengeStatusesMap.CancelledClientRequest, - }); - } + if (input.status === ChallengeStatuses.Active) { + // TODO: handle challenge activation } + console.log(`Legacy ID: ${legacyId} was created. Creating challenge...`); } - console.log("Challenge updated successfully in legacy"); - - // toEntity parses the below properties thus we should now stringify them again - // for (const key of ["phases", - // "terms", - // "tags", - // "metadata", - // "events", - // "prizeSets"]) { - // _.set(input, key, JSON.stringify(_.get(input, key))) - // } - console.log("------ before save --------"); - - // console.log(input); - console.log(_.omit(input, ["id"])); - - const challengeList = await super.update(scanCriteria, { - ..._.omit(input, ["id", ...(!input.legacyId ? ["legacyId"] : [])]), - // prizeSets: input.prizeSets.map((ps) => JSON.stringify(ps)), - }); - console.log("------ after save --------"); - - // if (input.phases && input.phases.length) { - // await ChallengeScheduler.schedule({ - // action: "schedule", - // challengeId: input.id, - // phases: input.phases.map((phase) => ({ - // name: phase.name, - // scheduledStartDate: phase.scheduledStartDate, - // scheduledEndDate: phase.scheduledEndDate, - // })), - // }); - // } - - return challengeList; + return super.update( + scanCriteria, + // prettier-ignore + { + name: input.name != null ? xss(input.name) : undefined, + typeId: input.typeId != null ? input.typeId : undefined, + trackId: input.trackId != null ? input.trackId : undefined, + timelineTemplateId: input.timelineTemplateId != null ? input.timelineTemplateId : undefined, + legacy: input.legacy != null ? input.legacy : undefined, + billing: input.billing != null ? input.billing : undefined, + description: input.description != null ? xss(input.description) : undefined, + privateDescription: input.privateDescription != null ? xss(input.privateDescription) : undefined, + descriptionFormat: input.descriptionFormat != null ? input.descriptionFormat : undefined, + task: input.task != null ? input.task : undefined, + winners: input.winnerUpdate != null ? input.winnerUpdate.winners : undefined, + discussions: input.discussionUpdate != null ? input.discussionUpdate.discussions : undefined, + metadata: input.metadataUpdate != null ? input.metadataUpdate.metadata : undefined, + phases: input.phaseUpdate != null ? input.phaseUpdate.phases : undefined, + events: input.eventUpdate != null ? input.eventUpdate.events : undefined, + terms: input.termUpdate != null ? input.termUpdate.terms : undefined, + prizeSets: input.prizeSetUpdate != null ? input.prizeSetUpdate.prizeSets : undefined, + tags: input.tagUpdate != null ? input.tagUpdate.tags : undefined, + status: input.status != null ? input.status : undefined, + attachments: input.attachmentUpdate != null ? input.attachmentUpdate.attachments : undefined, + groups: input.groupUpdate != null ? input.groupUpdate.groups : undefined, + projectId: input.projectId != null ? input.projectId : undefined, + startDate: input.startDate != null ? input.startDate : undefined, + endDate: input.endDate != null ? input.endDate : undefined, + overview: input.overview != null ? input.overview : undefined, + legacyId: legacyId != null ? legacyId : undefined, + }, + metadata + ); } public async updateForAcl( scanCriteria: ScanCriteria[], input: UpdateChallengeInputForACL_UpdateInputForACL ): Promise { - console.log("updateforacl", JSON.stringify(input.phases)); - console.log("scan-criteria", scanCriteria); const updatedBy = "tcwebservice"; // TODO: Extract from interceptors let challenge: Challenge | undefined = undefined; const id = scanCriteria[0].value; @@ -1315,9 +314,7 @@ class ChallengeDomain extends CoreOperations { data.status = input.status; } if (!_.isUndefined(input.phases)) { - console.log("setting phases"); data.phases = input.phases.phases; - console.log("done setting phases"); data.currentPhase = input.currentPhase; data.registrationEndDate = input.registrationStartDate; data.registrationEndDate = input.registrationEndDate; @@ -1326,43 +323,30 @@ class ChallengeDomain extends CoreOperations { data.startDate = input.startDate; data.endDate = input.endDate; } - console.log("current-phase"); + if (!_.isUndefined(input.currentPhaseNames)) { data.currentPhaseNames = input.currentPhaseNames.currentPhaseNames; } - console.log("done-phase"); if (!_.isUndefined(input.legacy)) { if (_.isUndefined(challenge)) { - console.log("lookup challenge"); try { - challenge = await this.lookup( - DomainHelper.getLookupCriteria("id", id) - ); + challenge = await this.lookup(DomainHelper.getLookupCriteria("id", id)); } catch (err) { console.error(err); throw err; } - console.log("done lookoing up challenge"); } data.legacy = _.assign({}, challenge.legacy, input.legacy); } - console.log("done-legacy"); + if (!_.isUndefined(input.prizeSets)) { if (_.isUndefined(challenge)) { challenge = await this.lookup(DomainHelper.getLookupCriteria("id", id)); } const prizeSets = _.filter( [ - ..._.intersectionBy( - input.prizeSets.prizeSets, - challenge.prizeSets, - "type" - ), - ..._.differenceBy( - challenge.prizeSets, - input.prizeSets.prizeSets, - "type" - ), + ..._.intersectionBy(input.prizeSets.prizeSets, challenge.prizeSets, "type"), + ..._.differenceBy(challenge.prizeSets, input.prizeSets.prizeSets, "type"), ], (entry) => entry.type !== "copilot" ); @@ -1375,20 +359,16 @@ class ChallengeDomain extends CoreOperations { } data.prizeSets = prizeSets; } - console.log("done with prizesets"); if (!_.isUndefined(input.overview)) { data.overview = input.overview; } - console.log("done with overview"); if (!_.isUndefined(input.winners)) { data.winners = input.winners.winners; } - console.log("done with winners"); data.updated = new Date(); data.updatedBy = updatedBy; - console.log("Updating...", JSON.stringify(data, null, 2)); await super.update( scanCriteria, _.omit(data, [ diff --git a/src/models/domain-layer/challenge/challenge.ts b/src/models/domain-layer/challenge/challenge.ts index e33316b..6d4be36 100644 --- a/src/models/domain-layer/challenge/challenge.ts +++ b/src/models/domain-layer/challenge/challenge.ts @@ -109,6 +109,7 @@ export interface Challenge_Winner { handle: string; placement: number; userId: number; + type?: string | undefined; } export interface Challenge_Task { @@ -169,37 +170,71 @@ export interface UpdateChallengeInput { } export interface UpdateChallengeInput_UpdateInput { - id: string; - legacyId?: number | undefined; name?: string | undefined; typeId?: string | undefined; trackId?: string | undefined; + timelineTemplateId?: string | undefined; legacy?: Challenge_Legacy | undefined; billing?: Challenge_Billing | undefined; description?: string | undefined; privateDescription?: string | undefined; descriptionFormat?: string | undefined; - metadata: Challenge_Metadata[]; task?: Challenge_Task | undefined; - timelineTemplateId?: string | undefined; + winnerUpdate?: UpdateChallengeInput_UpdateInput_WinnerUpdate | undefined; + discussionUpdate?: UpdateChallengeInput_UpdateInput_DiscussionUpdate | undefined; + metadataUpdate?: UpdateChallengeInput_UpdateInput_MetadataUpdate | undefined; + phaseUpdate?: UpdateChallengeInput_UpdateInput_PhaseUpdate | undefined; + eventUpdate?: UpdateChallengeInput_UpdateInput_EventUpdate | undefined; + termUpdate?: UpdateChallengeInput_UpdateInput_TermUpdate | undefined; + prizeSetUpdate?: UpdateChallengeInput_UpdateInput_PrizeSetUpdate | undefined; + tagUpdate?: UpdateChallengeInput_UpdateInput_TagsUpdate | undefined; + attachmentUpdate?: UpdateChallengeInput_UpdateInput_AttachmentsUpdate | undefined; + groupUpdate?: UpdateChallengeInput_UpdateInput_GroupsUpdate | undefined; + projectId?: number | undefined; + startDate?: number | undefined; + endDate?: number | undefined; + status?: string | undefined; + overview?: Challenge_Overview | undefined; +} + +export interface UpdateChallengeInput_UpdateInput_WinnerUpdate { + winners: Challenge_Winner[]; +} + +export interface UpdateChallengeInput_UpdateInput_DiscussionUpdate { + discussions: Challenge_Discussion[]; +} + +export interface UpdateChallengeInput_UpdateInput_MetadataUpdate { + metadata: Challenge_Metadata[]; +} + +export interface UpdateChallengeInput_UpdateInput_PhaseUpdate { phases: Challenge_Phase[]; +} + +export interface UpdateChallengeInput_UpdateInput_EventUpdate { events: Challenge_Event[]; +} + +export interface UpdateChallengeInput_UpdateInput_TermUpdate { terms: Challenge_Term[]; +} + +export interface UpdateChallengeInput_UpdateInput_PrizeSetUpdate { prizeSets: Challenge_PrizeSet[]; +} + +export interface UpdateChallengeInput_UpdateInput_TagsUpdate { tags: string[]; - projectId?: number | undefined; - startDate?: number | undefined; - endDate?: number | undefined; - status?: string | undefined; +} + +export interface UpdateChallengeInput_UpdateInput_AttachmentsUpdate { attachments: string[]; +} + +export interface UpdateChallengeInput_UpdateInput_GroupsUpdate { groups: string[]; - winners: Challenge_Winner[]; - discussions: Challenge_Discussion[]; - createdBy?: string | undefined; - updatedBy?: string | undefined; - created?: number | undefined; - updated?: number | undefined; - overview?: Challenge_Overview | undefined; } export interface UpdateChallengeInputForACL { @@ -1680,7 +1715,7 @@ export const Challenge_Phase_Constraint = { }; function createBaseChallenge_Winner(): Challenge_Winner { - return { handle: "", placement: 0, userId: 0 }; + return { handle: "", placement: 0, userId: 0, type: undefined }; } export const Challenge_Winner = { @@ -1694,6 +1729,9 @@ export const Challenge_Winner = { if (message.userId !== 0) { writer.uint32(24).int32(message.userId); } + if (message.type !== undefined) { + writer.uint32(34).string(message.type); + } return writer; }, @@ -1725,6 +1763,13 @@ export const Challenge_Winner = { message.userId = reader.int32(); continue; + case 4: + if (tag != 34) { + break; + } + + message.type = reader.string(); + continue; } if ((tag & 7) == 4 || tag == 0) { break; @@ -1739,6 +1784,7 @@ export const Challenge_Winner = { handle: isSet(object.handle) ? String(object.handle) : "", placement: isSet(object.placement) ? Number(object.placement) : 0, userId: isSet(object.userId) ? Number(object.userId) : 0, + type: isSet(object.type) ? String(object.type) : undefined, }; }, @@ -1747,6 +1793,7 @@ export const Challenge_Winner = { message.handle !== undefined && (obj.handle = message.handle); message.placement !== undefined && (obj.placement = Math.round(message.placement)); message.userId !== undefined && (obj.userId = Math.round(message.userId)); + message.type !== undefined && (obj.type = message.type); return obj; }, @@ -1759,6 +1806,7 @@ export const Challenge_Winner = { message.handle = object.handle ?? ""; message.placement = object.placement ?? 0; message.userId = object.userId ?? 0; + message.type = object.type ?? undefined; return message; }, }; @@ -2623,134 +2671,114 @@ export const UpdateChallengeInput = { function createBaseUpdateChallengeInput_UpdateInput(): UpdateChallengeInput_UpdateInput { return { - id: "", - legacyId: undefined, name: undefined, typeId: undefined, trackId: undefined, + timelineTemplateId: undefined, legacy: undefined, billing: undefined, description: undefined, privateDescription: undefined, descriptionFormat: undefined, - metadata: [], task: undefined, - timelineTemplateId: undefined, - phases: [], - events: [], - terms: [], - prizeSets: [], - tags: [], + winnerUpdate: undefined, + discussionUpdate: undefined, + metadataUpdate: undefined, + phaseUpdate: undefined, + eventUpdate: undefined, + termUpdate: undefined, + prizeSetUpdate: undefined, + tagUpdate: undefined, + attachmentUpdate: undefined, + groupUpdate: undefined, projectId: undefined, startDate: undefined, endDate: undefined, status: undefined, - attachments: [], - groups: [], - winners: [], - discussions: [], - createdBy: undefined, - updatedBy: undefined, - created: undefined, - updated: undefined, overview: undefined, }; } export const UpdateChallengeInput_UpdateInput = { encode(message: UpdateChallengeInput_UpdateInput, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { - if (message.id !== "") { - writer.uint32(10).string(message.id); - } - if (message.legacyId !== undefined) { - writer.uint32(16).int32(message.legacyId); - } if (message.name !== undefined) { - writer.uint32(26).string(message.name); + writer.uint32(10).string(message.name); } if (message.typeId !== undefined) { - writer.uint32(34).string(message.typeId); + writer.uint32(18).string(message.typeId); } if (message.trackId !== undefined) { - writer.uint32(42).string(message.trackId); + writer.uint32(26).string(message.trackId); + } + if (message.timelineTemplateId !== undefined) { + writer.uint32(34).string(message.timelineTemplateId); } if (message.legacy !== undefined) { - Challenge_Legacy.encode(message.legacy, writer.uint32(50).fork()).ldelim(); + Challenge_Legacy.encode(message.legacy, writer.uint32(42).fork()).ldelim(); } if (message.billing !== undefined) { - Challenge_Billing.encode(message.billing, writer.uint32(58).fork()).ldelim(); + Challenge_Billing.encode(message.billing, writer.uint32(50).fork()).ldelim(); } if (message.description !== undefined) { - writer.uint32(66).string(message.description); + writer.uint32(58).string(message.description); } if (message.privateDescription !== undefined) { - writer.uint32(74).string(message.privateDescription); + writer.uint32(66).string(message.privateDescription); } if (message.descriptionFormat !== undefined) { - writer.uint32(82).string(message.descriptionFormat); - } - for (const v of message.metadata) { - Challenge_Metadata.encode(v!, writer.uint32(90).fork()).ldelim(); + writer.uint32(74).string(message.descriptionFormat); } if (message.task !== undefined) { - Challenge_Task.encode(message.task, writer.uint32(98).fork()).ldelim(); + Challenge_Task.encode(message.task, writer.uint32(82).fork()).ldelim(); } - if (message.timelineTemplateId !== undefined) { - writer.uint32(106).string(message.timelineTemplateId); - } - for (const v of message.phases) { - Challenge_Phase.encode(v!, writer.uint32(114).fork()).ldelim(); - } - for (const v of message.events) { - Challenge_Event.encode(v!, writer.uint32(122).fork()).ldelim(); + if (message.winnerUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_WinnerUpdate.encode(message.winnerUpdate, writer.uint32(90).fork()).ldelim(); } - for (const v of message.terms) { - Challenge_Term.encode(v!, writer.uint32(130).fork()).ldelim(); - } - for (const v of message.prizeSets) { - Challenge_PrizeSet.encode(v!, writer.uint32(138).fork()).ldelim(); - } - for (const v of message.tags) { - writer.uint32(146).string(v!); + if (message.discussionUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_DiscussionUpdate.encode(message.discussionUpdate, writer.uint32(98).fork()) + .ldelim(); } - if (message.projectId !== undefined) { - writer.uint32(152).int32(message.projectId); + if (message.metadataUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_MetadataUpdate.encode(message.metadataUpdate, writer.uint32(106).fork()) + .ldelim(); } - if (message.startDate !== undefined) { - writer.uint32(160).int64(message.startDate); + if (message.phaseUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_PhaseUpdate.encode(message.phaseUpdate, writer.uint32(114).fork()).ldelim(); } - if (message.endDate !== undefined) { - writer.uint32(168).int64(message.endDate); + if (message.eventUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_EventUpdate.encode(message.eventUpdate, writer.uint32(122).fork()).ldelim(); } - if (message.status !== undefined) { - writer.uint32(178).string(message.status); + if (message.termUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_TermUpdate.encode(message.termUpdate, writer.uint32(130).fork()).ldelim(); } - for (const v of message.attachments) { - writer.uint32(186).string(v!); + if (message.prizeSetUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_PrizeSetUpdate.encode(message.prizeSetUpdate, writer.uint32(138).fork()) + .ldelim(); } - for (const v of message.groups) { - writer.uint32(194).string(v!); + if (message.tagUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_TagsUpdate.encode(message.tagUpdate, writer.uint32(146).fork()).ldelim(); } - for (const v of message.winners) { - Challenge_Winner.encode(v!, writer.uint32(202).fork()).ldelim(); + if (message.attachmentUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_AttachmentsUpdate.encode(message.attachmentUpdate, writer.uint32(154).fork()) + .ldelim(); } - for (const v of message.discussions) { - Challenge_Discussion.encode(v!, writer.uint32(210).fork()).ldelim(); + if (message.groupUpdate !== undefined) { + UpdateChallengeInput_UpdateInput_GroupsUpdate.encode(message.groupUpdate, writer.uint32(162).fork()).ldelim(); } - if (message.createdBy !== undefined) { - writer.uint32(218).string(message.createdBy); + if (message.projectId !== undefined) { + writer.uint32(168).int32(message.projectId); } - if (message.updatedBy !== undefined) { - writer.uint32(226).string(message.updatedBy); + if (message.startDate !== undefined) { + writer.uint32(176).int64(message.startDate); } - if (message.created !== undefined) { - writer.uint32(232).int64(message.created); + if (message.endDate !== undefined) { + writer.uint32(184).int64(message.endDate); } - if (message.updated !== undefined) { - writer.uint32(240).int64(message.updated); + if (message.status !== undefined) { + writer.uint32(194).string(message.status); } if (message.overview !== undefined) { - Challenge_Overview.encode(message.overview, writer.uint32(250).fork()).ldelim(); + Challenge_Overview.encode(message.overview, writer.uint32(202).fork()).ldelim(); } return writer; }, @@ -2767,216 +2795,174 @@ export const UpdateChallengeInput_UpdateInput = { break; } - message.id = reader.string(); + message.name = reader.string(); continue; case 2: - if (tag != 16) { + if (tag != 18) { break; } - message.legacyId = reader.int32(); + message.typeId = reader.string(); continue; case 3: if (tag != 26) { break; } - message.name = reader.string(); + message.trackId = reader.string(); continue; case 4: if (tag != 34) { break; } - message.typeId = reader.string(); + message.timelineTemplateId = reader.string(); continue; case 5: if (tag != 42) { break; } - message.trackId = reader.string(); + message.legacy = Challenge_Legacy.decode(reader, reader.uint32()); continue; case 6: if (tag != 50) { break; } - message.legacy = Challenge_Legacy.decode(reader, reader.uint32()); + message.billing = Challenge_Billing.decode(reader, reader.uint32()); continue; case 7: if (tag != 58) { break; } - message.billing = Challenge_Billing.decode(reader, reader.uint32()); + message.description = reader.string(); continue; case 8: if (tag != 66) { break; } - message.description = reader.string(); + message.privateDescription = reader.string(); continue; case 9: if (tag != 74) { break; } - message.privateDescription = reader.string(); + message.descriptionFormat = reader.string(); continue; case 10: if (tag != 82) { break; } - message.descriptionFormat = reader.string(); + message.task = Challenge_Task.decode(reader, reader.uint32()); continue; case 11: if (tag != 90) { break; } - message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); + message.winnerUpdate = UpdateChallengeInput_UpdateInput_WinnerUpdate.decode(reader, reader.uint32()); continue; case 12: if (tag != 98) { break; } - message.task = Challenge_Task.decode(reader, reader.uint32()); + message.discussionUpdate = UpdateChallengeInput_UpdateInput_DiscussionUpdate.decode(reader, reader.uint32()); continue; case 13: if (tag != 106) { break; } - message.timelineTemplateId = reader.string(); + message.metadataUpdate = UpdateChallengeInput_UpdateInput_MetadataUpdate.decode(reader, reader.uint32()); continue; case 14: if (tag != 114) { break; } - message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); + message.phaseUpdate = UpdateChallengeInput_UpdateInput_PhaseUpdate.decode(reader, reader.uint32()); continue; case 15: if (tag != 122) { break; } - message.events.push(Challenge_Event.decode(reader, reader.uint32())); + message.eventUpdate = UpdateChallengeInput_UpdateInput_EventUpdate.decode(reader, reader.uint32()); continue; case 16: if (tag != 130) { break; } - message.terms.push(Challenge_Term.decode(reader, reader.uint32())); + message.termUpdate = UpdateChallengeInput_UpdateInput_TermUpdate.decode(reader, reader.uint32()); continue; case 17: if (tag != 138) { break; } - message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); + message.prizeSetUpdate = UpdateChallengeInput_UpdateInput_PrizeSetUpdate.decode(reader, reader.uint32()); continue; case 18: if (tag != 146) { break; } - message.tags.push(reader.string()); + message.tagUpdate = UpdateChallengeInput_UpdateInput_TagsUpdate.decode(reader, reader.uint32()); continue; case 19: - if (tag != 152) { + if (tag != 154) { break; } - message.projectId = reader.int32(); + message.attachmentUpdate = UpdateChallengeInput_UpdateInput_AttachmentsUpdate.decode(reader, reader.uint32()); continue; case 20: - if (tag != 160) { + if (tag != 162) { break; } - message.startDate = longToNumber(reader.int64() as Long); + message.groupUpdate = UpdateChallengeInput_UpdateInput_GroupsUpdate.decode(reader, reader.uint32()); continue; case 21: if (tag != 168) { break; } - message.endDate = longToNumber(reader.int64() as Long); + message.projectId = reader.int32(); continue; case 22: - if (tag != 178) { + if (tag != 176) { break; } - message.status = reader.string(); + message.startDate = longToNumber(reader.int64() as Long); continue; case 23: - if (tag != 186) { + if (tag != 184) { break; } - message.attachments.push(reader.string()); + message.endDate = longToNumber(reader.int64() as Long); continue; case 24: if (tag != 194) { break; } - message.groups.push(reader.string()); + message.status = reader.string(); continue; case 25: if (tag != 202) { break; } - message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); - continue; - case 26: - if (tag != 210) { - break; - } - - message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); - continue; - case 27: - if (tag != 218) { - break; - } - - message.createdBy = reader.string(); - continue; - case 28: - if (tag != 226) { - break; - } - - message.updatedBy = reader.string(); - continue; - case 29: - if (tag != 232) { - break; - } - - message.created = longToNumber(reader.int64() as Long); - continue; - case 30: - if (tag != 240) { - break; - } - - message.updated = longToNumber(reader.int64() as Long); - continue; - case 31: - if (tag != 250) { - break; - } - message.overview = Challenge_Overview.decode(reader, reader.uint32()); continue; } @@ -2990,117 +2976,101 @@ export const UpdateChallengeInput_UpdateInput = { fromJSON(object: any): UpdateChallengeInput_UpdateInput { return { - id: isSet(object.id) ? String(object.id) : "", - legacyId: isSet(object.legacyId) ? Number(object.legacyId) : undefined, name: isSet(object.name) ? String(object.name) : undefined, typeId: isSet(object.typeId) ? String(object.typeId) : undefined, trackId: isSet(object.trackId) ? String(object.trackId) : undefined, + timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, legacy: isSet(object.legacy) ? Challenge_Legacy.fromJSON(object.legacy) : undefined, billing: isSet(object.billing) ? Challenge_Billing.fromJSON(object.billing) : undefined, description: isSet(object.description) ? String(object.description) : undefined, privateDescription: isSet(object.privateDescription) ? String(object.privateDescription) : undefined, descriptionFormat: isSet(object.descriptionFormat) ? String(object.descriptionFormat) : undefined, - metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], task: isSet(object.task) ? Challenge_Task.fromJSON(object.task) : undefined, - timelineTemplateId: isSet(object.timelineTemplateId) ? String(object.timelineTemplateId) : undefined, - phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [], - events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [], - terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [], - prizeSets: Array.isArray(object?.prizeSets) - ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) - : [], - tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [], + winnerUpdate: isSet(object.winnerUpdate) + ? UpdateChallengeInput_UpdateInput_WinnerUpdate.fromJSON(object.winnerUpdate) + : undefined, + discussionUpdate: isSet(object.discussionUpdate) + ? UpdateChallengeInput_UpdateInput_DiscussionUpdate.fromJSON(object.discussionUpdate) + : undefined, + metadataUpdate: isSet(object.metadataUpdate) + ? UpdateChallengeInput_UpdateInput_MetadataUpdate.fromJSON(object.metadataUpdate) + : undefined, + phaseUpdate: isSet(object.phaseUpdate) + ? UpdateChallengeInput_UpdateInput_PhaseUpdate.fromJSON(object.phaseUpdate) + : undefined, + eventUpdate: isSet(object.eventUpdate) + ? UpdateChallengeInput_UpdateInput_EventUpdate.fromJSON(object.eventUpdate) + : undefined, + termUpdate: isSet(object.termUpdate) + ? UpdateChallengeInput_UpdateInput_TermUpdate.fromJSON(object.termUpdate) + : undefined, + prizeSetUpdate: isSet(object.prizeSetUpdate) + ? UpdateChallengeInput_UpdateInput_PrizeSetUpdate.fromJSON(object.prizeSetUpdate) + : undefined, + tagUpdate: isSet(object.tagUpdate) + ? UpdateChallengeInput_UpdateInput_TagsUpdate.fromJSON(object.tagUpdate) + : undefined, + attachmentUpdate: isSet(object.attachmentUpdate) + ? UpdateChallengeInput_UpdateInput_AttachmentsUpdate.fromJSON(object.attachmentUpdate) + : undefined, + groupUpdate: isSet(object.groupUpdate) + ? UpdateChallengeInput_UpdateInput_GroupsUpdate.fromJSON(object.groupUpdate) + : undefined, projectId: isSet(object.projectId) ? Number(object.projectId) : undefined, startDate: isSet(object.startDate) ? Number(object.startDate) : undefined, endDate: isSet(object.endDate) ? Number(object.endDate) : undefined, status: isSet(object.status) ? String(object.status) : undefined, - attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [], - groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [], - winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], - discussions: Array.isArray(object?.discussions) - ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) - : [], - createdBy: isSet(object.createdBy) ? String(object.createdBy) : undefined, - updatedBy: isSet(object.updatedBy) ? String(object.updatedBy) : undefined, - created: isSet(object.created) ? Number(object.created) : undefined, - updated: isSet(object.updated) ? Number(object.updated) : undefined, overview: isSet(object.overview) ? Challenge_Overview.fromJSON(object.overview) : undefined, }; }, toJSON(message: UpdateChallengeInput_UpdateInput): unknown { const obj: any = {}; - message.id !== undefined && (obj.id = message.id); - message.legacyId !== undefined && (obj.legacyId = Math.round(message.legacyId)); message.name !== undefined && (obj.name = message.name); message.typeId !== undefined && (obj.typeId = message.typeId); message.trackId !== undefined && (obj.trackId = message.trackId); + message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); message.legacy !== undefined && (obj.legacy = message.legacy ? Challenge_Legacy.toJSON(message.legacy) : undefined); message.billing !== undefined && (obj.billing = message.billing ? Challenge_Billing.toJSON(message.billing) : undefined); message.description !== undefined && (obj.description = message.description); message.privateDescription !== undefined && (obj.privateDescription = message.privateDescription); message.descriptionFormat !== undefined && (obj.descriptionFormat = message.descriptionFormat); - if (message.metadata) { - obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); - } else { - obj.metadata = []; - } message.task !== undefined && (obj.task = message.task ? Challenge_Task.toJSON(message.task) : undefined); - message.timelineTemplateId !== undefined && (obj.timelineTemplateId = message.timelineTemplateId); - if (message.phases) { - obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); - } else { - obj.phases = []; - } - if (message.events) { - obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); - } else { - obj.events = []; - } - if (message.terms) { - obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); - } else { - obj.terms = []; - } - if (message.prizeSets) { - obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); - } else { - obj.prizeSets = []; - } - if (message.tags) { - obj.tags = message.tags.map((e) => e); - } else { - obj.tags = []; - } + message.winnerUpdate !== undefined && (obj.winnerUpdate = message.winnerUpdate + ? UpdateChallengeInput_UpdateInput_WinnerUpdate.toJSON(message.winnerUpdate) + : undefined); + message.discussionUpdate !== undefined && (obj.discussionUpdate = message.discussionUpdate + ? UpdateChallengeInput_UpdateInput_DiscussionUpdate.toJSON(message.discussionUpdate) + : undefined); + message.metadataUpdate !== undefined && (obj.metadataUpdate = message.metadataUpdate + ? UpdateChallengeInput_UpdateInput_MetadataUpdate.toJSON(message.metadataUpdate) + : undefined); + message.phaseUpdate !== undefined && (obj.phaseUpdate = message.phaseUpdate + ? UpdateChallengeInput_UpdateInput_PhaseUpdate.toJSON(message.phaseUpdate) + : undefined); + message.eventUpdate !== undefined && (obj.eventUpdate = message.eventUpdate + ? UpdateChallengeInput_UpdateInput_EventUpdate.toJSON(message.eventUpdate) + : undefined); + message.termUpdate !== undefined && (obj.termUpdate = message.termUpdate + ? UpdateChallengeInput_UpdateInput_TermUpdate.toJSON(message.termUpdate) + : undefined); + message.prizeSetUpdate !== undefined && (obj.prizeSetUpdate = message.prizeSetUpdate + ? UpdateChallengeInput_UpdateInput_PrizeSetUpdate.toJSON(message.prizeSetUpdate) + : undefined); + message.tagUpdate !== undefined && (obj.tagUpdate = message.tagUpdate + ? UpdateChallengeInput_UpdateInput_TagsUpdate.toJSON(message.tagUpdate) + : undefined); + message.attachmentUpdate !== undefined && (obj.attachmentUpdate = message.attachmentUpdate + ? UpdateChallengeInput_UpdateInput_AttachmentsUpdate.toJSON(message.attachmentUpdate) + : undefined); + message.groupUpdate !== undefined && (obj.groupUpdate = message.groupUpdate + ? UpdateChallengeInput_UpdateInput_GroupsUpdate.toJSON(message.groupUpdate) + : undefined); message.projectId !== undefined && (obj.projectId = Math.round(message.projectId)); message.startDate !== undefined && (obj.startDate = Math.round(message.startDate)); message.endDate !== undefined && (obj.endDate = Math.round(message.endDate)); message.status !== undefined && (obj.status = message.status); - if (message.attachments) { - obj.attachments = message.attachments.map((e) => e); - } else { - obj.attachments = []; - } - if (message.groups) { - obj.groups = message.groups.map((e) => e); - } else { - obj.groups = []; - } - if (message.winners) { - obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); - } else { - obj.winners = []; - } - if (message.discussions) { - obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); - } else { - obj.discussions = []; - } - message.createdBy !== undefined && (obj.createdBy = message.createdBy); - message.updatedBy !== undefined && (obj.updatedBy = message.updatedBy); - message.created !== undefined && (obj.created = Math.round(message.created)); - message.updated !== undefined && (obj.updated = Math.round(message.updated)); message.overview !== undefined && (obj.overview = message.overview ? Challenge_Overview.toJSON(message.overview) : undefined); return obj; @@ -3116,11 +3086,10 @@ export const UpdateChallengeInput_UpdateInput = { object: I, ): UpdateChallengeInput_UpdateInput { const message = createBaseUpdateChallengeInput_UpdateInput(); - message.id = object.id ?? ""; - message.legacyId = object.legacyId ?? undefined; message.name = object.name ?? undefined; message.typeId = object.typeId ?? undefined; message.trackId = object.trackId ?? undefined; + message.timelineTemplateId = object.timelineTemplateId ?? undefined; message.legacy = (object.legacy !== undefined && object.legacy !== null) ? Challenge_Legacy.fromPartial(object.legacy) : undefined; @@ -3130,28 +3099,43 @@ export const UpdateChallengeInput_UpdateInput = { message.description = object.description ?? undefined; message.privateDescription = object.privateDescription ?? undefined; message.descriptionFormat = object.descriptionFormat ?? undefined; - message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; message.task = (object.task !== undefined && object.task !== null) ? Challenge_Task.fromPartial(object.task) : undefined; - message.timelineTemplateId = object.timelineTemplateId ?? undefined; - message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; - message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; - message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; - message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; - message.tags = object.tags?.map((e) => e) || []; + message.winnerUpdate = (object.winnerUpdate !== undefined && object.winnerUpdate !== null) + ? UpdateChallengeInput_UpdateInput_WinnerUpdate.fromPartial(object.winnerUpdate) + : undefined; + message.discussionUpdate = (object.discussionUpdate !== undefined && object.discussionUpdate !== null) + ? UpdateChallengeInput_UpdateInput_DiscussionUpdate.fromPartial(object.discussionUpdate) + : undefined; + message.metadataUpdate = (object.metadataUpdate !== undefined && object.metadataUpdate !== null) + ? UpdateChallengeInput_UpdateInput_MetadataUpdate.fromPartial(object.metadataUpdate) + : undefined; + message.phaseUpdate = (object.phaseUpdate !== undefined && object.phaseUpdate !== null) + ? UpdateChallengeInput_UpdateInput_PhaseUpdate.fromPartial(object.phaseUpdate) + : undefined; + message.eventUpdate = (object.eventUpdate !== undefined && object.eventUpdate !== null) + ? UpdateChallengeInput_UpdateInput_EventUpdate.fromPartial(object.eventUpdate) + : undefined; + message.termUpdate = (object.termUpdate !== undefined && object.termUpdate !== null) + ? UpdateChallengeInput_UpdateInput_TermUpdate.fromPartial(object.termUpdate) + : undefined; + message.prizeSetUpdate = (object.prizeSetUpdate !== undefined && object.prizeSetUpdate !== null) + ? UpdateChallengeInput_UpdateInput_PrizeSetUpdate.fromPartial(object.prizeSetUpdate) + : undefined; + message.tagUpdate = (object.tagUpdate !== undefined && object.tagUpdate !== null) + ? UpdateChallengeInput_UpdateInput_TagsUpdate.fromPartial(object.tagUpdate) + : undefined; + message.attachmentUpdate = (object.attachmentUpdate !== undefined && object.attachmentUpdate !== null) + ? UpdateChallengeInput_UpdateInput_AttachmentsUpdate.fromPartial(object.attachmentUpdate) + : undefined; + message.groupUpdate = (object.groupUpdate !== undefined && object.groupUpdate !== null) + ? UpdateChallengeInput_UpdateInput_GroupsUpdate.fromPartial(object.groupUpdate) + : undefined; message.projectId = object.projectId ?? undefined; message.startDate = object.startDate ?? undefined; message.endDate = object.endDate ?? undefined; message.status = object.status ?? undefined; - message.attachments = object.attachments?.map((e) => e) || []; - message.groups = object.groups?.map((e) => e) || []; - message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; - message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; - message.createdBy = object.createdBy ?? undefined; - message.updatedBy = object.updatedBy ?? undefined; - message.created = object.created ?? undefined; - message.updated = object.updated ?? undefined; message.overview = (object.overview !== undefined && object.overview !== null) ? Challenge_Overview.fromPartial(object.overview) : undefined; @@ -3159,6 +3143,670 @@ export const UpdateChallengeInput_UpdateInput = { }, }; +function createBaseUpdateChallengeInput_UpdateInput_WinnerUpdate(): UpdateChallengeInput_UpdateInput_WinnerUpdate { + return { winners: [] }; +} + +export const UpdateChallengeInput_UpdateInput_WinnerUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_WinnerUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.winners) { + Challenge_Winner.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_WinnerUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_WinnerUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.winners.push(Challenge_Winner.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_WinnerUpdate { + return { + winners: Array.isArray(object?.winners) ? object.winners.map((e: any) => Challenge_Winner.fromJSON(e)) : [], + }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_WinnerUpdate): unknown { + const obj: any = {}; + if (message.winners) { + obj.winners = message.winners.map((e) => e ? Challenge_Winner.toJSON(e) : undefined); + } else { + obj.winners = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_WinnerUpdate { + return UpdateChallengeInput_UpdateInput_WinnerUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_WinnerUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_WinnerUpdate(); + message.winners = object.winners?.map((e) => Challenge_Winner.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_DiscussionUpdate(): UpdateChallengeInput_UpdateInput_DiscussionUpdate { + return { discussions: [] }; +} + +export const UpdateChallengeInput_UpdateInput_DiscussionUpdate = { + encode( + message: UpdateChallengeInput_UpdateInput_DiscussionUpdate, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { + for (const v of message.discussions) { + Challenge_Discussion.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_DiscussionUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_DiscussionUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.discussions.push(Challenge_Discussion.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_DiscussionUpdate { + return { + discussions: Array.isArray(object?.discussions) + ? object.discussions.map((e: any) => Challenge_Discussion.fromJSON(e)) + : [], + }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_DiscussionUpdate): unknown { + const obj: any = {}; + if (message.discussions) { + obj.discussions = message.discussions.map((e) => e ? Challenge_Discussion.toJSON(e) : undefined); + } else { + obj.discussions = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_DiscussionUpdate { + return UpdateChallengeInput_UpdateInput_DiscussionUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_DiscussionUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_DiscussionUpdate(); + message.discussions = object.discussions?.map((e) => Challenge_Discussion.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_MetadataUpdate(): UpdateChallengeInput_UpdateInput_MetadataUpdate { + return { metadata: [] }; +} + +export const UpdateChallengeInput_UpdateInput_MetadataUpdate = { + encode( + message: UpdateChallengeInput_UpdateInput_MetadataUpdate, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { + for (const v of message.metadata) { + Challenge_Metadata.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_MetadataUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_MetadataUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.metadata.push(Challenge_Metadata.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_MetadataUpdate { + return { + metadata: Array.isArray(object?.metadata) ? object.metadata.map((e: any) => Challenge_Metadata.fromJSON(e)) : [], + }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_MetadataUpdate): unknown { + const obj: any = {}; + if (message.metadata) { + obj.metadata = message.metadata.map((e) => e ? Challenge_Metadata.toJSON(e) : undefined); + } else { + obj.metadata = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_MetadataUpdate { + return UpdateChallengeInput_UpdateInput_MetadataUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_MetadataUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_MetadataUpdate(); + message.metadata = object.metadata?.map((e) => Challenge_Metadata.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_PhaseUpdate(): UpdateChallengeInput_UpdateInput_PhaseUpdate { + return { phases: [] }; +} + +export const UpdateChallengeInput_UpdateInput_PhaseUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_PhaseUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.phases) { + Challenge_Phase.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_PhaseUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_PhaseUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.phases.push(Challenge_Phase.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_PhaseUpdate { + return { phases: Array.isArray(object?.phases) ? object.phases.map((e: any) => Challenge_Phase.fromJSON(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_PhaseUpdate): unknown { + const obj: any = {}; + if (message.phases) { + obj.phases = message.phases.map((e) => e ? Challenge_Phase.toJSON(e) : undefined); + } else { + obj.phases = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_PhaseUpdate { + return UpdateChallengeInput_UpdateInput_PhaseUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_PhaseUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_PhaseUpdate(); + message.phases = object.phases?.map((e) => Challenge_Phase.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_EventUpdate(): UpdateChallengeInput_UpdateInput_EventUpdate { + return { events: [] }; +} + +export const UpdateChallengeInput_UpdateInput_EventUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_EventUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.events) { + Challenge_Event.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_EventUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_EventUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.events.push(Challenge_Event.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_EventUpdate { + return { events: Array.isArray(object?.events) ? object.events.map((e: any) => Challenge_Event.fromJSON(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_EventUpdate): unknown { + const obj: any = {}; + if (message.events) { + obj.events = message.events.map((e) => e ? Challenge_Event.toJSON(e) : undefined); + } else { + obj.events = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_EventUpdate { + return UpdateChallengeInput_UpdateInput_EventUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_EventUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_EventUpdate(); + message.events = object.events?.map((e) => Challenge_Event.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_TermUpdate(): UpdateChallengeInput_UpdateInput_TermUpdate { + return { terms: [] }; +} + +export const UpdateChallengeInput_UpdateInput_TermUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_TermUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.terms) { + Challenge_Term.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_TermUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_TermUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.terms.push(Challenge_Term.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_TermUpdate { + return { terms: Array.isArray(object?.terms) ? object.terms.map((e: any) => Challenge_Term.fromJSON(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_TermUpdate): unknown { + const obj: any = {}; + if (message.terms) { + obj.terms = message.terms.map((e) => e ? Challenge_Term.toJSON(e) : undefined); + } else { + obj.terms = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_TermUpdate { + return UpdateChallengeInput_UpdateInput_TermUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_TermUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_TermUpdate(); + message.terms = object.terms?.map((e) => Challenge_Term.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_PrizeSetUpdate(): UpdateChallengeInput_UpdateInput_PrizeSetUpdate { + return { prizeSets: [] }; +} + +export const UpdateChallengeInput_UpdateInput_PrizeSetUpdate = { + encode( + message: UpdateChallengeInput_UpdateInput_PrizeSetUpdate, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { + for (const v of message.prizeSets) { + Challenge_PrizeSet.encode(v!, writer.uint32(10).fork()).ldelim(); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_PrizeSetUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_PrizeSetUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.prizeSets.push(Challenge_PrizeSet.decode(reader, reader.uint32())); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_PrizeSetUpdate { + return { + prizeSets: Array.isArray(object?.prizeSets) + ? object.prizeSets.map((e: any) => Challenge_PrizeSet.fromJSON(e)) + : [], + }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_PrizeSetUpdate): unknown { + const obj: any = {}; + if (message.prizeSets) { + obj.prizeSets = message.prizeSets.map((e) => e ? Challenge_PrizeSet.toJSON(e) : undefined); + } else { + obj.prizeSets = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_PrizeSetUpdate { + return UpdateChallengeInput_UpdateInput_PrizeSetUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_PrizeSetUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_PrizeSetUpdate(); + message.prizeSets = object.prizeSets?.map((e) => Challenge_PrizeSet.fromPartial(e)) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_TagsUpdate(): UpdateChallengeInput_UpdateInput_TagsUpdate { + return { tags: [] }; +} + +export const UpdateChallengeInput_UpdateInput_TagsUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_TagsUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.tags) { + writer.uint32(10).string(v!); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_TagsUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_TagsUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.tags.push(reader.string()); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_TagsUpdate { + return { tags: Array.isArray(object?.tags) ? object.tags.map((e: any) => String(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_TagsUpdate): unknown { + const obj: any = {}; + if (message.tags) { + obj.tags = message.tags.map((e) => e); + } else { + obj.tags = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_TagsUpdate { + return UpdateChallengeInput_UpdateInput_TagsUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_TagsUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_TagsUpdate(); + message.tags = object.tags?.map((e) => e) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_AttachmentsUpdate(): UpdateChallengeInput_UpdateInput_AttachmentsUpdate { + return { attachments: [] }; +} + +export const UpdateChallengeInput_UpdateInput_AttachmentsUpdate = { + encode( + message: UpdateChallengeInput_UpdateInput_AttachmentsUpdate, + writer: _m0.Writer = _m0.Writer.create(), + ): _m0.Writer { + for (const v of message.attachments) { + writer.uint32(10).string(v!); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_AttachmentsUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_AttachmentsUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.attachments.push(reader.string()); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_AttachmentsUpdate { + return { attachments: Array.isArray(object?.attachments) ? object.attachments.map((e: any) => String(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_AttachmentsUpdate): unknown { + const obj: any = {}; + if (message.attachments) { + obj.attachments = message.attachments.map((e) => e); + } else { + obj.attachments = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_AttachmentsUpdate { + return UpdateChallengeInput_UpdateInput_AttachmentsUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_AttachmentsUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_AttachmentsUpdate(); + message.attachments = object.attachments?.map((e) => e) || []; + return message; + }, +}; + +function createBaseUpdateChallengeInput_UpdateInput_GroupsUpdate(): UpdateChallengeInput_UpdateInput_GroupsUpdate { + return { groups: [] }; +} + +export const UpdateChallengeInput_UpdateInput_GroupsUpdate = { + encode(message: UpdateChallengeInput_UpdateInput_GroupsUpdate, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { + for (const v of message.groups) { + writer.uint32(10).string(v!); + } + return writer; + }, + + decode(input: _m0.Reader | Uint8Array, length?: number): UpdateChallengeInput_UpdateInput_GroupsUpdate { + const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input); + let end = length === undefined ? reader.len : reader.pos + length; + const message = createBaseUpdateChallengeInput_UpdateInput_GroupsUpdate(); + while (reader.pos < end) { + const tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + if (tag != 10) { + break; + } + + message.groups.push(reader.string()); + continue; + } + if ((tag & 7) == 4 || tag == 0) { + break; + } + reader.skipType(tag & 7); + } + return message; + }, + + fromJSON(object: any): UpdateChallengeInput_UpdateInput_GroupsUpdate { + return { groups: Array.isArray(object?.groups) ? object.groups.map((e: any) => String(e)) : [] }; + }, + + toJSON(message: UpdateChallengeInput_UpdateInput_GroupsUpdate): unknown { + const obj: any = {}; + if (message.groups) { + obj.groups = message.groups.map((e) => e); + } else { + obj.groups = []; + } + return obj; + }, + + create, I>>( + base?: I, + ): UpdateChallengeInput_UpdateInput_GroupsUpdate { + return UpdateChallengeInput_UpdateInput_GroupsUpdate.fromPartial(base ?? {}); + }, + + fromPartial, I>>( + object: I, + ): UpdateChallengeInput_UpdateInput_GroupsUpdate { + const message = createBaseUpdateChallengeInput_UpdateInput_GroupsUpdate(); + message.groups = object.groups?.map((e) => e) || []; + return message; + }, +}; + function createBaseUpdateChallengeInputForACL(): UpdateChallengeInputForACL { return { filterCriteria: [], updateInputForAcl: undefined }; } diff --git a/src/service/ChallengeService.ts b/src/service/ChallengeService.ts index 3f34d45..5c9ddd9 100644 --- a/src/service/ChallengeService.ts +++ b/src/service/ChallengeService.ts @@ -1,15 +1,6 @@ -import { - UntypedHandleCall, - handleUnaryCall, - ServerUnaryCall, - sendUnaryData, -} from "@grpc/grpc-js"; +import { handleUnaryCall, sendUnaryData, ServerUnaryCall, UntypedHandleCall } from "@grpc/grpc-js"; -import { - LookupCriteria, - ScanRequest, - ScanResult, -} from "../models/common/common"; +import { LookupCriteria, ScanRequest, ScanResult } from "../models/common/common"; import { ChallengeServer, @@ -17,9 +8,9 @@ import { } from "../models/domain-layer/challenge/services/challenge"; import { - CreateChallengeInput, Challenge, ChallengeList, + CreateChallengeInput, UpdateChallengeInput, UpdateChallengeInputForACL, } from "../models/domain-layer/challenge/challenge"; @@ -43,11 +34,9 @@ class ChallengeServerImpl implements ChallengeServer { call: ServerUnaryCall, callback: sendUnaryData ): Promise => { - const { request: lookupCriteria } = call; - - const challenge = await Domain.lookup(lookupCriteria); - - callback(null, challenge); + Domain.lookup(call.request) + .then((challenge) => callback(null, challenge)) + .catch((error) => callback(error, null)); }; scan: handleUnaryCall = async ( @@ -58,23 +47,25 @@ class ChallengeServerImpl implements ChallengeServer { request: { criteria, nextToken: inputNextToken }, } = call; - const { items, nextToken } = await Domain.scan(criteria, inputNextToken); - - callback(null, { items, nextToken }); + Domain.scan(criteria, inputNextToken) + .then(({ items, nextToken }) => callback(null, { items, nextToken })) + .catch((error) => callback(error, null)); }; update: handleUnaryCall = async ( call: ServerUnaryCall, callback: sendUnaryData ): Promise => { - try { - const { updateInput, filterCriteria } = call.request; - if (!updateInput) return callback(null, { items: [] }); - const result = await Domain.update(filterCriteria, updateInput); - callback(null, result); - } catch (error: any) { - callback(error, null); - } + const { + request: { filterCriteria, updateInput }, + } = call; + + Domain.update(filterCriteria, updateInput!, call.metadata) + .then((challengeList) => callback(null, challengeList)) + .catch((error) => { + console.error(error); + callback(error, null); + }); }; updateForAcl: handleUnaryCall = async ( diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 63b5da0..556428e 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -1,12 +1,12 @@ import _ from "lodash"; import { PhaseTypeIds, PrizeSetTypes } from "../common/Constants"; import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; -import { Challenge_Phase } from "../models/domain-layer/challenge/challenge"; +import { Challenge_Phase, CreateChallengeInput } from "../models/domain-layer/challenge/challenge"; import { legacyChallengeStatusesMap } from "./constants"; class LegacyMapper { // To be used on challenge:update calls that change state from New -> Draft - public mapChallengeDraftUpdateInput = (input: any) => { + public mapChallengeDraftUpdateInput = (input: CreateChallengeInput) => { const prizeSets = this.mapPrizeSets(input.prizeSets); const projectInfo = this.mapProjectInfo(input, prizeSets); @@ -14,20 +14,18 @@ class LegacyMapper { name: input.name, projectStatusId: legacyChallengeStatusesMap.Draft, ...this.mapTrackAndTypeToCategoryStudioSpecAndMmSpec( - input.legacy.track, - input.legacy.subTrack + input.legacy!.track!, + input.legacy!.subTrack! ), tcDirectProjectId: input.legacy?.directProjectId!, winnerPrizes: - prizeSets[PrizeSetTypes.ChallengePrizes]?.map( - (amount: number, index: number) => ({ - amount, - place: index + 1, - numSubmissions: 1, - type: PrizeSetTypes.ChallengePrizes, - }) - ) ?? [], - phases: this.mapPhases(input.legacy.subTrack, input.phases), + prizeSets[PrizeSetTypes.ChallengePrizes]?.map((amount: number, index: number) => ({ + amount, + place: index + 1, + numSubmissions: 1, + type: PrizeSetTypes.ChallengePrizes, + })) ?? [], + phases: this.mapPhases(input.legacy!.subTrack!, input.phases), reviewType: input.legacy?.reviewType ?? "INTERNAL", confidentialityType: input.legacy?.confidentialityType ?? "public", billingProject: input.billing?.billingAccountId!, @@ -56,48 +54,6 @@ class LegacyMapper { if (subTrack === V4_SUBTRACKS.BUG_HUNT) projectCategoryId = 9; if (subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH) projectCategoryId = 40; if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) projectCategoryId = 17; - /* - project_category_id,project_type_id,name - 1,1,Design - 2,1,Development - 3,1,Security - 4,1,Process - 5,1,Testing Competition - 6,2,Specification - 7,2,Architecture - 8,2,Component Production - 9,2,Bug Hunt - 10,2,Deployment - 11,2,Security - 12,2,Process - 13,2,Test Suites - 14,2,Assembly Competition - 15,2,Legacy - 16,3,Banners/Icons - 17,3,Web Design - 18,3,Wireframes - 19,2,UI Prototype Competition - 20,3,Logo Design - 21,3,Print/Presentation - 23,2,Conceptualization - 24,2,RIA Build Competition - 25,2,RIA Component Competition - 26,2,Test Scenarios - 27,2,Spec Review - 28,4,Generic Scorecards - 29,2,Copilot Posting - 35,2,Content Creation - 30,3,Widget or Mobile Screen Design - 31,3,Front-End Flash - 32,3,Application Front-End Design - 34,3,Studio Other - 22,3,Idea Generation - 36,2,Reporting - 37,2,Marathon Match - 38,2,First2Finish - 39,2,Code - 40,3,Design First2Finish - */ return { projectCategoryId, @@ -106,9 +62,7 @@ class LegacyMapper { }; } - private mapPrizeSets( - prizeSets: { type: string; prizes: { value: number }[] }[] - ) { + private mapPrizeSets(prizeSets: { type: string; prizes: { value: number }[] }[]) { return prizeSets.reduce((acc: { [key: string]: number[] }, prize) => { acc[prize.type] = prize.prizes.map((p) => p.value).sort((a, b) => b - a); @@ -116,10 +70,7 @@ class LegacyMapper { }, {}); } - private mapProjectInfo( - input: any, - prizeSets: any - ): { [key: number]: string | undefined } { + private mapProjectInfo(input: any, prizeSets: any): { [key: number]: string | undefined } { const firstPlacePrize = prizeSets[PrizeSetTypes.ChallengePrizes]?.length >= 1 ? prizeSets[PrizeSetTypes.ChallengePrizes][0]?.toString() diff --git a/yarn.lock b/yarn.lock index 2041935..df9dd69 100644 --- a/yarn.lock +++ b/yarn.lock @@ -853,35 +853,46 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@topcoder-framework/client-relational@^0.8.0": - version "0.8.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.8.0.tgz#66725c1b82498297aac911298a2cf1aeaed991c8" - integrity sha512-jSyyqDQuBC5PQ/QOh9amaqNmrnztnDp/zMC7MAhSAUa5mSJdoJcn7t3fTpi6wJ5BHT8hkOOAQbsFb4NkhYNhkw== +"@topcoder-framework/client-relational@^0.9.1": + version "0.9.1" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.9.1.tgz#6f87c8ddb8d2c19799ca51d220340ab0c0f67bd9" + integrity sha512-42sZAY60oSve8QmLL7eyrmZx7C5YAvbKZt77CiLTfUGBmURxwzlADbJKrCKBw+R0VSmtBxZ6oHdvBnXhSPjPHA== dependencies: "@grpc/grpc-js" "^1.8.0" - "@topcoder-framework/lib-common" "^0.8.0" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" + "@topcoder-framework/lib-common" "^0.9.1" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" tslib "^2.4.1" -"@topcoder-framework/domain-acl@^0.8.0": - version "0.8.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.8.0.tgz#fe34eedec6d7895cfb0a1522661b337d4d192fc3" - integrity sha512-g/9n54DQickL3g/n3KZEQ3L1eXB+KhAug90q7U6c+WgV2O4ycqdPzHVa3gFk/vFfCAa9PRSyIh/XcZWLq1DyuQ== +"@topcoder-framework/domain-acl@^0.9.1": + version "0.9.1" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.9.1.tgz#280e9d352beb6d9bf39dfa6c4d60a3dea1b3ec69" + integrity sha512-uymD63ClHIBg9e3qxPiQzNrNeK87OxdXJM1uZUcVoESnNw+CzVkovC3yFptSy2gFC/PWf8atwVyRbrQy9IprRQ== dependencies: "@grpc/grpc-js" "^1.8.7" - "@topcoder-framework/client-relational" "^0.8.0" - "@topcoder-framework/lib-common" "^0.8.0" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" + "@topcoder-framework/client-relational" "^0.9.1" + "@topcoder-framework/lib-common" "^0.9.1" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" tslib "^2.4.1" -"@topcoder-framework/lib-common@^0.8.0": - version "0.8.0" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.8.0.tgz#3f29daace074734d74c638e860204011d5e83a21" - integrity sha512-xuyU3kQGiNOPPzwZLXzrTbu6o9FC2SVei7FWBwzL4HraD6aj3fDqME7dappY32QWB/lFxqyTm00SeekmkbCr1w== +"@topcoder-framework/domain-challenge@^0.9.1": + version "0.9.1" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-challenge/-/domain-challenge-0.9.1.tgz#cfec41a1403c6f744a83f21d0ddc9d29a7b23f69" + integrity sha512-m5lcWumHWJUVvB+39ddKH+dn8MOFPHsDpxFdWepD4jw6Vo2GZhJINpp3ZQWLA2UQUAYSaQp8kwOa93wdvzE7eg== + dependencies: + "@grpc/grpc-js" "^1.8.0" + "@topcoder-framework/client-relational" "^0.9.1" + "@topcoder-framework/lib-common" "^0.9.1" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" + tslib "^2.4.1" + +"@topcoder-framework/lib-common@^0.9.1": + version "0.9.1" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.9.1.tgz#59ee523d05a8da4cab7866bd9ba24dd714c713a1" + integrity sha512-4W5Oz3XN6n3dsEZwmSiDxVuQtkuAxPJc9PyivIatyLB5HSAva/OuQbBcCWhFl2ORRywVxEBJz2cWFme+a6vEPw== dependencies: "@grpc/grpc-js" "^1.8.0" rimraf "^3.0.2" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.31" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" tslib "^2.4.1" "@tsconfig/node10@^1.0.7": @@ -2426,9 +2437,9 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.31": +"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.33": version "1.0.0" - resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/8fde0bf4ab310b887383c7b37b6ae919cd407388" + resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/8d53fb22968e3801d3d77c7c9333b18775eae282" tough-cookie@~2.5.0: version "2.5.0" From d1fd7c8a658052fce78a0cbae3bd46d7801d4c2f Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 13:20:45 +0600 Subject: [PATCH 18/21] fix: non-null assertion Signed-off-by: Rakib Ansary --- src/domain/Challenge.ts | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index f49b8b0..8a8a98c 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -222,7 +222,7 @@ class ChallengeDomain extends CoreOperations { if (input.status === ChallengeStatuses.Draft || input.status === ChallengeStatuses.Active) { const { items } = await this.scan(scanCriteria, undefined); - if (items.length === 0) { + if (items.length === 0 || items[0] == null) { throw new StatusBuilder() .withCode(Status.NOT_FOUND) .withDetails("Challenge not found") @@ -237,23 +237,23 @@ class ChallengeDomain extends CoreOperations { // prettier-ignore const createChallengeInput: CreateChallengeInput = { - name: input.name ?? challenge.name, - typeId: input.typeId ?? challenge.typeId, - trackId: input.trackId ?? challenge.trackId, - metadata: input.metadataUpdate != null ? input.metadataUpdate.metadata : challenge.metadata, - phases: input.phaseUpdate != null ? input.phaseUpdate.phases : challenge.phases, - events: input.eventUpdate != null ? input.eventUpdate.events : challenge.events, - terms: input.termUpdate != null ? input.termUpdate.terms : challenge.terms, - prizeSets: input.prizeSetUpdate != null ? input.prizeSetUpdate.prizeSets : challenge.prizeSets, - tags: input.tagUpdate != null ? input.tagUpdate.tags : challenge.tags, - status: input.status ?? challenge.status, - attachments: input.attachmentUpdate != null ? input.attachmentUpdate.attachments : challenge.attachments, - groups: input.groupUpdate != null ? input.groupUpdate.groups : challenge.groups, - discussions: input.discussionUpdate != null ? input.discussionUpdate.discussions : challenge.discussions, + name: input.name ?? challenge!.name, + typeId: input.typeId ?? challenge!.typeId, + trackId: input.trackId ?? challenge!.trackId, + metadata: input.metadataUpdate != null ? input.metadataUpdate.metadata : challenge!.metadata, + phases: input.phaseUpdate != null ? input.phaseUpdate.phases : challenge!.phases, + events: input.eventUpdate != null ? input.eventUpdate.events : challenge!.events, + terms: input.termUpdate != null ? input.termUpdate.terms : challenge!.terms, + prizeSets: input.prizeSetUpdate != null ? input.prizeSetUpdate.prizeSets : challenge!.prizeSets, + tags: input.tagUpdate != null ? input.tagUpdate.tags : challenge!.tags, + status: input.status ?? challenge!.status, + attachments: input.attachmentUpdate != null ? input.attachmentUpdate.attachments : challenge!.attachments, + groups: input.groupUpdate != null ? input.groupUpdate.groups : challenge!.groups, + discussions: input.discussionUpdate != null ? input.discussionUpdate.discussions : challenge!.discussions, }; // prettier-ignore - const { legacy, legacyChallengeId } = await this.createLegacyChallenge(createChallengeInput, input.legacy, input.status, challenge.trackId, challenge.typeId, challenge.tags, metadata); + const { legacy, legacyChallengeId } = await this.createLegacyChallenge(createChallengeInput, input.legacy, input.status, challenge!.trackId, challenge!.typeId, challenge!.tags, metadata); input.legacy = legacy; legacyId = legacyChallengeId; From af2d4486da6d89ad1430390b89c179a49a152643 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 14:47:52 +0600 Subject: [PATCH 19/21] fix: improve handling of draft challenges Signed-off-by: Rakib Ansary --- src/domain/Challenge.ts | 36 ++++++++++++++---------------------- 1 file changed, 14 insertions(+), 22 deletions(-) diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index 8a8a98c..d552d31 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -217,26 +217,20 @@ class ChallengeDomain extends CoreOperations { ): Promise { let legacyId: number | null = null; - let challenge = null; - - if (input.status === ChallengeStatuses.Draft || input.status === ChallengeStatuses.Active) { - const { items } = await this.scan(scanCriteria, undefined); + const { items } = await this.scan(scanCriteria, undefined); + let challenge = items[0]; + if (input.status === ChallengeStatuses.Draft && challenge?.legacy.pureV5Task !== true) { if (items.length === 0 || items[0] == null) { throw new StatusBuilder() .withCode(Status.NOT_FOUND) .withDetails("Challenge not found") .build(); } - challenge = items[0]; - } + // Begin Anti-Corruption Layer - if (challenge?.legacy.pureV5Task !== true) { - if (input.status === ChallengeStatuses.Draft) { - // Begin Anti-Corruption Layer - - // prettier-ignore - const createChallengeInput: CreateChallengeInput = { + // prettier-ignore + const createChallengeInput: CreateChallengeInput = { name: input.name ?? challenge!.name, typeId: input.typeId ?? challenge!.typeId, trackId: input.trackId ?? challenge!.trackId, @@ -252,19 +246,17 @@ class ChallengeDomain extends CoreOperations { discussions: input.discussionUpdate != null ? input.discussionUpdate.discussions : challenge!.discussions, }; - // prettier-ignore - const { legacy, legacyChallengeId } = await this.createLegacyChallenge(createChallengeInput, input.legacy, input.status, challenge!.trackId, challenge!.typeId, challenge!.tags, metadata); - - input.legacy = legacy; - legacyId = legacyChallengeId; + // prettier-ignore + const { legacy, legacyChallengeId } = await this.createLegacyChallenge(createChallengeInput, input.legacy, input.status, challenge!.trackId, challenge!.typeId, challenge!.tags, metadata); - // End Anti-Corruption Layer - } + input.legacy = legacy; + legacyId = legacyChallengeId; - if (input.status === ChallengeStatuses.Active) { - // TODO: handle challenge activation - } + // End Anti-Corruption Layer console.log(`Legacy ID: ${legacyId} was created. Creating challenge...`); + } else if (challenge.status !== ChallengeStatuses.New) { + // updateChallengeInput = LegacyMapper.mapChallengeDraftUpdateInput(input); + // challenge.legacy = acl.updateChallenge(updateChallengeInput); } return super.update( From 344bf7ff95b1fbafe176af6266ce70b82e254247 Mon Sep 17 00:00:00 2001 From: Rakib Ansary Date: Fri, 24 Mar 2023 17:37:22 +0600 Subject: [PATCH 20/21] fix: legacy challenge update Signed-off-by: Rakib Ansary --- package.json | 8 +- src/domain/Challenge.ts | 14 ++- .../domain-layer/challenge/challenge.ts | 8 +- src/util/LegacyMapper.ts | 102 ++++++++++++++++-- yarn.lock | 54 +++++----- 5 files changed, 142 insertions(+), 44 deletions(-) diff --git a/package.json b/package.json index d21696b..b9b6189 100644 --- a/package.json +++ b/package.json @@ -23,9 +23,9 @@ "@aws-sdk/util-utf8-node": "^3.259.0", "@grpc/grpc-js": "^1.7.1", "@opensearch-project/opensearch": "^2.2.0", - "@topcoder-framework/domain-acl": "^0.9.1", - "@topcoder-framework/domain-challenge": "^0.9.1", - "@topcoder-framework/lib-common": "^0.9.1", + "@topcoder-framework/domain-acl": "^0.10.2", + "@topcoder-framework/domain-challenge": "^0.10.2", + "@topcoder-framework/lib-common": "^0.10.2", "@types/uuid": "^9.0.1", "aws-sdk": "^2.1339.0", "axios": "^1.2.2", @@ -38,7 +38,7 @@ "moment": "^2.29.4", "source-map-support": "^0.5.21", "tc-core-library-js": "appirio-tech/tc-core-library-js.git#v2.6.4", - "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.33", + "topcoder-interface": "github:topcoder-platform/plat-interface-definition#v0.0.36", "uuid": "^9.0.0", "xss": "^1.0.14" }, diff --git a/src/domain/Challenge.ts b/src/domain/Challenge.ts index d552d31..0607ab6 100644 --- a/src/domain/Challenge.ts +++ b/src/domain/Challenge.ts @@ -255,8 +255,18 @@ class ChallengeDomain extends CoreOperations { // End Anti-Corruption Layer console.log(`Legacy ID: ${legacyId} was created. Creating challenge...`); } else if (challenge.status !== ChallengeStatuses.New) { - // updateChallengeInput = LegacyMapper.mapChallengeDraftUpdateInput(input); - // challenge.legacy = acl.updateChallenge(updateChallengeInput); + console.log("Challenge Input", JSON.stringify(input, null, 2)); + const updateChallengeInput = legacyMapper.mapChallengeUpdateInput( + challenge.legacy.legacyId, + input + ); + const { updatedCount } = await legacyChallengeDomain.update(updateChallengeInput, metadata); + if (updatedCount === 0) { + throw new StatusBuilder() + .withCode(Status.ABORTED) + .withDetails("Failed to update challenge") + .build(); + } } return super.update( diff --git a/src/models/domain-layer/challenge/challenge.ts b/src/models/domain-layer/challenge/challenge.ts index 6d4be36..17099c8 100644 --- a/src/models/domain-layer/challenge/challenge.ts +++ b/src/models/domain-layer/challenge/challenge.ts @@ -2061,7 +2061,7 @@ function createBaseChallenge_Overview(): Challenge_Overview { export const Challenge_Overview = { encode(message: Challenge_Overview, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.totalPrizes !== 0) { - writer.uint32(8).int32(message.totalPrizes); + writer.uint32(13).float(message.totalPrizes); } return writer; }, @@ -2074,11 +2074,11 @@ export const Challenge_Overview = { const tag = reader.uint32(); switch (tag >>> 3) { case 1: - if (tag != 8) { + if (tag != 13) { break; } - message.totalPrizes = reader.int32(); + message.totalPrizes = reader.float(); continue; } if ((tag & 7) == 4 || tag == 0) { @@ -2095,7 +2095,7 @@ export const Challenge_Overview = { toJSON(message: Challenge_Overview): unknown { const obj: any = {}; - message.totalPrizes !== undefined && (obj.totalPrizes = Math.round(message.totalPrizes)); + message.totalPrizes !== undefined && (obj.totalPrizes = message.totalPrizes); return obj; }, diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 556428e..03ddf45 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -1,8 +1,16 @@ import _ from "lodash"; -import { PhaseTypeIds, PrizeSetTypes } from "../common/Constants"; +import { ChallengeStatuses, PhaseTypeIds, PrizeSetTypes } from "../common/Constants"; import { V4_SUBTRACKS, V5_TO_V4 } from "../common/ConversionMap"; -import { Challenge_Phase, CreateChallengeInput } from "../models/domain-layer/challenge/challenge"; +import { + Challenge_Phase, + CreateChallengeInput, + UpdateChallengeInput_UpdateInput, +} from "../models/domain-layer/challenge/challenge"; import { legacyChallengeStatusesMap } from "./constants"; +import { + UpdateChallengeInput as LegacyChallengeUpdateInput, + Phase as LegacyPhase, +} from "@topcoder-framework/domain-acl"; class LegacyMapper { // To be used on challenge:update calls that change state from New -> Draft @@ -33,6 +41,40 @@ class LegacyMapper { }; }; + public mapChallengeUpdateInput = ( + legacyId: number, + input: UpdateChallengeInput_UpdateInput + ): LegacyChallengeUpdateInput => { + // prettier-ignore + const prizeSets = input.prizeSetUpdate != null ? this.mapPrizeSets(input.prizeSetUpdate.prizeSets) : null; + const projectInfo = this.mapProjectInfoForUpdate(input, prizeSets); + + return { + projectId: legacyId, + name: input.name, + projectStatusId: this.mapProjectStatus(input.status), + prizeUpdate: + prizeSets == null + ? undefined + : { + winnerPrizes: prizeSets[PrizeSetTypes.ChallengePrizes]?.map( + (amount: number, index: number) => ({ + amount, + place: index + 1, + numSubmissions: 1, + type: PrizeSetTypes.ChallengePrizes, + }) + ), + }, + // prettier-ignore + phaseUpdate: input.phaseUpdate != null ? { phases: this.mapPhases(input.legacy!.subTrack!, input.phaseUpdate.phases) } : undefined, + groupUpdate: input.groupUpdate != null ? { groups: input.groupUpdate.groups } : undefined, + termUpdate: input.termUpdate != null ? { terms: input.termUpdate.terms } : undefined, + billingProject: input.billing?.billingAccountId!, + projectInfo, + }; + }; + public mapTrackAndType(trackId: string, typeId: string, tags: string[]) { return V5_TO_V4[trackId][typeId](tags); } @@ -70,7 +112,10 @@ class LegacyMapper { }, {}); } - private mapProjectInfo(input: any, prizeSets: any): { [key: number]: string | undefined } { + private mapProjectInfo( + input: CreateChallengeInput, + prizeSets: any + ): { [key: number]: string | undefined } { const firstPlacePrize = prizeSets[PrizeSetTypes.ChallengePrizes]?.length >= 1 ? prizeSets[PrizeSetTypes.ChallengePrizes][0]?.toString() @@ -124,9 +169,38 @@ class LegacyMapper { 52: "false", // Allow Stock Art 57: "0.5", // Contest Fee Percentage 59: "false", // Review Feedback Flag - 88: "0", // Effort Hours Estimate - 89: "0", // Estimate Efforts Days Offshore (extract from metadata) - 90: "0", // Estimate Efforts Days Onsite (extract from metadata) + 88: input.metadata.find((m) => m.name == "effortHoursEstimate")?.value ?? undefined, // Effort Hours Estimate + 89: input.metadata.find((m) => m.name == "offshoreEfforts")?.value ?? undefined, // Estimate Efforts Days Offshore (extract from metadata) + 90: input.metadata.find((m) => m.name == "onsiteEfforts")?.value ?? undefined, // Estimate Efforts Days Onsite (extract from metadata) + }; + } + + private mapProjectInfoForUpdate( + input: UpdateChallengeInput_UpdateInput, + prizeSets: any + ): { [key: number]: string } { + let effortsEstimate = {}; + + const metadata = input.metadataUpdate != null ? input.metadataUpdate.metadata : undefined; + if (metadata != null) { + effortsEstimate = { + 88: metadata.find((m) => m.name == "effortHoursEstimate")?.value.toString() ?? undefined, // Effort Hours Estimate + 89: metadata.find((m) => m.name == "offshoreEfforts")?.value.toString() ?? undefined, // Estimate Efforts Days Offshore (extract from metadata) + 90: metadata.find((m) => m.name == "onsiteEfforts")?.value.toString() ?? undefined, // Estimate Efforts Days Onsite (extract from metadata) + }; + } + + let projectInfo = {}; + + if (input.name != null) { + projectInfo = { + 6: input.name, + }; + } + + return { + ...projectInfo, + ...effortsEstimate, }; } @@ -142,7 +216,7 @@ class LegacyMapper { actualEndTime: phase.actualEndDate, duration: phase.duration * 1000, phaseCriteria: this.mapPhaseCriteria(subTrack, phase), - })); + }) as LegacyPhase); } // prettier-ignore @@ -285,6 +359,20 @@ class LegacyMapper { return scorecard ? scorecard.toString() : undefined; } + + private mapProjectStatus(status: string | undefined): number | undefined { + if (status == null) return undefined; + + if (status === ChallengeStatuses.Draft) { + return legacyChallengeStatusesMap.Draft; + } + if (status === ChallengeStatuses.Active) { + return legacyChallengeStatusesMap.Active; + } + if (status.toLowerCase().indexOf("cancel") !== -1) { + return legacyChallengeStatusesMap.Cancelled; + } + } } export default new LegacyMapper(); diff --git a/yarn.lock b/yarn.lock index df9dd69..77b57b0 100644 --- a/yarn.lock +++ b/yarn.lock @@ -853,46 +853,46 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== -"@topcoder-framework/client-relational@^0.9.1": - version "0.9.1" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.9.1.tgz#6f87c8ddb8d2c19799ca51d220340ab0c0f67bd9" - integrity sha512-42sZAY60oSve8QmLL7eyrmZx7C5YAvbKZt77CiLTfUGBmURxwzlADbJKrCKBw+R0VSmtBxZ6oHdvBnXhSPjPHA== +"@topcoder-framework/client-relational@^0.10.2": + version "0.10.2" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/client-relational/-/client-relational-0.10.2.tgz#3e53cd14af7bdcc795d84333a5598c7537377bc2" + integrity sha512-yEWle1vY65WoG70ZbT98nijVWkIoONpmXZnsHkY2RhYef2wUR9bCjsw4jGcJ4//TIFVAsi9NVuWmsDP6DAWzdw== dependencies: "@grpc/grpc-js" "^1.8.0" - "@topcoder-framework/lib-common" "^0.9.1" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" + "@topcoder-framework/lib-common" "^0.10.2" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.36" tslib "^2.4.1" -"@topcoder-framework/domain-acl@^0.9.1": - version "0.9.1" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.9.1.tgz#280e9d352beb6d9bf39dfa6c4d60a3dea1b3ec69" - integrity sha512-uymD63ClHIBg9e3qxPiQzNrNeK87OxdXJM1uZUcVoESnNw+CzVkovC3yFptSy2gFC/PWf8atwVyRbrQy9IprRQ== +"@topcoder-framework/domain-acl@^0.10.2": + version "0.10.2" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-acl/-/domain-acl-0.10.2.tgz#2f062cfd3e56d27c05d91b2abee0bee845e142ef" + integrity sha512-EaCutBqhoH8XNVa3L6PR5aXBWFSoCvf24e+wpWImpJoDLzrPAAHmA2dV5OiGMBX+ZU2UfBHTxuLVSIOHsB933Q== dependencies: "@grpc/grpc-js" "^1.8.7" - "@topcoder-framework/client-relational" "^0.9.1" - "@topcoder-framework/lib-common" "^0.9.1" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" + "@topcoder-framework/client-relational" "^0.10.2" + "@topcoder-framework/lib-common" "^0.10.2" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.36" tslib "^2.4.1" -"@topcoder-framework/domain-challenge@^0.9.1": - version "0.9.1" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-challenge/-/domain-challenge-0.9.1.tgz#cfec41a1403c6f744a83f21d0ddc9d29a7b23f69" - integrity sha512-m5lcWumHWJUVvB+39ddKH+dn8MOFPHsDpxFdWepD4jw6Vo2GZhJINpp3ZQWLA2UQUAYSaQp8kwOa93wdvzE7eg== +"@topcoder-framework/domain-challenge@^0.10.2": + version "0.10.2" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/domain-challenge/-/domain-challenge-0.10.2.tgz#4526821ebb47871da125af5c307f23a19c283bb9" + integrity sha512-ETJih+i+wTzr86krtClo5kW02ZsualZ04A+QIaWCzbA3rv8stEjiZKaS15UZLibO1Rt/I1RHfDpLPCWzmtRpRA== dependencies: "@grpc/grpc-js" "^1.8.0" - "@topcoder-framework/client-relational" "^0.9.1" - "@topcoder-framework/lib-common" "^0.9.1" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" + "@topcoder-framework/client-relational" "^0.10.2" + "@topcoder-framework/lib-common" "^0.10.2" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.36" tslib "^2.4.1" -"@topcoder-framework/lib-common@^0.9.1": - version "0.9.1" - resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.9.1.tgz#59ee523d05a8da4cab7866bd9ba24dd714c713a1" - integrity sha512-4W5Oz3XN6n3dsEZwmSiDxVuQtkuAxPJc9PyivIatyLB5HSAva/OuQbBcCWhFl2ORRywVxEBJz2cWFme+a6vEPw== +"@topcoder-framework/lib-common@^0.10.2": + version "0.10.2" + resolved "https://topcoder-409275337247.d.codeartifact.us-east-1.amazonaws.com:443/npm/topcoder-framework/@topcoder-framework/lib-common/-/lib-common-0.10.2.tgz#5e0c7b16c684fa44f8d4c65a9eafa903c3f3e3ec" + integrity sha512-tBz5HF7/x75rksa29hFsx7zQEMzUqvRAQnMmXJFMRkeBLZg8IEPU9U99s30bKQuJD7yBIBKDZ2j9HFv3fGnnFg== dependencies: "@grpc/grpc-js" "^1.8.0" rimraf "^3.0.2" - topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.33" + topcoder-interface "github:topcoder-platform/plat-interface-definition#v0.0.36" tslib "^2.4.1" "@tsconfig/node10@^1.0.7": @@ -2437,9 +2437,9 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" -"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.33": +"topcoder-interface@github:topcoder-platform/plat-interface-definition#v0.0.36": version "1.0.0" - resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/8d53fb22968e3801d3d77c7c9333b18775eae282" + resolved "https://codeload.github.com/topcoder-platform/plat-interface-definition/tar.gz/e5ed35ae925f94649ab983c1ca1a7aab5d2744c1" tough-cookie@~2.5.0: version "2.5.0" From 607ae6c6f1ecdba6e11f15a39aa319987f8744eb Mon Sep 17 00:00:00 2001 From: Thomas Kranitsas Date: Fri, 24 Mar 2023 19:25:45 +0200 Subject: [PATCH 21/21] update dev scorecard IDs --- src/util/LegacyMapper.ts | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/src/util/LegacyMapper.ts b/src/util/LegacyMapper.ts index 03ddf45..be6e5f4 100644 --- a/src/util/LegacyMapper.ts +++ b/src/util/LegacyMapper.ts @@ -314,47 +314,47 @@ class LegacyMapper { subTrack === V4_SUBTRACKS.FIRST_2_FINISH && phaseTypeId === PhaseTypeIds.IterativeReview ) { - scorecard = isNonProd ? 30002160 : 30002160; + scorecard = isNonProd ? 30001600 : 30002160; } else if ( subTrack === V4_SUBTRACKS.DESIGN_FIRST_2_FINISH && phaseTypeId === PhaseTypeIds.Review ) { - scorecard = isNonProd ? 30001610 : 30001101; + scorecard = isNonProd ? 30000190 : 30001101; } else if (subTrack === V4_SUBTRACKS.BUG_HUNT) { if (phaseTypeId === PhaseTypeIds.Review) { - scorecard = isNonProd ? 30001610 : 30001220; + scorecard = isNonProd ? 30000640 : 30001220; } else if (phaseTypeId === PhaseTypeIds.SpecificationReview) { - scorecard = isNonProd ? 30001610 : 30001120; + scorecard = isNonProd ? 30000040 : 30001120; } } else if ( subTrack === V4_SUBTRACKS.DEVELOP_MARATHON_MATCH && phaseTypeId === PhaseTypeIds.Review ) { - scorecard = isNonProd ? 30001610 : 30002133; + scorecard = isNonProd ? 30001561 : 30002133; } else if ( subTrack === V4_SUBTRACKS.MARATHON_MATCH && phaseTypeId === PhaseTypeIds.Review ) { - scorecard = isNonProd ? 30001610 : 30002133; + scorecard = isNonProd ? 30001561 : 30002133; } else if (subTrack === V4_SUBTRACKS.WEB_DESIGNS) { if (phaseTypeId === PhaseTypeIds.SpecificationReview) { - scorecard = isNonProd ? 30001610 : 30001040; + scorecard = isNonProd ? 30001040 : 30001040; } else if (phaseTypeId === PhaseTypeIds.CheckpointScreening) { - scorecard = isNonProd ? 30001610 : 30001364; + scorecard = isNonProd ? 30001042 : 30001364; } else if (phaseTypeId === PhaseTypeIds.CheckpointReview) { - scorecard = isNonProd ? 30001610 : 30001004; + scorecard = isNonProd ? 30001004 : 30001004; } else if (phaseTypeId === PhaseTypeIds.Screening) { - scorecard = isNonProd ? 30001610 : 30001363; + scorecard = isNonProd ? 30001010 : 30001363; } else if (phaseTypeId === PhaseTypeIds.Review) { - scorecard = isNonProd ? 30001610 : 30001031; + scorecard = isNonProd ? 30001031 : 30001031; } else if (phaseTypeId === PhaseTypeIds.Approval) { - scorecard = isNonProd ? 30001610 : 30000720; + scorecard = isNonProd ? 30000720 : 30000720; } } else if ( subTrack === V4_SUBTRACKS.CODE && phaseTypeId === PhaseTypeIds.Review ) { - scorecard = isNonProd ? 30002133 : 30002133; + scorecard = isNonProd ? 30001561 : 30002133; } return scorecard ? scorecard.toString() : undefined;