@latticexyz/services 2.0.0-transaction-context-324984c5 → 2.0.1-main-4a6b4598

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"sources":["../protobuf/ts/faucet/faucet.ts","../ts/faucet/createFaucetService.ts"],"sourcesContent":["/* eslint-disable */\nimport Long from \"long\";\nimport type { CallContext, CallOptions } from \"nice-grpc-common\";\nimport _m0 from \"protobufjs/minimal.js\";\n\nexport const protobufPackage = \"faucet\";\n\nexport interface LinkedTwitterPair {\n username: string;\n address: string;\n}\n\nexport interface FaucetStore {\n addressToUsername: { [key: string]: string };\n usernameToAddress: { [key: string]: string };\n /** User id/name/address to timestamp of latest drip. */\n latestDrip: { [key: string]: number };\n /** Global drip counter. */\n totalDripCount: number;\n}\n\nexport interface FaucetStore_AddressToUsernameEntry {\n key: string;\n value: string;\n}\n\nexport interface FaucetStore_UsernameToAddressEntry {\n key: string;\n value: string;\n}\n\nexport interface FaucetStore_LatestDripEntry {\n key: string;\n value: number;\n}\n\n/** Request for drip. */\nexport interface DripRequest {\n username: string;\n address: string;\n}\n\n/** Request for drip to any address when running in dev mode. */\nexport interface DripDevRequest {\n address: string;\n}\n\n/** Response for drip request that contains the transaction hash of the drip tx and the ECS component set hash (if any). */\nexport interface DripResponse {\n dripTxHash: string;\n ecsTxHash: string;\n}\n\n/** Response for the time until next drip request. */\nexport interface TimeUntilDripResponse {\n timeUntilDripMinutes: number;\n timeUntilDripSeconds: number;\n}\n\nexport interface GetLinkedTwittersRequest {}\n\nexport interface GetLinkedTwittersResponse {\n linkedTwitters: LinkedTwitterPair[];\n}\n\nexport interface LinkedTwitterForAddressRequest {\n address: string;\n}\n\nexport interface LinkedTwitterForAddressResponse {\n username: string;\n}\n\nexport interface LinkedAddressForTwitterRequest {\n username: string;\n}\n\nexport interface LinkedAddressForTwitterResponse {\n address: string;\n}\n\nexport interface SetLinkedTwitterRequest {\n address: string;\n username: string;\n signature: string;\n}\n\nexport interface SetLinkedTwitterResponse {}\n\nfunction createBaseLinkedTwitterPair(): LinkedTwitterPair {\n return { username: \"\", address: \"\" };\n}\n\nexport const LinkedTwitterPair = {\n encode(message: LinkedTwitterPair, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n if (message.address !== \"\") {\n writer.uint32(18).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterPair {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterPair();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterPair>): LinkedTwitterPair {\n return LinkedTwitterPair.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterPair>): LinkedTwitterPair {\n const message = createBaseLinkedTwitterPair();\n message.username = object.username ?? \"\";\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore(): FaucetStore {\n return { addressToUsername: {}, usernameToAddress: {}, latestDrip: {}, totalDripCount: 0 };\n}\n\nexport const FaucetStore = {\n encode(message: FaucetStore, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n Object.entries(message.addressToUsername).forEach(([key, value]) => {\n FaucetStore_AddressToUsernameEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).ldelim();\n });\n Object.entries(message.usernameToAddress).forEach(([key, value]) => {\n FaucetStore_UsernameToAddressEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).ldelim();\n });\n Object.entries(message.latestDrip).forEach(([key, value]) => {\n FaucetStore_LatestDripEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).ldelim();\n });\n if (message.totalDripCount !== 0) {\n writer.uint32(33).double(message.totalDripCount);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n const entry1 = FaucetStore_AddressToUsernameEntry.decode(reader, reader.uint32());\n if (entry1.value !== undefined) {\n message.addressToUsername[entry1.key] = entry1.value;\n }\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n const entry2 = FaucetStore_UsernameToAddressEntry.decode(reader, reader.uint32());\n if (entry2.value !== undefined) {\n message.usernameToAddress[entry2.key] = entry2.value;\n }\n continue;\n case 3:\n if (tag != 26) {\n break;\n }\n\n const entry3 = FaucetStore_LatestDripEntry.decode(reader, reader.uint32());\n if (entry3.value !== undefined) {\n message.latestDrip[entry3.key] = entry3.value;\n }\n continue;\n case 4:\n if (tag != 33) {\n break;\n }\n\n message.totalDripCount = reader.double();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore>): FaucetStore {\n return FaucetStore.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore>): FaucetStore {\n const message = createBaseFaucetStore();\n message.addressToUsername = Object.entries(object.addressToUsername ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = String(value);\n }\n return acc;\n },\n {}\n );\n message.usernameToAddress = Object.entries(object.usernameToAddress ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = String(value);\n }\n return acc;\n },\n {}\n );\n message.latestDrip = Object.entries(object.latestDrip ?? {}).reduce<{ [key: string]: number }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = Number(value);\n }\n return acc;\n },\n {}\n );\n message.totalDripCount = object.totalDripCount ?? 0;\n return message;\n },\n};\n\nfunction createBaseFaucetStore_AddressToUsernameEntry(): FaucetStore_AddressToUsernameEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const FaucetStore_AddressToUsernameEntry = {\n encode(message: FaucetStore_AddressToUsernameEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_AddressToUsernameEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_AddressToUsernameEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_AddressToUsernameEntry>): FaucetStore_AddressToUsernameEntry {\n return FaucetStore_AddressToUsernameEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_AddressToUsernameEntry>): FaucetStore_AddressToUsernameEntry {\n const message = createBaseFaucetStore_AddressToUsernameEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore_UsernameToAddressEntry(): FaucetStore_UsernameToAddressEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const FaucetStore_UsernameToAddressEntry = {\n encode(message: FaucetStore_UsernameToAddressEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_UsernameToAddressEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_UsernameToAddressEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_UsernameToAddressEntry>): FaucetStore_UsernameToAddressEntry {\n return FaucetStore_UsernameToAddressEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_UsernameToAddressEntry>): FaucetStore_UsernameToAddressEntry {\n const message = createBaseFaucetStore_UsernameToAddressEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore_LatestDripEntry(): FaucetStore_LatestDripEntry {\n return { key: \"\", value: 0 };\n}\n\nexport const FaucetStore_LatestDripEntry = {\n encode(message: FaucetStore_LatestDripEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== 0) {\n writer.uint32(16).int64(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_LatestDripEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_LatestDripEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 16) {\n break;\n }\n\n message.value = longToNumber(reader.int64() as Long);\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_LatestDripEntry>): FaucetStore_LatestDripEntry {\n return FaucetStore_LatestDripEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_LatestDripEntry>): FaucetStore_LatestDripEntry {\n const message = createBaseFaucetStore_LatestDripEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? 0;\n return message;\n },\n};\n\nfunction createBaseDripRequest(): DripRequest {\n return { username: \"\", address: \"\" };\n}\n\nexport const DripRequest = {\n encode(message: DripRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n if (message.address !== \"\") {\n writer.uint32(18).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripRequest>): DripRequest {\n return DripRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripRequest>): DripRequest {\n const message = createBaseDripRequest();\n message.username = object.username ?? \"\";\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDripDevRequest(): DripDevRequest {\n return { address: \"\" };\n}\n\nexport const DripDevRequest = {\n encode(message: DripDevRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripDevRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripDevRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripDevRequest>): DripDevRequest {\n return DripDevRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripDevRequest>): DripDevRequest {\n const message = createBaseDripDevRequest();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDripResponse(): DripResponse {\n return { dripTxHash: \"\", ecsTxHash: \"\" };\n}\n\nexport const DripResponse = {\n encode(message: DripResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.dripTxHash !== \"\") {\n writer.uint32(10).string(message.dripTxHash);\n }\n if (message.ecsTxHash !== \"\") {\n writer.uint32(18).string(message.ecsTxHash);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.dripTxHash = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.ecsTxHash = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripResponse>): DripResponse {\n return DripResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripResponse>): DripResponse {\n const message = createBaseDripResponse();\n message.dripTxHash = object.dripTxHash ?? \"\";\n message.ecsTxHash = object.ecsTxHash ?? \"\";\n return message;\n },\n};\n\nfunction createBaseTimeUntilDripResponse(): TimeUntilDripResponse {\n return { timeUntilDripMinutes: 0, timeUntilDripSeconds: 0 };\n}\n\nexport const TimeUntilDripResponse = {\n encode(message: TimeUntilDripResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.timeUntilDripMinutes !== 0) {\n writer.uint32(9).double(message.timeUntilDripMinutes);\n }\n if (message.timeUntilDripSeconds !== 0) {\n writer.uint32(17).double(message.timeUntilDripSeconds);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): TimeUntilDripResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTimeUntilDripResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 9) {\n break;\n }\n\n message.timeUntilDripMinutes = reader.double();\n continue;\n case 2:\n if (tag != 17) {\n break;\n }\n\n message.timeUntilDripSeconds = reader.double();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<TimeUntilDripResponse>): TimeUntilDripResponse {\n return TimeUntilDripResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<TimeUntilDripResponse>): TimeUntilDripResponse {\n const message = createBaseTimeUntilDripResponse();\n message.timeUntilDripMinutes = object.timeUntilDripMinutes ?? 0;\n message.timeUntilDripSeconds = object.timeUntilDripSeconds ?? 0;\n return message;\n },\n};\n\nfunction createBaseGetLinkedTwittersRequest(): GetLinkedTwittersRequest {\n return {};\n}\n\nexport const GetLinkedTwittersRequest = {\n encode(_: GetLinkedTwittersRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetLinkedTwittersRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetLinkedTwittersRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<GetLinkedTwittersRequest>): GetLinkedTwittersRequest {\n return GetLinkedTwittersRequest.fromPartial(base ?? {});\n },\n\n fromPartial(_: DeepPartial<GetLinkedTwittersRequest>): GetLinkedTwittersRequest {\n const message = createBaseGetLinkedTwittersRequest();\n return message;\n },\n};\n\nfunction createBaseGetLinkedTwittersResponse(): GetLinkedTwittersResponse {\n return { linkedTwitters: [] };\n}\n\nexport const GetLinkedTwittersResponse = {\n encode(message: GetLinkedTwittersResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.linkedTwitters) {\n LinkedTwitterPair.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetLinkedTwittersResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetLinkedTwittersResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.linkedTwitters.push(LinkedTwitterPair.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<GetLinkedTwittersResponse>): GetLinkedTwittersResponse {\n return GetLinkedTwittersResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<GetLinkedTwittersResponse>): GetLinkedTwittersResponse {\n const message = createBaseGetLinkedTwittersResponse();\n message.linkedTwitters = object.linkedTwitters?.map((e) => LinkedTwitterPair.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseLinkedTwitterForAddressRequest(): LinkedTwitterForAddressRequest {\n return { address: \"\" };\n}\n\nexport const LinkedTwitterForAddressRequest = {\n encode(message: LinkedTwitterForAddressRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterForAddressRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterForAddressRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterForAddressRequest>): LinkedTwitterForAddressRequest {\n return LinkedTwitterForAddressRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterForAddressRequest>): LinkedTwitterForAddressRequest {\n const message = createBaseLinkedTwitterForAddressRequest();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedTwitterForAddressResponse(): LinkedTwitterForAddressResponse {\n return { username: \"\" };\n}\n\nexport const LinkedTwitterForAddressResponse = {\n encode(message: LinkedTwitterForAddressResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterForAddressResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterForAddressResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterForAddressResponse>): LinkedTwitterForAddressResponse {\n return LinkedTwitterForAddressResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterForAddressResponse>): LinkedTwitterForAddressResponse {\n const message = createBaseLinkedTwitterForAddressResponse();\n message.username = object.username ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedAddressForTwitterRequest(): LinkedAddressForTwitterRequest {\n return { username: \"\" };\n}\n\nexport const LinkedAddressForTwitterRequest = {\n encode(message: LinkedAddressForTwitterRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedAddressForTwitterRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedAddressForTwitterRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedAddressForTwitterRequest>): LinkedAddressForTwitterRequest {\n return LinkedAddressForTwitterRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedAddressForTwitterRequest>): LinkedAddressForTwitterRequest {\n const message = createBaseLinkedAddressForTwitterRequest();\n message.username = object.username ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedAddressForTwitterResponse(): LinkedAddressForTwitterResponse {\n return { address: \"\" };\n}\n\nexport const LinkedAddressForTwitterResponse = {\n encode(message: LinkedAddressForTwitterResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedAddressForTwitterResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedAddressForTwitterResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedAddressForTwitterResponse>): LinkedAddressForTwitterResponse {\n return LinkedAddressForTwitterResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedAddressForTwitterResponse>): LinkedAddressForTwitterResponse {\n const message = createBaseLinkedAddressForTwitterResponse();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSetLinkedTwitterRequest(): SetLinkedTwitterRequest {\n return { address: \"\", username: \"\", signature: \"\" };\n}\n\nexport const SetLinkedTwitterRequest = {\n encode(message: SetLinkedTwitterRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n if (message.username !== \"\") {\n writer.uint32(18).string(message.username);\n }\n if (message.signature !== \"\") {\n writer.uint32(26).string(message.signature);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SetLinkedTwitterRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSetLinkedTwitterRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 3:\n if (tag != 26) {\n break;\n }\n\n message.signature = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<SetLinkedTwitterRequest>): SetLinkedTwitterRequest {\n return SetLinkedTwitterRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<SetLinkedTwitterRequest>): SetLinkedTwitterRequest {\n const message = createBaseSetLinkedTwitterRequest();\n message.address = object.address ?? \"\";\n message.username = object.username ?? \"\";\n message.signature = object.signature ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSetLinkedTwitterResponse(): SetLinkedTwitterResponse {\n return {};\n}\n\nexport const SetLinkedTwitterResponse = {\n encode(_: SetLinkedTwitterResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SetLinkedTwitterResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSetLinkedTwitterResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<SetLinkedTwitterResponse>): SetLinkedTwitterResponse {\n return SetLinkedTwitterResponse.fromPartial(base ?? {});\n },\n\n fromPartial(_: DeepPartial<SetLinkedTwitterResponse>): SetLinkedTwitterResponse {\n const message = createBaseSetLinkedTwitterResponse();\n return message;\n },\n};\n\n/** The Faucet Service definition. */\nexport type FaucetServiceDefinition = typeof FaucetServiceDefinition;\nexport const FaucetServiceDefinition = {\n name: \"FaucetService\",\n fullName: \"faucet.FaucetService\",\n methods: {\n drip: {\n name: \"Drip\",\n requestType: DripRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n dripDev: {\n name: \"DripDev\",\n requestType: DripDevRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n dripVerifyTweet: {\n name: \"DripVerifyTweet\",\n requestType: DripRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n timeUntilDrip: {\n name: \"TimeUntilDrip\",\n requestType: DripRequest,\n requestStream: false,\n responseType: TimeUntilDripResponse,\n responseStream: false,\n options: {},\n },\n getLinkedTwitters: {\n name: \"GetLinkedTwitters\",\n requestType: GetLinkedTwittersRequest,\n requestStream: false,\n responseType: GetLinkedTwittersResponse,\n responseStream: false,\n options: {},\n },\n getLinkedTwitterForAddress: {\n name: \"GetLinkedTwitterForAddress\",\n requestType: LinkedTwitterForAddressRequest,\n requestStream: false,\n responseType: LinkedTwitterForAddressResponse,\n responseStream: false,\n options: {},\n },\n getLinkedAddressForTwitter: {\n name: \"GetLinkedAddressForTwitter\",\n requestType: LinkedAddressForTwitterRequest,\n requestStream: false,\n responseType: LinkedAddressForTwitterResponse,\n responseStream: false,\n options: {},\n },\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter: {\n name: \"SetLinkedTwitter\",\n requestType: SetLinkedTwitterRequest,\n requestStream: false,\n responseType: SetLinkedTwitterResponse,\n responseStream: false,\n options: {},\n },\n },\n} as const;\n\nexport interface FaucetServiceImplementation<CallContextExt = {}> {\n drip(request: DripRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n dripDev(request: DripDevRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n dripVerifyTweet(request: DripRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n timeUntilDrip(\n request: DripRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<TimeUntilDripResponse>>;\n getLinkedTwitters(\n request: GetLinkedTwittersRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<GetLinkedTwittersResponse>>;\n getLinkedTwitterForAddress(\n request: LinkedTwitterForAddressRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<LinkedTwitterForAddressResponse>>;\n getLinkedAddressForTwitter(\n request: LinkedAddressForTwitterRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<LinkedAddressForTwitterResponse>>;\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter(\n request: SetLinkedTwitterRequest,\n context: CallContext & CallContextExt\n ): Promise<DeepPartial<SetLinkedTwitterResponse>>;\n}\n\nexport interface FaucetServiceClient<CallOptionsExt = {}> {\n drip(request: DeepPartial<DripRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n dripDev(request: DeepPartial<DripDevRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n dripVerifyTweet(request: DeepPartial<DripRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n timeUntilDrip(\n request: DeepPartial<DripRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<TimeUntilDripResponse>;\n getLinkedTwitters(\n request: DeepPartial<GetLinkedTwittersRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<GetLinkedTwittersResponse>;\n getLinkedTwitterForAddress(\n request: DeepPartial<LinkedTwitterForAddressRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<LinkedTwitterForAddressResponse>;\n getLinkedAddressForTwitter(\n request: DeepPartial<LinkedAddressForTwitterRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<LinkedAddressForTwitterResponse>;\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter(\n request: DeepPartial<SetLinkedTwitterRequest>,\n options?: CallOptions & CallOptionsExt\n ): Promise<SetLinkedTwitterResponse>;\n}\n\ndeclare var self: any | undefined;\ndeclare var window: any | undefined;\ndeclare var global: any | undefined;\nvar tsProtoGlobalThis: any = (() => {\n if (typeof globalThis !== \"undefined\") {\n return globalThis;\n }\n if (typeof self !== \"undefined\") {\n return self;\n }\n if (typeof window !== \"undefined\") {\n return window;\n }\n if (typeof global !== \"undefined\") {\n return global;\n }\n throw \"Unable to locate global object\";\n})();\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin\n ? T\n : T extends Array<infer U>\n ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U>\n ? ReadonlyArray<DeepPartial<U>>\n : T extends {}\n ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction longToNumber(long: Long): number {\n if (long.gt(Number.MAX_SAFE_INTEGER)) {\n throw new tsProtoGlobalThis.Error(\"Value is larger than Number.MAX_SAFE_INTEGER\");\n }\n return long.toNumber();\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n","import { FaucetServiceDefinition } from \"../../protobuf/ts/faucet/faucet\";\nimport { createChannel, createClient, RawClient } from \"nice-grpc-web\";\nimport { FromTsProtoServiceDefinition } from \"nice-grpc-web/lib/service-definitions/ts-proto\";\n\n/**\n * Create a FaucetServiceClient\n * @param url FaucetService URL\n * @returns FaucetServiceClient\n */\nexport function createFaucetService(\n url: string\n): RawClient<FromTsProtoServiceDefinition<typeof FaucetServiceDefinition>> {\n return createClient(FaucetServiceDefinition, createChannel(url));\n}\n"],"mappings":";AACA,OAAO,UAAU;AAEjB,OAAO,SAAS;AAET,IAAM,kBAAkB;AAoF/B,SAAS,8BAAiD;AACxD,SAAO,EAAE,UAAU,IAAI,SAAS,GAAG;AACrC;AAEO,IAAM,oBAAoB;AAAA,EAC/B,OAAO,SAA4B,SAAqB,IAAI,OAAO,OAAO,GAAe;AACvF,QAAI,QAAQ,aAAa,IAAI;AAC3B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAC3C;AACA,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAoC;AACzE,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,4BAA4B;AAC5C,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA0D;AAC/D,WAAO,kBAAkB,YAAY,QAAQ,CAAC,CAAC;AAAA,EACjD;AAAA,EAEA,YAAY,QAA2D;AACrE,UAAM,UAAU,4BAA4B;AAC5C,YAAQ,WAAW,OAAO,YAAY;AACtC,YAAQ,UAAU,OAAO,WAAW;AACpC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,wBAAqC;AAC5C,SAAO,EAAE,mBAAmB,CAAC,GAAG,mBAAmB,CAAC,GAAG,YAAY,CAAC,GAAG,gBAAgB,EAAE;AAC3F;AAEO,IAAM,cAAc;AAAA,EACzB,OAAO,SAAsB,SAAqB,IAAI,OAAO,OAAO,GAAe;AACjF,WAAO,QAAQ,QAAQ,iBAAiB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAClE,yCAAmC,OAAO,EAAE,KAAiB,MAAM,GAAG,OAAO,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO;AAAA,IACzG,CAAC;AACD,WAAO,QAAQ,QAAQ,iBAAiB,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAClE,yCAAmC,OAAO,EAAE,KAAiB,MAAM,GAAG,OAAO,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO;AAAA,IACzG,CAAC;AACD,WAAO,QAAQ,QAAQ,UAAU,EAAE,QAAQ,CAAC,CAAC,KAAK,KAAK,MAAM;AAC3D,kCAA4B,OAAO,EAAE,KAAiB,MAAM,GAAG,OAAO,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO;AAAA,IAClG,CAAC;AACD,QAAI,QAAQ,mBAAmB,GAAG;AAChC,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,cAAc;AAAA,IACjD;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA8B;AACnE,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,sBAAsB;AACtC,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,gBAAM,SAAS,mCAAmC,OAAO,QAAQ,OAAO,OAAO,CAAC;AAChF,cAAI,OAAO,UAAU,QAAW;AAC9B,oBAAQ,kBAAkB,OAAO,GAAG,IAAI,OAAO;AAAA,UACjD;AACA;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,gBAAM,SAAS,mCAAmC,OAAO,QAAQ,OAAO,OAAO,CAAC;AAChF,cAAI,OAAO,UAAU,QAAW;AAC9B,oBAAQ,kBAAkB,OAAO,GAAG,IAAI,OAAO;AAAA,UACjD;AACA;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,gBAAM,SAAS,4BAA4B,OAAO,QAAQ,OAAO,OAAO,CAAC;AACzE,cAAI,OAAO,UAAU,QAAW;AAC9B,oBAAQ,WAAW,OAAO,GAAG,IAAI,OAAO;AAAA,UAC1C;AACA;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,iBAAiB,OAAO,OAAO;AACvC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA8C;AACnD,WAAO,YAAY,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC3C;AAAA,EAEA,YAAY,QAA+C;AACzD,UAAM,UAAU,sBAAsB;AACtC,YAAQ,oBAAoB,OAAO,QAAQ,OAAO,qBAAqB,CAAC,CAAC,EAAE;AAAA,MACzE,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM;AACrB,YAAI,UAAU,QAAW;AACvB,cAAI,GAAG,IAAI,OAAO,KAAK;AAAA,QACzB;AACA,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH;AACA,YAAQ,oBAAoB,OAAO,QAAQ,OAAO,qBAAqB,CAAC,CAAC,EAAE;AAAA,MACzE,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM;AACrB,YAAI,UAAU,QAAW;AACvB,cAAI,GAAG,IAAI,OAAO,KAAK;AAAA,QACzB;AACA,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH;AACA,YAAQ,aAAa,OAAO,QAAQ,OAAO,cAAc,CAAC,CAAC,EAAE;AAAA,MAC3D,CAAC,KAAK,CAAC,KAAK,KAAK,MAAM;AACrB,YAAI,UAAU,QAAW;AACvB,cAAI,GAAG,IAAI,OAAO,KAAK;AAAA,QACzB;AACA,eAAO;AAAA,MACT;AAAA,MACA,CAAC;AAAA,IACH;AACA,YAAQ,iBAAiB,OAAO,kBAAkB;AAClD,WAAO;AAAA,EACT;AACF;AAEA,SAAS,+CAAmF;AAC1F,SAAO,EAAE,KAAK,IAAI,OAAO,GAAG;AAC9B;AAEO,IAAM,qCAAqC;AAAA,EAChD,OAAO,SAA6C,SAAqB,IAAI,OAAO,OAAO,GAAe;AACxG,QAAI,QAAQ,QAAQ,IAAI;AACtB,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,GAAG;AAAA,IACtC;AACA,QAAI,QAAQ,UAAU,IAAI;AACxB,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,KAAK;AAAA,IACxC;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAqD;AAC1F,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,6CAA6C;AAC7D,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA4F;AACjG,WAAO,mCAAmC,YAAY,QAAQ,CAAC,CAAC;AAAA,EAClE;AAAA,EAEA,YAAY,QAA6F;AACvG,UAAM,UAAU,6CAA6C;AAC7D,YAAQ,MAAM,OAAO,OAAO;AAC5B,YAAQ,QAAQ,OAAO,SAAS;AAChC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,+CAAmF;AAC1F,SAAO,EAAE,KAAK,IAAI,OAAO,GAAG;AAC9B;AAEO,IAAM,qCAAqC;AAAA,EAChD,OAAO,SAA6C,SAAqB,IAAI,OAAO,OAAO,GAAe;AACxG,QAAI,QAAQ,QAAQ,IAAI;AACtB,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,GAAG;AAAA,IACtC;AACA,QAAI,QAAQ,UAAU,IAAI;AACxB,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,KAAK;AAAA,IACxC;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAqD;AAC1F,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,6CAA6C;AAC7D,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,QAAQ,OAAO,OAAO;AAC9B;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA4F;AACjG,WAAO,mCAAmC,YAAY,QAAQ,CAAC,CAAC;AAAA,EAClE;AAAA,EAEA,YAAY,QAA6F;AACvG,UAAM,UAAU,6CAA6C;AAC7D,YAAQ,MAAM,OAAO,OAAO;AAC5B,YAAQ,QAAQ,OAAO,SAAS;AAChC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,wCAAqE;AAC5E,SAAO,EAAE,KAAK,IAAI,OAAO,EAAE;AAC7B;AAEO,IAAM,8BAA8B;AAAA,EACzC,OAAO,SAAsC,SAAqB,IAAI,OAAO,OAAO,GAAe;AACjG,QAAI,QAAQ,QAAQ,IAAI;AACtB,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,GAAG;AAAA,IACtC;AACA,QAAI,QAAQ,UAAU,GAAG;AACvB,aAAO,OAAO,EAAE,EAAE,MAAM,QAAQ,KAAK;AAAA,IACvC;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA8C;AACnF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,sCAAsC;AACtD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,MAAM,OAAO,OAAO;AAC5B;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,QAAQ,aAAa,OAAO,MAAM,CAAS;AACnD;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA8E;AACnF,WAAO,4BAA4B,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC3D;AAAA,EAEA,YAAY,QAA+E;AACzF,UAAM,UAAU,sCAAsC;AACtD,YAAQ,MAAM,OAAO,OAAO;AAC5B,YAAQ,QAAQ,OAAO,SAAS;AAChC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,wBAAqC;AAC5C,SAAO,EAAE,UAAU,IAAI,SAAS,GAAG;AACrC;AAEO,IAAM,cAAc;AAAA,EACzB,OAAO,SAAsB,SAAqB,IAAI,OAAO,OAAO,GAAe;AACjF,QAAI,QAAQ,aAAa,IAAI;AAC3B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAC3C;AACA,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA8B;AACnE,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,sBAAsB;AACtC,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA8C;AACnD,WAAO,YAAY,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC3C;AAAA,EAEA,YAAY,QAA+C;AACzD,UAAM,UAAU,sBAAsB;AACtC,YAAQ,WAAW,OAAO,YAAY;AACtC,YAAQ,UAAU,OAAO,WAAW;AACpC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,2BAA2C;AAClD,SAAO,EAAE,SAAS,GAAG;AACvB;AAEO,IAAM,iBAAiB;AAAA,EAC5B,OAAO,SAAyB,SAAqB,IAAI,OAAO,OAAO,GAAe;AACpF,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAiC;AACtE,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,yBAAyB;AACzC,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAoD;AACzD,WAAO,eAAe,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC9C;AAAA,EAEA,YAAY,QAAqD;AAC/D,UAAM,UAAU,yBAAyB;AACzC,YAAQ,UAAU,OAAO,WAAW;AACpC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,yBAAuC;AAC9C,SAAO,EAAE,YAAY,IAAI,WAAW,GAAG;AACzC;AAEO,IAAM,eAAe;AAAA,EAC1B,OAAO,SAAuB,SAAqB,IAAI,OAAO,OAAO,GAAe;AAClF,QAAI,QAAQ,eAAe,IAAI;AAC7B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,UAAU;AAAA,IAC7C;AACA,QAAI,QAAQ,cAAc,IAAI;AAC5B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,SAAS;AAAA,IAC5C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA+B;AACpE,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,uBAAuB;AACvC,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,aAAa,OAAO,OAAO;AACnC;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,YAAY,OAAO,OAAO;AAClC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAgD;AACrD,WAAO,aAAa,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC5C;AAAA,EAEA,YAAY,QAAiD;AAC3D,UAAM,UAAU,uBAAuB;AACvC,YAAQ,aAAa,OAAO,cAAc;AAC1C,YAAQ,YAAY,OAAO,aAAa;AACxC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,kCAAyD;AAChE,SAAO,EAAE,sBAAsB,GAAG,sBAAsB,EAAE;AAC5D;AAEO,IAAM,wBAAwB;AAAA,EACnC,OAAO,SAAgC,SAAqB,IAAI,OAAO,OAAO,GAAe;AAC3F,QAAI,QAAQ,yBAAyB,GAAG;AACtC,aAAO,OAAO,CAAC,EAAE,OAAO,QAAQ,oBAAoB;AAAA,IACtD;AACA,QAAI,QAAQ,yBAAyB,GAAG;AACtC,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,oBAAoB;AAAA,IACvD;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAwC;AAC7E,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,gCAAgC;AAChD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,GAAG;AACZ;AAAA,UACF;AAEA,kBAAQ,uBAAuB,OAAO,OAAO;AAC7C;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,uBAAuB,OAAO,OAAO;AAC7C;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAkE;AACvE,WAAO,sBAAsB,YAAY,QAAQ,CAAC,CAAC;AAAA,EACrD;AAAA,EAEA,YAAY,QAAmE;AAC7E,UAAM,UAAU,gCAAgC;AAChD,YAAQ,uBAAuB,OAAO,wBAAwB;AAC9D,YAAQ,uBAAuB,OAAO,wBAAwB;AAC9D,WAAO;AAAA,EACT;AACF;AAEA,SAAS,qCAA+D;AACtE,SAAO,CAAC;AACV;AAEO,IAAM,2BAA2B;AAAA,EACtC,OAAO,GAA6B,SAAqB,IAAI,OAAO,OAAO,GAAe;AACxF,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA2C;AAChF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,mCAAmC;AACnD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,MACnB;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAwE;AAC7E,WAAO,yBAAyB,YAAY,QAAQ,CAAC,CAAC;AAAA,EACxD;AAAA,EAEA,YAAY,GAAoE;AAC9E,UAAM,UAAU,mCAAmC;AACnD,WAAO;AAAA,EACT;AACF;AAEA,SAAS,sCAAiE;AACxE,SAAO,EAAE,gBAAgB,CAAC,EAAE;AAC9B;AAEO,IAAM,4BAA4B;AAAA,EACvC,OAAO,SAAoC,SAAqB,IAAI,OAAO,OAAO,GAAe;AAC/F,eAAW,KAAK,QAAQ,gBAAgB;AACtC,wBAAkB,OAAO,GAAI,OAAO,OAAO,EAAE,EAAE,KAAK,CAAC,EAAE,OAAO;AAAA,IAChE;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA4C;AACjF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,oCAAoC;AACpD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,eAAe,KAAK,kBAAkB,OAAO,QAAQ,OAAO,OAAO,CAAC,CAAC;AAC7E;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAA0E;AAC/E,WAAO,0BAA0B,YAAY,QAAQ,CAAC,CAAC;AAAA,EACzD;AAAA,EAEA,YAAY,QAA2E;AACrF,UAAM,UAAU,oCAAoC;AACpD,YAAQ,iBAAiB,OAAO,gBAAgB,IAAI,CAAC,MAAM,kBAAkB,YAAY,CAAC,CAAC,KAAK,CAAC;AACjG,WAAO;AAAA,EACT;AACF;AAEA,SAAS,2CAA2E;AAClF,SAAO,EAAE,SAAS,GAAG;AACvB;AAEO,IAAM,iCAAiC;AAAA,EAC5C,OAAO,SAAyC,SAAqB,IAAI,OAAO,OAAO,GAAe;AACpG,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAiD;AACtF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,yCAAyC;AACzD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAoF;AACzF,WAAO,+BAA+B,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC9D;AAAA,EAEA,YAAY,QAAqF;AAC/F,UAAM,UAAU,yCAAyC;AACzD,YAAQ,UAAU,OAAO,WAAW;AACpC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,4CAA6E;AACpF,SAAO,EAAE,UAAU,GAAG;AACxB;AAEO,IAAM,kCAAkC;AAAA,EAC7C,OAAO,SAA0C,SAAqB,IAAI,OAAO,OAAO,GAAe;AACrG,QAAI,QAAQ,aAAa,IAAI;AAC3B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAC3C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAkD;AACvF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,0CAA0C;AAC1D,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAsF;AAC3F,WAAO,gCAAgC,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC/D;AAAA,EAEA,YAAY,QAAuF;AACjG,UAAM,UAAU,0CAA0C;AAC1D,YAAQ,WAAW,OAAO,YAAY;AACtC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,2CAA2E;AAClF,SAAO,EAAE,UAAU,GAAG;AACxB;AAEO,IAAM,iCAAiC;AAAA,EAC5C,OAAO,SAAyC,SAAqB,IAAI,OAAO,OAAO,GAAe;AACpG,QAAI,QAAQ,aAAa,IAAI;AAC3B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAC3C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAiD;AACtF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,yCAAyC;AACzD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAoF;AACzF,WAAO,+BAA+B,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC9D;AAAA,EAEA,YAAY,QAAqF;AAC/F,UAAM,UAAU,yCAAyC;AACzD,YAAQ,WAAW,OAAO,YAAY;AACtC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,4CAA6E;AACpF,SAAO,EAAE,SAAS,GAAG;AACvB;AAEO,IAAM,kCAAkC;AAAA,EAC7C,OAAO,SAA0C,SAAqB,IAAI,OAAO,OAAO,GAAe;AACrG,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAAkD;AACvF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,0CAA0C;AAC1D,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAsF;AAC3F,WAAO,gCAAgC,YAAY,QAAQ,CAAC,CAAC;AAAA,EAC/D;AAAA,EAEA,YAAY,QAAuF;AACjG,UAAM,UAAU,0CAA0C;AAC1D,YAAQ,UAAU,OAAO,WAAW;AACpC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,oCAA6D;AACpE,SAAO,EAAE,SAAS,IAAI,UAAU,IAAI,WAAW,GAAG;AACpD;AAEO,IAAM,0BAA0B;AAAA,EACrC,OAAO,SAAkC,SAAqB,IAAI,OAAO,OAAO,GAAe;AAC7F,QAAI,QAAQ,YAAY,IAAI;AAC1B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,OAAO;AAAA,IAC1C;AACA,QAAI,QAAQ,aAAa,IAAI;AAC3B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,QAAQ;AAAA,IAC3C;AACA,QAAI,QAAQ,cAAc,IAAI;AAC5B,aAAO,OAAO,EAAE,EAAE,OAAO,QAAQ,SAAS;AAAA,IAC5C;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA0C;AAC/E,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,kCAAkC;AAClD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,QACjB,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,UAAU,OAAO,OAAO;AAChC;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,WAAW,OAAO,OAAO;AACjC;AAAA,QACF,KAAK;AACH,cAAI,OAAO,IAAI;AACb;AAAA,UACF;AAEA,kBAAQ,YAAY,OAAO,OAAO;AAClC;AAAA,MACJ;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAsE;AAC3E,WAAO,wBAAwB,YAAY,QAAQ,CAAC,CAAC;AAAA,EACvD;AAAA,EAEA,YAAY,QAAuE;AACjF,UAAM,UAAU,kCAAkC;AAClD,YAAQ,UAAU,OAAO,WAAW;AACpC,YAAQ,WAAW,OAAO,YAAY;AACtC,YAAQ,YAAY,OAAO,aAAa;AACxC,WAAO;AAAA,EACT;AACF;AAEA,SAAS,qCAA+D;AACtE,SAAO,CAAC;AACV;AAEO,IAAM,2BAA2B;AAAA,EACtC,OAAO,GAA6B,SAAqB,IAAI,OAAO,OAAO,GAAe;AACxF,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,OAAgC,QAA2C;AAChF,UAAM,SAAS,iBAAiB,IAAI,SAAS,QAAQ,IAAI,OAAO,OAAO,KAAK;AAC5E,QAAI,MAAM,WAAW,SAAY,OAAO,MAAM,OAAO,MAAM;AAC3D,UAAM,UAAU,mCAAmC;AACnD,WAAO,OAAO,MAAM,KAAK;AACvB,YAAM,MAAM,OAAO,OAAO;AAC1B,cAAQ,QAAQ,GAAG;AAAA,MACnB;AACA,WAAK,MAAM,MAAM,KAAK,OAAO,GAAG;AAC9B;AAAA,MACF;AACA,aAAO,SAAS,MAAM,CAAC;AAAA,IACzB;AACA,WAAO;AAAA,EACT;AAAA,EAEA,OAAO,MAAwE;AAC7E,WAAO,yBAAyB,YAAY,QAAQ,CAAC,CAAC;AAAA,EACxD;AAAA,EAEA,YAAY,GAAoE;AAC9E,UAAM,UAAU,mCAAmC;AACnD,WAAO;AAAA,EACT;AACF;AAIO,IAAM,0BAA0B;AAAA,EACrC,MAAM;AAAA,EACN,UAAU;AAAA,EACV,SAAS;AAAA,IACP,MAAM;AAAA,MACJ,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,SAAS;AAAA,MACP,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,iBAAiB;AAAA,MACf,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,eAAe;AAAA,MACb,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,mBAAmB;AAAA,MACjB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,IACA,4BAA4B;AAAA,MAC1B,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA;AAAA,IAEA,kBAAkB;AAAA,MAChB,MAAM;AAAA,MACN,aAAa;AAAA,MACb,eAAe;AAAA,MACf,cAAc;AAAA,MACd,gBAAgB;AAAA,MAChB,SAAS,CAAC;AAAA,IACZ;AAAA,EACF;AACF;AA2DA,IAAI,qBAA0B,MAAM;AAClC,MAAI,OAAO,eAAe,aAAa;AACrC,WAAO;AAAA,EACT;AACA,MAAI,OAAO,SAAS,aAAa;AAC/B,WAAO;AAAA,EACT;AACA,MAAI,OAAO,WAAW,aAAa;AACjC,WAAO;AAAA,EACT;AACA,MAAI,OAAO,WAAW,aAAa;AACjC,WAAO;AAAA,EACT;AACA,QAAM;AACR,GAAG;AAcH,SAAS,aAAa,MAAoB;AACxC,MAAI,KAAK,GAAG,OAAO,gBAAgB,GAAG;AACpC,UAAM,IAAI,kBAAkB,MAAM,8CAA8C;AAAA,EAClF;AACA,SAAO,KAAK,SAAS;AACvB;AAEA,IAAI,IAAI,KAAK,SAAS,MAAM;AAC1B,MAAI,KAAK,OAAO;AAChB,MAAI,UAAU;AAChB;;;AC9pCA,SAAS,eAAe,oBAA+B;AAQhD,SAAS,oBACd,KACyE;AACzE,SAAO,aAAa,yBAAyB,cAAc,GAAG,CAAC;AACjE;","names":[]}
1
+ {"version":3,"sources":["../protobuf/ts/faucet/faucet.ts","../ts/faucet/createFaucetService.ts"],"sourcesContent":["/* eslint-disable */\nimport Long from \"long\";\nimport type { CallContext, CallOptions } from \"nice-grpc-common\";\nimport _m0 from \"protobufjs/minimal.js\";\n\nexport const protobufPackage = \"faucet\";\n\nexport interface LinkedTwitterPair {\n username: string;\n address: string;\n}\n\nexport interface FaucetStore {\n addressToUsername: { [key: string]: string };\n usernameToAddress: { [key: string]: string };\n /** User id/name/address to timestamp of latest drip. */\n latestDrip: { [key: string]: number };\n /** Global drip counter. */\n totalDripCount: number;\n}\n\nexport interface FaucetStore_AddressToUsernameEntry {\n key: string;\n value: string;\n}\n\nexport interface FaucetStore_UsernameToAddressEntry {\n key: string;\n value: string;\n}\n\nexport interface FaucetStore_LatestDripEntry {\n key: string;\n value: number;\n}\n\n/** Request for drip. */\nexport interface DripRequest {\n username: string;\n address: string;\n}\n\n/** Request for drip to any address when running in dev mode. */\nexport interface DripDevRequest {\n address: string;\n}\n\n/** Response for drip request that contains the transaction hash of the drip tx and the ECS component set hash (if any). */\nexport interface DripResponse {\n dripTxHash: string;\n ecsTxHash: string;\n}\n\n/** Response for the time until next drip request. */\nexport interface TimeUntilDripResponse {\n timeUntilDripMinutes: number;\n timeUntilDripSeconds: number;\n}\n\nexport interface GetLinkedTwittersRequest {}\n\nexport interface GetLinkedTwittersResponse {\n linkedTwitters: LinkedTwitterPair[];\n}\n\nexport interface LinkedTwitterForAddressRequest {\n address: string;\n}\n\nexport interface LinkedTwitterForAddressResponse {\n username: string;\n}\n\nexport interface LinkedAddressForTwitterRequest {\n username: string;\n}\n\nexport interface LinkedAddressForTwitterResponse {\n address: string;\n}\n\nexport interface SetLinkedTwitterRequest {\n address: string;\n username: string;\n signature: string;\n}\n\nexport interface SetLinkedTwitterResponse {}\n\nfunction createBaseLinkedTwitterPair(): LinkedTwitterPair {\n return { username: \"\", address: \"\" };\n}\n\nexport const LinkedTwitterPair = {\n encode(message: LinkedTwitterPair, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n if (message.address !== \"\") {\n writer.uint32(18).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterPair {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterPair();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterPair>): LinkedTwitterPair {\n return LinkedTwitterPair.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterPair>): LinkedTwitterPair {\n const message = createBaseLinkedTwitterPair();\n message.username = object.username ?? \"\";\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore(): FaucetStore {\n return { addressToUsername: {}, usernameToAddress: {}, latestDrip: {}, totalDripCount: 0 };\n}\n\nexport const FaucetStore = {\n encode(message: FaucetStore, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n Object.entries(message.addressToUsername).forEach(([key, value]) => {\n FaucetStore_AddressToUsernameEntry.encode({ key: key as any, value }, writer.uint32(10).fork()).ldelim();\n });\n Object.entries(message.usernameToAddress).forEach(([key, value]) => {\n FaucetStore_UsernameToAddressEntry.encode({ key: key as any, value }, writer.uint32(18).fork()).ldelim();\n });\n Object.entries(message.latestDrip).forEach(([key, value]) => {\n FaucetStore_LatestDripEntry.encode({ key: key as any, value }, writer.uint32(26).fork()).ldelim();\n });\n if (message.totalDripCount !== 0) {\n writer.uint32(33).double(message.totalDripCount);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n const entry1 = FaucetStore_AddressToUsernameEntry.decode(reader, reader.uint32());\n if (entry1.value !== undefined) {\n message.addressToUsername[entry1.key] = entry1.value;\n }\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n const entry2 = FaucetStore_UsernameToAddressEntry.decode(reader, reader.uint32());\n if (entry2.value !== undefined) {\n message.usernameToAddress[entry2.key] = entry2.value;\n }\n continue;\n case 3:\n if (tag != 26) {\n break;\n }\n\n const entry3 = FaucetStore_LatestDripEntry.decode(reader, reader.uint32());\n if (entry3.value !== undefined) {\n message.latestDrip[entry3.key] = entry3.value;\n }\n continue;\n case 4:\n if (tag != 33) {\n break;\n }\n\n message.totalDripCount = reader.double();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore>): FaucetStore {\n return FaucetStore.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore>): FaucetStore {\n const message = createBaseFaucetStore();\n message.addressToUsername = Object.entries(object.addressToUsername ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = String(value);\n }\n return acc;\n },\n {},\n );\n message.usernameToAddress = Object.entries(object.usernameToAddress ?? {}).reduce<{ [key: string]: string }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = String(value);\n }\n return acc;\n },\n {},\n );\n message.latestDrip = Object.entries(object.latestDrip ?? {}).reduce<{ [key: string]: number }>(\n (acc, [key, value]) => {\n if (value !== undefined) {\n acc[key] = Number(value);\n }\n return acc;\n },\n {},\n );\n message.totalDripCount = object.totalDripCount ?? 0;\n return message;\n },\n};\n\nfunction createBaseFaucetStore_AddressToUsernameEntry(): FaucetStore_AddressToUsernameEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const FaucetStore_AddressToUsernameEntry = {\n encode(message: FaucetStore_AddressToUsernameEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_AddressToUsernameEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_AddressToUsernameEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_AddressToUsernameEntry>): FaucetStore_AddressToUsernameEntry {\n return FaucetStore_AddressToUsernameEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_AddressToUsernameEntry>): FaucetStore_AddressToUsernameEntry {\n const message = createBaseFaucetStore_AddressToUsernameEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore_UsernameToAddressEntry(): FaucetStore_UsernameToAddressEntry {\n return { key: \"\", value: \"\" };\n}\n\nexport const FaucetStore_UsernameToAddressEntry = {\n encode(message: FaucetStore_UsernameToAddressEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== \"\") {\n writer.uint32(18).string(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_UsernameToAddressEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_UsernameToAddressEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.value = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_UsernameToAddressEntry>): FaucetStore_UsernameToAddressEntry {\n return FaucetStore_UsernameToAddressEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_UsernameToAddressEntry>): FaucetStore_UsernameToAddressEntry {\n const message = createBaseFaucetStore_UsernameToAddressEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? \"\";\n return message;\n },\n};\n\nfunction createBaseFaucetStore_LatestDripEntry(): FaucetStore_LatestDripEntry {\n return { key: \"\", value: 0 };\n}\n\nexport const FaucetStore_LatestDripEntry = {\n encode(message: FaucetStore_LatestDripEntry, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.key !== \"\") {\n writer.uint32(10).string(message.key);\n }\n if (message.value !== 0) {\n writer.uint32(16).int64(message.value);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): FaucetStore_LatestDripEntry {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseFaucetStore_LatestDripEntry();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.key = reader.string();\n continue;\n case 2:\n if (tag != 16) {\n break;\n }\n\n message.value = longToNumber(reader.int64() as Long);\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<FaucetStore_LatestDripEntry>): FaucetStore_LatestDripEntry {\n return FaucetStore_LatestDripEntry.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<FaucetStore_LatestDripEntry>): FaucetStore_LatestDripEntry {\n const message = createBaseFaucetStore_LatestDripEntry();\n message.key = object.key ?? \"\";\n message.value = object.value ?? 0;\n return message;\n },\n};\n\nfunction createBaseDripRequest(): DripRequest {\n return { username: \"\", address: \"\" };\n}\n\nexport const DripRequest = {\n encode(message: DripRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n if (message.address !== \"\") {\n writer.uint32(18).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripRequest>): DripRequest {\n return DripRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripRequest>): DripRequest {\n const message = createBaseDripRequest();\n message.username = object.username ?? \"\";\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDripDevRequest(): DripDevRequest {\n return { address: \"\" };\n}\n\nexport const DripDevRequest = {\n encode(message: DripDevRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripDevRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripDevRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripDevRequest>): DripDevRequest {\n return DripDevRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripDevRequest>): DripDevRequest {\n const message = createBaseDripDevRequest();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseDripResponse(): DripResponse {\n return { dripTxHash: \"\", ecsTxHash: \"\" };\n}\n\nexport const DripResponse = {\n encode(message: DripResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.dripTxHash !== \"\") {\n writer.uint32(10).string(message.dripTxHash);\n }\n if (message.ecsTxHash !== \"\") {\n writer.uint32(18).string(message.ecsTxHash);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): DripResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseDripResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.dripTxHash = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.ecsTxHash = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<DripResponse>): DripResponse {\n return DripResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<DripResponse>): DripResponse {\n const message = createBaseDripResponse();\n message.dripTxHash = object.dripTxHash ?? \"\";\n message.ecsTxHash = object.ecsTxHash ?? \"\";\n return message;\n },\n};\n\nfunction createBaseTimeUntilDripResponse(): TimeUntilDripResponse {\n return { timeUntilDripMinutes: 0, timeUntilDripSeconds: 0 };\n}\n\nexport const TimeUntilDripResponse = {\n encode(message: TimeUntilDripResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.timeUntilDripMinutes !== 0) {\n writer.uint32(9).double(message.timeUntilDripMinutes);\n }\n if (message.timeUntilDripSeconds !== 0) {\n writer.uint32(17).double(message.timeUntilDripSeconds);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): TimeUntilDripResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseTimeUntilDripResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 9) {\n break;\n }\n\n message.timeUntilDripMinutes = reader.double();\n continue;\n case 2:\n if (tag != 17) {\n break;\n }\n\n message.timeUntilDripSeconds = reader.double();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<TimeUntilDripResponse>): TimeUntilDripResponse {\n return TimeUntilDripResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<TimeUntilDripResponse>): TimeUntilDripResponse {\n const message = createBaseTimeUntilDripResponse();\n message.timeUntilDripMinutes = object.timeUntilDripMinutes ?? 0;\n message.timeUntilDripSeconds = object.timeUntilDripSeconds ?? 0;\n return message;\n },\n};\n\nfunction createBaseGetLinkedTwittersRequest(): GetLinkedTwittersRequest {\n return {};\n}\n\nexport const GetLinkedTwittersRequest = {\n encode(_: GetLinkedTwittersRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetLinkedTwittersRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetLinkedTwittersRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<GetLinkedTwittersRequest>): GetLinkedTwittersRequest {\n return GetLinkedTwittersRequest.fromPartial(base ?? {});\n },\n\n fromPartial(_: DeepPartial<GetLinkedTwittersRequest>): GetLinkedTwittersRequest {\n const message = createBaseGetLinkedTwittersRequest();\n return message;\n },\n};\n\nfunction createBaseGetLinkedTwittersResponse(): GetLinkedTwittersResponse {\n return { linkedTwitters: [] };\n}\n\nexport const GetLinkedTwittersResponse = {\n encode(message: GetLinkedTwittersResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n for (const v of message.linkedTwitters) {\n LinkedTwitterPair.encode(v!, writer.uint32(10).fork()).ldelim();\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): GetLinkedTwittersResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseGetLinkedTwittersResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.linkedTwitters.push(LinkedTwitterPair.decode(reader, reader.uint32()));\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<GetLinkedTwittersResponse>): GetLinkedTwittersResponse {\n return GetLinkedTwittersResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<GetLinkedTwittersResponse>): GetLinkedTwittersResponse {\n const message = createBaseGetLinkedTwittersResponse();\n message.linkedTwitters = object.linkedTwitters?.map((e) => LinkedTwitterPair.fromPartial(e)) || [];\n return message;\n },\n};\n\nfunction createBaseLinkedTwitterForAddressRequest(): LinkedTwitterForAddressRequest {\n return { address: \"\" };\n}\n\nexport const LinkedTwitterForAddressRequest = {\n encode(message: LinkedTwitterForAddressRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterForAddressRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterForAddressRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterForAddressRequest>): LinkedTwitterForAddressRequest {\n return LinkedTwitterForAddressRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterForAddressRequest>): LinkedTwitterForAddressRequest {\n const message = createBaseLinkedTwitterForAddressRequest();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedTwitterForAddressResponse(): LinkedTwitterForAddressResponse {\n return { username: \"\" };\n}\n\nexport const LinkedTwitterForAddressResponse = {\n encode(message: LinkedTwitterForAddressResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedTwitterForAddressResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedTwitterForAddressResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedTwitterForAddressResponse>): LinkedTwitterForAddressResponse {\n return LinkedTwitterForAddressResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedTwitterForAddressResponse>): LinkedTwitterForAddressResponse {\n const message = createBaseLinkedTwitterForAddressResponse();\n message.username = object.username ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedAddressForTwitterRequest(): LinkedAddressForTwitterRequest {\n return { username: \"\" };\n}\n\nexport const LinkedAddressForTwitterRequest = {\n encode(message: LinkedAddressForTwitterRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.username !== \"\") {\n writer.uint32(10).string(message.username);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedAddressForTwitterRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedAddressForTwitterRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.username = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedAddressForTwitterRequest>): LinkedAddressForTwitterRequest {\n return LinkedAddressForTwitterRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedAddressForTwitterRequest>): LinkedAddressForTwitterRequest {\n const message = createBaseLinkedAddressForTwitterRequest();\n message.username = object.username ?? \"\";\n return message;\n },\n};\n\nfunction createBaseLinkedAddressForTwitterResponse(): LinkedAddressForTwitterResponse {\n return { address: \"\" };\n}\n\nexport const LinkedAddressForTwitterResponse = {\n encode(message: LinkedAddressForTwitterResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): LinkedAddressForTwitterResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseLinkedAddressForTwitterResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<LinkedAddressForTwitterResponse>): LinkedAddressForTwitterResponse {\n return LinkedAddressForTwitterResponse.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<LinkedAddressForTwitterResponse>): LinkedAddressForTwitterResponse {\n const message = createBaseLinkedAddressForTwitterResponse();\n message.address = object.address ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSetLinkedTwitterRequest(): SetLinkedTwitterRequest {\n return { address: \"\", username: \"\", signature: \"\" };\n}\n\nexport const SetLinkedTwitterRequest = {\n encode(message: SetLinkedTwitterRequest, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n if (message.address !== \"\") {\n writer.uint32(10).string(message.address);\n }\n if (message.username !== \"\") {\n writer.uint32(18).string(message.username);\n }\n if (message.signature !== \"\") {\n writer.uint32(26).string(message.signature);\n }\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SetLinkedTwitterRequest {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSetLinkedTwitterRequest();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n case 1:\n if (tag != 10) {\n break;\n }\n\n message.address = reader.string();\n continue;\n case 2:\n if (tag != 18) {\n break;\n }\n\n message.username = reader.string();\n continue;\n case 3:\n if (tag != 26) {\n break;\n }\n\n message.signature = reader.string();\n continue;\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<SetLinkedTwitterRequest>): SetLinkedTwitterRequest {\n return SetLinkedTwitterRequest.fromPartial(base ?? {});\n },\n\n fromPartial(object: DeepPartial<SetLinkedTwitterRequest>): SetLinkedTwitterRequest {\n const message = createBaseSetLinkedTwitterRequest();\n message.address = object.address ?? \"\";\n message.username = object.username ?? \"\";\n message.signature = object.signature ?? \"\";\n return message;\n },\n};\n\nfunction createBaseSetLinkedTwitterResponse(): SetLinkedTwitterResponse {\n return {};\n}\n\nexport const SetLinkedTwitterResponse = {\n encode(_: SetLinkedTwitterResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer {\n return writer;\n },\n\n decode(input: _m0.Reader | Uint8Array, length?: number): SetLinkedTwitterResponse {\n const reader = input instanceof _m0.Reader ? input : _m0.Reader.create(input);\n let end = length === undefined ? reader.len : reader.pos + length;\n const message = createBaseSetLinkedTwitterResponse();\n while (reader.pos < end) {\n const tag = reader.uint32();\n switch (tag >>> 3) {\n }\n if ((tag & 7) == 4 || tag == 0) {\n break;\n }\n reader.skipType(tag & 7);\n }\n return message;\n },\n\n create(base?: DeepPartial<SetLinkedTwitterResponse>): SetLinkedTwitterResponse {\n return SetLinkedTwitterResponse.fromPartial(base ?? {});\n },\n\n fromPartial(_: DeepPartial<SetLinkedTwitterResponse>): SetLinkedTwitterResponse {\n const message = createBaseSetLinkedTwitterResponse();\n return message;\n },\n};\n\n/** The Faucet Service definition. */\nexport type FaucetServiceDefinition = typeof FaucetServiceDefinition;\nexport const FaucetServiceDefinition = {\n name: \"FaucetService\",\n fullName: \"faucet.FaucetService\",\n methods: {\n drip: {\n name: \"Drip\",\n requestType: DripRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n dripDev: {\n name: \"DripDev\",\n requestType: DripDevRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n dripVerifyTweet: {\n name: \"DripVerifyTweet\",\n requestType: DripRequest,\n requestStream: false,\n responseType: DripResponse,\n responseStream: false,\n options: {},\n },\n timeUntilDrip: {\n name: \"TimeUntilDrip\",\n requestType: DripRequest,\n requestStream: false,\n responseType: TimeUntilDripResponse,\n responseStream: false,\n options: {},\n },\n getLinkedTwitters: {\n name: \"GetLinkedTwitters\",\n requestType: GetLinkedTwittersRequest,\n requestStream: false,\n responseType: GetLinkedTwittersResponse,\n responseStream: false,\n options: {},\n },\n getLinkedTwitterForAddress: {\n name: \"GetLinkedTwitterForAddress\",\n requestType: LinkedTwitterForAddressRequest,\n requestStream: false,\n responseType: LinkedTwitterForAddressResponse,\n responseStream: false,\n options: {},\n },\n getLinkedAddressForTwitter: {\n name: \"GetLinkedAddressForTwitter\",\n requestType: LinkedAddressForTwitterRequest,\n requestStream: false,\n responseType: LinkedAddressForTwitterResponse,\n responseStream: false,\n options: {},\n },\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter: {\n name: \"SetLinkedTwitter\",\n requestType: SetLinkedTwitterRequest,\n requestStream: false,\n responseType: SetLinkedTwitterResponse,\n responseStream: false,\n options: {},\n },\n },\n} as const;\n\nexport interface FaucetServiceImplementation<CallContextExt = {}> {\n drip(request: DripRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n dripDev(request: DripDevRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n dripVerifyTweet(request: DripRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;\n timeUntilDrip(\n request: DripRequest,\n context: CallContext & CallContextExt,\n ): Promise<DeepPartial<TimeUntilDripResponse>>;\n getLinkedTwitters(\n request: GetLinkedTwittersRequest,\n context: CallContext & CallContextExt,\n ): Promise<DeepPartial<GetLinkedTwittersResponse>>;\n getLinkedTwitterForAddress(\n request: LinkedTwitterForAddressRequest,\n context: CallContext & CallContextExt,\n ): Promise<DeepPartial<LinkedTwitterForAddressResponse>>;\n getLinkedAddressForTwitter(\n request: LinkedAddressForTwitterRequest,\n context: CallContext & CallContextExt,\n ): Promise<DeepPartial<LinkedAddressForTwitterResponse>>;\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter(\n request: SetLinkedTwitterRequest,\n context: CallContext & CallContextExt,\n ): Promise<DeepPartial<SetLinkedTwitterResponse>>;\n}\n\nexport interface FaucetServiceClient<CallOptionsExt = {}> {\n drip(request: DeepPartial<DripRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n dripDev(request: DeepPartial<DripDevRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n dripVerifyTweet(request: DeepPartial<DripRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;\n timeUntilDrip(\n request: DeepPartial<DripRequest>,\n options?: CallOptions & CallOptionsExt,\n ): Promise<TimeUntilDripResponse>;\n getLinkedTwitters(\n request: DeepPartial<GetLinkedTwittersRequest>,\n options?: CallOptions & CallOptionsExt,\n ): Promise<GetLinkedTwittersResponse>;\n getLinkedTwitterForAddress(\n request: DeepPartial<LinkedTwitterForAddressRequest>,\n options?: CallOptions & CallOptionsExt,\n ): Promise<LinkedTwitterForAddressResponse>;\n getLinkedAddressForTwitter(\n request: DeepPartial<LinkedAddressForTwitterRequest>,\n options?: CallOptions & CallOptionsExt,\n ): Promise<LinkedAddressForTwitterResponse>;\n /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */\n setLinkedTwitter(\n request: DeepPartial<SetLinkedTwitterRequest>,\n options?: CallOptions & CallOptionsExt,\n ): Promise<SetLinkedTwitterResponse>;\n}\n\ndeclare var self: any | undefined;\ndeclare var window: any | undefined;\ndeclare var global: any | undefined;\nvar tsProtoGlobalThis: any = (() => {\n if (typeof globalThis !== \"undefined\") {\n return globalThis;\n }\n if (typeof self !== \"undefined\") {\n return self;\n }\n if (typeof window !== \"undefined\") {\n return window;\n }\n if (typeof global !== \"undefined\") {\n return global;\n }\n throw \"Unable to locate global object\";\n})();\n\ntype Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;\n\nexport type DeepPartial<T> = T extends Builtin\n ? T\n : T extends Array<infer U>\n ? Array<DeepPartial<U>>\n : T extends ReadonlyArray<infer U>\n ? ReadonlyArray<DeepPartial<U>>\n : T extends {}\n ? { [K in keyof T]?: DeepPartial<T[K]> }\n : Partial<T>;\n\nfunction longToNumber(long: Long): number {\n if (long.gt(Number.MAX_SAFE_INTEGER)) {\n throw new tsProtoGlobalThis.Error(\"Value is larger than Number.MAX_SAFE_INTEGER\");\n }\n return long.toNumber();\n}\n\nif (_m0.util.Long !== Long) {\n _m0.util.Long = Long as any;\n _m0.configure();\n}\n","import { FaucetServiceDefinition } from \"../../protobuf/ts/faucet/faucet\";\nimport { createChannel, createClient, RawClient } from \"nice-grpc-web\";\nimport { FromTsProtoServiceDefinition } from \"nice-grpc-web/lib/service-definitions/ts-proto\";\n\n/**\n * Create a FaucetServiceClient\n * @param url FaucetService URL\n * @returns FaucetServiceClient\n */\nexport function createFaucetService(\n url: string,\n): RawClient<FromTsProtoServiceDefinition<typeof FaucetServiceDefinition>> {\n return createClient(FaucetServiceDefinition, createChannel(url));\n}\n"],"mappings":"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","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@latticexyz/services",
3
- "version": "2.0.0-transaction-context-324984c5",
3
+ "version": "2.0.1-main-4a6b4598",
4
4
  "description": "MUD services for enhanced interactions with on-chain ECS state",
5
5
  "repository": {
6
6
  "type": "git",
@@ -29,7 +29,6 @@
29
29
  "ts-proto": "^1.146.0",
30
30
  "tsup": "^6.7.0"
31
31
  },
32
- "gitHead": "914a1e0ae4a573d685841ca2ea921435057deb8f",
33
32
  "scripts": {
34
33
  "build": "pnpm run build:js",
35
34
  "build:js": "tsup",
@@ -231,7 +231,7 @@ export const FaucetStore = {
231
231
  }
232
232
  return acc;
233
233
  },
234
- {}
234
+ {},
235
235
  );
236
236
  message.usernameToAddress = Object.entries(object.usernameToAddress ?? {}).reduce<{ [key: string]: string }>(
237
237
  (acc, [key, value]) => {
@@ -240,7 +240,7 @@ export const FaucetStore = {
240
240
  }
241
241
  return acc;
242
242
  },
243
- {}
243
+ {},
244
244
  );
245
245
  message.latestDrip = Object.entries(object.latestDrip ?? {}).reduce<{ [key: string]: number }>(
246
246
  (acc, [key, value]) => {
@@ -249,7 +249,7 @@ export const FaucetStore = {
249
249
  }
250
250
  return acc;
251
251
  },
252
- {}
252
+ {},
253
253
  );
254
254
  message.totalDripCount = object.totalDripCount ?? 0;
255
255
  return message;
@@ -1092,24 +1092,24 @@ export interface FaucetServiceImplementation<CallContextExt = {}> {
1092
1092
  dripVerifyTweet(request: DripRequest, context: CallContext & CallContextExt): Promise<DeepPartial<DripResponse>>;
1093
1093
  timeUntilDrip(
1094
1094
  request: DripRequest,
1095
- context: CallContext & CallContextExt
1095
+ context: CallContext & CallContextExt,
1096
1096
  ): Promise<DeepPartial<TimeUntilDripResponse>>;
1097
1097
  getLinkedTwitters(
1098
1098
  request: GetLinkedTwittersRequest,
1099
- context: CallContext & CallContextExt
1099
+ context: CallContext & CallContextExt,
1100
1100
  ): Promise<DeepPartial<GetLinkedTwittersResponse>>;
1101
1101
  getLinkedTwitterForAddress(
1102
1102
  request: LinkedTwitterForAddressRequest,
1103
- context: CallContext & CallContextExt
1103
+ context: CallContext & CallContextExt,
1104
1104
  ): Promise<DeepPartial<LinkedTwitterForAddressResponse>>;
1105
1105
  getLinkedAddressForTwitter(
1106
1106
  request: LinkedAddressForTwitterRequest,
1107
- context: CallContext & CallContextExt
1107
+ context: CallContext & CallContextExt,
1108
1108
  ): Promise<DeepPartial<LinkedAddressForTwitterResponse>>;
1109
1109
  /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */
1110
1110
  setLinkedTwitter(
1111
1111
  request: SetLinkedTwitterRequest,
1112
- context: CallContext & CallContextExt
1112
+ context: CallContext & CallContextExt,
1113
1113
  ): Promise<DeepPartial<SetLinkedTwitterResponse>>;
1114
1114
  }
1115
1115
 
@@ -1119,24 +1119,24 @@ export interface FaucetServiceClient<CallOptionsExt = {}> {
1119
1119
  dripVerifyTweet(request: DeepPartial<DripRequest>, options?: CallOptions & CallOptionsExt): Promise<DripResponse>;
1120
1120
  timeUntilDrip(
1121
1121
  request: DeepPartial<DripRequest>,
1122
- options?: CallOptions & CallOptionsExt
1122
+ options?: CallOptions & CallOptionsExt,
1123
1123
  ): Promise<TimeUntilDripResponse>;
1124
1124
  getLinkedTwitters(
1125
1125
  request: DeepPartial<GetLinkedTwittersRequest>,
1126
- options?: CallOptions & CallOptionsExt
1126
+ options?: CallOptions & CallOptionsExt,
1127
1127
  ): Promise<GetLinkedTwittersResponse>;
1128
1128
  getLinkedTwitterForAddress(
1129
1129
  request: DeepPartial<LinkedTwitterForAddressRequest>,
1130
- options?: CallOptions & CallOptionsExt
1130
+ options?: CallOptions & CallOptionsExt,
1131
1131
  ): Promise<LinkedTwitterForAddressResponse>;
1132
1132
  getLinkedAddressForTwitter(
1133
1133
  request: DeepPartial<LinkedAddressForTwitterRequest>,
1134
- options?: CallOptions & CallOptionsExt
1134
+ options?: CallOptions & CallOptionsExt,
1135
1135
  ): Promise<LinkedAddressForTwitterResponse>;
1136
1136
  /** Admin utility endpoints for modifying state. Requires a signature with faucet private key. */
1137
1137
  setLinkedTwitter(
1138
1138
  request: DeepPartial<SetLinkedTwitterRequest>,
1139
- options?: CallOptions & CallOptionsExt
1139
+ options?: CallOptions & CallOptionsExt,
1140
1140
  ): Promise<SetLinkedTwitterResponse>;
1141
1141
  }
1142
1142
 
@@ -1164,12 +1164,12 @@ type Builtin = Date | Function | Uint8Array | string | number | boolean | undefi
1164
1164
  export type DeepPartial<T> = T extends Builtin
1165
1165
  ? T
1166
1166
  : T extends Array<infer U>
1167
- ? Array<DeepPartial<U>>
1168
- : T extends ReadonlyArray<infer U>
1169
- ? ReadonlyArray<DeepPartial<U>>
1170
- : T extends {}
1171
- ? { [K in keyof T]?: DeepPartial<T[K]> }
1172
- : Partial<T>;
1167
+ ? Array<DeepPartial<U>>
1168
+ : T extends ReadonlyArray<infer U>
1169
+ ? ReadonlyArray<DeepPartial<U>>
1170
+ : T extends {}
1171
+ ? { [K in keyof T]?: DeepPartial<T[K]> }
1172
+ : Partial<T>;
1173
1173
 
1174
1174
  function longToNumber(long: Long): number {
1175
1175
  if (long.gt(Number.MAX_SAFE_INTEGER)) {
@@ -8,7 +8,7 @@ import { FromTsProtoServiceDefinition } from "nice-grpc-web/lib/service-definiti
8
8
  * @returns FaucetServiceClient
9
9
  */
10
10
  export function createFaucetService(
11
- url: string
11
+ url: string,
12
12
  ): RawClient<FromTsProtoServiceDefinition<typeof FaucetServiceDefinition>> {
13
13
  return createClient(FaucetServiceDefinition, createChannel(url));
14
14
  }