UNPKG

bitsnap-checkout

Version:

This is Bitsnap Checkout React library for easy integration with any website which is using React framework

305 lines (296 loc) 31.1 kB
"use strict"; var __create = Object.create; var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __getProtoOf = Object.getPrototypeOf; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( // If the importer is in node compatibility mode or this is not an ESM // file that has been converted to a CommonJS file using a Babel- // compatible transform (i.e. "__esModule" has not been set), then set // "default" to the CommonJS "module.exports" for node compatibility. isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod )); var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/backend.ts var backend_exports = {}; __export(backend_exports, { BitsnapBackend: () => BitsnapBackend }); module.exports = __toCommonJS(backend_exports); var import_protobuf = require("@bufbuild/protobuf"); var import_zod = __toESM(require("zod")); // src/gen/proto/public/v1/public_api_pb.ts var import_codegenv14 = require("@bufbuild/protobuf/codegenv1"); var import_wkt3 = require("@bufbuild/protobuf/wkt"); // src/gen/proto/common/v1/gateway_pb.ts var import_codegenv1 = require("@bufbuild/protobuf/codegenv1"); var file_common_v1_gateway = /* @__PURE__ */ (0, import_codegenv1.fileDesc)("Chdjb21tb24vdjEvZ2F0ZXdheS5wcm90bxIJY29tbW9uLnYxKokBCgdHYXRld2F5Eg8KC0dBVEVXQVlfQUxMEAASFwoTR0FURVdBWV9QUlpFTEVXWV8yNBABEhIKDkdBVEVXQVlfU1RSSVBFEAISEAoMR0FURVdBWV9UUEFZEAMSHAoYR0FURVdBWV9DQVNIX09OX0RFTElWRVJZEAQSEAoMR0FURVdBWV9GUkVFEAVCTlpMZ2l0aHViLmNvbS9lbW1lbXMvc3VwZXItY2FydC9hcHBzL3Nydi13b3JrZXIvdXRpbHMvbW9kZWxzL2NvbW1vbi92MTtjb21tb252MWIGcHJvdG8z"); // src/gen/proto/common/v1/push_notifications_pb.ts var import_codegenv12 = require("@bufbuild/protobuf/codegenv1"); var import_wkt = require("@bufbuild/protobuf/wkt"); var file_common_v1_push_notifications = /* @__PURE__ */ (0, import_codegenv12.fileDesc)("CiJjb21tb24vdjEvcHVzaF9ub3RpZmljYXRpb25zLnByb3RvEgljb21tb24udjEi9gEKG1B1c2hOb3RpZmljYXRpb25EZXZpY2VUb2tlbhIXCgpwdXNoX3Rva2VuGAIgASgJSACIAQESNAoLZXhwaXJlX3RpbWUYAyABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wSAGIAQESEwoGcDI1NmRoGAQgASgJSAKIAQESFQoIZW5kcG9pbnQYBSABKAlIA4gBARIlCghwbGF0Zm9ybRgGIAEoDjITLmNvbW1vbi52MS5QbGF0Zm9ybUINCgtfcHVzaF90b2tlbkIOCgxfZXhwaXJlX3RpbWVCCQoHX3AyNTZkaEILCglfZW5kcG9pbnQiZwoXUHVzaE5vdGlmaWNhdGlvblBheWxvYWQSDQoFdGl0bGUYAiABKAkSFQoIb3Blbl91cmwYAyABKAlIAYgBARIOCgRib2R5GAQgASgJSABCCQoHbWVzc2FnZUILCglfb3Blbl91cmwqeAoIUGxhdGZvcm0SGAoUUExBVEZPUk1fVU5TUEVDSUZJRUQQABIQCgxQTEFURk9STV9XRUIQARIYChRQTEFURk9STV9JT1NfU0FOREJPWBACEhAKDFBMQVRGT1JNX0lPUxADEhQKEFBMQVRGT1JNX0FORFJPSUQQBCp0ChFOb3RpZmljYXRpb25FdmVudBIRCg1FVkVOVF9VTktOT1dOEAASEgoORVZFTlRfUkVDRUlWRUQQARIQCgxFVkVOVF9PUEVORUQQAhIRCg1FVkVOVF9DTElDS0VEEAMSEwoPRVZFTlRfRElTTUlTU0VEEAQqmQEKGU5vdGlmaWNhdGlvbkdyb3VwSG93T2Z0ZW4SJwojTk9USUZJQ0FUSU9OX0dST1VQX0hPV19PRlRFTl9SQVJFTFkQABImCiJOT1RJRklDQVRJT05fR1JPVVBfSE9XX09GVEVOX09GVEVOEAESKwonTk9USUZJQ0FUSU9OX0dST1VQX0hPV19PRlRFTl9WRVJZX09GVEVOEAJCTlpMZ2l0aHViLmNvbS9lbW1lbXMvc3VwZXItY2FydC9hcHBzL3Nydi13b3JrZXIvdXRpbHMvbW9kZWxzL2NvbW1vbi92MTtjb21tb252MWIGcHJvdG8z", [import_wkt.file_google_protobuf_timestamp]); // src/gen/proto/dashboard/v1/audiobooks_pb.ts var import_codegenv13 = require("@bufbuild/protobuf/codegenv1"); var import_wkt2 = require("@bufbuild/protobuf/wkt"); var file_dashboard_v1_audiobooks = /* @__PURE__ */ (0, import_codegenv13.fileDesc)("Ch1kYXNoYm9hcmQvdjEvYXVkaW9ib29rcy5wcm90bxIXZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEiFgoUR2V0QXVkaW9ib29rc1JlcXVlc3QiIQoTR2V0QXVkaW9ib29rUmVxdWVzdBIKCgJpZBgBIAEoCSKrAQoHQ2hhcHRlchIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESGgoNbXVsdGltZWRpYV9pZBgEIAEoCUgBiAEBEi4KCmNyZWF0ZWRfYXQYBSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wQg4KDF9kZXNjcmlwdGlvbkIQCg5fbXVsdGltZWRpYV9pZCLzAgoJQXVkaW9ib29rEg8KAmlkGAEgASgJSACIAQESEgoKcHJvamVjdF9pZBgCIAEoCRIMCgRuYW1lGAMgASgJEhMKC2Rlc2NyaXB0aW9uGAQgASgJEhMKC2NvdmVyX2ltYWdlGAUgASgJEhcKD3RodW1ibmFpbF9pbWFnZRgGIAEoCRIyCghjaGFwdGVycxgHIAMoCzIgLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkNoYXB0ZXISFwoPaXNfZG93bmxvYWRhYmxlGAggASgIEi4KCmNyZWF0ZWRfYXQYCSABKAsyGi5nb29nbGUucHJvdG9idWYuVGltZXN0YW1wEiQKF2lzX2Jyb3dzZXJfZG93bmxvYWRhYmxlGAogASgISAGIAQESGQoMYWNjZW50X2NvbG9yGAsgASgJSAKIAQFCBQoDX2lkQhoKGF9pc19icm93c2VyX2Rvd25sb2FkYWJsZUIPCg1fYWNjZW50X2NvbG9yIk8KFUdldEF1ZGlvYm9va3NSZXNwb25zZRI2CgphdWRpb2Jvb2tzGAEgAygLMiIuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQXVkaW9ib29rImAKFEdldEF1ZGlvYm9va1Jlc3BvbnNlEjoKCWF1ZGlvYm9vaxgBIAEoCzIiLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkF1ZGlvYm9va0gAiAEBQgwKCl9hdWRpb2Jvb2siVwoeQ3JlYXRlT3JVcGRhdGVBdWRpb2Jvb2tSZXF1ZXN0EjUKCWF1ZGlvYm9vaxgBIAEoCzIiLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkF1ZGlvYm9vayLRAQofQ3JlYXRlT3JVcGRhdGVBdWRpb2Jvb2tSZXNwb25zZRJSCgdzdWNjZXNzGAEgASgLMj8uZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQ3JlYXRlT3JVcGRhdGVBdWRpb2Jvb2tSZXNwb25zZS5SZXN1bHRIABI6CgdmYWlsdXJlGAIgASgOMicuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuRmFpbHVyZU1lc3NhZ2VIABoUCgZSZXN1bHQSCgoCaWQYASABKAlCCAoGcmVzdWx0IiQKFkRlbGV0ZUF1ZGlvYm9va1JlcXVlc3QSCgoCaWQYASABKAkiVQofR2V0QXVkaW9ib29rQWNjZXNzRW1haWxzUmVxdWVzdBIUCgxhdWRpb2Jvb2tfaWQYASABKAkSEgoFZW1haWwYAiABKAlIAIgBAUIICgZfZW1haWwi+AIKIEdldEF1ZGlvYm9va0FjY2Vzc0VtYWlsc1Jlc3BvbnNlElMKB3N1Y2Nlc3MYASABKAsyQC5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5HZXRBdWRpb2Jvb2tBY2Nlc3NFbWFpbHNSZXNwb25zZS5SZXN1bHRIABI6CgdmYWlsdXJlGAIgASgOMicuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuRmFpbHVyZU1lc3NhZ2VIABpYCgtBY2Nlc3NFbWFpbBIKCgJpZBgBIAEoCRINCgVlbWFpbBgCIAEoCRIuCgpjcmVhdGVkX2F0GAMgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcBpfCgZSZXN1bHQSVQoGZW1haWxzGAEgAygLMkUuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuR2V0QXVkaW9ib29rQWNjZXNzRW1haWxzUmVzcG9uc2UuQWNjZXNzRW1haWxCCAoGcmVzdWx0IkMKHENyZWF0ZUF1ZGlvYm9va0FjY2Vzc1JlcXVlc3QSFAoMYXVkaW9ib29rX2lkGAEgASgJEg0KBWVtYWlsGAIgASgJIjgKHERlbGV0ZUF1ZGlvYm9va0FjY2Vzc1JlcXVlc3QSGAoQc3lzdGVtX2FjY2Vzc19pZBgBIAEoCSJ/CgxCb29sUmVzcG9uc2USKQoHc3VjY2VzcxgBIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEjoKB2ZhaWx1cmUYAiABKA4yJy5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5GYWlsdXJlTWVzc2FnZUgAQggKBnJlc3VsdCqpAQoORmFpbHVyZU1lc3NhZ2USGwoXRkFJTFVSRV9NRVNTQUdFX1VOS05PV04QABIlCiFGQUlMVVJFX01FU1NBR0VfUFJPSkVDVF9OT1RfRk9VTkQQARIlCiFGQUlMVVJFX01FU1NBR0VfQ0hBUFRFUl9OT1RfRk9VTkQQAhIsCihGQUlMVVJFX01FU1NBR0VfSU5DT1JSRUNUX0NIQVBURVJfRk9STUFUEAMy6gYKEUF1ZGlvYm9va3NTZXJ2aWNlEm4KDUdldEF1ZGlvYm9va3MSLS5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5HZXRBdWRpb2Jvb2tzUmVxdWVzdBouLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkdldEF1ZGlvYm9va3NSZXNwb25zZRJrCgxHZXRBdWRpb2Jvb2sSLC5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5HZXRBdWRpb2Jvb2tSZXF1ZXN0Gi0uZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuR2V0QXVkaW9ib29rUmVzcG9uc2USjAEKF0NyZWF0ZU9yVXBkYXRlQXVkaW9ib29rEjcuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQ3JlYXRlT3JVcGRhdGVBdWRpb2Jvb2tSZXF1ZXN0GjguZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQ3JlYXRlT3JVcGRhdGVBdWRpb2Jvb2tSZXNwb25zZRJpCg9EZWxldGVBdWRpb2Jvb2sSLy5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5EZWxldGVBdWRpb2Jvb2tSZXF1ZXN0GiUuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQm9vbFJlc3BvbnNlEo8BChhHZXRBdWRpb2Jvb2tBY2Nlc3NFbWFpbHMSOC5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5HZXRBdWRpb2Jvb2tBY2Nlc3NFbWFpbHNSZXF1ZXN0GjkuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuR2V0QXVkaW9ib29rQWNjZXNzRW1haWxzUmVzcG9uc2USdQoVQ3JlYXRlQXVkaW9ib29rQWNjZXNzEjUuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQ3JlYXRlQXVkaW9ib29rQWNjZXNzUmVxdWVzdBolLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkJvb2xSZXNwb25zZRJ1ChVEZWxldGVBdWRpb2Jvb2tBY2Nlc3MSNS5kYXNoYm9hcmQuYXVkaW9ib29rcy52MS5EZWxldGVBdWRpb2Jvb2tBY2Nlc3NSZXF1ZXN0GiUuZGFzaGJvYXJkLmF1ZGlvYm9va3MudjEuQm9vbFJlc3BvbnNlYgZwcm90bzM", [import_wkt2.file_google_protobuf_timestamp, import_wkt2.file_google_protobuf_empty]); // src/gen/proto/public/v1/public_api_pb.ts var file_public_v1_public_api = /* @__PURE__ */ (0, import_codegenv14.fileDesc)("ChpwdWJsaWMvdjEvcHVibGljX2FwaS5wcm90bxINcHVibGljX2FwaS52MSJiCilOb3RpZnlVc2VyQWJvdXRQcm9kdWN0QXZhaWxhYmlsaXR5UmVxdWVzdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnByb2R1Y3RfaWQYAiABKAkSDQoFZW1haWwYAyABKAkiNwofQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50UmVxdWVzdBIUCgx2YWxpZGF0ZV91cmwYASABKAkiPAogQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50UmVzcG9uc2USGAoQbWVyY2hhbnRfc2Vzc2lvbhgBIAEoCSJOCiJHZXRBdmFpbGFibGVDb3VudEZvclByb2R1Y3RSZXF1ZXN0EhIKCnByb2plY3RfaWQYASABKAkSFAoMYWxsX3ZhcmlhbnRzGAIgAygJIsIECiNHZXRBdmFpbGFibGVDb3VudEZvclByb2R1Y3RSZXNwb25zZRJhChBhdmFpbGFibGVfY291bnRzGAEgAygLMkcucHVibGljX2FwaS52MS5HZXRBdmFpbGFibGVDb3VudEZvclByb2R1Y3RSZXNwb25zZS5BdmFpbGFibGVDb3VudHNFbnRyeRJMCgVlcnJvchgCIAEoDjI4LnB1YmxpY19hcGkudjEuR2V0QXZhaWxhYmxlQ291bnRGb3JQcm9kdWN0UmVzcG9uc2UuRXJyb3JIAIgBARpRChhBdmFpbGFibGVDb3VudEZvclByb2R1Y3QSIwobYXZhaWxhYmxlX3F1YW50aXR5X3RvX29yZGVyGAEgASgFEhAKCGNhbl9iYWNrGAIgASgIGoMBChRBdmFpbGFibGVDb3VudHNFbnRyeRILCgNrZXkYASABKAkSWgoFdmFsdWUYAiABKAsySy5wdWJsaWNfYXBpLnYxLkdldEF2YWlsYWJsZUNvdW50Rm9yUHJvZHVjdFJlc3BvbnNlLkF2YWlsYWJsZUNvdW50Rm9yUHJvZHVjdDoCOAEihgEKBUVycm9yEhEKDUVSUk9SX1VOS05PV04QABIbChdFUlJPUl9QUk9KRUNUX05PVF9GT1VORBABEh8KG0VSUk9SX1BST0RVQ1RfTk9UX0FWQUlMQUJMRRACEiwKKEVSUk9SX1BST0RVQ1RfTk9UX0FWQUlMQUJMRV9CVVRfQ0FOX0JBQ0sQA0IICgZfZXJyb3IiNQodVXNlclBhbmVsRGVsZXRlQWNjb3VudFJlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJIkAKFERpZEJ1eVByb2R1Y3RSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCRISCgpwcm9kdWN0X2lkGAIgASgJIv4BCiFVcGRhdGVOb3RpZmljYXRpb25TZXR0aW5nc1JlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkSTQoNbW9kaWZpY2F0aW9ucxgDIAMoCzI2LnB1YmxpY19hcGkudjEuVXBkYXRlTm90aWZpY2F0aW9uU2V0dGluZ3NSZXF1ZXN0Lkdyb3VwEjoKD2VuYWJsZWRfbWV0aG9kcxgEIAMoDjIhLnB1YmxpY19hcGkudjEuTm90aWZpY2F0aW9uTWV0aG9kGiQKBUdyb3VwEgoKAmlkGAEgASgJEg8KB2VuYWJsZWQYAiABKAgiUQonVXBkYXRlR2xvYmFsTm90aWZpY2F0aW9uU2V0dGluZ3NSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCRIQCghpc19tdXRlZBgCIAEoCCJRCiVHZXROb3RpZmljYXRpb25TZXR0aW5nc0RldGFpbHNSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJIqEBChFOb3RpZmljYXRpb25Hcm91cBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhgKC2Rlc2NyaXB0aW9uGAMgASgJSACIAQESDwoHZW5hYmxlZBgEIAEoCBI3Cglob3dfb2Z0ZW4YBSABKA4yJC5jb21tb24udjEuTm90aWZpY2F0aW9uR3JvdXBIb3dPZnRlbkIOCgxfZGVzY3JpcHRpb24isQIKJkdldE5vdGlmaWNhdGlvblNldHRpbmdzRGV0YWlsc1Jlc3BvbnNlEhIKCnByb2plY3RfaWQYASABKAkSDAoEbmFtZRgCIAEoCRIvCgV0aGVtZRgDIAEoCzIbLnB1YmxpY19hcGkudjEuUHJvamVjdFRoZW1lSACIAQESPAoRYXZhaWxhYmxlX21ldGhvZHMYBCADKA4yIS5wdWJsaWNfYXBpLnYxLk5vdGlmaWNhdGlvbk1ldGhvZBI6Cg9lbmFibGVkX21ldGhvZHMYBSADKA4yIS5wdWJsaWNfYXBpLnYxLk5vdGlmaWNhdGlvbk1ldGhvZBIwCgZncm91cHMYBiADKAsyIC5wdWJsaWNfYXBpLnYxLk5vdGlmaWNhdGlvbkdyb3VwQggKBl90aGVtZSJDCh5HZXROb3RpZmljYXRpb25TZXR0aW5nc1JlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJEgsKA2FsbBgCIAEoCCLwAgofR2V0Tm90aWZpY2F0aW9uU2V0dGluZ3NSZXNwb25zZRJICghwcm9qZWN0cxgBIAMoCzI2LnB1YmxpY19hcGkudjEuR2V0Tm90aWZpY2F0aW9uU2V0dGluZ3NSZXNwb25zZS5Qcm9qZWN0EhAKCGlzX211dGVkGAIgASgIGqUBCgdQcm9qZWN0EgoKAmlkGAEgASgJEgwKBG5hbWUYAiABKAkSRQoGc3RhdHVzGAMgASgOMjUucHVibGljX2FwaS52MS5HZXROb3RpZmljYXRpb25TZXR0aW5nc1Jlc3BvbnNlLlN0YXR1cxIvCgV0aGVtZRgEIAEoCzIbLnB1YmxpY19hcGkudjEuUHJvamVjdFRoZW1lSACIAQFCCAoGX3RoZW1lIkkKBlN0YXR1cxIWChJTVEFUVVNfVU5TUEVDSUZJRUQQABISCg5TVEFUVVNfRU5BQkxFRBABEhMKD1NUQVRVU19ESVNBQkxFRBACIkEKKVVzZXJQYW5lbFB1c2hHZXRBdmFpbGFibGVDb21wYW5pZXNSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCSLrAgoqVXNlclBhbmVsUHVzaEdldEF2YWlsYWJsZUNvbXBhbmllc1Jlc3BvbnNlElQKCWNvbXBhbmllcxgBIAMoCzJBLnB1YmxpY19hcGkudjEuVXNlclBhbmVsUHVzaEdldEF2YWlsYWJsZUNvbXBhbmllc1Jlc3BvbnNlLkNvbXBhbnkacQoFR3JvdXASCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIYCgtkZXNjcmlwdGlvbhgDIAEoCUgAiAEBEhYKCWhvd19vZnRlbhgEIAEoCUgBiAEBQg4KDF9kZXNjcmlwdGlvbkIMCgpfaG93X29mdGVuGnQKB0NvbXBhbnkSCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRJPCgZncm91cHMYAyADKAsyPy5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbFB1c2hHZXRBdmFpbGFibGVDb21wYW5pZXNSZXNwb25zZS5Hcm91cCIwChpTaG91bGRTaG9wUHJvZHVjdHNSZXNwb25zZRISCgppc192aXNpYmxlGAEgASgIIkQKFkdldFNob3BQcm9kdWN0c1JlcXVlc3QSGQoMYWNjZXNzX3Rva2VuGAEgASgJSACIAQFCDwoNX2FjY2Vzc190b2tlbiLYAQoXR2V0U2hvcFByb2R1Y3RzUmVzcG9uc2USQAoIcHJvZHVjdHMYBSADKAsyLi5wdWJsaWNfYXBpLnYxLkdldFNob3BQcm9kdWN0c1Jlc3BvbnNlLlByb2R1Y3QaewoHUHJvZHVjdBIKCgJpZBgBIAEoCRIMCgRuYW1lGAIgASgJEhEKCWltYWdlX3VybBgDIAEoCRINCgVwcmljZRgEIAEoCRIeChFpc19hbHJlYWR5X2JvdWdodBgFIAEoCEgAiAEBQhQKEl9pc19hbHJlYWR5X2JvdWdodCLUAQofVXNlclBhbmVsR2V0RmlsZURldGFpbHNSZXNwb25zZRJICgdzdWNjZXNzGAEgASgLMjUucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRGaWxlRGV0YWlsc1Jlc3BvbnNlLlJlc3VsdEgAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSAAaKwoGUmVzdWx0EhIKCnByb2plY3RfaWQYASABKAkSDQoFZmlsZXMYAiADKAlCCAoGcmVzdWx0IkkKHlVzZXJQYW5lbEdldEZpbGVEZXRhaWxzUmVxdWVzdBIUCgxhY2Nlc3NfdG9rZW4YASABKAkSEQoJYWNjZXNzX2lkGAIgASgJIvkCCiFVc2VyUGFuZWxHZXRUaWNrZXREZXRhaWxzUmVzcG9uc2USSgoHc3VjY2VzcxgBIAEoCzI3LnB1YmxpY19hcGkudjEuVXNlclBhbmVsR2V0VGlja2V0RGV0YWlsc1Jlc3BvbnNlLlJlc3VsdEgAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSAAaywEKBlJlc3VsdBISCgpwcm9qZWN0X2lkGAEgASgJEhIKCnRpY2tldF91cmwYAiABKAkSFAoMcHJvZHVjdF9uYW1lGAMgASgJEhkKEXByb2R1Y3RfaW1hZ2VfdXJsGAQgASgJEh4KEWdvb2dsZV93YWxsZXRfdXJsGAUgASgJSACIAQESHQoQYXBwbGVfd2FsbGV0X3VybBgGIAEoCUgBiAEBQhQKEl9nb29nbGVfd2FsbGV0X3VybEITChFfYXBwbGVfd2FsbGV0X3VybEIICgZyZXN1bHQiSwogVXNlclBhbmVsR2V0VGlja2V0RGV0YWlsc1JlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJEhEKCWFjY2Vzc19pZBgCIAEoCSKqBAowVXNlclBhbmVsR2V0QXVkaW9ib29rRGV0YWlsc0Rvd25sb2FkVVJMc1Jlc3BvbnNlElkKB3N1Y2Nlc3MYASABKAsyRi5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNEb3dubG9hZFVSTHNSZXNwb25zZS5SZXN1bHRIABIwCgdmYWlsdXJlGAIgASgOMh0ucHVibGljX2FwaS52MS5GYWlsdXJlTWVzc2FnZUgAGnYKGEF1ZGlvYm9va0Rvd25sb2FkRGV0YWlscxISCgpjaGFwdGVyX2lkGAEgASgJEhIKCnB1YmxpY191cmwYAiABKAkSHQoQZG93bmxvYWRhYmxlX3VybBgDIAEoCUgAiAEBQhMKEV9kb3dubG9hZGFibGVfdXJsGuYBCgZSZXN1bHQSfAoaYXVkaW9ib29rX2Rvd25sb2FkX2RldGFpbHMYASADKAsyWC5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNEb3dubG9hZFVSTHNSZXNwb25zZS5BdWRpb2Jvb2tEb3dubG9hZERldGFpbHMSMwomaXNfYXZhaWxhYmxlX3RvX2Rvd25sb2FkX2luX21vYmlsZV9hcHAYAiABKAhIAIgBAUIpCidfaXNfYXZhaWxhYmxlX3RvX2Rvd25sb2FkX2luX21vYmlsZV9hcHBCCAoGcmVzdWx0IoIBCi9Vc2VyUGFuZWxHZXRBdWRpb2Jvb2tEZXRhaWxzRG93bmxvYWRVUkxzUmVxdWVzdBIUCgxhY2Nlc3NfdG9rZW4YASABKAkSEQoJYWNjZXNzX2lkGAIgASgJEhcKCmlzX2Jyb3dzZXIYAyABKAhIAIgBAUINCgtfaXNfYnJvd3NlciKbAQokVXNlclBhbmVsR2V0QXVkaW9ib29rRGV0YWlsc1Jlc3BvbnNlEjcKCWF1ZGlvYm9vaxgBIAEoCzIiLmRhc2hib2FyZC5hdWRpb2Jvb2tzLnYxLkF1ZGlvYm9va0gAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSABCCAoGcmVzdWx0Ik4KI1VzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCRIRCglhY2Nlc3NfaWQYAiABKAkiMwobVXNlclBhbmVsR2V0UHJvZHVjdHNSZXF1ZXN0EhQKDGFjY2Vzc190b2tlbhgBIAEoCSLZAQocVXNlclBhbmVsR2V0UHJvZHVjdHNSZXNwb25zZRJFCgdzdWNjZXNzGAEgASgLMjIucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRQcm9kdWN0c1Jlc3BvbnNlLlJlc3VsdEgAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSAAaNgoGUmVzdWx0EiwKCHByb2R1Y3RzGAEgAygLMhoucHVibGljX2FwaS52MS5Vc2VyUHJvZHVjdEIICgZyZXN1bHQiLgoWVXNlclBhbmVsTG9nb3V0UmVxdWVzdBIUCgxhY2Nlc3NfdG9rZW4YASABKAkitAEKHlVzZXJQYW5lbExvZ2luV2l0aENvZGVSZXNwb25zZRIWCgxhY2Nlc3NfdG9rZW4YASABKAlIABIwCgdmYWlsdXJlGAIgASgOMh0ucHVibGljX2FwaS52MS5GYWlsdXJlTWVzc2FnZUgAEhIKBWVtYWlsGAMgASgJSAGIAQESFAoHdXNlcl9pZBgEIAEoCUgCiAEBQggKBnJlc3VsdEIICgZfZW1haWxCCgoIX3VzZXJfaWQiLQodVXNlclBhbmVsTG9naW5XaXRoQ29kZVJlcXVlc3QSDAoEY29kZRgBIAEoBSKxAQoWVXNlclBhbmVsTG9naW5SZXNwb25zZRI/CgdzdWNjZXNzGAEgASgLMiwucHVibGljX2FwaS52MS5Vc2VyUGFuZWxMb2dpblJlc3BvbnNlLlJlc3VsdEgAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSAAaGgoGUmVzdWx0EhAKCHJldHJ5X2luGAEgASgFQggKBnJlc3VsdCJeChVVc2VyUGFuZWxMb2dpblJlcXVlc3QSDQoFZW1haWwYASABKAkSHwoScmVndWxhdGlvbnNfYWNjZXB0GAIgASgISACIAQFCFQoTX3JlZ3VsYXRpb25zX2FjY2VwdCI5ChdHZXRPcmRlclJldHJ5VXJsUmVxdWVzdBIKCgJpZBgBIAEoCRISCgpwcm9qZWN0X2lkGAIgASgJIr8BChhHZXRPcmRlclJldHJ5VXJsUmVzcG9uc2USPgoDdXJsGAEgASgLMi8ucHVibGljX2FwaS52MS5HZXRPcmRlclJldHJ5VXJsUmVzcG9uc2UuU3VjY2Vzc0gAEhEKB2ZhaWx1cmUYAiABKAlIABpGCgdTdWNjZXNzEgsKA3VybBgBIAEoCRIuCgpleHBpcmVzX2F0GAIgASgLMhouZ29vZ2xlLnByb3RvYnVmLlRpbWVzdGFtcEIICgZyZXN1bHQiMQoPR2V0T3JkZXJSZXF1ZXN0EgoKAmlkGAEgASgJEhIKCnByb2plY3RfaWQYAiABKAkifAoQR2V0T3JkZXJSZXNwb25zZRIPCgJpZBgBIAEoCUgAiAEBEiIKBWl0ZW1zGAIgAygLMhMucHVibGljX2FwaS52MS5JdGVtEiwKB2RldGFpbHMYAyABKAsyGy5wdWJsaWNfYXBpLnYxLk9yZGVyRGV0YWlsc0IFCgNfaWQi+QEKDE9yZGVyRGV0YWlscxI1CgVpdGVtcxgBIAMoCzImLnB1YmxpY19hcGkudjEuT3JkZXJEZXRhaWxzLlNpbmdsZUl0ZW0SIwoHZ2F0ZXdheRgCIAEoDjISLmNvbW1vbi52MS5HYXRld2F5GowBCgpTaW5nbGVJdGVtEgoKAmlkGAEgASgJEhYKCWltYWdlX3VybBgCIAEoCUgAiAEBEgwKBG5hbWUYAyABKAkSEAoIcXVhbnRpdHkYBCABKAUSFAoMcHJpY2VfYW1vdW50GAUgASgDEhYKDnByaWNlX2N1cnJlbmN5GAYgASgJQgwKCl9pbWFnZV91cmwi0QEKBEl0ZW0SCgoCaWQYASABKAkSDAoEbmFtZRgCIAEoCRIRCglpbWFnZV91cmwYAyABKAkSPAoRZmlsZV9kb3dubG9hZGFibGUYBCABKAsyHy5wdWJsaWNfYXBpLnYxLkZpbGVEb3dubG9hZGFibGVIABItCglhdWRpb2Jvb2sYBSABKAsyGC5wdWJsaWNfYXBpLnYxLkF1ZGlvYm9va0gAEicKBnRpY2tldBgGIAEoCzIVLnB1YmxpY19hcGkudjEuVGlja2V0SABCBgoEaXRlbSIkChBGaWxlRG93bmxvYWRhYmxlEhAKCGZpbGVfdXJsGAEgASgJIiUKCUF1ZGlvYm9vaxIYChBhcHBfZG93bmxvYWRfdXJsGAEgASgJIoEBCgZUaWNrZXQSEQoJdGlja2V0X2lkGAEgASgJEhsKDmFwcGxlX3Bhc3NfdXJsGAIgASgJSACIAQESHgoRZ29vZ2xlX3RpY2tldF91cmwYAyABKAlIAYgBAUIRCg9fYXBwbGVfcGFzc191cmxCFAoSX2dvb2dsZV90aWNrZXRfdXJsIq0CCgtVc2VyUHJvZHVjdBISCgpwcm9qZWN0X2lkGAEgASgJEhQKDHByb2plY3RfbmFtZRgCIAEoCRISCgpwcm9kdWN0X2lkGAMgASgJEhQKDHByb2R1Y3RfbmFtZRgEIAEoCRIbChNwcm9kdWN0X2Rlc2NyaXB0aW9uGAUgASgJEhkKEXByb2R1Y3RfaW1hZ2VfdXJsGAYgASgJEjQKDHByb2R1Y3RfdHlwZRgHIAEoDjIeLnB1YmxpY19hcGkudjEuVXNlclByb2R1Y3RUeXBlEhEKCWFjY2Vzc19pZBgIIAEoCRI3Cg1wcm9qZWN0X3RoZW1lGAkgASgLMhsucHVibGljX2FwaS52MS5Qcm9qZWN0VGhlbWVIAIgBAUIQCg5fcHJvamVjdF90aGVtZSJ1CgxCb29sUmVzcG9uc2USKQoHc3VjY2VzcxgBIAEoCzIWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eUgAEjAKB2ZhaWx1cmUYAiABKA4yHS5wdWJsaWNfYXBpLnYxLkZhaWx1cmVNZXNzYWdlSABCCAoGcmVzdWx0Im4KEFB1c2hFdmVudFJlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJEhcKD25vdGlmaWNhdGlvbl9pZBgCIAEoCRIrCgVldmVudBgDIAEoDjIcLmNvbW1vbi52MS5Ob3RpZmljYXRpb25FdmVudCKtAQoaUHVzaFNlbmREZXZpY2VUb2tlblJlcXVlc3QSFAoMYWNjZXNzX3Rva2VuGAEgASgJEjcKB3BheWxvYWQYAiABKAsyJi5jb21tb24udjEuUHVzaE5vdGlmaWNhdGlvbkRldmljZVRva2VuEiQKF2lzX25vdGlmaWNhdGlvbl9ncmFudGVkGAMgASgISACIAQFCGgoYX2lzX25vdGlmaWNhdGlvbl9ncmFudGVkIsIBCgxQcm9qZWN0VGhlbWUSFgoJaW1hZ2VfdXJsGAEgASgJSACIAQESGwoOaW1hZ2VfZGFya191cmwYAiABKAlIAYgBARIYCgticmFuZF9jb2xvchgDIAEoCUgCiAEBEh0KEGJyYW5kX2NvbG9yX2RhcmsYBCABKAlIA4gBAUIMCgpfaW1hZ2VfdXJsQhEKD19pbWFnZV9kYXJrX3VybEIOCgxfYnJhbmRfY29sb3JCEwoRX2JyYW5kX2NvbG9yX2RhcmsqhwEKD1VzZXJQcm9kdWN0VHlwZRIdChlVU0VSX1BST0RVQ1RfVFlQRV9VTktOT1dOEAASGwoXVVNFUl9QUk9EVUNUX1RZUEVfQVVESU8QARIaChZVU0VSX1BST0RVQ1RfVFlQRV9GSUxFEAISHAoYVVNFUl9QUk9EVUNUX1RZUEVfVElDS0VUEAMqsQMKDkZhaWx1cmVNZXNzYWdlEhsKF0ZBSUxVUkVfTUVTU0FHRV9VTktOT1dOEAASIwofRkFJTFVSRV9NRVNTQUdFX0VNQUlMX05PVF9GT1VORBABEiMKH0ZBSUxVUkVfTUVTU0FHRV9JTkNPUlJFQ1RfRU1BSUwQAhIiCh5GQUlMVVJFX01FU1NBR0VfSU5DT1JSRUNUX0NPREUQAxIwCixGQUlMVVJFX01FU1NBR0VfR0VORVJBVEVfQUNDRVNTX1RPS0VOX0ZBSUxFRBAEEiEKHUZBSUxVUkVfTUVTU0FHRV9MT0dPVVRfRkFJTEVEEAUSJQohRkFJTFVSRV9NRVNTQUdFX1BSRFVDVFNfTk9UX0ZPVU5EEAYSJwojRkFJTFVSRV9NRVNTQUdFX0FVRElPQk9PS19OT1RfRk9VTkQQBxInCiNGQUlMVVJFX01FU1NBR0VfSU5DT1JSRUNUX0FVRElPQk9PSxAIEiAKHEZBSUxVUkVfTUVTU0FHRV9VTkFVVEhPUklaRUQQCRIkCiBGQUlMVVJFX01FU1NBR0VfVElDS0VUX05PVF9GT1VORBAKKo8BChJOb3RpZmljYXRpb25NZXRob2QSHwobTk9USUZJQ0FUSU9OX01FVEhPRF9VTktOT1dOEAASHQoZTk9USUZJQ0FUSU9OX01FVEhPRF9FTUFJTBABEhsKF05PVElGSUNBVElPTl9NRVRIT0RfU01TEAISHAoYTk9USUZJQ0FUSU9OX01FVEhPRF9QVVNIEAMyhBQKEFB1YmxpY0FwaVNlcnZpY2USSwoIR2V0T3JkZXISHi5wdWJsaWNfYXBpLnYxLkdldE9yZGVyUmVxdWVzdBofLnB1YmxpY19hcGkudjEuR2V0T3JkZXJSZXNwb25zZRJjChBHZXRPcmRlclJldHJ5VXJsEiYucHVibGljX2FwaS52MS5HZXRPcmRlclJldHJ5VXJsUmVxdWVzdBonLnB1YmxpY19hcGkudjEuR2V0T3JkZXJSZXRyeVVybFJlc3BvbnNlEl0KDlVzZXJQYW5lbExvZ2luEiQucHVibGljX2FwaS52MS5Vc2VyUGFuZWxMb2dpblJlcXVlc3QaJS5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbExvZ2luUmVzcG9uc2USdQoWVXNlclBhbmVsTG9naW5XaXRoQ29kZRIsLnB1YmxpY19hcGkudjEuVXNlclBhbmVsTG9naW5XaXRoQ29kZVJlcXVlc3QaLS5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbExvZ2luV2l0aENvZGVSZXNwb25zZRJVCg9Vc2VyUGFuZWxMb2dvdXQSJS5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbExvZ291dFJlcXVlc3QaGy5wdWJsaWNfYXBpLnYxLkJvb2xSZXNwb25zZRJjChZVc2VyUGFuZWxEZWxldGVBY2NvdW50EiwucHVibGljX2FwaS52MS5Vc2VyUGFuZWxEZWxldGVBY2NvdW50UmVxdWVzdBobLnB1YmxpY19hcGkudjEuQm9vbFJlc3BvbnNlEm8KFFVzZXJQYW5lbEdldFByb2R1Y3RzEioucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRQcm9kdWN0c1JlcXVlc3QaKy5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldFByb2R1Y3RzUmVzcG9uc2UShwEKHFVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHMSMi5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNSZXF1ZXN0GjMucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRBdWRpb2Jvb2tEZXRhaWxzUmVzcG9uc2USqwEKKFVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNEb3dubG9hZFVSTHMSPi5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldEF1ZGlvYm9va0RldGFpbHNEb3dubG9hZFVSTHNSZXF1ZXN0Gj8ucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRBdWRpb2Jvb2tEZXRhaWxzRG93bmxvYWRVUkxzUmVzcG9uc2USeAoXVXNlclBhbmVsR2V0RmlsZURldGFpbHMSLS5wdWJsaWNfYXBpLnYxLlVzZXJQYW5lbEdldEZpbGVEZXRhaWxzUmVxdWVzdBouLnB1YmxpY19hcGkudjEuVXNlclBhbmVsR2V0RmlsZURldGFpbHNSZXNwb25zZRJ+ChlVc2VyUGFuZWxHZXRUaWNrZXREZXRhaWxzEi8ucHVibGljX2FwaS52MS5Vc2VyUGFuZWxHZXRUaWNrZXREZXRhaWxzUmVxdWVzdBowLnB1YmxpY19hcGkudjEuVXNlclBhbmVsR2V0VGlja2V0RGV0YWlsc1Jlc3BvbnNlElgKE1B1c2hTZW5kRGV2aWNlVG9rZW4SKS5wdWJsaWNfYXBpLnYxLlB1c2hTZW5kRGV2aWNlVG9rZW5SZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EkQKCVB1c2hFdmVudBIfLnB1YmxpY19hcGkudjEuUHVzaEV2ZW50UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eRJXChJTaG91bGRTaG9wUHJvZHVjdHMSFi5nb29nbGUucHJvdG9idWYuRW1wdHkaKS5wdWJsaWNfYXBpLnYxLlNob3VsZFNob3BQcm9kdWN0c1Jlc3BvbnNlEmAKD0dldFNob3BQcm9kdWN0cxIlLnB1YmxpY19hcGkudjEuR2V0U2hvcFByb2R1Y3RzUmVxdWVzdBomLnB1YmxpY19hcGkudjEuR2V0U2hvcFByb2R1Y3RzUmVzcG9uc2USTAoNRGlkQnV5UHJvZHVjdBIjLnB1YmxpY19hcGkudjEuRGlkQnV5UHJvZHVjdFJlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkSeAoXR2V0Tm90aWZpY2F0aW9uU2V0dGluZ3MSLS5wdWJsaWNfYXBpLnYxLkdldE5vdGlmaWNhdGlvblNldHRpbmdzUmVxdWVzdBouLnB1YmxpY19hcGkudjEuR2V0Tm90aWZpY2F0aW9uU2V0dGluZ3NSZXNwb25zZRKNAQoeR2V0Tm90aWZpY2F0aW9uU2V0dGluZ3NEZXRhaWxzEjQucHVibGljX2FwaS52MS5HZXROb3RpZmljYXRpb25TZXR0aW5nc0RldGFpbHNSZXF1ZXN0GjUucHVibGljX2FwaS52MS5HZXROb3RpZmljYXRpb25TZXR0aW5nc0RldGFpbHNSZXNwb25zZRJyCiBVcGRhdGVHbG9iYWxOb3RpZmljYXRpb25TZXR0aW5ncxI2LnB1YmxpY19hcGkudjEuVXBkYXRlR2xvYmFsTm90aWZpY2F0aW9uU2V0dGluZ3NSZXF1ZXN0GhYuZ29vZ2xlLnByb3RvYnVmLkVtcHR5EmYKGlVwZGF0ZU5vdGlmaWNhdGlvblNldHRpbmdzEjAucHVibGljX2FwaS52MS5VcGRhdGVOb3RpZmljYXRpb25TZXR0aW5nc1JlcXVlc3QaFi5nb29nbGUucHJvdG9idWYuRW1wdHkShAEKG0dldEF2YWlsYWJsZUNvdW50Rm9yUHJvZHVjdBIxLnB1YmxpY19hcGkudjEuR2V0QXZhaWxhYmxlQ291bnRGb3JQcm9kdWN0UmVxdWVzdBoyLnB1YmxpY19hcGkudjEuR2V0QXZhaWxhYmxlQ291bnRGb3JQcm9kdWN0UmVzcG9uc2USewoYQXBwbGVQYXlWYWxpZGF0ZU1lcmNoYW50Ei4ucHVibGljX2FwaS52MS5BcHBsZVBheVZhbGlkYXRlTWVyY2hhbnRSZXF1ZXN0Gi8ucHVibGljX2FwaS52MS5BcHBsZVBheVZhbGlkYXRlTWVyY2hhbnRSZXNwb25zZRJ2CiJOb3RpZnlVc2VyQWJvdXRQcm9kdWN0QXZhaWxhYmlsaXR5EjgucHVibGljX2FwaS52MS5Ob3RpZnlVc2VyQWJvdXRQcm9kdWN0QXZhaWxhYmlsaXR5UmVxdWVzdBoWLmdvb2dsZS5wcm90b2J1Zi5FbXB0eWIGcHJvdG8z", [import_wkt3.file_google_protobuf_timestamp, file_common_v1_gateway, file_common_v1_push_notifications, import_wkt3.file_google_protobuf_empty, file_dashboard_v1_audiobooks]); var NotifyUserAboutProductAvailabilityRequestSchema = /* @__PURE__ */ (0, import_codegenv14.messageDesc)(file_public_v1_public_api, 0); var PublicApiService = /* @__PURE__ */ (0, import_codegenv14.serviceDesc)(file_public_v1_public_api, 0); // src/models.ts var z = __toESM(require("zod")); var BitsnapModels; ((BitsnapModels2) => { BitsnapModels2.BaselinkerFieldsSchema = z.object({ storageID: z.string().optional() }); BitsnapModels2.MetadataSchema = z.record(z.string(), z.any()); BitsnapModels2.VariantSchema = z.object({ id: z.string(), name: z.string(), price: z.number(), currency: z.string(), metadata: BitsnapModels2.MetadataSchema.optional(), images: z.array(z.string()), availableQuantity: z.number() }); BitsnapModels2.AdditionalSchema = z.object({ sku: z.string().optional(), baselinkerFields: BitsnapModels2.BaselinkerFieldsSchema.optional() }); BitsnapModels2.ItemSchema = z.object({ id: z.string(), ownerID: z.string().optional(), name: z.string(), description: z.union([z.string(), z.null()]).optional(), createdAt: z.number().optional(), updatedAt: z.number().optional(), price: z.number(), currency: z.string(), metadata: BitsnapModels2.MetadataSchema.optional(), image_url: z.string(), images: z.array(z.string()), isDeliverable: z.boolean().optional(), availableQuantity: z.number().optional(), additional: BitsnapModels2.AdditionalSchema.optional(), variants: z.array(BitsnapModels2.VariantSchema).optional() }); BitsnapModels2.DataSchema = z.object({ success: z.boolean(), result: z.array(BitsnapModels2.ItemSchema), totalCount: z.number() }); BitsnapModels2.ProductsResultResultSchema = z.object({ data: BitsnapModels2.DataSchema }); BitsnapModels2.ProductsResultElementSchema = z.array( z.object({ result: BitsnapModels2.ProductsResultResultSchema }) ); BitsnapModels2.ProductResultSchema = z.array( z.object({ result: z.object({ data: z.object({ success: z.boolean(), message: z.string().optional(), result: BitsnapModels2.ItemSchema.optional() }) }) }) ); })(BitsnapModels || (BitsnapModels = {})); // src/public.api.client.ts var import_connect = require("@connectrpc/connect"); var import_connect_node = require("@connectrpc/connect-node"); var PublicApiClient; ((PublicApiClient2) => { function get(host) { return (0, import_connect.createClient)(PublicApiService, getTransport(host)); } PublicApiClient2.get = get; let transport; function getTransport(host) { if (transport == null) { transport = (0, import_connect_node.createConnectTransport)({ httpVersion: "1.1", useBinaryFormat: true, baseUrl: host + "/api/rpc" }); } return transport; } })(PublicApiClient || (PublicApiClient = {})); // src/backend.ts var BACKEND_HOST = "https://bitsnap.pl"; var API_KEY; var BitsnapBackend; ((BitsnapBackend2) => { async function setCustomHost(host) { BACKEND_HOST = host; } BitsnapBackend2.setCustomHost = setCustomHost; function getHost() { return BACKEND_HOST; } BitsnapBackend2.getHost = getHost; async function setApiKey(apiKey) { API_KEY = apiKey; } BitsnapBackend2.setApiKey = setApiKey; async function getProduct(projectID, id, requestInit) { var _a; const payload = { "0": { projectID, id } }; const encodedPayload = new URLSearchParams(); encodedPayload.set("batch", "1"); encodedPayload.set("input", JSON.stringify(payload)); const result = await fetch( BACKEND_HOST + "/api/trpc/product.getProductById?" + encodedPayload.toString(), { ...requestInit != null ? requestInit : {}, headers: { ...(_a = requestInit == null ? void 0 : requestInit.headers) != null ? _a : {}, "Content-Type": "application/json", Priority: "u=3, i" } } ); const downloadedPayload = await result.json(); const parsedResult = await BitsnapModels.ProductResultSchema.parseAsync(downloadedPayload); if (parsedResult.length == 0) { return void 0; } const parsed = parsedResult[0]; return parsed.result; } BitsnapBackend2.getProduct = getProduct; async function getProducts(projectID, limit, offset, requestInit, opts) { var _a; const productsPayload = { "0": { projectID, limit, offset } }; if (opts) { if (opts.groupVariants != null) { productsPayload[0]["groupVariants"] = opts.groupVariants; } } const encodedPayload = new URLSearchParams(); encodedPayload.set("batch", "1"); encodedPayload.set("input", JSON.stringify(productsPayload)); const result = await fetch( BACKEND_HOST + "/api/trpc/product.getProductGrid?" + encodedPayload.toString(), { ...requestInit != null ? requestInit : {}, headers: { ...(_a = requestInit == null ? void 0 : requestInit.headers) != null ? _a : {}, "Content-Type": "application/json", Priority: "u=3, i" } } ); const downloadedPayload = await result.json(); const parsedResult = await BitsnapModels.ProductsResultElementSchema.parseAsync( downloadedPayload ); if (parsedResult.length == 0) { return { categories: void 0, products: void 0 }; } const parsed = parsedResult[0]; return parsed.result; } BitsnapBackend2.getProducts = getProducts; async function sendNotification(request, requestInit) { var _a; if (API_KEY == null || API_KEY == "") { throw new Error( 'use BitsnapBackend.setApiKey("{{API_KEY}} to setup api key before using this method.")' ); } const result = await fetch(BACKEND_HOST + "/api/notification/send", { ...requestInit != null ? requestInit : {}, method: "POST", body: JSON.stringify(request), headers: { ...(_a = requestInit == null ? void 0 : requestInit.headers) != null ? _a : {}, "Content-Type": "application/json", Authorization: "Bearer " + API_KEY } }); if (result.status != 200) { console.warn( "error while sending notification", result.status, await result.text() ); return "failure"; } return "success"; } BitsnapBackend2.sendNotification = sendNotification; async function notifyProductAvailability(request, opts) { const req = (0, import_protobuf.create)(NotifyUserAboutProductAvailabilityRequestSchema, { productId: request.productId, email: request.email, projectId: request.projectId }); try { await PublicApiClient.get( BACKEND_HOST ).notifyUserAboutProductAvailability(req, opts); return { status: "success" }; } catch (e) { console.log("error while sending notification", e); return { status: "failure", message: "failed-to-notify" }; } } BitsnapBackend2.notifyProductAvailability = notifyProductAvailability; })(BitsnapBackend || (BitsnapBackend = {})); var notificationTypes = import_zod.default.enum(["push", "email", "sms"]); var notificationRequestSchema = import_zod.default.object({ to: import_zod.default.array(import_zod.default.string()), title: import_zod.default.string(), body: import_zod.default.string().optional(), type: import_zod.default.union([notificationTypes, import_zod.default.array(notificationTypes)]).default("push"), emailOptions: import_zod.default.object({ subject: import_zod.default.string().optional(), replyTo: import_zod.default.string().optional(), htmlText: import_zod.default.string().optional() }).optional() }); // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { BitsnapBackend }); //# sourceMappingURL=backend.js.map