@burgan-tech/morph-touch-runtime 0.0.5 → 0.0.7
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.
- package/burgan-tech-morph-touch-runtime-0.0.7.tgz +0 -0
- package/morph-touch/Functions/get-matrix-sync.1.0.0.json +1 -1
- package/morph-touch/Functions/get-room-messages.1.0.0.json +1 -1
- package/morph-touch/Functions/send-room-message.1.0.0.json +1 -1
- package/morph-touch/Functions/src/GetMatrixSyncMapping.csx +5 -1
- package/morph-touch/Functions/src/GetRezervationsMapping.csx +27 -7
- package/morph-touch/Functions/src/GetRoomMessagesMapping.csx +5 -1
- package/morph-touch/Functions/src/SendRoomMessageMapping.csx +5 -1
- package/morph-touch/Workflows/chat-room.json +9 -9
- package/morph-touch/Workflows/notification-sender.json +2 -2
- package/morph-touch/Workflows/rezervation-start.json +1 -1
- package/morph-touch/Workflows/rezervation-transfer.json +3 -3
- package/morph-touch/Workflows/rezervation.json +1 -1
- package/morph-touch/Workflows/src/ChatRoomRemoveMapping.csx +5 -1
- package/morph-touch/Workflows/src/ChatRoomTransferInviteMapping.csx +6 -2
- package/morph-touch/Workflows/src/ChatRoomTransferRemoveMapping.csx +5 -1
- package/morph-touch/Workflows/src/ChatRoomUpdateMapping.csx +6 -2
- package/morph-touch/Workflows/src/CreateChatRoomForRezervationMapping.csx +5 -1
- package/morph-touch/Workflows/src/CreatePermanentChatRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/FetchRoomMessagesForSummaryMapping.csx +5 -1
- package/morph-touch/Workflows/src/GetUserInfoForRezervationMapping.csx +5 -1
- package/morph-touch/Workflows/src/GetVideoCallUrlMapping.csx +5 -1
- package/morph-touch/Workflows/src/InviteAdvisorForRandevuUpdateMapping.csx +5 -1
- package/morph-touch/Workflows/src/InviteNewAdvisorToRezervationRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/InviteNewParticipantToRandevuRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/JoinChatRoomForAddParticipantMapping.csx +5 -1
- package/morph-touch/Workflows/src/JoinChatRoomForRandevuStartMapping.csx +5 -1
- package/morph-touch/Workflows/src/JoinChatRoomForRezervationMapping.csx +5 -1
- package/morph-touch/Workflows/src/JoinMatrixRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/JoinUserToRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/SendPushNotificationMapping.csx +5 -1
- package/morph-touch/Workflows/src/SendSmsNotificationMapping.csx +5 -1
- package/morph-touch/Workflows/src/SendSummaryToNewRoomMapping.csx +5 -1
- package/morph-touch/Workflows/src/SetRoomHistoryVisibilityMapping.csx +5 -1
- package/morph-touch/Workflows/src/SummarizeChatWithOpenAIMapping.csx +5 -1
- package/morph-touch/Workflows/start-video-call.json +1 -1
- package/morph-touch/doc/morph-touch-domain.en.md +742 -0
- package/morph-touch/doc/morph-touch-domain.md +745 -0
- package/package.json +1 -1
- package/vnext.config.json +1 -1
- package/burgan-tech-morph-touch-runtime-0.0.5.tgz +0 -0
|
Binary file
|
|
@@ -21,7 +21,7 @@
|
|
|
21
21
|
},
|
|
22
22
|
"mapping": {
|
|
23
23
|
"location": "./src/GetMatrixSyncMapping.csx",
|
|
24
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgZ2V0LW1hdHJpeC1zeW5jIEh0dHBUYXNrIChUeXBlIDYpLgovLy8gRmxvdy1sZXZlbCBmdW5jdGlvbiAoc2NvcGU6IEYpIC0tIG5vIGluc3RhbmNlIGNvbnRleHQuCi8vLyBSZWFkcyB1c2VyLCBzaW5jZSwgdGltZW91dCwgcm9vbUlkIGZyb20gcXVlcnkgcGFyYW1ldGVycy4KLy8vIENhbGxzIEdFVCAvX21hdHJpeC9jbGllbnQvdjMvc3luYyB2aWEgQVBJU0lYLiBTdXBwb3J0cyBsb25nIHBvbGxpbmcuCi8vLyBSZXR1cm5zIG5leHRfYmF0Y2ggdG9rZW4gYW5kIGV2ZW50c0J5Um9vbSAobS5yb29tLm1lc3NhZ2UgZXZlbnRzIHBlciByb29tKS4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIEdldE1hdHJpeFN5bmNNYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBodHRwVGFzayA9IHRhc2sgYXMgSHR0cFRhc2s7CiAgICAgICAgaWYgKGh0dHBUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYW4gSHR0cFRhc2siKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYygidm5leHQtc2VjcmV0IiwgIndvcmtmbG93LXNlY3JldCIsICJNYXRyaXhCYXNlVXJsIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWF0cml4QmFzZVVybCkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJNYXRyaXhCYXNlVXJsIHNlY3JldCBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgdXNlciA9IFJlYWRQYXJhbShjb250ZXh0LCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVkFMSURBVElPTl9FUlJPUjogdXNlciBxdWVyeSBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHNpbmNlID0gUmVhZFBhcmFtKGNvbnRleHQsICJzaW5jZSIpOwogICAgICAgIHZhciB0aW1lb3V0ID0gUmVhZFBhcmFtKGNvbnRleHQsICJ0aW1lb3V0Iik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UodGltZW91dCkpCiAgICAgICAgICAgIHRpbWVvdXQgPSAiMzAwMDAiOwoKICAgICAgICB2YXIgcm9vbUlkID0gUmVhZFBhcmFtKGNvbnRleHQsICJyb29tSWQiKTsKCiAgICAgICAgdmFyIHFzID0gInRpbWVvdXQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHRpbWVvdXQpOwogICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzaW5jZSkpCiAgICAgICAgICAgIHFzICs9ICImc2luY2U9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHNpbmNlKTsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uocm9vbUlkKSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBmaWx0ZXIgPSAie1wicm9vbVwiOntcInJvb21zXCI6W1wiIiArIHJvb21JZC5SZXBsYWNlKCJcXCIsICJcXFxcIikuUmVwbGFjZSgiXCIiLCAiXFxcIiIpICsgIlwiXX19IjsKICAgICAgICAgICAgcXMgKz0gIiZmaWx0ZXI9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGZpbHRlcik7CiAgICAgICAgfQoKICAgICAgICB2YXIgZnVsbFVybCA9IG1hdHJpeEJhc2VVcmwuVHJpbUVuZCgnLycpICsgIi9fbWF0cml4L2NsaWVudC92My9zeW5jPyIgKyBxczsKICAgICAgICBodHRwVGFzay5TZXRVcmwoZnVsbFVybCk7CgogICAgICAgIHZhciBoZWFkZXJzID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9OwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMoaGVhZGVycyk7CgogICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgICAgIHZhciBib2R5RGF0YSA9IHJlc3BvbnNlPy5kYXRhOwoKICAgICAgICAgICAgc3RyaW5nIGVycmNvZGUgPSBHZXRTdHJpbmcoYm9keURhdGEsICJlcnJjb2RlIik7CiAgICAgICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoZXJyY29kZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0cmluZyBlcnJvck1zZyA9IEdldFN0cmluZyhib2R5RGF0YSwgImVycm9yIik7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyb3JNc2csCiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yQ29kZSA9IGVycmNvZGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG5leHRCYXRjaCA9IChzdHJpbmcpbnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCkKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIFRhZ3MgPSBuZXdbXSB7ICJjaGF0IiwgInN5bmMiLCAiZXJyb3IiIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBzdHJpbmcgbmV4dEJhdGNoID0gR2V0U3RyaW5nKGJvZHlEYXRhLCAibmV4dF9iYXRjaCIpOwogICAgICAgICAgICB2YXIgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCk7CgogICAgICAgICAgICB2YXIgcm9vbXMgPSBHZXRQcm9wZXJ0eVZhbHVlKGJvZHlEYXRhLCAicm9vbXMiKTsKICAgICAgICAgICAgaWYgKHJvb21zICE9IG51bGwgJiYgSGFzUHJvcGVydHkocm9vbXMsICJqb2luIikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBqb2luID0gR2V0UHJvcGVydHlWYWx1ZShyb29tcywgImpvaW4iKTsKICAgICAgICAgICAgICAgIGlmIChqb2luICE9IG51bGwpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoIChkeW5hbWljIGt2IGluIChTeXN0ZW0uQ29sbGVjdGlvbnMuSUVudW1lcmFibGUpam9pbikKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIHJJZCA9IGt2LktleT8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJJZCkpIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR5bmFtaWMgcm9vbURhdGEgPSBrdi5WYWx1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyb29tRGF0YSA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdGltZWxpbmUgPSByb29tRGF0YS50aW1lbGluZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aW1lbGluZSA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXZlbnRzID0gdGltZWxpbmUuZXZlbnRzOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50cyA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbXNnTGlzdCA9IG5ldyBMaXN0PG9iamVjdD4oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBldnQgaW4gZXZlbnRzKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBldnRUeXBlID0gR2V0U3RyaW5nKGV2dCwgInR5cGUiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZ0VHlwZSAhPSAibS5yb29tLm1lc3NhZ2UiKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvbnRlbnQgPSBHZXRQcm9wZXJ0eVZhbHVlKGV2dCwgImNvbnRlbnQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29udGVudCA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIGJvZHkgPSBHZXRTdHJpbmcoY29udGVudCwgImJvZHkiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgbXNndHlwZSA9IEdldFN0cmluZyhjb250ZW50LCAibXNndHlwZSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyBzZW5kZXIgPSBHZXRTdHJpbmcoZXZ0LCAic2VuZGVyIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIGV2ZW50SWQgPSBHZXRTdHJpbmcoZXZ0LCAiZXZlbnRfaWQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdHNPYmogPSBHZXRQcm9wZXJ0eVZhbHVlKGV2dCwgIm9yaWdpbl9zZXJ2ZXJfdHMiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgdHMgPSB0c09iaiAhPSBudWxsID8gdHNPYmouVG9TdHJpbmcoKSA6IG51bGw7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZ0xpc3QuQWRkKG5ldwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRJZCA9IGV2ZW50SWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRlciA9IHNlbmRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keSA9IGJvZHksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcCA9IHRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2d0eXBlID0gbXNndHlwZSA/PyAibS50ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtc2dMaXN0LkNvdW50ID4gMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudHNCeVJvb21bcklkXSA9IG1zZ0xpc3Q7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZhbGxiYWNrOiBqb2luIG1heSBoYXZlIGRpZmZlcmVudCBzdHJ1Y3R1cmUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtc3VjY2VzcyIsCiAgICAgICAgICAgICAgICBEYXRhID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgbmV4dEJhdGNoID0gbmV4dEJhdGNoLAogICAgICAgICAgICAgICAgICAgIGV2ZW50c0J5Um9vbSA9IGV2ZW50c0J5Um9vbQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFRhZ3MgPSBuZXdbXSB7ICJjaGF0IiwgInN5bmMiLCAic3VjY2VzcyIgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtZXJyb3IiLAogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGVycm9yID0gIkludGVybmFsIHByb2Nlc3NpbmcgZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIGVycm9yQ29kZSA9ICJQUk9DRVNTSU5HX0VSUk9SIiwKICAgICAgICAgICAgICAgICAgICBlcnJvckRlc2NyaXB0aW9uID0gZXguTWVzc2FnZSwKICAgICAgICAgICAgICAgICAgICBuZXh0QmF0Y2ggPSAoc3RyaW5nKW51bGwsCiAgICAgICAgICAgICAgICAgICAgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBUYWdzID0gbmV3W10geyAiY2hhdCIsICJzeW5jIiwgImVycm9yIiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBSZWFkUGFyYW0oU2NyaXB0Q29udGV4dCBjb250ZXh0LCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAoY29udGV4dC5RdWVyeVBhcmFtZXRlcnMgPT0gbnVsbCB8fCAhSGFzUHJvcGVydHkoY29udGV4dC5RdWVyeVBhcmFtZXRlcnMsIG5hbWUpKQogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB2YXIgdmFsID0gY29udGV4dC5RdWVyeVBhcmFtZXRlcnNbbmFtZV07CiAgICAgICAgcmV0dXJuIHZhbCAhPSBudWxsID8gdmFsLlRvU3RyaW5nKCkgOiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
24
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgZ2V0LW1hdHJpeC1zeW5jIEh0dHBUYXNrIChUeXBlIDYpLgovLy8gRmxvdy1sZXZlbCBmdW5jdGlvbiAoc2NvcGU6IEYpIC0tIG5vIGluc3RhbmNlIGNvbnRleHQuCi8vLyBSZWFkcyB1c2VyLCBzaW5jZSwgdGltZW91dCwgcm9vbUlkIGZyb20gcXVlcnkgcGFyYW1ldGVycy4KLy8vIENhbGxzIEdFVCAvX21hdHJpeC9jbGllbnQvdjMvc3luYyB2aWEgQVBJU0lYLiBTdXBwb3J0cyBsb25nIHBvbGxpbmcuCi8vLyBSZXR1cm5zIG5leHRfYmF0Y2ggdG9rZW4gYW5kIGV2ZW50c0J5Um9vbSAobS5yb29tLm1lc3NhZ2UgZXZlbnRzIHBlciByb29tKS4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIEdldE1hdHJpeFN5bmNNYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBodHRwVGFzayA9IHRhc2sgYXMgSHR0cFRhc2s7CiAgICAgICAgaWYgKGh0dHBUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYW4gSHR0cFRhc2siKTsKCiAgICAgICAgdmFyIHNlY3JldE5hbWUgPSBHZXRDb25maWdWYWx1ZSgiREFQUl9TRUNSRVRfU1RPUkVfTkFNRSIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHNlY3JldE5hbWUpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiREFQUl9TRUNSRVRfU1RPUkVfTkFNRSBjb25maWd1cmF0aW9uIGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciBtYXRyaXhCYXNlVXJsID0gYXdhaXQgR2V0U2VjcmV0QXN5bmMoc2VjcmV0TmFtZSwgIndvcmtmbG93LXNlY3JldCIsICJNYXRyaXhCYXNlVXJsIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWF0cml4QmFzZVVybCkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJNYXRyaXhCYXNlVXJsIHNlY3JldCBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgdXNlciA9IFJlYWRQYXJhbShjb250ZXh0LCAidXNlciIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVkFMSURBVElPTl9FUlJPUjogdXNlciBxdWVyeSBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHNpbmNlID0gUmVhZFBhcmFtKGNvbnRleHQsICJzaW5jZSIpOwogICAgICAgIHZhciB0aW1lb3V0ID0gUmVhZFBhcmFtKGNvbnRleHQsICJ0aW1lb3V0Iik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UodGltZW91dCkpCiAgICAgICAgICAgIHRpbWVvdXQgPSAiMzAwMDAiOwoKICAgICAgICB2YXIgcm9vbUlkID0gUmVhZFBhcmFtKGNvbnRleHQsICJyb29tSWQiKTsKCiAgICAgICAgdmFyIHFzID0gInRpbWVvdXQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHRpbWVvdXQpOwogICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzaW5jZSkpCiAgICAgICAgICAgIHFzICs9ICImc2luY2U9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHNpbmNlKTsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uocm9vbUlkKSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBmaWx0ZXIgPSAie1wicm9vbVwiOntcInJvb21zXCI6W1wiIiArIHJvb21JZC5SZXBsYWNlKCJcXCIsICJcXFxcIikuUmVwbGFjZSgiXCIiLCAiXFxcIiIpICsgIlwiXX19IjsKICAgICAgICAgICAgcXMgKz0gIiZmaWx0ZXI9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGZpbHRlcik7CiAgICAgICAgfQoKICAgICAgICB2YXIgZnVsbFVybCA9IG1hdHJpeEJhc2VVcmwuVHJpbUVuZCgnLycpICsgIi9fbWF0cml4L2NsaWVudC92My9zeW5jPyIgKyBxczsKICAgICAgICBodHRwVGFzay5TZXRVcmwoZnVsbFVybCk7CgogICAgICAgIHZhciBoZWFkZXJzID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9OwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMoaGVhZGVycyk7CgogICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgICAgIHZhciBib2R5RGF0YSA9IHJlc3BvbnNlPy5kYXRhOwoKICAgICAgICAgICAgc3RyaW5nIGVycmNvZGUgPSBHZXRTdHJpbmcoYm9keURhdGEsICJlcnJjb2RlIik7CiAgICAgICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoZXJyY29kZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0cmluZyBlcnJvck1zZyA9IEdldFN0cmluZyhib2R5RGF0YSwgImVycm9yIik7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyb3JNc2csCiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yQ29kZSA9IGVycmNvZGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG5leHRCYXRjaCA9IChzdHJpbmcpbnVsbCwKICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCkKICAgICAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgICAgIFRhZ3MgPSBuZXdbXSB7ICJjaGF0IiwgInN5bmMiLCAiZXJyb3IiIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBzdHJpbmcgbmV4dEJhdGNoID0gR2V0U3RyaW5nKGJvZHlEYXRhLCAibmV4dF9iYXRjaCIpOwogICAgICAgICAgICB2YXIgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCk7CgogICAgICAgICAgICB2YXIgcm9vbXMgPSBHZXRQcm9wZXJ0eVZhbHVlKGJvZHlEYXRhLCAicm9vbXMiKTsKICAgICAgICAgICAgaWYgKHJvb21zICE9IG51bGwgJiYgSGFzUHJvcGVydHkocm9vbXMsICJqb2luIikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBqb2luID0gR2V0UHJvcGVydHlWYWx1ZShyb29tcywgImpvaW4iKTsKICAgICAgICAgICAgICAgIGlmIChqb2luICE9IG51bGwpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBmb3JlYWNoIChkeW5hbWljIGt2IGluIChTeXN0ZW0uQ29sbGVjdGlvbnMuSUVudW1lcmFibGUpam9pbikKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIHJJZCA9IGt2LktleT8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJJZCkpIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGR5bmFtaWMgcm9vbURhdGEgPSBrdi5WYWx1ZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChyb29tRGF0YSA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdGltZWxpbmUgPSByb29tRGF0YS50aW1lbGluZTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0aW1lbGluZSA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXZlbnRzID0gdGltZWxpbmUuZXZlbnRzOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGV2ZW50cyA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgbXNnTGlzdCA9IG5ldyBMaXN0PG9iamVjdD4oKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBldnQgaW4gZXZlbnRzKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZhciBldnRUeXBlID0gR2V0U3RyaW5nKGV2dCwgInR5cGUiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZXZ0VHlwZSAhPSAibS5yb29tLm1lc3NhZ2UiKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIGNvbnRlbnQgPSBHZXRQcm9wZXJ0eVZhbHVlKGV2dCwgImNvbnRlbnQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoY29udGVudCA9PSBudWxsKSBjb250aW51ZTsKCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIGJvZHkgPSBHZXRTdHJpbmcoY29udGVudCwgImJvZHkiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgbXNndHlwZSA9IEdldFN0cmluZyhjb250ZW50LCAibXNndHlwZSIpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0cmluZyBzZW5kZXIgPSBHZXRTdHJpbmcoZXZ0LCAic2VuZGVyIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nIGV2ZW50SWQgPSBHZXRTdHJpbmcoZXZ0LCAiZXZlbnRfaWQiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgdHNPYmogPSBHZXRQcm9wZXJ0eVZhbHVlKGV2dCwgIm9yaWdpbl9zZXJ2ZXJfdHMiKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdHJpbmcgdHMgPSB0c09iaiAhPSBudWxsID8gdHNPYmouVG9TdHJpbmcoKSA6IG51bGw7CgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1zZ0xpc3QuQWRkKG5ldwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZXZlbnRJZCA9IGV2ZW50SWQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbmRlciA9IHNlbmRlciwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYm9keSA9IGJvZHksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVzdGFtcCA9IHRzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBtc2d0eXBlID0gbXNndHlwZSA/PyAibS50ZXh0IgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChtc2dMaXN0LkNvdW50ID4gMCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBldmVudHNCeVJvb21bcklkXSA9IG1zZ0xpc3Q7CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbikKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIC8vIEZhbGxiYWNrOiBqb2luIG1heSBoYXZlIGRpZmZlcmVudCBzdHJ1Y3R1cmUKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtc3VjY2VzcyIsCiAgICAgICAgICAgICAgICBEYXRhID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgbmV4dEJhdGNoID0gbmV4dEJhdGNoLAogICAgICAgICAgICAgICAgICAgIGV2ZW50c0J5Um9vbSA9IGV2ZW50c0J5Um9vbQogICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgIFRhZ3MgPSBuZXdbXSB7ICJjaGF0IiwgInN5bmMiLCAic3VjY2VzcyIgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtbWF0cml4LXN5bmMtZXJyb3IiLAogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGVycm9yID0gIkludGVybmFsIHByb2Nlc3NpbmcgZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIGVycm9yQ29kZSA9ICJQUk9DRVNTSU5HX0VSUk9SIiwKICAgICAgICAgICAgICAgICAgICBlcnJvckRlc2NyaXB0aW9uID0gZXguTWVzc2FnZSwKICAgICAgICAgICAgICAgICAgICBuZXh0QmF0Y2ggPSAoc3RyaW5nKW51bGwsCiAgICAgICAgICAgICAgICAgICAgZXZlbnRzQnlSb29tID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBMaXN0PG9iamVjdD4+KCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBUYWdzID0gbmV3W10geyAiY2hhdCIsICJzeW5jIiwgImVycm9yIiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBSZWFkUGFyYW0oU2NyaXB0Q29udGV4dCBjb250ZXh0LCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAoY29udGV4dC5RdWVyeVBhcmFtZXRlcnMgPT0gbnVsbCB8fCAhSGFzUHJvcGVydHkoY29udGV4dC5RdWVyeVBhcmFtZXRlcnMsIG5hbWUpKQogICAgICAgICAgICByZXR1cm4gbnVsbDsKICAgICAgICB2YXIgdmFsID0gY29udGV4dC5RdWVyeVBhcmFtZXRlcnNbbmFtZV07CiAgICAgICAgcmV0dXJuIHZhbCAhPSBudWxsID8gdmFsLlRvU3RyaW5nKCkgOiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
}
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"mapping": {
|
|
24
24
|
"location": "./src/GetRoomMessagesMapping.csx",
|
|
25
|
-
"code": "
|
|
25
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgZ2V0LW1hdHJpeC1yb29tLW1lc3NhZ2VzIEh0dHBUYXNrIChUeXBlIDYpLgovLy8gRmxvdy1sZXZlbCBmdW5jdGlvbiAoc2NvcGU6IEYpIC0tIG5vIGluc3RhbmNlIGNvbnRleHQuCi8vLyBSZWFkcyByb29tSWQsIHVzZXIsIGxpbWl0LCBmcm9tIHF1ZXJ5IHBhcmFtZXRlcnMuCi8vLyBDYWxscyBHRVQgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L21lc3NhZ2VzIHZpYSBBUElTSVguCi8vLyBSZXR1cm5zIHN0cnVjdHVyZWQgbWVzc2FnZSBsaXN0IGZyb20gTWF0cml4IHJlc3BvbnNlLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgR2V0Um9vbU1lc3NhZ2VzTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHJvb21JZCA9IFJlYWRQYXJhbShjb250ZXh0LCAicm9vbUlkIik7CiAgICAgICAgdmFyIHVzZXIgPSBSZWFkUGFyYW0oY29udGV4dCwgInVzZXIiKTsKCiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uocm9vbUlkKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlZBTElEQVRJT05fRVJST1I6IHJvb21JZCBxdWVyeSBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZSh1c2VyKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlZBTElEQVRJT05fRVJST1I6IHVzZXIgcXVlcnkgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciBsaW1pdCA9IFJlYWRQYXJhbShjb250ZXh0LCAibGltaXQiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShsaW1pdCkpCiAgICAgICAgICAgIGxpbWl0ID0gIjUwIjsKCiAgICAgICAgdmFyIGZyb20gPSBSZWFkUGFyYW0oY29udGV4dCwgImZyb20iKTsKCiAgICAgICAgdmFyIGZ1bGxVcmwgPSBtYXRyaXhCYXNlVXJsLlRyaW1FbmQoJy8nKSArICIvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMvIiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHJvb21JZCkgKyAiL21lc3NhZ2VzIjsKCiAgICAgICAgdmFyIHFzID0gImRpcj1iJmxpbWl0PSIgKyBsaW1pdDsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UoZnJvbSkpCiAgICAgICAgICAgIHFzICs9ICImZnJvbT0iICsgVXJpLkVzY2FwZURhdGFTdHJpbmcoZnJvbSk7CgogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsICsgIj8iICsgcXMpOwoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB1c2VyCiAgICAgICAgfTsKICAgICAgICBodHRwVGFzay5TZXRIZWFkZXJzKGhlYWRlcnMpOwoKICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgdmFyIHJlc3BvbnNlID0gY29udGV4dC5Cb2R5OwogICAgICAgICAgICB2YXIgYm9keURhdGEgPSByZXNwb25zZT8uZGF0YTsKCiAgICAgICAgICAgIHN0cmluZyBlcnJjb2RlID0gR2V0U3RyaW5nKGJvZHlEYXRhLCAiZXJyY29kZSIpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGVycmNvZGUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBzdHJpbmcgZXJyb3JNc2cgPSBHZXRTdHJpbmcoYm9keURhdGEsICJlcnJvciIpOwogICAgICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBLZXkgPSAiZ2V0LXJvb20tbWVzc2FnZXMtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyb3JNc2csCiAgICAgICAgICAgICAgICAgICAgICAgIGVycm9yQ29kZSA9IGVycmNvZGUsCiAgICAgICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VzID0gbmV3IExpc3Q8b2JqZWN0PigpCiAgICAgICAgICAgICAgICAgICAgfSwKICAgICAgICAgICAgICAgICAgICBUYWdzID0gbmV3W10geyAiY2hhdCIsICJtZXNzYWdlcyIsICJlcnJvciIgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHZhciBtZXNzYWdlcyA9IG5ldyBMaXN0PG9iamVjdD4oKTsKCiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShib2R5RGF0YSwgImNodW5rIikgJiYgYm9keURhdGEuY2h1bmsgIT0gbnVsbCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIGV2dCBpbiBib2R5RGF0YS5jaHVuaykKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZXZ0VHlwZSA9IEdldFN0cmluZyhldnQsICJ0eXBlIik7CiAgICAgICAgICAgICAgICAgICAgaWYgKGV2dFR5cGUgIT0gIm0ucm9vbS5tZXNzYWdlIikgY29udGludWU7CgogICAgICAgICAgICAgICAgICAgIHZhciBjb250ZW50ID0gZXZ0Py5jb250ZW50OwogICAgICAgICAgICAgICAgICAgIGlmIChjb250ZW50ID09IG51bGwpIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICBzdHJpbmcgYm9keSA9IEdldFN0cmluZyhjb250ZW50LCAiYm9keSIpOwogICAgICAgICAgICAgICAgICAgIHN0cmluZyBtc2d0eXBlID0gR2V0U3RyaW5nKGNvbnRlbnQsICJtc2d0eXBlIik7CiAgICAgICAgICAgICAgICAgICAgc3RyaW5nIHNlbmRlciA9IEdldFN0cmluZyhldnQsICJzZW5kZXIiKTsKICAgICAgICAgICAgICAgICAgICBzdHJpbmcgZXZlbnRJZCA9IEdldFN0cmluZyhldnQsICJldmVudF9pZCIpOwogICAgICAgICAgICAgICAgICAgIHN0cmluZyB0cyA9IEdldFN0cmluZyhldnQsICJvcmlnaW5fc2VydmVyX3RzIik7CgogICAgICAgICAgICAgICAgICAgIG1lc3NhZ2VzLkFkZChuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGV2ZW50SWQgPSBldmVudElkLAogICAgICAgICAgICAgICAgICAgICAgICBzZW5kZXIgPSBzZW5kZXIsCiAgICAgICAgICAgICAgICAgICAgICAgIGJvZHkgPSBib2R5LAogICAgICAgICAgICAgICAgICAgICAgICB0aW1lc3RhbXAgPSB0cywKICAgICAgICAgICAgICAgICAgICAgICAgbXNndHlwZSA9IG1zZ3R5cGUKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgc3RyaW5nIG5leHRUb2tlbiA9IEdldFN0cmluZyhib2R5RGF0YSwgImVuZCIpOwogICAgICAgICAgICBzdHJpbmcgcHJldlRva2VuID0gR2V0U3RyaW5nKGJvZHlEYXRhLCAic3RhcnQiKTsKCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJnZXQtcm9vbS1tZXNzYWdlcy1zdWNjZXNzIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBtZXNzYWdlcyA9IG1lc3NhZ2VzLAogICAgICAgICAgICAgICAgICAgIG5leHRUb2tlbiA9IG5leHRUb2tlbiwKICAgICAgICAgICAgICAgICAgICBwcmV2VG9rZW4gPSBwcmV2VG9rZW4KICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBUYWdzID0gbmV3W10geyAiY2hhdCIsICJtZXNzYWdlcyIsICJzdWNjZXNzIiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgS2V5ID0gImdldC1yb29tLW1lc3NhZ2VzLWVycm9yIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBlcnJvciA9ICJJbnRlcm5hbCBwcm9jZXNzaW5nIGVycm9yIiwKICAgICAgICAgICAgICAgICAgICBlcnJvckNvZGUgPSAiUFJPQ0VTU0lOR19FUlJPUiIsCiAgICAgICAgICAgICAgICAgICAgZXJyb3JEZXNjcmlwdGlvbiA9IGV4Lk1lc3NhZ2UsCiAgICAgICAgICAgICAgICAgICAgbWVzc2FnZXMgPSBuZXcgTGlzdDxvYmplY3Q+KCkKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICBUYWdzID0gbmV3W10geyAiY2hhdCIsICJtZXNzYWdlcyIsICJlcnJvciIgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgUmVhZFBhcmFtKFNjcmlwdENvbnRleHQgY29udGV4dCwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKGNvbnRleHQuUXVlcnlQYXJhbWV0ZXJzID09IG51bGwgfHwgIUhhc1Byb3BlcnR5KGNvbnRleHQuUXVlcnlQYXJhbWV0ZXJzLCBuYW1lKSkKICAgICAgICAgICAgcmV0dXJuIG51bGw7CiAgICAgICAgdmFyIHZhbCA9IGNvbnRleHQuUXVlcnlQYXJhbWV0ZXJzW25hbWVdOwogICAgICAgIHJldHVybiB2YWwgIT0gbnVsbCA/IHZhbC5Ub1N0cmluZygpIDogbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KfQo="
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
},
|
|
23
23
|
"mapping": {
|
|
24
24
|
"location": "./src/SendRoomMessageMapping.csx",
|
|
25
|
-
"code": "
|
|
25
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3Igc2VuZC1tYXRyaXgtcm9vbS1tZXNzYWdlIEh0dHBUYXNrIChUeXBlIDYpLgovLy8gRmxvdy1sZXZlbCBmdW5jdGlvbiAoc2NvcGU6IEYpIC0tIG5vIGluc3RhbmNlIGNvbnRleHQuCi8vLyBSZWFkcyByb29tSWQsIHVzZXIsIGJvZHkgZnJvbSBxdWVyeSBwYXJhbWV0ZXJzLgovLy8gQ2FsbHMgUE9TVCAvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMve3Jvb21JZH0vc2VuZC9tLnJvb20ubWVzc2FnZS97dHhuSWR9IHZpYSBBUElTSVguCi8vLyBYLU1hdHJpeC1Vc2VyIGhlYWRlciBpcyBjb252ZXJ0ZWQgdG8gQmVhcmVyIHRva2VuIGJ5IEFQSVNJWCBhdXRvbWF0aWNhbGx5LgovLy8gUmV0dXJucyBldmVudF9pZCBvbiBzdWNjZXNzLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgU2VuZFJvb21NZXNzYWdlTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHJvb21JZCA9IFJlYWRQYXJhbShjb250ZXh0LCAicm9vbUlkIik7CiAgICAgICAgdmFyIHVzZXIgPSBSZWFkUGFyYW0oY29udGV4dCwgInVzZXIiKTsKICAgICAgICB2YXIgYm9keSA9IFJlYWRQYXJhbShjb250ZXh0LCAiYm9keSIpOwoKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyb29tSWQpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVkFMSURBVElPTl9FUlJPUjogcm9vbUlkIHF1ZXJ5IHBhcmFtZXRlciBpcyByZXF1aXJlZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVkFMSURBVElPTl9FUlJPUjogdXNlciBxdWVyeSBwYXJhbWV0ZXIgaXMgcmVxdWlyZWQiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShib2R5KSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlZBTElEQVRJT05fRVJST1I6IGJvZHkgcXVlcnkgcGFyYW1ldGVyIGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciB0eG5JZCA9IEd1aWQuTmV3R3VpZCgpLlRvU3RyaW5nKCJOIik7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSBtYXRyaXhCYXNlVXJsLlRyaW1FbmQoJy8nKSArCiAgICAgICAgICAgICIvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMvIiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHJvb21JZCkgKwogICAgICAgICAgICAiL3NlbmQvbS5yb29tLm1lc3NhZ2UvIiArIHR4bklkOwoKICAgICAgICBodHRwVGFzay5TZXRVcmwoZnVsbFVybCk7CgogICAgICAgIHZhciBoZWFkZXJzID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkNvbnRlbnQtVHlwZSJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9OwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMoaGVhZGVycyk7CgogICAgICAgIGh0dHBUYXNrLlNldEJvZHkobmV3CiAgICAgICAgewogICAgICAgICAgICBtc2d0eXBlID0gIm0udGV4dCIsCiAgICAgICAgICAgIGJvZHkgPSBib2R5CiAgICAgICAgfSk7CgogICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgICAgIHZhciBib2R5RGF0YSA9IHJlc3BvbnNlPy5kYXRhOwoKICAgICAgICAgICAgc3RyaW5nIGVycmNvZGUgPSBHZXRTdHJpbmcoYm9keURhdGEsICJlcnJjb2RlIik7CiAgICAgICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yRW1wdHkoZXJyY29kZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0cmluZyBlcnJvck1zZyA9IEdldFN0cmluZyhib2R5RGF0YSwgImVycm9yIik7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIEtleSA9ICJzZW5kLXJvb20tbWVzc2FnZS1lcnJvciIsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSBlcnJvck1zZywKICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3JDb2RlID0gZXJyY29kZQogICAgICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICAgICAgVGFncyA9IG5ld1tdIHsgImNoYXQiLCAibWVzc2FnZXMiLCAiZXJyb3IiIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBzdHJpbmcgZXZlbnRJZCA9IEdldFN0cmluZyhib2R5RGF0YSwgImV2ZW50X2lkIik7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJzZW5kLXJvb20tbWVzc2FnZS1zdWNjZXNzIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBldmVudElkID0gZXZlbnRJZCB9LAogICAgICAgICAgICAgICAgVGFncyA9IG5ld1tdIHsgImNoYXQiLCAibWVzc2FnZXMiLCAic3VjY2VzcyIgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIEtleSA9ICJzZW5kLXJvb20tbWVzc2FnZS1lcnJvciIsCiAgICAgICAgICAgICAgICBEYXRhID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSAiSW50ZXJuYWwgcHJvY2Vzc2luZyBlcnJvciIsCiAgICAgICAgICAgICAgICAgICAgZXJyb3JDb2RlID0gIlBST0NFU1NJTkdfRVJST1IiLAogICAgICAgICAgICAgICAgICAgIGVycm9yRGVzY3JpcHRpb24gPSBleC5NZXNzYWdlCiAgICAgICAgICAgICAgICB9LAogICAgICAgICAgICAgICAgVGFncyA9IG5ld1tdIHsgImNoYXQiLCAibWVzc2FnZXMiLCAiZXJyb3IiIH0KICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIFJlYWRQYXJhbShTY3JpcHRDb250ZXh0IGNvbnRleHQsIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChjb250ZXh0LlF1ZXJ5UGFyYW1ldGVycyA9PSBudWxsIHx8ICFIYXNQcm9wZXJ0eShjb250ZXh0LlF1ZXJ5UGFyYW1ldGVycywgbmFtZSkpCiAgICAgICAgICAgIHJldHVybiBudWxsOwogICAgICAgIHZhciB2YWwgPSBjb250ZXh0LlF1ZXJ5UGFyYW1ldGVyc1tuYW1lXTsKICAgICAgICByZXR1cm4gdmFsICE9IG51bGwgPyB2YWwuVG9TdHJpbmcoKSA6IG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
|
|
26
26
|
}
|
|
27
27
|
}
|
|
28
28
|
}
|
|
@@ -19,7 +19,11 @@ public class GetMatrixSyncMapping : ScriptBase, IMapping
|
|
|
19
19
|
if (httpTask == null)
|
|
20
20
|
throw new InvalidOperationException("Task must be an HttpTask");
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
23
|
+
if (string.IsNullOrWhiteSpace(secretName))
|
|
24
|
+
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
25
|
+
|
|
26
|
+
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
23
27
|
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
24
28
|
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
25
29
|
|
|
@@ -23,14 +23,34 @@ public class GetRezervationsMapping : ScriptBase, IMapping
|
|
|
23
23
|
var appId = GetConfigValue("DAPR_APP_ID");
|
|
24
24
|
if (!string.IsNullOrEmpty(appId))
|
|
25
25
|
serviceTask.SetAppId(appId);
|
|
26
|
+
var headers = (Dictionary<string, string>)context.Headers;
|
|
27
|
+
var advisorId = string.Empty;
|
|
28
|
+
var userId = string.Empty;
|
|
29
|
+
var managerId = string.Empty;
|
|
30
|
+
var touchUser = headers.ContainsKey("touchUser") ? headers["touchUser"] : string.Empty;
|
|
31
|
+
var userType = headers.ContainsKey("userType") ? headers["userType"] : string.Empty;
|
|
32
|
+
if (string.IsNullOrWhiteSpace(touchUser) || string.IsNullOrWhiteSpace(userType))
|
|
33
|
+
throw new InvalidOperationException("Headers 'touchUser' and 'userType' are both required.");
|
|
34
|
+
|
|
35
|
+
if (string.Equals(userType, "customer", StringComparison.OrdinalIgnoreCase))
|
|
36
|
+
userId = touchUser;
|
|
37
|
+
else if (string.Equals(userType, "manager", StringComparison.OrdinalIgnoreCase))
|
|
38
|
+
managerId = touchUser;
|
|
39
|
+
else if (string.Equals(userType, "advisor", StringComparison.OrdinalIgnoreCase))
|
|
40
|
+
advisorId = touchUser;
|
|
41
|
+
else if (string.Equals(userType, "admin", StringComparison.OrdinalIgnoreCase))
|
|
42
|
+
{
|
|
26
43
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
44
|
+
}
|
|
45
|
+
else
|
|
46
|
+
{
|
|
47
|
+
throw new InvalidOperationException("Invalid user type: " + userType);
|
|
48
|
+
}
|
|
49
|
+
// admin: touchUser is always sent; no user/manager/advisor scope filter on the query
|
|
50
|
+
;
|
|
51
|
+
// admin: touchUser is always sent; no user/manager/advisor scope filter on the query
|
|
52
|
+
var startDate =headers.ContainsKey("startDate")? headers["startDate"] : string.Empty;
|
|
53
|
+
var endDate =headers.ContainsKey("endDate")? headers["endDate"] : string.Empty;
|
|
34
54
|
// Build filter conditions
|
|
35
55
|
var conditions = new List<string>();
|
|
36
56
|
|
|
@@ -19,7 +19,11 @@ public class GetRoomMessagesMapping : ScriptBase, IMapping
|
|
|
19
19
|
if (httpTask == null)
|
|
20
20
|
throw new InvalidOperationException("Task must be an HttpTask");
|
|
21
21
|
|
|
22
|
-
var
|
|
22
|
+
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
23
|
+
if (string.IsNullOrWhiteSpace(secretName))
|
|
24
|
+
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
25
|
+
|
|
26
|
+
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
23
27
|
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
24
28
|
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
25
29
|
|
|
@@ -20,7 +20,11 @@ public class SendRoomMessageMapping : ScriptBase, IMapping
|
|
|
20
20
|
if (httpTask == null)
|
|
21
21
|
throw new InvalidOperationException("Task must be an HttpTask");
|
|
22
22
|
|
|
23
|
-
var
|
|
23
|
+
var secretName = GetConfigValue("DAPR_SECRET_STORE_NAME");
|
|
24
|
+
if (string.IsNullOrWhiteSpace(secretName))
|
|
25
|
+
throw new InvalidOperationException("DAPR_SECRET_STORE_NAME configuration is required");
|
|
26
|
+
|
|
27
|
+
var matrixBaseUrl = await GetSecretAsync(secretName, "workflow-secret", "MatrixBaseUrl");
|
|
24
28
|
if (string.IsNullOrWhiteSpace(matrixBaseUrl))
|
|
25
29
|
throw new InvalidOperationException("MatrixBaseUrl secret is required");
|
|
26
30
|
|
|
@@ -126,7 +126,7 @@
|
|
|
126
126
|
},
|
|
127
127
|
"mapping": {
|
|
128
128
|
"location": "./src/CreatePermanentChatRoomMapping.csx",
|
|
129
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY3JlYXRlLXBlcm1hbmVudC1jaGF0LXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSBzdWJmbG93LgovLy8gQ3JlYXRlcyBhIHBlcm1hbmVudCBNYXRyaXggcm9vbSB2aWEgbmF0aXZlIC9fbWF0cml4L2NsaWVudC92My9jcmVhdGVSb29tLgovLy8gQVBJU0lYIGNvbnZlcnRzIFgtTWF0cml4LVVzZXIgaGVhZGVyIHRvIEJlYXJlciB0b2tlbiBhdXRvbWF0aWNhbGx5LgovLy8gUm9vbSBuYW1lID0ge3VzZXJ9X3tpbnN0YW5jZUtleX0te2Fkdmlzb3JUeXBlfSwgYWR2aXNvciBpbnZpdGVkLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ3JlYXRlUGVybWFuZW50Q2hhdFJvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHJpdmF0ZSAgcmVhZG9ubHkgSGFzaFNldDxzdHJpbmc+IEFsbG93ZWRIaXN0b3J5VmlzaWJpbGl0eSA9IG5ldyBIYXNoU2V0PHN0cmluZz4oU3RyaW5nQ29tcGFyZXIuT3JkaW5hbElnbm9yZUNhc2UpCiAgICB7CiAgICAgICAgInNoYXJlZCIsICJpbnZpdGVkIiwgImpvaW5lZCIsICJ3b3JsZF9yZWFkYWJsZSIKICAgIH07CgogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+
|
|
129
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY3JlYXRlLXBlcm1hbmVudC1jaGF0LXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSBzdWJmbG93LgovLy8gQ3JlYXRlcyBhIHBlcm1hbmVudCBNYXRyaXggcm9vbSB2aWEgbmF0aXZlIC9fbWF0cml4L2NsaWVudC92My9jcmVhdGVSb29tLgovLy8gQVBJU0lYIGNvbnZlcnRzIFgtTWF0cml4LVVzZXIgaGVhZGVyIHRvIEJlYXJlciB0b2tlbiBhdXRvbWF0aWNhbGx5LgovLy8gUm9vbSBuYW1lID0ge3VzZXJ9X3tpbnN0YW5jZUtleX0te2Fkdmlzb3JUeXBlfSwgYWR2aXNvciBpbnZpdGVkLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ3JlYXRlUGVybWFuZW50Q2hhdFJvb21NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHJpdmF0ZSAgcmVhZG9ubHkgSGFzaFNldDxzdHJpbmc+IEFsbG93ZWRIaXN0b3J5VmlzaWJpbGl0eSA9IG5ldyBIYXNoU2V0PHN0cmluZz4oU3RyaW5nQ29tcGFyZXIuT3JkaW5hbElnbm9yZUNhc2UpCiAgICB7CiAgICAgICAgInNoYXJlZCIsICJpbnZpdGVkIiwgImpvaW5lZCIsICJ3b3JsZF9yZWFkYWJsZSIKICAgIH07CgogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBodHRwVGFzayA9IHRhc2sgYXMgSHR0cFRhc2s7CiAgICAgICAgaWYgKGh0dHBUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYW4gSHR0cFRhc2siKTsKCiAgICAgICAgdmFyIHNlY3JldE5hbWUgPSBHZXRDb25maWdWYWx1ZSgiREFQUl9TRUNSRVRfU1RPUkVfTkFNRSIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHNlY3JldE5hbWUpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiREFQUl9TRUNSRVRfU1RPUkVfTkFNRSBjb25maWd1cmF0aW9uIGlzIHJlcXVpcmVkIik7CgogICAgICAgIHZhciBtYXRyaXhCYXNlVXJsID0gYXdhaXQgR2V0U2VjcmV0QXN5bmMoc2VjcmV0TmFtZSwgIndvcmtmbG93LXNlY3JldCIsICJNYXRyaXhCYXNlVXJsIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWF0cml4QmFzZVVybCkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJNYXRyaXhCYXNlVXJsIHNlY3JldCBpcyByZXF1aXJlZCIpOwogICAgICAgIHZhciBmdWxsVXJsID0gbWF0cml4QmFzZVVybC5UcmltRW5kKCcvJykgKyAiL19tYXRyaXgvY2xpZW50L3YzL2NyZWF0ZVJvb20iOwogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgdmFyIGluc3RhbmNlS2V5ID0gY29udGV4dC5JbnN0YW5jZT8uS2V5OwogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIHZhciByb29tVHlwZSA9IEdldFN0cmluZyhkYXRhLCAicm9vbVR5cGUiKTsKICAgICAgICB2YXIgcmFuZGV2dUtleSA9IEdldFN0cmluZyhkYXRhLCAicmFuZGV2dUtleSIpOwogICAgICAgIHZhciBhZHZpc29yVHlwZSA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvclR5cGUiKSA/PyAicG0iOwogICAgICAgIHZhciBhZHZpc29ySWQgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JJZCIpOwogICAgICAgIHZhciBoaXN0b3J5VmlzaWJpbGl0eSA9IE5vcm1hbGl6ZUhpc3RvcnlWaXNpYmlsaXR5KEdldFN0cmluZyhkYXRhLCAiaGlzdG9yeVZpc2liaWxpdHkiKSkgPz8gImludml0ZWQiOwoKICAgICAgICB2YXIgcm9vbU5hbWUgPSBzdHJpbmcuRXF1YWxzKHJvb21UeXBlLCAicmV6ZXJ2YXRpb24iLCBTdHJpbmdDb21wYXJpc29uLk9yZGluYWxJZ25vcmVDYXNlKSAmJgogICAgICAgICAgICAgICAgICAgICAgICFzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJhbmRldnVLZXkpCiAgICAgICAgICAgID8gcmFuZGV2dUtleS5UcmltKCkKICAgICAgICAgICAgOiAoaW5zdGFuY2VLZXkgPz8gc3RyaW5nLkVtcHR5KTsKICAgICAgICB2YXIgbm9ybWFsaXplZFJvb21OYW1lID0gTm9ybWFsaXplUm9vbU5hbWUocm9vbU5hbWUpOwogICAgICAgIHZhciBwcmVmaXhlZE5hbWUgPSBub3JtYWxpemVkUm9vbU5hbWU7CiAgICAgICAgdmFyIGFsaWFzTmFtZSA9IG5vcm1hbGl6ZWRSb29tTmFtZTsKICAgICAgICB2YXIgdG9waWMgPSAkIlJvb20gY3JlYXRlZCBieSB7dXNlcn0iOwoKICAgICAgICB2YXIgaW52aXRlTGlzdCA9IG5ldyBMaXN0PHN0cmluZz4oKTsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UoYWR2aXNvcklkKSkKICAgICAgICAgICAgaW52aXRlTGlzdC5BZGQoYWR2aXNvcklkLlN0YXJ0c1dpdGgoIkAiKSA/IGFkdmlzb3JJZCA6ICQiQHthZHZpc29ySWR9OmxvY2FsaG9zdCIpOwoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJDb250ZW50LVR5cGUiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB1c2VyCiAgICAgICAgfTsKICAgICAgICBodHRwVGFzay5TZXRIZWFkZXJzKGhlYWRlcnMpOwoKICAgICAgICB2YXIgYm9keSA9IG5ldwogICAgICAgIHsKICAgICAgICAgICAgbmFtZSA9IHByZWZpeGVkTmFtZSwKICAgICAgICAgICAgcm9vbV9hbGlhc19uYW1lID0gYWxpYXNOYW1lLAogICAgICAgICAgICB0b3BpYyA9IHRvcGljLAogICAgICAgICAgICBwcmVzZXQgPSAicHJpdmF0ZV9jaGF0IiwKICAgICAgICAgICAgdmlzaWJpbGl0eSA9ICJwcml2YXRlIiwKICAgICAgICAgICAgaW5pdGlhbF9zdGF0ZSA9IG5ldyBvYmplY3RbXQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBuZXcgeyB0eXBlID0gIm0ucm9vbS5qb2luX3J1bGVzIiwgc3RhdGVfa2V5ID0gIiIsIGNvbnRlbnQgPSBuZXcgeyBqb2luX3J1bGUgPSAiaW52aXRlIiB9IH0sCiAgICAgICAgICAgICAgICBuZXcgeyB0eXBlID0gIm0ucm9vbS5oaXN0b3J5X3Zpc2liaWxpdHkiLCBzdGF0ZV9rZXkgPSAiIiwgY29udGVudCA9IG5ldyB7IGhpc3RvcnlfdmlzaWJpbGl0eSA9IGhpc3RvcnlWaXNpYmlsaXR5IH0gfQogICAgICAgICAgICB9LAogICAgICAgICAgICBpbnZpdGUgPSBpbnZpdGVMaXN0CiAgICAgICAgfTsKICAgICAgICBodHRwVGFzay5TZXRCb2R5KGJvZHkpOwoKICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXN1bHQgPSBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgdmFyIGJvZHlEYXRhID0gcmVzcG9uc2U/LmRhdGE7CiAgICAgICAgdmFyIGluc3RhbmNlRGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CgogICAgICAgIHN0cmluZyByb29tSWQgPSBHZXRTdHJpbmcoYm9keURhdGEsICJyb29tX2lkIik7CiAgICAgICAgc3RyaW5nIGVycmNvZGUgPSBHZXRTdHJpbmcoYm9keURhdGEsICJlcnJjb2RlIik7CiAgICAgICAgc3RyaW5nIGVycm9yTXNnID0gR2V0U3RyaW5nKGJvZHlEYXRhLCAiZXJyb3IiKTsKICAgICAgICBzdHJpbmcgYWR2aXNvcklkID0gR2V0U3RyaW5nKGluc3RhbmNlRGF0YSwgImFkdmlzb3JJZCIpOwoKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGVycmNvZGUpKQogICAgICAgIHsKICAgICAgICAgICAgaWYgKGVycmNvZGUgPT0gIk1fUk9PTV9JTl9VU0UiKQogICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigiTV9ST09NX0lOX1VTRSIpOwoKICAgICAgICAgICAgcmVzdWx0LkRhdGEgPSBuZXcKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgcm9vbUlkID0gKHN0cmluZyludWxsLAogICAgICAgICAgICAgICAgICAgIGVycm9yID0gZXJyb3JNc2csCiAgICAgICAgICAgICAgICAgICAgZXJyb3JDb2RlID0gZXJyY29kZQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICBzdHJpbmcgdXNlciA9IEdldFN0cmluZyhpbnN0YW5jZURhdGEsICJ1c2VyIik7CiAgICAgICAgICAgIHZhciBtZW1iZXJzID0gbmV3IExpc3Q8b2JqZWN0PigpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UodXNlcikpCiAgICAgICAgICAgICAgICBtZW1iZXJzLkFkZChuZXcgeyBtZW1iZXJJZCA9IHVzZXIsIHJvbGUgPSAib3duZXIiIH0pOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UoYWR2aXNvcklkKSkKICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gYWR2aXNvcklkLCByb2xlID0gImFkdmlzb3IiIH0pOwoKICAgICAgICAgICAgdmFyIG1lbWJlcldpdGhvdXRBcnJheSA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UodXNlcikpCiAgICAgICAgICAgICAgICBtZW1iZXJXaXRob3V0QXJyYXlbdXNlcl0gPSAib3duZXIiOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UoYWR2aXNvcklkKSkKICAgICAgICAgICAgICAgIG1lbWJlcldpdGhvdXRBcnJheVthZHZpc29ySWRdID0gImFkdmlzb3IiOwoKICAgICAgICAgICAgc3RyaW5nIHJvb21UeXBlID0gR2V0U3RyaW5nKGluc3RhbmNlRGF0YSwgInJvb21UeXBlIik7CiAgICAgICAgICAgIHN0cmluZyByYW5kZXZ1S2V5ID0gR2V0U3RyaW5nKGluc3RhbmNlRGF0YSwgInJhbmRldnVLZXkiKTsKICAgICAgICAgICAgc3RyaW5nIHN0YXJ0RGF0ZVRpbWUgPSBHZXRTdHJpbmcoaW5zdGFuY2VEYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgICAgICBzdHJpbmcgZW5kRGF0ZVRpbWUgPSBHZXRTdHJpbmcoaW5zdGFuY2VEYXRhLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgICAgIHJlc3VsdC5EYXRhID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGNoYXRJbnRlZ3JhdGlvbiA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHJvb21JZCwKICAgICAgICAgICAgICAgICAgICBlcnJvciA9IChzdHJpbmcpbnVsbCwKICAgICAgICAgICAgICAgICAgICBlcnJvckNvZGUgPSAoc3RyaW5nKW51bGwKICAgICAgICAgICAgICAgIH0sCiAgICAgICAgICAgICAgICByb29tVHlwZSwKICAgICAgICAgICAgICAgIHJhbmRldnVLZXksCiAgICAgICAgICAgICAgICBzdGFydERhdGVUaW1lLAogICAgICAgICAgICAgICAgZW5kRGF0ZVRpbWUsCiAgICAgICAgICAgICAgICBtZW1iZXJzID0gbWVtYmVycywKICAgICAgICAgICAgICAgIG1lbWJlcldpdGhvdXRBcnJheSA9IG1lbWJlcldpdGhvdXRBcnJheSwKICAgICAgICAgICAgICAgIHBlbmRpbmdKb2luVXNlcklkID0gYWR2aXNvcklkLAogICAgICAgICAgICAgICAgYm9keURhdGE9Ym9keURhdGEKICAgICAgICAgICAgfTsKICAgICAgICB9CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzdWx0KTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlICBzdHJpbmcgTm9ybWFsaXplSGlzdG9yeVZpc2liaWxpdHkoc3RyaW5nIHJhdykKICAgIHsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyYXcpKSByZXR1cm4gbnVsbDsKICAgICAgICB2YXIgbG93ZXIgPSByYXcuVHJpbSgpLlRvTG93ZXJJbnZhcmlhbnQoKTsKICAgICAgICBpZiAoIUFsbG93ZWRIaXN0b3J5VmlzaWJpbGl0eS5Db250YWlucyhsb3dlcikpIHJldHVybiBudWxsOwogICAgICAgIHJldHVybiBsb3dlcjsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBOb3JtYWxpemVSb29tTmFtZShzdHJpbmcgcmF3KQogICAgewogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJhdykpIHJldHVybiBzdHJpbmcuRW1wdHk7CiAgICAgICAgcmV0dXJuIHJhdy5UcmltKCkKICAgICAgICAgICAgLlJlcGxhY2UoIi0iLCBzdHJpbmcuRW1wdHkpCiAgICAgICAgICAgIC5SZXBsYWNlKCIuIiwgc3RyaW5nLkVtcHR5KQogICAgICAgICAgICAuUmVwbGFjZSgiOiIsIHN0cmluZy5FbXB0eSk7CiAgICB9Cn0K"
|
|
130
130
|
}
|
|
131
131
|
},
|
|
132
132
|
{
|
|
@@ -139,7 +139,7 @@
|
|
|
139
139
|
},
|
|
140
140
|
"mapping": {
|
|
141
141
|
"location": "./src/JoinUserToRoomMapping.csx",
|
|
142
|
-
"code": "
|
|
142
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gR2VuZXJpYyBtYXBwaW5nIGZvciBqb2luLXVzZXItdG8tcm9vbSBIdHRwVGFzayAoVHlwZSA2KS4KLy8vIEF1dG8tam9pbnMgdGhlIHVzZXIgc3BlY2lmaWVkIGluIGluc3RhbmNlRGF0YS5wZW5kaW5nSm9pblVzZXJJZCB0byB0aGUgcm9vbS4KLy8vIFgtTWF0cml4LVVzZXIgaXMgc2V0IHRvIHRoZSBqb2luaW5nIHVzZXIgc28gQVBJU0lYIGF1dGhlbnRpY2F0ZXMgYXMgdGhhdCB1c2VyLgovLy8gVXNlZCBhZnRlciBpbnZpdGUgaW46IHJvb20gY3JlYXRpb24gKG9uRW50cnkpLCB1cGRhdGUgKGFkZCBtZW1iZXIpLCB0cmFuc2ZlciB0cmFuc2l0aW9ucy4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIEpvaW5Vc2VyVG9Sb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIHBlbmRpbmdKb2luVXNlcklkID0gR2V0U3RyaW5nKGRhdGEsICJwZW5kaW5nSm9pblVzZXJJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgIm5ld0Fkdmlzb3JJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JJZCIpOwoKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyb29tSWQpIHx8IHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UocGVuZGluZ0pvaW5Vc2VySWQpKQogICAgICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKICAgICAgICB2YXIgZnVsbFVybCA9IG1hdHJpeEJhc2VVcmwuVHJpbUVuZCgnLycpICsgIi9fbWF0cml4L2NsaWVudC92My9qb2luLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyhyb29tSWQpOwogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgdmFyIHhNYXRyaXhVc2VyID0gcGVuZGluZ0pvaW5Vc2VySWQuVHJpbSgpOwogICAgICAgIGlmICh4TWF0cml4VXNlci5TdGFydHNXaXRoKCJAIikpCiAgICAgICAgewogICAgICAgICAgICB2YXIgY29sb25JZHggPSB4TWF0cml4VXNlci5JbmRleE9mKCc6Jyk7CiAgICAgICAgICAgIHhNYXRyaXhVc2VyID0gY29sb25JZHggPiAwID8geE1hdHJpeFVzZXIuU3Vic3RyaW5nKDEsIGNvbG9uSWR4IC0gMSkgOiB4TWF0cml4VXNlci5TdWJzdHJpbmcoMSk7CiAgICAgICAgfQoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJDb250ZW50LVR5cGUiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB4TWF0cml4VXNlcgogICAgICAgIH07CiAgICAgICAgaHR0cFRhc2suU2V0SGVhZGVycyhoZWFkZXJzKTsKCiAgICAgICAgaHR0cFRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIHZhciBhZHZpc29yVHlwZSA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvclR5cGUiKTsKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIG1lbWJlcnMgPSBuZXcgTGlzdDxvYmplY3Q+KCk7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJtZW1iZXJzIikgJiYgZGF0YS5tZW1iZXJzICE9IG51bGwpCiAgICAgICAgewogICAgICAgICAgICBmb3JlYWNoICh2YXIgbSBpbiBkYXRhLm1lbWJlcnMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBHZXRTdHJpbmcobSwgIm1lbWJlcklkIikgPz8gR2V0U3RyaW5nKG0sICJhZHZpc29ySWQiKTsKICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbWlkLCByb2xlID0gR2V0U3RyaW5nKG0sICJyb2xlIikgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciByb29tVHlwZSA9IEdldFN0cmluZyhkYXRhLCAicm9vbVR5cGUiKTsKICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgIHZhciBlbmREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgdmFyIG1lbWJlcldpdGhvdXRBcnJheSA9IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KG1lbWJlcnMpOwoKICAgICAgICByZXN1bHQuRGF0YSA9IG5ldwogICAgICAgIHsKICAgICAgICAgICAgdXNlciwKICAgICAgICAgICAgYWR2aXNvclR5cGUsCiAgICAgICAgICAgIGFkdmlzb3JJZCwKICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3IHsgcm9vbUlkIH0sCiAgICAgICAgICAgIHJvb21UeXBlLAogICAgICAgICAgICBzdGFydERhdGVUaW1lLAogICAgICAgICAgICBlbmREYXRlVGltZSwKICAgICAgICAgICAgbWVtYmVycyA9IG1lbWJlcnMsCiAgICAgICAgICAgIG1lbWJlcldpdGhvdXRBcnJheSA9IG1lbWJlcldpdGhvdXRBcnJheQogICAgICAgIH07CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzdWx0KTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIHN0YXRpYyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPiBCdWlsZE1lbWJlcldpdGhvdXRBcnJheShJRW51bWVyYWJsZTxvYmplY3Q+IG1lbWJlcnMpCiAgICB7CiAgICAgICAgdmFyIG1hcCA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgIGlmIChtZW1iZXJzID09IG51bGwpIHJldHVybiBtYXA7CiAgICAgICAgZm9yZWFjaCAoZHluYW1pYyBtIGluIG1lbWJlcnMpCiAgICAgICAgewogICAgICAgICAgICB0cnkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYgKG0gPT0gbnVsbCkgY29udGludWU7CiAgICAgICAgICAgICAgICB2YXIgbWlkID0gbS5tZW1iZXJJZD8uVG9TdHJpbmcoKSA/PyBtLmFkdmlzb3JJZD8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1pZCkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgbWFwW21pZF0gPSBtLnJvbGU/LlRvU3RyaW5nKCkgPz8gIiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXA7CiAgICB9Cn0K"
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
145
|
],
|
|
@@ -258,7 +258,7 @@
|
|
|
258
258
|
},
|
|
259
259
|
"mapping": {
|
|
260
260
|
"location": "./src/SetRoomHistoryVisibilityMapping.csx",
|
|
261
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3Igc2V0LW1hdHJpeC1yb29tLWhpc3RvcnktdmlzaWJpbGl0eSBIdHRwVGFzayAoVHlwZSA2KSBpbiBjaGF0LXJvb20gdXBkYXRlIHRyYW5zaXRpb24uCi8vLyBSdW5zIGJlZm9yZSBpbnZpdGU6IHNldHMgbS5yb29tLmhpc3RvcnlfdmlzaWJpbGl0eSB3aGVuIHRyYW5zaXRpb24gcHJvdmlkZXMgaGlzdG9yeVZpc2liaWxpdHkuCi8vLyBXaGVuIGFic2VudC9lbXB0eTogbm8tb3AgR0VUIC9fbWF0cml4L2NsaWVudC92My92ZXJzaW9ucyAoaGFybWxlc3MpIHNvIHRoZSBIVFRQIHN0ZXAgc3RpbGwgc3VjY2VlZHMuCi8vLyBYLU1hdHJpeC1Vc2VyID0gcm9vbSBvd25lciAodXNlcikuIE1hdHJpeEJhc2VVcmwgZnJvbSBWYXVsdC4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFNldFJvb21IaXN0b3J5VmlzaWJpbGl0eU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBIYXNoU2V0PHN0cmluZz4gQWxsb3dlZCA9IG5ldyBIYXNoU2V0PHN0cmluZz4oU3RyaW5nQ29tcGFyZXIuT3JkaW5hbElnbm9yZUNhc2UpCiAgICB7CiAgICAgICAgInNoYXJlZCIsICJpbnZpdGVkIiwgImpvaW5lZCIsICJ3b3JsZF9yZWFkYWJsZSIKICAgIH07CgogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBodHRwVGFzayA9IHRhc2sgYXMgSHR0cFRhc2s7CiAgICAgICAgaWYgKGh0dHBUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYW4gSHR0cFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIHZhciB1c2VyID0gR2V0U3RyaW5nKGRhdGEsICJ1c2VyIik7CiAgICAgICAgdmFyIGNoYXRJbnRlZ3JhdGlvbiA9IGRhdGE/
|
|
261
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3Igc2V0LW1hdHJpeC1yb29tLWhpc3RvcnktdmlzaWJpbGl0eSBIdHRwVGFzayAoVHlwZSA2KSBpbiBjaGF0LXJvb20gdXBkYXRlIHRyYW5zaXRpb24uCi8vLyBSdW5zIGJlZm9yZSBpbnZpdGU6IHNldHMgbS5yb29tLmhpc3RvcnlfdmlzaWJpbGl0eSB3aGVuIHRyYW5zaXRpb24gcHJvdmlkZXMgaGlzdG9yeVZpc2liaWxpdHkuCi8vLyBXaGVuIGFic2VudC9lbXB0eTogbm8tb3AgR0VUIC9fbWF0cml4L2NsaWVudC92My92ZXJzaW9ucyAoaGFybWxlc3MpIHNvIHRoZSBIVFRQIHN0ZXAgc3RpbGwgc3VjY2VlZHMuCi8vLyBYLU1hdHJpeC1Vc2VyID0gcm9vbSBvd25lciAodXNlcikuIE1hdHJpeEJhc2VVcmwgZnJvbSBWYXVsdC4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIFNldFJvb21IaXN0b3J5VmlzaWJpbGl0eU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwcml2YXRlIHN0YXRpYyByZWFkb25seSBIYXNoU2V0PHN0cmluZz4gQWxsb3dlZCA9IG5ldyBIYXNoU2V0PHN0cmluZz4oU3RyaW5nQ29tcGFyZXIuT3JkaW5hbElnbm9yZUNhc2UpCiAgICB7CiAgICAgICAgInNoYXJlZCIsICJpbnZpdGVkIiwgImpvaW5lZCIsICJ3b3JsZF9yZWFkYWJsZSIKICAgIH07CgogICAgcHVibGljIGFzeW5jIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBodHRwVGFzayA9IHRhc2sgYXMgSHR0cFRhc2s7CiAgICAgICAgaWYgKGh0dHBUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYW4gSHR0cFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIHZhciB1c2VyID0gR2V0U3RyaW5nKGRhdGEsICJ1c2VyIik7CiAgICAgICAgdmFyIGNoYXRJbnRlZ3JhdGlvbiA9IGRhdGE/LmNoYXRJbnRlZ3JhdGlvbjsKICAgICAgICB2YXIgcm9vbUlkID0gR2V0U3RyaW5nKGNoYXRJbnRlZ3JhdGlvbiwgInJvb21JZCIpOwoKICAgICAgICB2YXIgc2VjcmV0TmFtZSA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoc2VjcmV0TmFtZSkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIGNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIk1hdHJpeEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtYXRyaXhCYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1hdHJpeEJhc2VVcmwgc2VjcmV0IGlzIHJlcXVpcmVkIik7CiAgICAgICAgdmFyIGJhc2VUcmltID0gbWF0cml4QmFzZVVybC5UcmltRW5kKCcvJyk7CgogICAgICAgIHZhciByYXcgPSBHZXRTdHJpbmcoZGF0YSwgImhpc3RvcnlWaXNpYmlsaXR5Iik7CiAgICAgICAgdmFyIGh2ID0gTm9ybWFsaXplSGlzdG9yeVZpc2liaWxpdHkocmF3KTsKCiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uocm9vbUlkKSB8fCBzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JFbXB0eShodikpCiAgICAgICAgewogICAgICAgICAgICBUcnlTZXRIdHRwTWV0aG9kKGh0dHBUYXNrLCAiR0VUIik7CiAgICAgICAgICAgIGh0dHBUYXNrLlNldFVybChiYXNlVHJpbSArICIvX21hdHJpeC9jbGllbnQvdjMvdmVyc2lvbnMiKTsKICAgICAgICAgICAgaHR0cFRhc2suU2V0SGVhZGVycyhuZXcgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4KICAgICAgICAgICAgewogICAgICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgICAgIFsiWC1NYXRyaXgtVXNlciJdID0gdXNlcgogICAgICAgICAgICB9KTsKICAgICAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIH0KCiAgICAgICAgVHJ5U2V0SHR0cE1ldGhvZChodHRwVGFzaywgIlBVVCIpOwogICAgICAgIHZhciBmdWxsVXJsID0gYmFzZVRyaW0gKyAiL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyhyb29tSWQpICsgIi9zdGF0ZS9tLnJvb20uaGlzdG9yeV92aXNpYmlsaXR5LyI7CiAgICAgICAgaHR0cFRhc2suU2V0VXJsKGZ1bGxVcmwpOwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMobmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkNvbnRlbnQtVHlwZSJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9KTsKICAgICAgICBodHRwVGFzay5TZXRCb2R5KG5ldyB7IGhpc3RvcnlfdmlzaWJpbGl0eSA9IGh2IH0pOwoKICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHByaXZhdGUgc3RhdGljIHN0cmluZyBOb3JtYWxpemVIaXN0b3J5VmlzaWJpbGl0eShzdHJpbmcgcmF3KQogICAgewogICAgICAgIC8vIFVJIGNhbiBvbWl0IGhpc3RvcnlWaXNpYmlsaXR5OyBkZWZhdWx0IHRvIHNoYXJlZCB0byBrZWVwIGZsb3cgc3RlcCBzdWNjZXNzZnVsLgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJhdykpIHJldHVybiAic2hhcmVkIjsKICAgICAgICB2YXIgbG93ZXIgPSByYXcuVHJpbSgpLlRvTG93ZXJJbnZhcmlhbnQoKTsKICAgICAgICBpZiAoIUFsbG93ZWQuQ29udGFpbnMobG93ZXIpKSByZXR1cm4gbnVsbDsKICAgICAgICByZXR1cm4gbG93ZXI7CiAgICB9CgogICAgcHJpdmF0ZSBzdGF0aWMgdm9pZCBUcnlTZXRIdHRwTWV0aG9kKEh0dHBUYXNrIGh0dHBUYXNrLCBzdHJpbmcgbWV0aG9kKQogICAgewogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KG1ldGhvZCkpIHJldHVybjsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGR5bmFtaWMgaHQgPSBodHRwVGFzazsKICAgICAgICAgICAgaHQuU2V0TWV0aG9kKG1ldGhvZCk7CiAgICAgICAgfQogICAgICAgIGNhdGNoCiAgICAgICAgewogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KfQo="
|
|
262
262
|
}
|
|
263
263
|
},
|
|
264
264
|
{
|
|
@@ -271,7 +271,7 @@
|
|
|
271
271
|
},
|
|
272
272
|
"mapping": {
|
|
273
273
|
"location": "./src/ChatRoomUpdateMapping.csx",
|
|
274
|
-
"code": "
|
|
274
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgaW52aXRlLXVzZXItdG8tcmV6ZXJ2YXRpb24tcm9vbSBIdHRwVGFzayAoVHlwZSA2KSBpbiB0aGUgY2hhdC1yb29tIHVwZGF0ZSB0cmFuc2l0aW9uLgovLy8gSW52aXRlcyBhIG5ldyBtZW1iZXIgdG8gdGhlIHBlcm1hbmVudCByb29tIHZpYSBuYXRpdmUgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L2ludml0ZS4KLy8vIEFQSVNJWCBjb252ZXJ0cyBYLU1hdHJpeC1Vc2VyIGhlYWRlciB0byBCZWFyZXIgdG9rZW4gYXV0b21hdGljYWxseS4KLy8vIE1hdHJpeEJhc2VVcmwgaXMgcmVhZCBmcm9tIHRoZSBEYXByIHNlY3JldCBzdG9yZSAoREFQUl9TRUNSRVRfU1RPUkVfTkFNRSAvIHdvcmtmbG93LXNlY3JldCkuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGF0Um9vbVVwZGF0ZU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInVzZXIiKTsKICAgICAgICB2YXIgY2hhdEludGVncmF0aW9uID0gZGF0YT8uY2hhdEludGVncmF0aW9uOwogICAgICAgIHZhciByb29tSWQgPSBHZXRTdHJpbmcoY2hhdEludGVncmF0aW9uLCAicm9vbUlkIik7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJvb21JZCkpCiAgICAgICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKCiAgICAgICAgdmFyIG5ld01lbWJlcklkID0gR2V0U3RyaW5nKGRhdGEsICJuZXdNZW1iZXJJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG5ld01lbWJlcklkKSkKICAgICAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwoKICAgICAgICB2YXIgc2VjcmV0TmFtZSA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoc2VjcmV0TmFtZSkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIGNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIk1hdHJpeEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtYXRyaXhCYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1hdHJpeEJhc2VVcmwgc2VjcmV0IGlzIHJlcXVpcmVkIik7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSBtYXRyaXhCYXNlVXJsLlRyaW1FbmQoJy8nKSArICIvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMvIiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHJvb21JZCkgKyAiL2ludml0ZSI7CiAgICAgICAgaHR0cFRhc2suU2V0VXJsKGZ1bGxVcmwpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcklkID0gbmV3TWVtYmVySWQuVHJpbSgpLlN0YXJ0c1dpdGgoIkAiKSA/IG5ld01lbWJlcklkLlRyaW0oKSA6ICQiQHtuZXdNZW1iZXJJZC5UcmltKCl9OmxvY2FsaG9zdCI7CgogICAgICAgIHZhciBoZWFkZXJzID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkNvbnRlbnQtVHlwZSJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9OwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMoaGVhZGVycyk7CgogICAgICAgIGh0dHBUYXNrLlNldEJvZHkobmV3IHsgdXNlcl9pZCA9IG1hdHJpeFVzZXJJZCB9KTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKICAgICAgICB2YXIgbmV3TWVtYmVySWQgPSBHZXRTdHJpbmcoZGF0YSwgIm5ld01lbWJlcklkIik7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInVzZXIiKTsKICAgICAgICB2YXIgYWR2aXNvclR5cGUgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JUeXBlIik7CgogICAgICAgIHN0cmluZyByb29tSWQgPSBudWxsOwogICAgICAgIGlmIChIYXNQcm9wZXJ0eShkYXRhLCAiY2hhdEludGVncmF0aW9uIikgJiYgZGF0YS5jaGF0SW50ZWdyYXRpb24gIT0gbnVsbCkKICAgICAgICAgICAgcm9vbUlkID0gR2V0U3RyaW5nKGRhdGEuY2hhdEludGVncmF0aW9uLCAicm9vbUlkIik7CgogICAgICAgIHZhciBtZW1iZXJzID0gbmV3IExpc3Q8b2JqZWN0PigpOwogICAgICAgIGlmIChIYXNQcm9wZXJ0eShkYXRhLCAibWVtYmVycyIpICYmIGRhdGEubWVtYmVycyAhPSBudWxsKQogICAgICAgIHsKICAgICAgICAgICAgZm9yZWFjaCAodmFyIG0gaW4gZGF0YS5tZW1iZXJzKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgbWlkID0gR2V0U3RyaW5nKG0sICJtZW1iZXJJZCIpID8/IEdldFN0cmluZyhtLCAiYWR2aXNvcklkIik7CiAgICAgICAgICAgICAgICBtZW1iZXJzLkFkZChuZXcgeyBtZW1iZXJJZCA9IG1pZCwgcm9sZSA9IEdldFN0cmluZyhtLCAicm9sZSIpIH0pOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICghc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShuZXdNZW1iZXJJZCkpCiAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbmV3TWVtYmVySWQsIHJvbGUgPSAibWVtYmVyIiB9KTsKCiAgICAgICAgdmFyIG1lbWJlcldpdGhvdXRBcnJheSA9IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KG1lbWJlcnMpOwoKICAgICAgICByZXN1bHQuRGF0YSA9IG5ldwogICAgICAgIHsKICAgICAgICAgICAgdXNlciwKICAgICAgICAgICAgYWR2aXNvclR5cGUsCiAgICAgICAgICAgIGFkdmlzb3JJZCwKICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3IHsgcm9vbUlkIH0sCiAgICAgICAgICAgIG1lbWJlcnMgPSBtZW1iZXJzLAogICAgICAgICAgICBtZW1iZXJXaXRob3V0QXJyYXkgPSBtZW1iZXJXaXRob3V0QXJyYXksCiAgICAgICAgICAgIHBlbmRpbmdKb2luVXNlcklkID0gbmV3TWVtYmVySWQKICAgICAgICB9OwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KHJlc3VsdCk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSBzdGF0aWMgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4gQnVpbGRNZW1iZXJXaXRob3V0QXJyYXkoSUVudW1lcmFibGU8b2JqZWN0PiBtZW1iZXJzKQogICAgewogICAgICAgIHZhciBtYXAgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4oKTsKICAgICAgICBpZiAobWVtYmVycyA9PSBudWxsKSByZXR1cm4gbWFwOwogICAgICAgIGZvcmVhY2ggKGR5bmFtaWMgbSBpbiBtZW1iZXJzKQogICAgICAgIHsKICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlmIChtID09IG51bGwpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgdmFyIG1pZCA9IG0ubWVtYmVySWQ/LlRvU3RyaW5nKCkgPz8gbS5hZHZpc29ySWQ/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtaWQpKSBjb250aW51ZTsKICAgICAgICAgICAgICAgIG1hcFttaWRdID0gbS5yb2xlPy5Ub1N0cmluZygpID8/ICIiOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIHsgfQogICAgICAgIH0KICAgICAgICByZXR1cm4gbWFwOwogICAgfQp9Cg=="
|
|
275
275
|
}
|
|
276
276
|
},
|
|
277
277
|
{
|
|
@@ -284,7 +284,7 @@
|
|
|
284
284
|
},
|
|
285
285
|
"mapping": {
|
|
286
286
|
"location": "./src/JoinUserToRoomMapping.csx",
|
|
287
|
-
"code": "
|
|
287
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gR2VuZXJpYyBtYXBwaW5nIGZvciBqb2luLXVzZXItdG8tcm9vbSBIdHRwVGFzayAoVHlwZSA2KS4KLy8vIEF1dG8tam9pbnMgdGhlIHVzZXIgc3BlY2lmaWVkIGluIGluc3RhbmNlRGF0YS5wZW5kaW5nSm9pblVzZXJJZCB0byB0aGUgcm9vbS4KLy8vIFgtTWF0cml4LVVzZXIgaXMgc2V0IHRvIHRoZSBqb2luaW5nIHVzZXIgc28gQVBJU0lYIGF1dGhlbnRpY2F0ZXMgYXMgdGhhdCB1c2VyLgovLy8gVXNlZCBhZnRlciBpbnZpdGUgaW46IHJvb20gY3JlYXRpb24gKG9uRW50cnkpLCB1cGRhdGUgKGFkZCBtZW1iZXIpLCB0cmFuc2ZlciB0cmFuc2l0aW9ucy4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIEpvaW5Vc2VyVG9Sb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIHBlbmRpbmdKb2luVXNlcklkID0gR2V0U3RyaW5nKGRhdGEsICJwZW5kaW5nSm9pblVzZXJJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgIm5ld0Fkdmlzb3JJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JJZCIpOwoKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyb29tSWQpIHx8IHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UocGVuZGluZ0pvaW5Vc2VySWQpKQogICAgICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKICAgICAgICB2YXIgZnVsbFVybCA9IG1hdHJpeEJhc2VVcmwuVHJpbUVuZCgnLycpICsgIi9fbWF0cml4L2NsaWVudC92My9qb2luLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyhyb29tSWQpOwogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgdmFyIHhNYXRyaXhVc2VyID0gcGVuZGluZ0pvaW5Vc2VySWQuVHJpbSgpOwogICAgICAgIGlmICh4TWF0cml4VXNlci5TdGFydHNXaXRoKCJAIikpCiAgICAgICAgewogICAgICAgICAgICB2YXIgY29sb25JZHggPSB4TWF0cml4VXNlci5JbmRleE9mKCc6Jyk7CiAgICAgICAgICAgIHhNYXRyaXhVc2VyID0gY29sb25JZHggPiAwID8geE1hdHJpeFVzZXIuU3Vic3RyaW5nKDEsIGNvbG9uSWR4IC0gMSkgOiB4TWF0cml4VXNlci5TdWJzdHJpbmcoMSk7CiAgICAgICAgfQoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJDb250ZW50LVR5cGUiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB4TWF0cml4VXNlcgogICAgICAgIH07CiAgICAgICAgaHR0cFRhc2suU2V0SGVhZGVycyhoZWFkZXJzKTsKCiAgICAgICAgaHR0cFRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIHZhciBhZHZpc29yVHlwZSA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvclR5cGUiKTsKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIG1lbWJlcnMgPSBuZXcgTGlzdDxvYmplY3Q+KCk7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJtZW1iZXJzIikgJiYgZGF0YS5tZW1iZXJzICE9IG51bGwpCiAgICAgICAgewogICAgICAgICAgICBmb3JlYWNoICh2YXIgbSBpbiBkYXRhLm1lbWJlcnMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBHZXRTdHJpbmcobSwgIm1lbWJlcklkIikgPz8gR2V0U3RyaW5nKG0sICJhZHZpc29ySWQiKTsKICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbWlkLCByb2xlID0gR2V0U3RyaW5nKG0sICJyb2xlIikgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciByb29tVHlwZSA9IEdldFN0cmluZyhkYXRhLCAicm9vbVR5cGUiKTsKICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgIHZhciBlbmREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgdmFyIG1lbWJlcldpdGhvdXRBcnJheSA9IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KG1lbWJlcnMpOwoKICAgICAgICByZXN1bHQuRGF0YSA9IG5ldwogICAgICAgIHsKICAgICAgICAgICAgdXNlciwKICAgICAgICAgICAgYWR2aXNvclR5cGUsCiAgICAgICAgICAgIGFkdmlzb3JJZCwKICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3IHsgcm9vbUlkIH0sCiAgICAgICAgICAgIHJvb21UeXBlLAogICAgICAgICAgICBzdGFydERhdGVUaW1lLAogICAgICAgICAgICBlbmREYXRlVGltZSwKICAgICAgICAgICAgbWVtYmVycyA9IG1lbWJlcnMsCiAgICAgICAgICAgIG1lbWJlcldpdGhvdXRBcnJheSA9IG1lbWJlcldpdGhvdXRBcnJheQogICAgICAgIH07CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzdWx0KTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIHN0YXRpYyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPiBCdWlsZE1lbWJlcldpdGhvdXRBcnJheShJRW51bWVyYWJsZTxvYmplY3Q+IG1lbWJlcnMpCiAgICB7CiAgICAgICAgdmFyIG1hcCA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgIGlmIChtZW1iZXJzID09IG51bGwpIHJldHVybiBtYXA7CiAgICAgICAgZm9yZWFjaCAoZHluYW1pYyBtIGluIG1lbWJlcnMpCiAgICAgICAgewogICAgICAgICAgICB0cnkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYgKG0gPT0gbnVsbCkgY29udGludWU7CiAgICAgICAgICAgICAgICB2YXIgbWlkID0gbS5tZW1iZXJJZD8uVG9TdHJpbmcoKSA/PyBtLmFkdmlzb3JJZD8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1pZCkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgbWFwW21pZF0gPSBtLnJvbGU/LlRvU3RyaW5nKCkgPz8gIiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXA7CiAgICB9Cn0K"
|
|
288
288
|
}
|
|
289
289
|
}
|
|
290
290
|
]
|
|
@@ -315,7 +315,7 @@
|
|
|
315
315
|
},
|
|
316
316
|
"mapping": {
|
|
317
317
|
"location": "./src/ChatRoomRemoveMapping.csx",
|
|
318
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgcmVtb3ZlLW1lbWJlci1mcm9tLXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSByZW1vdmUgdHJhbnNpdGlvbi4KLy8vIEtpY2tzIGEgbWVtYmVyIGZyb20gdGhlIHBlcm1hbmVudCByb29tIHZpYSBuYXRpdmUgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L2tpY2suCi8vLyBBUElTSVggY29udmVydHMgWC1NYXRyaXgtVXNlciBoZWFkZXIgdG8gQmVhcmVyIHRva2VuIGF1dG9tYXRpY2FsbHkuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGF0Um9vbVJlbW92ZU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/
|
|
318
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgcmVtb3ZlLW1lbWJlci1mcm9tLXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSByZW1vdmUgdHJhbnNpdGlvbi4KLy8vIEtpY2tzIGEgbWVtYmVyIGZyb20gdGhlIHBlcm1hbmVudCByb29tIHZpYSBuYXRpdmUgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L2tpY2suCi8vLyBBUElTSVggY29udmVydHMgWC1NYXRyaXgtVXNlciBoZWFkZXIgdG8gQmVhcmVyIHRva2VuIGF1dG9tYXRpY2FsbHkuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGF0Um9vbVJlbW92ZU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInVzZXIiKTsKICAgICAgICB2YXIgY2hhdEludGVncmF0aW9uID0gZGF0YT8uY2hhdEludGVncmF0aW9uOwogICAgICAgIHZhciByb29tSWQgPSBHZXRTdHJpbmcoY2hhdEludGVncmF0aW9uLCAicm9vbUlkIik7CgogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJvb21JZCkpCiAgICAgICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKCiAgICAgICAgdmFyIHJlbW92ZU1lbWJlcklkID0gR2V0U3RyaW5nKGRhdGEsICJyZW1vdmVNZW1iZXJJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHJlbW92ZU1lbWJlcklkKSkKICAgICAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwoKICAgICAgICB2YXIgc2VjcmV0TmFtZSA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoc2VjcmV0TmFtZSkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIGNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIk1hdHJpeEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtYXRyaXhCYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1hdHJpeEJhc2VVcmwgc2VjcmV0IGlzIHJlcXVpcmVkIik7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSBtYXRyaXhCYXNlVXJsLlRyaW1FbmQoJy8nKSArICIvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMvIiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHJvb21JZCkgKyAiL2tpY2siOwogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgdmFyIG1hdHJpeFVzZXJJZCA9IHJlbW92ZU1lbWJlcklkLlRyaW0oKS5TdGFydHNXaXRoKCJAIikgPyByZW1vdmVNZW1iZXJJZC5UcmltKCkgOiAkIkB7cmVtb3ZlTWVtYmVySWQuVHJpbSgpfTpsb2NhbGhvc3QiOwoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJDb250ZW50LVR5cGUiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB1c2VyCiAgICAgICAgfTsKICAgICAgICBodHRwVGFzay5TZXRIZWFkZXJzKGhlYWRlcnMpOwoKICAgICAgICBodHRwVGFzay5TZXRCb2R5KG5ldyB7IHVzZXJfaWQgPSBtYXRyaXhVc2VySWQgfSk7CgogICAgICAgIHJldHVybiBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3VsdCA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKCiAgICAgICAgdmFyIGFkdmlzb3JJZCA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvcklkIik7CiAgICAgICAgdmFyIHJlbW92ZU1lbWJlcklkID0gR2V0U3RyaW5nKGRhdGEsICJyZW1vdmVNZW1iZXJJZCIpOwogICAgICAgIHZhciB1c2VyID0gR2V0U3RyaW5nKGRhdGEsICJ1c2VyIik7CiAgICAgICAgdmFyIGFkdmlzb3JUeXBlID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29yVHlwZSIpOwoKICAgICAgICBzdHJpbmcgcm9vbUlkID0gbnVsbDsKICAgICAgICBpZiAoSGFzUHJvcGVydHkoZGF0YSwgImNoYXRJbnRlZ3JhdGlvbiIpICYmIGRhdGEuY2hhdEludGVncmF0aW9uICE9IG51bGwpCiAgICAgICAgICAgIHJvb21JZCA9IEdldFN0cmluZyhkYXRhLmNoYXRJbnRlZ3JhdGlvbiwgInJvb21JZCIpOwoKICAgICAgICB2YXIgbWVtYmVycyA9IG5ldyBMaXN0PG9iamVjdD4oKTsKICAgICAgICBpZiAoSGFzUHJvcGVydHkoZGF0YSwgIm1lbWJlcnMiKSAmJiBkYXRhLm1lbWJlcnMgIT0gbnVsbCkKICAgICAgICB7CiAgICAgICAgICAgIGZvcmVhY2ggKHZhciBtIGluIGRhdGEubWVtYmVycykKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIG1pZCA9IEdldFN0cmluZyhtLCAibWVtYmVySWQiKSA/PyBHZXRTdHJpbmcobSwgImFkdmlzb3JJZCIpOwogICAgICAgICAgICAgICAgaWYgKCFzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1pZCkgJiYgbWlkICE9IHJlbW92ZU1lbWJlcklkKQogICAgICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbWlkLCByb2xlID0gR2V0U3RyaW5nKG0sICJyb2xlIikgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciBtZW1iZXJXaXRob3V0QXJyYXkgPSBCdWlsZE1lbWJlcldpdGhvdXRBcnJheShtZW1iZXJzKTsKCiAgICAgICAgcmVzdWx0LkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIHVzZXIsCiAgICAgICAgICAgIGFkdmlzb3JUeXBlLAogICAgICAgICAgICBhZHZpc29ySWQsCiAgICAgICAgICAgIGNoYXRJbnRlZ3JhdGlvbiA9IG5ldyB7IHJvb21JZCB9LAogICAgICAgICAgICBtZW1iZXJzID0gbWVtYmVycywKICAgICAgICAgICAgbWVtYmVyV2l0aG91dEFycmF5ID0gbWVtYmVyV2l0aG91dEFycmF5CiAgICAgICAgfTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChyZXN1bHQpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgc3RhdGljIERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KElFbnVtZXJhYmxlPG9iamVjdD4gbWVtYmVycykKICAgIHsKICAgICAgICB2YXIgbWFwID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+KCk7CiAgICAgICAgaWYgKG1lbWJlcnMgPT0gbnVsbCkgcmV0dXJuIG1hcDsKICAgICAgICBmb3JlYWNoIChkeW5hbWljIG0gaW4gbWVtYmVycykKICAgICAgICB7CiAgICAgICAgICAgIHRyeQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAobSA9PSBudWxsKSBjb250aW51ZTsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBtLm1lbWJlcklkPy5Ub1N0cmluZygpID8/IG0uYWR2aXNvcklkPy5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWlkKSkgY29udGludWU7CiAgICAgICAgICAgICAgICBtYXBbbWlkXSA9IG0ucm9sZT8uVG9TdHJpbmcoKSA/PyAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXRjaCB7IH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcDsKICAgIH0KfQo="
|
|
319
319
|
}
|
|
320
320
|
}
|
|
321
321
|
]
|
|
@@ -346,7 +346,7 @@
|
|
|
346
346
|
},
|
|
347
347
|
"mapping": {
|
|
348
348
|
"location": "./src/ChatRoomTransferRemoveMapping.csx",
|
|
349
|
-
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgcmVtb3ZlLW1lbWJlci1mcm9tLXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSB0cmFuc2ZlciB0cmFuc2l0aW9uIChraWNrIHN0ZXApLgovLy8gS2lja3MgdGhlIGN1cnJlbnQgYWR2aXNvciBmcm9tIHRoZSByb29tIGJlZm9yZSBpbnZpdGluZyB0aGUgbmV3IG9uZS4KLy8vIFVzZXMgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L2tpY2suCi8vLyBBUElTSVggY29udmVydHMgWC1NYXRyaXgtVXNlciBoZWFkZXIgdG8gQmVhcmVyIHRva2VuIGF1dG9tYXRpY2FsbHkuCi8vLyA8L3N1bW1hcnk+
|
|
349
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgcmVtb3ZlLW1lbWJlci1mcm9tLXJvb20gSHR0cFRhc2sgKFR5cGUgNikgaW4gdGhlIGNoYXQtcm9vbSB0cmFuc2ZlciB0cmFuc2l0aW9uIChraWNrIHN0ZXApLgovLy8gS2lja3MgdGhlIGN1cnJlbnQgYWR2aXNvciBmcm9tIHRoZSByb29tIGJlZm9yZSBpbnZpdGluZyB0aGUgbmV3IG9uZS4KLy8vIFVzZXMgL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zL3tyb29tSWR9L2tpY2suCi8vLyBBUElTSVggY29udmVydHMgWC1NYXRyaXgtVXNlciBoZWFkZXIgdG8gQmVhcmVyIHRva2VuIGF1dG9tYXRpY2FsbHkuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGF0Um9vbVRyYW5zZmVyUmVtb3ZlTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIHZhciB1c2VyID0gR2V0U3RyaW5nKGRhdGEsICJ1c2VyIik7CiAgICAgICAgdmFyIGNoYXRJbnRlZ3JhdGlvbiA9IGRhdGE/LmNoYXRJbnRlZ3JhdGlvbjsKICAgICAgICB2YXIgcm9vbUlkID0gR2V0U3RyaW5nKGNoYXRJbnRlZ3JhdGlvbiwgInJvb21JZCIpOwogICAgICAgIHZhciBjdXJyZW50QWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKCiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uocm9vbUlkKSB8fCBzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGN1cnJlbnRBZHZpc29ySWQpKQogICAgICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CgogICAgICAgIHZhciBmdWxsVXJsID0gbWF0cml4QmFzZVVybC5UcmltRW5kKCcvJykgKyAiL19tYXRyaXgvY2xpZW50L3YzL3Jvb21zLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyhyb29tSWQpICsgIi9raWNrIjsKICAgICAgICBodHRwVGFzay5TZXRVcmwoZnVsbFVybCk7CgogICAgICAgIHZhciBtYXRyaXhVc2VySWQgPSBjdXJyZW50QWR2aXNvcklkLlRyaW0oKS5TdGFydHNXaXRoKCJAIikgPyBjdXJyZW50QWR2aXNvcklkLlRyaW0oKSA6ICQiQHtjdXJyZW50QWR2aXNvcklkLlRyaW0oKX06bG9jYWxob3N0IjsKCiAgICAgICAgdmFyIGhlYWRlcnMgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4KICAgICAgICB7CiAgICAgICAgICAgIFsiQ29udGVudC1UeXBlIl0gPSAiYXBwbGljYXRpb24vanNvbiIsCiAgICAgICAgICAgIFsiQWNjZXB0Il0gPSAiYXBwbGljYXRpb24vanNvbiIsCiAgICAgICAgICAgIFsiWC1NYXRyaXgtVXNlciJdID0gdXNlcgogICAgICAgIH07CiAgICAgICAgaHR0cFRhc2suU2V0SGVhZGVycyhoZWFkZXJzKTsKCiAgICAgICAgaHR0cFRhc2suU2V0Qm9keShuZXcgeyB1c2VyX2lkID0gbWF0cml4VXNlcklkIH0pOwoKICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9Cg=="
|
|
350
350
|
}
|
|
351
351
|
},
|
|
352
352
|
{
|
|
@@ -359,7 +359,7 @@
|
|
|
359
359
|
},
|
|
360
360
|
"mapping": {
|
|
361
361
|
"location": "./src/ChatRoomTransferInviteMapping.csx",
|
|
362
|
-
"code": "
|
|
362
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgaW52aXRlLXVzZXItdG8tcmV6ZXJ2YXRpb24tcm9vbSBIdHRwVGFzayAoVHlwZSA2KSBpbiB0aGUgY2hhdC1yb29tIHRyYW5zZmVyIHRyYW5zaXRpb24gKGludml0ZSBzdGVwKS4KLy8vIEludml0ZXMgdGhlIG5ldyBhZHZpc29yIHRvIHRoZSByb29tIGFmdGVyIHRoZSBvbGQgb25lIHdhcyBraWNrZWQuCi8vLyBVc2VzIC9fbWF0cml4L2NsaWVudC92My9yb29tcy97cm9vbUlkfS9pbnZpdGUuCi8vLyBBUElTSVggY29udmVydHMgWC1NYXRyaXgtVXNlciBoZWFkZXIgdG8gQmVhcmVyIHRva2VuIGF1dG9tYXRpY2FsbHkuCi8vLyBNYXRyaXhCYXNlVXJsIGlzIHJlYWQgZnJvbSB0aGUgRGFwciBzZWNyZXQgc3RvcmUgKERBUFJfU0VDUkVUX1NUT1JFX05BTUUgLyB3b3JrZmxvdy1zZWNyZXQpLgovLy8gQWxzbyB1cGRhdGVzIGluc3RhbmNlRGF0YS5hZHZpc29ySWQgdG8gdGhlIG5ldyBhZHZpc29yLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2hhdFJvb21UcmFuc2Zlckludml0ZU1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInVzZXIiKTsKICAgICAgICB2YXIgY2hhdEludGVncmF0aW9uID0gZGF0YT8uY2hhdEludGVncmF0aW9uOwogICAgICAgIHZhciByb29tSWQgPSBHZXRTdHJpbmcoY2hhdEludGVncmF0aW9uLCAicm9vbUlkIik7CgogICAgICAgIHZhciBuZXdBZHZpc29ySWQgPSBHZXRTdHJpbmcoZGF0YSwgIm5ld0Fkdmlzb3JJZCIpOwoKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyb29tSWQpIHx8IHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobmV3QWR2aXNvcklkKSkKICAgICAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwoKICAgICAgICB2YXIgc2VjcmV0TmFtZSA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2Uoc2VjcmV0TmFtZSkpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJEQVBSX1NFQ1JFVF9TVE9SRV9OQU1FIGNvbmZpZ3VyYXRpb24gaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIG1hdHJpeEJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYyhzZWNyZXROYW1lLCAid29ya2Zsb3ctc2VjcmV0IiwgIk1hdHJpeEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShtYXRyaXhCYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1hdHJpeEJhc2VVcmwgc2VjcmV0IGlzIHJlcXVpcmVkIik7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSBtYXRyaXhCYXNlVXJsLlRyaW1FbmQoJy8nKSArICIvX21hdHJpeC9jbGllbnQvdjMvcm9vbXMvIiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKHJvb21JZCkgKyAiL2ludml0ZSI7CiAgICAgICAgaHR0cFRhc2suU2V0VXJsKGZ1bGxVcmwpOwoKICAgICAgICB2YXIgbWF0cml4VXNlcklkID0gbmV3QWR2aXNvcklkLlRyaW0oKS5TdGFydHNXaXRoKCJAIikgPyBuZXdBZHZpc29ySWQuVHJpbSgpIDogJCJAe25ld0Fkdmlzb3JJZC5UcmltKCl9OmxvY2FsaG9zdCI7CgogICAgICAgIHZhciBoZWFkZXJzID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+CiAgICAgICAgewogICAgICAgICAgICBbIkNvbnRlbnQtVHlwZSJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIkFjY2VwdCJdID0gImFwcGxpY2F0aW9uL2pzb24iLAogICAgICAgICAgICBbIlgtTWF0cml4LVVzZXIiXSA9IHVzZXIKICAgICAgICB9OwogICAgICAgIGh0dHBUYXNrLlNldEhlYWRlcnMoaGVhZGVycyk7CgogICAgICAgIGh0dHBUYXNrLlNldEJvZHkobmV3IHsgdXNlcl9pZCA9IG1hdHJpeFVzZXJJZCB9KTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgbmV3QWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJuZXdBZHZpc29ySWQiKTsKICAgICAgICB2YXIgb2xkQWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIHZhciBhZHZpc29yVHlwZSA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvclR5cGUiKTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIG1lbWJlcnMgPSBuZXcgTGlzdDxvYmplY3Q+KCk7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJtZW1iZXJzIikgJiYgZGF0YS5tZW1iZXJzICE9IG51bGwpCiAgICAgICAgewogICAgICAgICAgICBmb3JlYWNoICh2YXIgbSBpbiBkYXRhLm1lbWJlcnMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBHZXRTdHJpbmcobSwgIm1lbWJlcklkIikgPz8gR2V0U3RyaW5nKG0sICJhZHZpc29ySWQiKTsKICAgICAgICAgICAgICAgIHZhciByb2xlID0gR2V0U3RyaW5nKG0sICJyb2xlIik7CiAgICAgICAgICAgICAgICBpZiAobWlkID09IG9sZEFkdmlzb3JJZCAmJiByb2xlID09ICJhZHZpc29yIiAmJiAhc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShuZXdBZHZpc29ySWQpKQogICAgICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbmV3QWR2aXNvcklkLlRyaW0oKSwgcm9sZSA9ICJhZHZpc29yIiB9KTsKICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICBtZW1iZXJzLkFkZChuZXcgeyBtZW1iZXJJZCA9IG1pZCwgcm9sZSA9IHJvbGUgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciBtZW1iZXJXaXRob3V0QXJyYXkgPSBCdWlsZE1lbWJlcldpdGhvdXRBcnJheShtZW1iZXJzKTsKCiAgICAgICAgcmVzdWx0LkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIHVzZXIsCiAgICAgICAgICAgIGFkdmlzb3JUeXBlLAogICAgICAgICAgICBhZHZpc29ySWQgPSAhc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShuZXdBZHZpc29ySWQpID8gbmV3QWR2aXNvcklkLlRyaW0oKSA6IG9sZEFkdmlzb3JJZCwKICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3IHsgcm9vbUlkIH0sCiAgICAgICAgICAgIG1lbWJlcnMgPSBtZW1iZXJzLAogICAgICAgICAgICBtZW1iZXJXaXRob3V0QXJyYXkgPSBtZW1iZXJXaXRob3V0QXJyYXksCiAgICAgICAgICAgIHBlbmRpbmdKb2luVXNlcklkID0gbmV3QWR2aXNvcklkCiAgICAgICAgfTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChyZXN1bHQpOwogICAgfQoKICAgIHByaXZhdGUgc3RyaW5nIEdldFN0cmluZyhkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICAgICAgICAgIHJldHVybiB2Py5Ub1N0cmluZygpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgc3RhdGljIERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KElFbnVtZXJhYmxlPG9iamVjdD4gbWVtYmVycykKICAgIHsKICAgICAgICB2YXIgbWFwID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+KCk7CiAgICAgICAgaWYgKG1lbWJlcnMgPT0gbnVsbCkgcmV0dXJuIG1hcDsKICAgICAgICBmb3JlYWNoIChkeW5hbWljIG0gaW4gbWVtYmVycykKICAgICAgICB7CiAgICAgICAgICAgIHRyeQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAobSA9PSBudWxsKSBjb250aW51ZTsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBtLm1lbWJlcklkPy5Ub1N0cmluZygpID8/IG0uYWR2aXNvcklkPy5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UobWlkKSkgY29udGludWU7CiAgICAgICAgICAgICAgICBtYXBbbWlkXSA9IG0ucm9sZT8uVG9TdHJpbmcoKSA/PyAiIjsKICAgICAgICAgICAgfQogICAgICAgICAgICBjYXRjaCB7IH0KICAgICAgICB9CiAgICAgICAgcmV0dXJuIG1hcDsKICAgIH0KfQo="
|
|
363
363
|
}
|
|
364
364
|
},
|
|
365
365
|
{
|
|
@@ -372,7 +372,7 @@
|
|
|
372
372
|
},
|
|
373
373
|
"mapping": {
|
|
374
374
|
"location": "./src/JoinUserToRoomMapping.csx",
|
|
375
|
-
"code": "
|
|
375
|
+
"code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gR2VuZXJpYyBtYXBwaW5nIGZvciBqb2luLXVzZXItdG8tcm9vbSBIdHRwVGFzayAoVHlwZSA2KS4KLy8vIEF1dG8tam9pbnMgdGhlIHVzZXIgc3BlY2lmaWVkIGluIGluc3RhbmNlRGF0YS5wZW5kaW5nSm9pblVzZXJJZCB0byB0aGUgcm9vbS4KLy8vIFgtTWF0cml4LVVzZXIgaXMgc2V0IHRvIHRoZSBqb2luaW5nIHVzZXIgc28gQVBJU0lYIGF1dGhlbnRpY2F0ZXMgYXMgdGhhdCB1c2VyLgovLy8gVXNlZCBhZnRlciBpbnZpdGUgaW46IHJvb20gY3JlYXRpb24gKG9uRW50cnkpLCB1cGRhdGUgKGFkZCBtZW1iZXIpLCB0cmFuc2ZlciB0cmFuc2l0aW9ucy4KLy8vIDwvc3VtbWFyeT4KcHVibGljIGNsYXNzIEpvaW5Vc2VyVG9Sb29tTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBhc3luYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaHR0cFRhc2sgPSB0YXNrIGFzIEh0dHBUYXNrOwogICAgICAgIGlmIChodHRwVGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGFuIEh0dHBUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIHBlbmRpbmdKb2luVXNlcklkID0gR2V0U3RyaW5nKGRhdGEsICJwZW5kaW5nSm9pblVzZXJJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgIm5ld0Fkdmlzb3JJZCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHBlbmRpbmdKb2luVXNlcklkKSkKICAgICAgICAgICAgcGVuZGluZ0pvaW5Vc2VySWQgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JJZCIpOwoKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShyb29tSWQpIHx8IHN0cmluZy5Jc051bGxPcldoaXRlU3BhY2UocGVuZGluZ0pvaW5Vc2VySWQpKQogICAgICAgICAgICByZXR1cm4gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CgogICAgICAgIHZhciBzZWNyZXROYW1lID0gR2V0Q29uZmlnVmFsdWUoIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShzZWNyZXROYW1lKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIkRBUFJfU0VDUkVUX1NUT1JFX05BTUUgY29uZmlndXJhdGlvbiBpcyByZXF1aXJlZCIpOwoKICAgICAgICB2YXIgbWF0cml4QmFzZVVybCA9IGF3YWl0IEdldFNlY3JldEFzeW5jKHNlY3JldE5hbWUsICJ3b3JrZmxvdy1zZWNyZXQiLCAiTWF0cml4QmFzZVVybCIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1hdHJpeEJhc2VVcmwpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiTWF0cml4QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKICAgICAgICB2YXIgZnVsbFVybCA9IG1hdHJpeEJhc2VVcmwuVHJpbUVuZCgnLycpICsgIi9fbWF0cml4L2NsaWVudC92My9qb2luLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyhyb29tSWQpOwogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgdmFyIHhNYXRyaXhVc2VyID0gcGVuZGluZ0pvaW5Vc2VySWQuVHJpbSgpOwogICAgICAgIGlmICh4TWF0cml4VXNlci5TdGFydHNXaXRoKCJAIikpCiAgICAgICAgewogICAgICAgICAgICB2YXIgY29sb25JZHggPSB4TWF0cml4VXNlci5JbmRleE9mKCc6Jyk7CiAgICAgICAgICAgIHhNYXRyaXhVc2VyID0gY29sb25JZHggPiAwID8geE1hdHJpeFVzZXIuU3Vic3RyaW5nKDEsIGNvbG9uSWR4IC0gMSkgOiB4TWF0cml4VXNlci5TdWJzdHJpbmcoMSk7CiAgICAgICAgfQoKICAgICAgICB2YXIgaGVhZGVycyA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgWyJDb250ZW50LVR5cGUiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJBY2NlcHQiXSA9ICJhcHBsaWNhdGlvbi9qc29uIiwKICAgICAgICAgICAgWyJYLU1hdHJpeC1Vc2VyIl0gPSB4TWF0cml4VXNlcgogICAgICAgIH07CiAgICAgICAgaHR0cFRhc2suU2V0SGVhZGVycyhoZWFkZXJzKTsKCiAgICAgICAgaHR0cFRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzdWx0ID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwoKICAgICAgICB2YXIgdXNlciA9IEdldFN0cmluZyhkYXRhLCAidXNlciIpOwogICAgICAgIHZhciBhZHZpc29yVHlwZSA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvclR5cGUiKTsKICAgICAgICB2YXIgYWR2aXNvcklkID0gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29ySWQiKTsKCiAgICAgICAgc3RyaW5nIHJvb21JZCA9IG51bGw7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJjaGF0SW50ZWdyYXRpb24iKSAmJiBkYXRhLmNoYXRJbnRlZ3JhdGlvbiAhPSBudWxsKQogICAgICAgICAgICByb29tSWQgPSBHZXRTdHJpbmcoZGF0YS5jaGF0SW50ZWdyYXRpb24sICJyb29tSWQiKTsKCiAgICAgICAgdmFyIG1lbWJlcnMgPSBuZXcgTGlzdDxvYmplY3Q+KCk7CiAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGRhdGEsICJtZW1iZXJzIikgJiYgZGF0YS5tZW1iZXJzICE9IG51bGwpCiAgICAgICAgewogICAgICAgICAgICBmb3JlYWNoICh2YXIgbSBpbiBkYXRhLm1lbWJlcnMpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBtaWQgPSBHZXRTdHJpbmcobSwgIm1lbWJlcklkIikgPz8gR2V0U3RyaW5nKG0sICJhZHZpc29ySWQiKTsKICAgICAgICAgICAgICAgIG1lbWJlcnMuQWRkKG5ldyB7IG1lbWJlcklkID0gbWlkLCByb2xlID0gR2V0U3RyaW5nKG0sICJyb2xlIikgfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciByb29tVHlwZSA9IEdldFN0cmluZyhkYXRhLCAicm9vbVR5cGUiKTsKICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgIHZhciBlbmREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgdmFyIG1lbWJlcldpdGhvdXRBcnJheSA9IEJ1aWxkTWVtYmVyV2l0aG91dEFycmF5KG1lbWJlcnMpOwoKICAgICAgICByZXN1bHQuRGF0YSA9IG5ldwogICAgICAgIHsKICAgICAgICAgICAgdXNlciwKICAgICAgICAgICAgYWR2aXNvclR5cGUsCiAgICAgICAgICAgIGFkdmlzb3JJZCwKICAgICAgICAgICAgY2hhdEludGVncmF0aW9uID0gbmV3IHsgcm9vbUlkIH0sCiAgICAgICAgICAgIHJvb21UeXBlLAogICAgICAgICAgICBzdGFydERhdGVUaW1lLAogICAgICAgICAgICBlbmREYXRlVGltZSwKICAgICAgICAgICAgbWVtYmVycyA9IG1lbWJlcnMsCiAgICAgICAgICAgIG1lbWJlcldpdGhvdXRBcnJheSA9IG1lbWJlcldpdGhvdXRBcnJheQogICAgICAgIH07CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzdWx0KTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIHN0YXRpYyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPiBCdWlsZE1lbWJlcldpdGhvdXRBcnJheShJRW51bWVyYWJsZTxvYmplY3Q+IG1lbWJlcnMpCiAgICB7CiAgICAgICAgdmFyIG1hcCA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgIGlmIChtZW1iZXJzID09IG51bGwpIHJldHVybiBtYXA7CiAgICAgICAgZm9yZWFjaCAoZHluYW1pYyBtIGluIG1lbWJlcnMpCiAgICAgICAgewogICAgICAgICAgICB0cnkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgaWYgKG0gPT0gbnVsbCkgY29udGludWU7CiAgICAgICAgICAgICAgICB2YXIgbWlkID0gbS5tZW1iZXJJZD8uVG9TdHJpbmcoKSA/PyBtLmFkdmlzb3JJZD8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKG1pZCkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgbWFwW21pZF0gPSBtLnJvbGU/LlRvU3RyaW5nKCkgPz8gIiI7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXA7CiAgICB9Cn0K"
|
|
376
376
|
}
|
|
377
377
|
}
|
|
378
378
|
]
|