@burgan-tech/morph-touch-runtime 0.0.3 → 0.0.5

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.
Files changed (261) hide show
  1. package/burgan-tech-morph-touch-runtime-0.0.5.tgz +0 -0
  2. package/{touch → morph-touch}/Functions/check-livekit-room-access.1.0.0.json +2 -2
  3. package/{touch → morph-touch}/Functions/check-livekit-room-access.http +1 -1
  4. package/{touch → morph-touch}/Functions/get-absence-entry.1.0.0.json +2 -2
  5. package/{touch → morph-touch}/Functions/get-advisor-stats.1.0.0.json +2 -2
  6. package/morph-touch/Functions/get-available-slots.1.0.0.json +30 -0
  7. package/{touch → morph-touch}/Functions/get-available-slots.http +4 -2
  8. package/morph-touch/Functions/get-chat-rooms.1.0.0.json +28 -0
  9. package/{touch → morph-touch}/Functions/get-chat-rooms.http +2 -2
  10. package/{touch → morph-touch}/Functions/get-customer-info.1.0.0.json +2 -2
  11. package/{touch → morph-touch}/Functions/get-matrix-sync.1.0.0.json +2 -2
  12. package/morph-touch/Functions/get-rezervations.1.0.0.json +26 -0
  13. package/{touch → morph-touch}/Functions/get-rezervations.http +2 -2
  14. package/{touch → morph-touch}/Functions/get-room-messages.1.0.0.json +2 -2
  15. package/{touch → morph-touch}/Functions/get-room-messages.http +1 -1
  16. package/{touch → morph-touch}/Functions/rezervation-transfer.http +1 -1
  17. package/{touch → morph-touch}/Functions/send-room-message.1.0.0.json +2 -2
  18. package/{touch → morph-touch}/Functions/src/GetAvailableSlotsMapping.csx +125 -1
  19. package/{touch → morph-touch}/Functions/src/GetChatRoomsMapping.csx +6 -7
  20. package/{touch → morph-touch}/Functions/src/GetRezervationsMapping.csx +12 -5
  21. package/{touch → morph-touch}/Schemas/absence-entry.1.0.0.json +3 -3
  22. package/{touch → morph-touch}/Schemas/advisor-chat-rooms.1.0.0.json +2 -2
  23. package/{touch → morph-touch}/Schemas/chat-room.1.0.0.json +2 -2
  24. package/morph-touch/Schemas/chat-room.1.1.0.json +132 -0
  25. package/morph-touch/Schemas/chat-room.1.2.0.json +174 -0
  26. package/{touch → morph-touch}/Schemas/notification-sender.1.0.0.json +2 -2
  27. package/{touch → morph-touch}/Schemas/portfolio-manager.1.0.0.json +2 -2
  28. package/{touch → morph-touch}/Schemas/rezervation.1.0.0.json +2 -2
  29. package/{touch → morph-touch}/Tasks/cancel-absence-entry-for-rezervation.1.0.0.json +2 -2
  30. package/{touch → morph-touch}/Tasks/check-already-completed-chat-room.1.0.0.json +3 -3
  31. package/{touch → morph-touch}/Tasks/check-duplicate-portfolio-manager.1.0.0.json +3 -3
  32. package/{touch → morph-touch}/Tasks/check-duplicate-rezervation.1.0.0.json +3 -3
  33. package/{touch → morph-touch}/Tasks/check-existing-permanent-chat-room.1.0.0.json +3 -3
  34. package/{touch → morph-touch}/Tasks/check-randevu-time.1.0.0.json +1 -1
  35. package/{touch → morph-touch}/Tasks/create-permanent-chat-room.1.0.0.json +1 -1
  36. package/{touch → morph-touch}/Tasks/determine-transfer-type.1.0.0.json +1 -1
  37. package/{touch → morph-touch}/Tasks/enrich-rezervations-for-transfer.1.0.0.json +3 -3
  38. package/{touch → morph-touch}/Tasks/execute-permanent-chatroom-update.1.0.0.json +3 -3
  39. package/{touch → morph-touch}/Tasks/execute-rez-chatroom-transfer.1.0.0.json +2 -2
  40. package/{touch → morph-touch}/Tasks/execute-rezervation-transfer.1.0.0.json +2 -2
  41. package/{touch → morph-touch}/Tasks/fetch-absence-entries-for-transfer.1.0.0.json +3 -3
  42. package/{touch → morph-touch}/Tasks/fetch-advisors-for-transfer.1.0.0.json +3 -3
  43. package/{touch → morph-touch}/Tasks/fetch-permanent-chatrooms-for-transfer.1.0.0.json +3 -3
  44. package/{touch → morph-touch}/Tasks/fetch-rez-chatrooms-for-transfer.1.0.0.json +3 -3
  45. package/{touch → morph-touch}/Tasks/fetch-rezervations-for-transfer.1.0.0.json +3 -3
  46. package/{touch → morph-touch}/Tasks/get-absence-entry-task.1.0.0.json +3 -3
  47. package/{touch → morph-touch}/Tasks/get-available-slots-http.1.0.0.json +2 -2
  48. package/{touch → morph-touch}/Tasks/get-available-slots.1.0.0.json +3 -3
  49. package/{touch → morph-touch}/Tasks/get-chat-room-data-for-rezervation.1.0.0.json +3 -3
  50. package/{touch → morph-touch}/Tasks/get-chat-token.1.0.0.json +1 -1
  51. package/{touch → morph-touch}/Tasks/get-matrix-room-messages.1.0.0.json +1 -1
  52. package/{touch → morph-touch}/Tasks/get-matrix-sync.1.0.0.json +1 -1
  53. package/{touch → morph-touch}/Tasks/get-rezervation-data-task.1.0.0.json +3 -3
  54. package/{touch → morph-touch}/Tasks/get-rezervation-state-task.1.0.0.json +3 -3
  55. package/{touch → morph-touch}/Tasks/get-rezervations-task.1.0.0.json +3 -3
  56. package/{touch → morph-touch}/Tasks/get-user-info-for-rezervation.1.0.0.json +1 -1
  57. package/{touch → morph-touch}/Tasks/get-video-call-url.1.0.0.json +1 -1
  58. package/{touch → morph-touch}/Tasks/invite-user-to-rezervation-room.1.0.0.json +1 -1
  59. package/{touch → morph-touch}/Tasks/join-chat-room-for-rezervation.1.0.0.json +1 -1
  60. package/{touch → morph-touch}/Tasks/join-matrix-room.1.0.0.json +1 -1
  61. package/{touch → morph-touch}/Tasks/join-user-to-room.1.0.0.json +1 -1
  62. package/{touch → morph-touch}/Tasks/merge-invited-user.1.0.0.json +1 -1
  63. package/{touch → morph-touch}/Tasks/merge-rezervation-update.1.0.0.json +1 -1
  64. package/{touch → morph-touch}/Tasks/merge-target-advisor-for-transfer.1.0.0.json +1 -1
  65. package/{touch → morph-touch}/Tasks/merge-update-body-for-randevu-update.1.0.0.json +1 -1
  66. package/{touch → morph-touch}/Tasks/merge-video-call-urls.1.0.0.json +1 -1
  67. package/{touch → morph-touch}/Tasks/query-chat-room-instances.1.0.0.json +3 -3
  68. package/{touch → morph-touch}/Tasks/remove-member-from-room.1.0.0.json +1 -1
  69. package/{touch → morph-touch}/Tasks/send-matrix-room-message.1.0.0.json +1 -1
  70. package/{touch → morph-touch}/Tasks/send-push-notification.1.0.0.json +1 -1
  71. package/{touch → morph-touch}/Tasks/send-sms-notification.1.0.0.json +1 -1
  72. package/{touch → morph-touch}/Tasks/set-chat-room-status-active.1.0.0.json +1 -1
  73. package/{touch → morph-touch}/Tasks/set-chat-room-status-deactive.1.0.0.json +1 -1
  74. package/morph-touch/Tasks/set-matrix-room-history-visibility.1.0.0.json +26 -0
  75. package/{touch → morph-touch}/Tasks/set-previous-advisor.1.0.0.json +1 -1
  76. package/{touch → morph-touch}/Tasks/set-user-from-headers-for-rezervation.1.0.0.json +1 -1
  77. package/{touch → morph-touch}/Tasks/start-absence-entry-for-rezervation.1.0.0.json +2 -2
  78. package/{touch → morph-touch}/Tasks/start-chat-room-for-rezervation.1.0.0.json +2 -2
  79. package/{touch → morph-touch}/Tasks/start-notification-sender.1.0.0.json +2 -2
  80. package/{touch → morph-touch}/Tasks/start-permanent-chat-room.1.0.0.json +2 -2
  81. package/{touch → morph-touch}/Tasks/start-transfer-from-absence-entry.1.0.0.json +2 -2
  82. package/{touch → morph-touch}/Tasks/start-video-call.1.0.0.json +2 -2
  83. package/morph-touch/Tasks/summarize-chat-openai.1.0.0.json +27 -0
  84. package/morph-touch/Tasks/test-get-rezervation-count-by-advisor.1.0.0.json +22 -0
  85. package/morph-touch/Tasks/test-get-rezervation-instances-after-date.1.0.0.json +24 -0
  86. package/{touch → morph-touch}/Tasks/trigger-chat-room-deactivate.1.0.0.json +2 -2
  87. package/{touch → morph-touch}/Tasks/trigger-chat-room-transfer.1.0.0.json +2 -2
  88. package/{touch → morph-touch}/Tasks/trigger-chat-room-update.1.0.0.json +2 -2
  89. package/{touch → morph-touch}/Tasks/trigger-rezervation-add-invited-participant.1.0.0.json +2 -2
  90. package/{touch → morph-touch}/Tasks/trigger-rezervation-apply-update.1.0.0.json +2 -2
  91. package/{touch → morph-touch}/Tasks/trigger-rezervation-to-in-meet.1.0.0.json +2 -2
  92. package/{touch → morph-touch}/Tasks/trigger-rezervation-video-call-update.1.0.0.json +2 -2
  93. package/{touch → morph-touch}/Tasks/validate-date-for-rezervation.1.0.0.json +1 -1
  94. package/{touch → morph-touch}/Tasks/validate-slot-for-rezervation.1.0.0.json +3 -3
  95. package/{touch → morph-touch}/Tasks/validate-transfer-availability.1.0.0.json +3 -3
  96. package/{touch → morph-touch}/Workflows/absence-entry.http +21 -21
  97. package/{touch → morph-touch}/Workflows/absence-entry.json +3 -3
  98. package/{touch → morph-touch}/Workflows/add-participant-to-rezervation.http +3 -3
  99. package/{touch → morph-touch}/Workflows/add-participant-to-rezervation.json +23 -24
  100. package/{touch → morph-touch}/Workflows/chat-room.http +10 -8
  101. package/{touch → morph-touch}/Workflows/chat-room.json +37 -24
  102. package/{touch → morph-touch}/Workflows/investment-advisor.json +2 -2
  103. package/{touch → morph-touch}/Workflows/notification-sender.http +13 -13
  104. package/{touch → morph-touch}/Workflows/notification-sender.json +5 -5
  105. package/{touch → morph-touch}/Workflows/portfolio-manager.json +2 -2
  106. package/{touch → morph-touch}/Workflows/randevu-update.http +6 -6
  107. package/{touch → morph-touch}/Workflows/rezervation-start.json +16 -16
  108. package/{touch → morph-touch}/Workflows/rezervation-transfer.json +125 -22
  109. package/{touch → morph-touch}/Workflows/rezervation-update.http +6 -6
  110. package/{touch → morph-touch}/Workflows/rezervation-update.json +19 -19
  111. package/{touch → morph-touch}/Workflows/rezervation.http +6 -6
  112. package/{touch → morph-touch}/Workflows/rezervation.json +121 -180
  113. package/{touch → morph-touch}/Workflows/src/CancelAbsenceEntryForRezervationMapping.csx +1 -1
  114. package/{touch → morph-touch}/Workflows/src/CancelAbsenceForRandevuUpdateMapping.csx +1 -1
  115. package/{touch → morph-touch}/Workflows/src/ChatRoomRemoveMapping.csx +22 -1
  116. package/{touch → morph-touch}/Workflows/src/ChatRoomTransferInviteMapping.csx +21 -0
  117. package/{touch → morph-touch}/Workflows/src/ChatRoomUpdateMapping.csx +21 -0
  118. package/{touch → morph-touch}/Workflows/src/CreateAbsenceEntryForRezervationMapping.csx +1 -1
  119. package/{touch → morph-touch}/Workflows/src/CreateAbsenceForRandevuUpdateMapping.csx +1 -1
  120. package/{touch → morph-touch}/Workflows/src/CreateChatRoomForRezervationMapping.csx +12 -2
  121. package/{touch → morph-touch}/Workflows/src/CreatePermanentChatRoomMapping.csx +50 -9
  122. package/morph-touch/Workflows/src/DeactivatePermanentChatRoomFromTransferMapping.csx +133 -0
  123. package/{touch → morph-touch}/Workflows/src/EnrichRezervationsForTransferMapping.csx +16 -3
  124. package/{touch → morph-touch}/Workflows/src/ExecutePermanentChatRoomUpdateMapping.csx +23 -18
  125. package/{touch → morph-touch}/Workflows/src/ExecuteRezChatRoomTransferMapping.csx +1 -1
  126. package/{touch → morph-touch}/Workflows/src/ExecuteTransferMapping.csx +15 -12
  127. package/{touch → morph-touch}/Workflows/src/FetchAdvisorsForTransferMapping.csx +55 -7
  128. package/{touch → morph-touch}/Workflows/src/FetchPermanentChatRoomsMapping.csx +65 -2
  129. package/morph-touch/Workflows/src/FetchRoomMessagesForSummaryMapping.csx +182 -0
  130. package/{touch → morph-touch}/Workflows/src/GetChatRoomDataForRezervationMapping.csx +2 -2
  131. package/{touch → morph-touch}/Workflows/src/GetRezervationDataForAddParticipantMapping.csx +1 -1
  132. package/{touch → morph-touch}/Workflows/src/GetRezervationDataForRandevuUpdateMapping.csx +1 -1
  133. package/{touch → morph-touch}/Workflows/src/GetRezervationDataMapping.csx +2 -2
  134. package/{touch → morph-touch}/Workflows/src/GetRezervationStateForRandevuUpdateMapping.csx +1 -1
  135. package/{touch → morph-touch}/Workflows/src/GetRezervationStateMapping.csx +2 -2
  136. package/{touch → morph-touch}/Workflows/src/InvitedUserNotAllowedRule.csx +1 -1
  137. package/{touch → morph-touch}/Workflows/src/JoinUserToRoomMapping.csx +22 -1
  138. package/morph-touch/Workflows/src/NoOpGetInstancesTestMapping.csx +19 -0
  139. package/morph-touch/Workflows/src/PermanentProcessNextTerminationRule.csx +51 -0
  140. package/{touch → morph-touch}/Workflows/src/SendPushNotificationMapping.csx +2 -2
  141. package/{touch → morph-touch}/Workflows/src/SendSmsNotificationMapping.csx +1 -1
  142. package/morph-touch/Workflows/src/SendSummaryToNewRoomMapping.csx +178 -0
  143. package/morph-touch/Workflows/src/SetRoomHistoryVisibilityMapping.csx +109 -0
  144. package/{touch → morph-touch}/Workflows/src/StartChatRoomForRezervationMapping.csx +4 -3
  145. package/{touch → morph-touch}/Workflows/src/StartGetChatTokenForRezervationMapping.csx +1 -1
  146. package/morph-touch/Workflows/src/StartNewPermanentChatRoomFromTransferMapping.csx +197 -0
  147. package/{touch → morph-touch}/Workflows/src/StartNotificationForAdvisorMapping.csx +1 -1
  148. package/{touch → morph-touch}/Workflows/src/StartNotificationForRezervationFromUserInfoMapping.csx +1 -1
  149. package/{touch → morph-touch}/Workflows/src/StartNotificationForUserMapping.csx +1 -1
  150. package/{touch → morph-touch}/Workflows/src/StartPermanentChatRoomMapping.csx +5 -2
  151. package/{touch → morph-touch}/Workflows/src/StartTransferFromAbsenceEntryMapping.csx +6 -14
  152. package/{touch → morph-touch}/Workflows/src/StateInMeetRule.csx +1 -1
  153. package/morph-touch/Workflows/src/SummarizeChatWithOpenAIMapping.csx +172 -0
  154. package/{touch → morph-touch}/Workflows/src/TriggerChatRoomDeactivateMapping.csx +1 -1
  155. package/{touch → morph-touch}/Workflows/src/TriggerChatRoomTransferMapping.csx +1 -1
  156. package/{touch → morph-touch}/Workflows/src/TriggerChatRoomUpdateMapping.csx +3 -3
  157. package/{touch → morph-touch}/Workflows/src/TriggerRezervationAddInvitedParticipantMapping.csx +1 -1
  158. package/{touch → morph-touch}/Workflows/src/TriggerRezervationApplyUpdateMapping.csx +1 -1
  159. package/{touch → morph-touch}/Workflows/src/TriggerRezervationToInMeetMapping.csx +1 -1
  160. package/{touch → morph-touch}/Workflows/src/TriggerRezervationVideoCallUpdateMapping.csx +1 -1
  161. package/{touch → morph-touch}/Workflows/src/ValidateSlotForRandevuUpdateMapping.csx +29 -1
  162. package/{touch → morph-touch}/Workflows/src/ValidateSlotForRezervationMapping.csx +29 -1
  163. package/{touch → morph-touch}/Workflows/src/ValidateTransferMapping.csx +2 -2
  164. package/{touch → morph-touch}/Workflows/start-chat.json +6 -6
  165. package/{touch → morph-touch}/Workflows/start-video-call.http +3 -3
  166. package/{touch → morph-touch}/Workflows/start-video-call.json +4 -4
  167. package/package.json +1 -1
  168. package/vnext.config.json +7 -7
  169. package/burgan-tech-morph-touch-runtime-0.0.3.tgz +0 -0
  170. package/touch/Functions/get-available-slots.1.0.0.json +0 -30
  171. package/touch/Functions/get-chat-rooms.1.0.0.json +0 -28
  172. package/touch/Functions/get-rezervations.1.0.0.json +0 -26
  173. /package/{touch → morph-touch}/Extensions/.gitkeep +0 -0
  174. /package/{touch → morph-touch}/Functions/.gitkeep +0 -0
  175. /package/{touch → morph-touch}/Functions/src/CheckLivekitRoomAccessMapping.csx +0 -0
  176. /package/{touch → morph-touch}/Functions/src/GetAbsenceEntryMapping.csx +0 -0
  177. /package/{touch → morph-touch}/Functions/src/GetAdvisorStatsMapping.csx +0 -0
  178. /package/{touch → morph-touch}/Functions/src/GetCustomerInfoMapping.csx +0 -0
  179. /package/{touch → morph-touch}/Functions/src/GetMatrixSyncMapping.csx +0 -0
  180. /package/{touch → morph-touch}/Functions/src/GetRoomMessagesMapping.csx +0 -0
  181. /package/{touch → morph-touch}/Functions/src/SendCancelNotificationMapping.csx +0 -0
  182. /package/{touch → morph-touch}/Functions/src/SendRoomMessageMapping.csx +0 -0
  183. /package/{touch → morph-touch}/Schemas/.gitkeep +0 -0
  184. /package/{touch → morph-touch}/Tasks/.gitkeep +0 -0
  185. /package/{touch → morph-touch}/Views/.gitkeep +0 -0
  186. /package/{touch → morph-touch}/Workflows/.gitkeep +0 -0
  187. /package/{touch → morph-touch}/Workflows/src/AllChatRoomsSuccessRule.csx +0 -0
  188. /package/{touch → morph-touch}/Workflows/src/AlwaysTrueRule.csx +0 -0
  189. /package/{touch → morph-touch}/Workflows/src/AnyChatRoomFailedRule.csx +0 -0
  190. /package/{touch → morph-touch}/Workflows/src/AutoProcessRule.csx +0 -0
  191. /package/{touch → morph-touch}/Workflows/src/BuildRezChatRoomPlanMapping.csx +0 -0
  192. /package/{touch → morph-touch}/Workflows/src/CanStartRezervationTimerMapping.csx +0 -0
  193. /package/{touch → morph-touch}/Workflows/src/CanStartTransferMapping.csx +0 -0
  194. /package/{touch → morph-touch}/Workflows/src/ChatRoomCreatedFailedRule.csx +0 -0
  195. /package/{touch → morph-touch}/Workflows/src/ChatRoomCreatedSuccessRule.csx +0 -0
  196. /package/{touch → morph-touch}/Workflows/src/ChatRoomTransferRemoveMapping.csx +0 -0
  197. /package/{touch → morph-touch}/Workflows/src/CheckAlreadyCompletedChatRoomMapping.csx +0 -0
  198. /package/{touch → morph-touch}/Workflows/src/CheckDuplicatePortfolioManagerMapping.csx +0 -0
  199. /package/{touch → morph-touch}/Workflows/src/CheckDuplicateRezervationMapping.csx +0 -0
  200. /package/{touch → morph-touch}/Workflows/src/CheckExistingPermanentChatRoomMapping.csx +0 -0
  201. /package/{touch → morph-touch}/Workflows/src/CheckRandevuTimeMapping.csx +0 -0
  202. /package/{touch → morph-touch}/Workflows/src/CheckRezervationStateActiveOrInMeetRule.csx +0 -0
  203. /package/{touch → morph-touch}/Workflows/src/CustomerControlToEndRule.csx +0 -0
  204. /package/{touch → morph-touch}/Workflows/src/DetermineTransferTypeMapping.csx +0 -0
  205. /package/{touch → morph-touch}/Workflows/src/FetchAbsenceEntriesForTransferMapping.csx +0 -0
  206. /package/{touch → morph-touch}/Workflows/src/FetchRezervationsForTransferMapping.csx +0 -0
  207. /package/{touch → morph-touch}/Workflows/src/GetChatTokenMapping.csx +0 -0
  208. /package/{touch → morph-touch}/Workflows/src/GetUserInfoForRezervationMapping.csx +0 -0
  209. /package/{touch → morph-touch}/Workflows/src/GetVideoCallUrlMapping.csx +0 -0
  210. /package/{touch → morph-touch}/Workflows/src/HasChangedAdvisorRule.csx +0 -0
  211. /package/{touch → morph-touch}/Workflows/src/HasChatIntegrationRule.csx +0 -0
  212. /package/{touch → morph-touch}/Workflows/src/HasExistingPermanentRoomRule.csx +0 -0
  213. /package/{touch → morph-touch}/Workflows/src/InviteAdvisorForRandevuUpdateMapping.csx +0 -0
  214. /package/{touch → morph-touch}/Workflows/src/InviteNewAdvisorToRezervationRoomMapping.csx +0 -0
  215. /package/{touch → morph-touch}/Workflows/src/InviteNewParticipantToRandevuRoomMapping.csx +0 -0
  216. /package/{touch → morph-touch}/Workflows/src/InvitedUserMergeMapping.csx +0 -0
  217. /package/{touch → morph-touch}/Workflows/src/InvitedUserNotInMeetRule.csx +0 -0
  218. /package/{touch → morph-touch}/Workflows/src/IsNotfSentRule.csx +0 -0
  219. /package/{touch → morph-touch}/Workflows/src/JoinChatRoomForAddParticipantMapping.csx +0 -0
  220. /package/{touch → morph-touch}/Workflows/src/JoinChatRoomForRandevuStartMapping.csx +0 -0
  221. /package/{touch → morph-touch}/Workflows/src/JoinChatRoomForRezervationMapping.csx +0 -0
  222. /package/{touch → morph-touch}/Workflows/src/JoinMatrixRoomMapping.csx +0 -0
  223. /package/{touch → morph-touch}/Workflows/src/LoginForAddParticipantChatMapping.csx +0 -0
  224. /package/{touch → morph-touch}/Workflows/src/LoginForRandevuStartChatMapping.csx +0 -0
  225. /package/{touch → morph-touch}/Workflows/src/MergeRezervationUpdateMapping.csx +0 -0
  226. /package/{touch → morph-touch}/Workflows/src/MergeTargetAdvisorForTransferMapping.csx +0 -0
  227. /package/{touch → morph-touch}/Workflows/src/MergeUpdateBodyForRandevuUpdateMapping.csx +0 -0
  228. /package/{touch → morph-touch}/Workflows/src/NoExistingPermanentRoomRule.csx +0 -0
  229. /package/{touch → morph-touch}/Workflows/src/NotificationCompleteAlwaysRule.csx +0 -0
  230. /package/{touch → morph-touch}/Workflows/src/NotificationCompleteFromPendingRule.csx +0 -0
  231. /package/{touch → morph-touch}/Workflows/src/NotificationCompleteFromSmsRule.csx +0 -0
  232. /package/{touch → morph-touch}/Workflows/src/NotificationPushFromPendingRule.csx +0 -0
  233. /package/{touch → morph-touch}/Workflows/src/NotificationPushFromSmsRule.csx +0 -0
  234. /package/{touch → morph-touch}/Workflows/src/NotificationSmsPendingRule.csx +0 -0
  235. /package/{touch → morph-touch}/Workflows/src/PermanentDoneRule.csx +0 -0
  236. /package/{touch → morph-touch}/Workflows/src/PermanentProcessNextRule.csx +0 -0
  237. /package/{touch → morph-touch}/Workflows/src/RezChatRoomProcessNextRule.csx +0 -0
  238. /package/{touch → morph-touch}/Workflows/src/RezChatRoomsDoneRule.csx +0 -0
  239. /package/{touch → morph-touch}/Workflows/src/SetChatRoomStatusActiveMapping.csx +0 -0
  240. /package/{touch → morph-touch}/Workflows/src/SetChatRoomStatusDeactiveMapping.csx +0 -0
  241. /package/{touch → morph-touch}/Workflows/src/SetPreviousAdvisorMapping.csx +0 -0
  242. /package/{touch → morph-touch}/Workflows/src/SetUserFromHeadersForRezervationMapping.csx +0 -0
  243. /package/{touch → morph-touch}/Workflows/src/SlotAvailableRule.csx +0 -0
  244. /package/{touch → morph-touch}/Workflows/src/SlotUnavailableRule.csx +0 -0
  245. /package/{touch → morph-touch}/Workflows/src/StartVideoCallCustomerSubFlowMapping.csx +0 -0
  246. /package/{touch → morph-touch}/Workflows/src/StartVideoCallForInvitedParticipantMapping.csx +0 -0
  247. /package/{touch → morph-touch}/Workflows/src/StartVideoCallForRandevuStartMapping.csx +0 -0
  248. /package/{touch → morph-touch}/Workflows/src/StartVideoCallStaffSubFlowMapping.csx +0 -0
  249. /package/{touch → morph-touch}/Workflows/src/StateActiveForUpdateRule.csx +0 -0
  250. /package/{touch → morph-touch}/Workflows/src/StateActiveRule.csx +0 -0
  251. /package/{touch → morph-touch}/Workflows/src/StateNotActiveForUpdateRule.csx +0 -0
  252. /package/{touch → morph-touch}/Workflows/src/StateNotActiveOrInMeetRule.csx +0 -0
  253. /package/{touch → morph-touch}/Workflows/src/StatusCustomerEnterRule.csx +0 -0
  254. /package/{touch → morph-touch}/Workflows/src/StatusStaffEnterRule.csx +0 -0
  255. /package/{touch → morph-touch}/Workflows/src/SyncWorkingHoursRule.csx +0 -0
  256. /package/{touch → morph-touch}/Workflows/src/TokenSuccessRule.csx +0 -0
  257. /package/{touch → morph-touch}/Workflows/src/TransferAllDoneRule.csx +0 -0
  258. /package/{touch → morph-touch}/Workflows/src/TransferHasInvalidRule.csx +0 -0
  259. /package/{touch → morph-touch}/Workflows/src/TransferProcessNextRule.csx +0 -0
  260. /package/{touch → morph-touch}/Workflows/src/ValidateDateForRezervationMapping.csx +0 -0
  261. /package/{touch → morph-touch}/Workflows/src/VideoCallUrlUpdateMergeMapping.csx +0 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "key": "rezervation",
3
3
  "flow": "sys-flows",
4
- "domain": "touch",
4
+ "domain": "morph-touch",
5
5
  "version": "1.0.0",
6
6
  "flowVersion": "2.0.0",
7
7
  "tags": [
@@ -22,6 +22,22 @@
22
22
  "functions": [],
23
23
  "features": [],
24
24
  "extensions": [],
25
+ "cancel": {
26
+ "key": "user-cancel",
27
+ "target": "user-cancelled",
28
+ "triggerType": 0,
29
+ "versionStrategy": "Minor",
30
+ "labels": [
31
+ {
32
+ "label": "Cancel by User",
33
+ "language": "en-US"
34
+ },
35
+ {
36
+ "label": "Kullanıcı İptali",
37
+ "language": "tr-TR"
38
+ }
39
+ ]
40
+ },
25
41
  "sharedTransitions": [
26
42
  {
27
43
  "key": "user-cancel",
@@ -45,14 +61,14 @@
45
61
  {
46
62
  "order": 1,
47
63
  "task": {
48
- "domain": "touch",
64
+ "domain": "morph-touch",
49
65
  "flow": "sys-tasks",
50
66
  "key": "cancel-absence-entry-for-rezervation",
51
67
  "version": "1.0.0"
52
68
  },
53
69
  "mapping": {
54
70
  "location": "./src/CancelAbsenceEntryForRezervationMapping.csx",
55
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBjYW5jZWwtYWJzZW5jZS1lbnRyeS1mb3ItcmV6ZXJ2YXRpb24gRGlyZWN0VHJpZ2dlclRhc2sgKFR5cGUgMTIpLgovLy8gVHJpZ2dlcnMgY2FuY2VsIHRyYW5zaXRpb24gb24gdGhlIGFic2VuY2UtZW50cnkgaW5zdGFuY2Ugd2hlbiBiYWNrLXRvLWZvcm0sIHVzZXItY2FuY2VsLCBvciBhZHZpc29yLWNhbmNlbCBpcyBleGVjdXRlZC4KLy8vIFVzZXMgYWJzZW5jZUVudHJ5S2V5IGZyb20gaW5zdGFuY2UgKHNldCBpbiBjb25maXJtYXRpb24gb25FbnRyeSkuIE5vLW9wIGlmIGFic2VuY2VFbnRyeUtleSBpcyBtaXNzaW5nIChlLmcuIG9sZCBpbnN0YW5jZXMpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2FuY2VsQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciB0cmlnZ2VyVGFzayA9IHRhc2sgYXMgRGlyZWN0VHJpZ2dlclRhc2s7CiAgICAgICAgaWYgKHRyaWdnZXJUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEaXJlY3RUcmlnZ2VyVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9IGRhdGE/LmFic2VuY2VFbnRyeUtleT8uVG9TdHJpbmcoKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWJzZW5jZUVudHJ5S2V5KSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBjYW5jZWxUcmlnZ2VyZWQgPSBmYWxzZSwgcmVhc29uID0gIm5vLWFic2VuY2UtZW50cnkta2V5IiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgdHJpZ2dlclRhc2suU2V0RG9tYWluKCJ0b3VjaCIpOwogICAgICAgIHRyaWdnZXJUYXNrLlNldEZsb3coImFic2VuY2UtZW50cnkiKTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRUcmFuc2l0aW9uTmFtZSgiY2FuY2VsIik7CiAgICAgICAgdHJpZ2dlclRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXNwb25zZSA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHJlc3BvbnNlLkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIGNhbmNlbFRyaWdnZXJlZCA9IGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUsCiAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gZmFsc2UgPyAoY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkNhbmNlbCBmYWlsZWQiKSA6IG51bGwKICAgICAgICB9OwogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzcG9uc2UpOwogICAgfQp9Cg=="
71
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBjYW5jZWwtYWJzZW5jZS1lbnRyeS1mb3ItcmV6ZXJ2YXRpb24gRGlyZWN0VHJpZ2dlclRhc2sgKFR5cGUgMTIpLgovLy8gVHJpZ2dlcnMgY2FuY2VsIHRyYW5zaXRpb24gb24gdGhlIGFic2VuY2UtZW50cnkgaW5zdGFuY2Ugd2hlbiBiYWNrLXRvLWZvcm0sIHVzZXItY2FuY2VsLCBvciBhZHZpc29yLWNhbmNlbCBpcyBleGVjdXRlZC4KLy8vIFVzZXMgYWJzZW5jZUVudHJ5S2V5IGZyb20gaW5zdGFuY2UgKHNldCBpbiBjb25maXJtYXRpb24gb25FbnRyeSkuIE5vLW9wIGlmIGFic2VuY2VFbnRyeUtleSBpcyBtaXNzaW5nIChlLmcuIG9sZCBpbnN0YW5jZXMpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2FuY2VsQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciB0cmlnZ2VyVGFzayA9IHRhc2sgYXMgRGlyZWN0VHJpZ2dlclRhc2s7CiAgICAgICAgaWYgKHRyaWdnZXJUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEaXJlY3RUcmlnZ2VyVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9IGRhdGE/LmFic2VuY2VFbnRyeUtleT8uVG9TdHJpbmcoKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWJzZW5jZUVudHJ5S2V5KSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBjYW5jZWxUcmlnZ2VyZWQgPSBmYWxzZSwgcmVhc29uID0gIm5vLWFic2VuY2UtZW50cnkta2V5IiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgdHJpZ2dlclRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHRyaWdnZXJUYXNrLlNldEZsb3coImFic2VuY2UtZW50cnkiKTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRUcmFuc2l0aW9uTmFtZSgiY2FuY2VsIik7CiAgICAgICAgdHJpZ2dlclRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXNwb25zZSA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHJlc3BvbnNlLkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIGNhbmNlbFRyaWdnZXJlZCA9IGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUsCiAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gZmFsc2UgPyAoY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkNhbmNlbCBmYWlsZWQiKSA6IG51bGwKICAgICAgICB9OwogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzcG9uc2UpOwogICAgfQp9Cg=="
56
72
  }
57
73
  }
58
74
  ]
@@ -79,20 +95,20 @@
79
95
  {
80
96
  "order": 1,
81
97
  "task": {
82
- "domain": "touch",
98
+ "domain": "morph-touch",
83
99
  "flow": "sys-tasks",
84
100
  "key": "cancel-absence-entry-for-rezervation",
85
101
  "version": "1.0.0"
86
102
  },
87
103
  "mapping": {
88
104
  "location": "./src/CancelAbsenceEntryForRezervationMapping.csx",
89
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBjYW5jZWwtYWJzZW5jZS1lbnRyeS1mb3ItcmV6ZXJ2YXRpb24gRGlyZWN0VHJpZ2dlclRhc2sgKFR5cGUgMTIpLgovLy8gVHJpZ2dlcnMgY2FuY2VsIHRyYW5zaXRpb24gb24gdGhlIGFic2VuY2UtZW50cnkgaW5zdGFuY2Ugd2hlbiBiYWNrLXRvLWZvcm0sIHVzZXItY2FuY2VsLCBvciBhZHZpc29yLWNhbmNlbCBpcyBleGVjdXRlZC4KLy8vIFVzZXMgYWJzZW5jZUVudHJ5S2V5IGZyb20gaW5zdGFuY2UgKHNldCBpbiBjb25maXJtYXRpb24gb25FbnRyeSkuIE5vLW9wIGlmIGFic2VuY2VFbnRyeUtleSBpcyBtaXNzaW5nIChlLmcuIG9sZCBpbnN0YW5jZXMpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2FuY2VsQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciB0cmlnZ2VyVGFzayA9IHRhc2sgYXMgRGlyZWN0VHJpZ2dlclRhc2s7CiAgICAgICAgaWYgKHRyaWdnZXJUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEaXJlY3RUcmlnZ2VyVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9IGRhdGE/LmFic2VuY2VFbnRyeUtleT8uVG9TdHJpbmcoKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWJzZW5jZUVudHJ5S2V5KSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBjYW5jZWxUcmlnZ2VyZWQgPSBmYWxzZSwgcmVhc29uID0gIm5vLWFic2VuY2UtZW50cnkta2V5IiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgdHJpZ2dlclRhc2suU2V0RG9tYWluKCJ0b3VjaCIpOwogICAgICAgIHRyaWdnZXJUYXNrLlNldEZsb3coImFic2VuY2UtZW50cnkiKTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRUcmFuc2l0aW9uTmFtZSgiY2FuY2VsIik7CiAgICAgICAgdHJpZ2dlclRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXNwb25zZSA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHJlc3BvbnNlLkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIGNhbmNlbFRyaWdnZXJlZCA9IGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUsCiAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gZmFsc2UgPyAoY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkNhbmNlbCBmYWlsZWQiKSA6IG51bGwKICAgICAgICB9OwogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzcG9uc2UpOwogICAgfQp9Cg=="
105
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBjYW5jZWwtYWJzZW5jZS1lbnRyeS1mb3ItcmV6ZXJ2YXRpb24gRGlyZWN0VHJpZ2dlclRhc2sgKFR5cGUgMTIpLgovLy8gVHJpZ2dlcnMgY2FuY2VsIHRyYW5zaXRpb24gb24gdGhlIGFic2VuY2UtZW50cnkgaW5zdGFuY2Ugd2hlbiBiYWNrLXRvLWZvcm0sIHVzZXItY2FuY2VsLCBvciBhZHZpc29yLWNhbmNlbCBpcyBleGVjdXRlZC4KLy8vIFVzZXMgYWJzZW5jZUVudHJ5S2V5IGZyb20gaW5zdGFuY2UgKHNldCBpbiBjb25maXJtYXRpb24gb25FbnRyeSkuIE5vLW9wIGlmIGFic2VuY2VFbnRyeUtleSBpcyBtaXNzaW5nIChlLmcuIG9sZCBpbnN0YW5jZXMpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2FuY2VsQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciB0cmlnZ2VyVGFzayA9IHRhc2sgYXMgRGlyZWN0VHJpZ2dlclRhc2s7CiAgICAgICAgaWYgKHRyaWdnZXJUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEaXJlY3RUcmlnZ2VyVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9IGRhdGE/LmFic2VuY2VFbnRyeUtleT8uVG9TdHJpbmcoKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWJzZW5jZUVudHJ5S2V5KSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBjYW5jZWxUcmlnZ2VyZWQgPSBmYWxzZSwgcmVhc29uID0gIm5vLWFic2VuY2UtZW50cnkta2V5IiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgdHJpZ2dlclRhc2suU2V0RG9tYWluKCJtb3JwaC10b3VjaCIpOwogICAgICAgIHRyaWdnZXJUYXNrLlNldEZsb3coImFic2VuY2UtZW50cnkiKTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRUcmFuc2l0aW9uTmFtZSgiY2FuY2VsIik7CiAgICAgICAgdHJpZ2dlclRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXNwb25zZSA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHJlc3BvbnNlLkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIGNhbmNlbFRyaWdnZXJlZCA9IGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUsCiAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gZmFsc2UgPyAoY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkNhbmNlbCBmYWlsZWQiKSA6IG51bGwKICAgICAgICB9OwogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzcG9uc2UpOwogICAgfQp9Cg=="
90
106
  }
91
107
  },
92
108
  {
93
109
  "order": 2,
94
110
  "task": {
95
- "domain": "touch",
111
+ "domain": "morph-touch",
96
112
  "flow": "sys-tasks",
97
113
  "key": "send-cancel-notification",
98
114
  "version": "1.0.0"
@@ -146,7 +162,7 @@
146
162
  {
147
163
  "order": 1,
148
164
  "task": {
149
- "domain": "touch",
165
+ "domain": "morph-touch",
150
166
  "flow": "sys-tasks",
151
167
  "key": "merge-invited-user",
152
168
  "version": "1.0.0"
@@ -157,11 +173,46 @@
157
173
  }
158
174
  }
159
175
  ]
176
+ },
177
+ {
178
+ "key": "video-call-url-update",
179
+ "target": "$self",
180
+ "triggerType": 0,
181
+ "versionStrategy": "Minor",
182
+ "availableIn": [
183
+ "active",
184
+ "in-meet"
185
+ ],
186
+ "labels": [
187
+ {
188
+ "label": "Video Call URL Update",
189
+ "language": "en-US"
190
+ },
191
+ {
192
+ "label": "Video Görüşme URL Güncelle",
193
+ "language": "tr-TR"
194
+ }
195
+ ],
196
+ "onExecutionTasks": [
197
+ {
198
+ "order": 1,
199
+ "task": {
200
+ "domain": "morph-touch",
201
+ "flow": "sys-tasks",
202
+ "key": "merge-video-call-urls",
203
+ "version": "1.0.0"
204
+ },
205
+ "mapping": {
206
+ "location": "./src/VideoCallUrlUpdateMergeMapping.csx",
207
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWVyZ2VzIGluY29taW5nIHZpZGVvQ2FsbFVybHMgaW50byByZXplcnZhdGlvbiBpbnN0YW5jZSBkYXRhLgovLy8gQXBwZW5kcyBuZXcgZW50cmllcyB0byBleGlzdGluZyB2aWRlb0NhbGxVcmxzIGFycmF5LgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgVmlkZW9DYWxsVXJsVXBkYXRlTWVyZ2VNYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaW5zdGFuY2VEYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgaW5jb21pbmdCb2R5ID0gY29udGV4dC5Cb2R5OwogICAgICAgIHZhciBleGlzdGluZ0xpc3QgPSBHZXRWaWRlb0NhbGxVcmxzTGlzdChpbnN0YW5jZURhdGEpOwogICAgICAgIHZhciBpbmNvbWluZ0xpc3QgPSBHZXRJbmNvbWluZ0VudHJpZXMoaW5jb21pbmdCb2R5LCBpbnN0YW5jZURhdGEpOwogICAgICAgIGlmIChpbmNvbWluZ0xpc3QgIT0gbnVsbCAmJiBpbmNvbWluZ0xpc3QuQ291bnQgPiAwKQogICAgICAgIHsKICAgICAgICAgICAgZm9yZWFjaCAodmFyIGl0ZW0gaW4gaW5jb21pbmdMaXN0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAoaXRlbSA9PSBudWxsIHx8IGl0ZW0uQ291bnQgPT0gMCkgY29udGludWU7CiAgICAgICAgICAgICAgICBzdHJpbmcgcGFydGljaXBhbnRJZCA9IG51bGw7CiAgICAgICAgICAgICAgICBzdHJpbmcgdXJsID0gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIGt2IGluIGl0ZW0pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgcGFydGljaXBhbnRJZCA9IGt2LktleTsKICAgICAgICAgICAgICAgICAgICB1cmwgPSBrdi5WYWx1ZSA/PyBzdHJpbmcuRW1wdHk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkocGFydGljaXBhbnRJZCkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgaW50IGV4aXN0aW5nSWR4ID0gLTE7CiAgICAgICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGV4aXN0aW5nTGlzdC5Db3VudDsgaSsrKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBkID0gZXhpc3RpbmdMaXN0W2ldOwogICAgICAgICAgICAgICAgICAgIGlmIChkICE9IG51bGwgJiYgZC5Db250YWluc0tleShwYXJ0aWNpcGFudElkKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nSWR4ID0gaTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nSWR4ID49IDApCiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdMaXN0W2V4aXN0aW5nSWR4XVtwYXJ0aWNpcGFudElkXSA9IHVybDsKICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICBleGlzdGluZ0xpc3QuQWRkKG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPiB7IHsgcGFydGljaXBhbnRJZCwgdXJsIH0gfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciBkYXRhTGlzdCA9IG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBvYmplY3Q+PigpOwogICAgICAgIGZvcmVhY2ggKHZhciBkIGluIGV4aXN0aW5nTGlzdCkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBvYmpEaWN0ID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBvYmplY3Q+KCk7CiAgICAgICAgICAgIGZvcmVhY2ggKHZhciBrdiBpbiBkKQogICAgICAgICAgICAgICAgb2JqRGljdFtrdi5LZXldID0ga3YuVmFsdWU7CiAgICAgICAgICAgIGRhdGFMaXN0LkFkZChvYmpEaWN0KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIG9iamVjdD4geyB7ICJ2aWRlb0NhbGxVcmxzIiwgZGF0YUxpc3QgfSB9CiAgICAgICAgfSk7CiAgICB9CgogICAgcHJpdmF0ZSBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PiBHZXRJbmNvbWluZ0VudHJpZXMoZHluYW1pYyBib2R5LCBkeW5hbWljIGluc3RhbmNlRGF0YSkKICAgIHsKICAgICAgICB2YXIgZnJvbUJvZHkgPSBUcnlHZXRWaWRlb0NhbGxVcmxUb0FkZChib2R5KTsKICAgICAgICBpZiAoZnJvbUJvZHkgIT0gbnVsbCAmJiBmcm9tQm9keS5Db3VudCA+IDApIHJldHVybiBmcm9tQm9keTsKICAgICAgICB2YXIgZnJvbUluc3RhbmNlID0gVHJ5R2V0VmlkZW9DYWxsVXJsVG9BZGQoaW5zdGFuY2VEYXRhKTsKICAgICAgICBpZiAoZnJvbUluc3RhbmNlICE9IG51bGwgJiYgZnJvbUluc3RhbmNlLkNvdW50ID4gMCkgcmV0dXJuIGZyb21JbnN0YW5jZTsKICAgICAgICBpZiAoYm9keSAhPSBudWxsKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIGZyb21Cb2R5VXJscyA9IEdldFZpZGVvQ2FsbFVybHNMaXN0KGJvZHkpOwogICAgICAgICAgICBpZiAoZnJvbUJvZHlVcmxzICE9IG51bGwgJiYgZnJvbUJvZHlVcmxzLkNvdW50ID4gMCkgcmV0dXJuIGZyb21Cb2R5VXJsczsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PigpOwogICAgfQoKICAgIHByaXZhdGUgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4gVHJ5R2V0VmlkZW9DYWxsVXJsVG9BZGQoZHluYW1pYyBzb3VyY2UpCiAgICB7CiAgICAgICAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmICghSGFzUHJvcGVydHkoc291cmNlLCAidmlkZW9DYWxsVXJsVG9BZGQiKSkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIHZhciB0b0FkZCA9IHNvdXJjZS52aWRlb0NhbGxVcmxUb0FkZDsKICAgICAgICAgICAgaWYgKHRvQWRkID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgICAgICB2YXIgc3RyaW5nRGljdCA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgICAgICB2YXIgZGljdE9iaiA9IHRvQWRkIGFzIElEaWN0aW9uYXJ5PHN0cmluZywgb2JqZWN0PjsKICAgICAgICAgICAgaWYgKGRpY3RPYmogIT0gbnVsbCAmJiBkaWN0T2JqLkNvdW50ID4gMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIGt2IGluIGRpY3RPYmopCiAgICAgICAgICAgICAgICAgICAgc3RyaW5nRGljdFtrdi5LZXldID0ga3YuVmFsdWU/LlRvU3RyaW5nKCkgPz8gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIGRpY3RTdHIgPSB0b0FkZCBhcyBJRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz47CiAgICAgICAgICAgICAgICBpZiAoZGljdFN0ciA9PSBudWxsIHx8IGRpY3RTdHIuQ291bnQgPT0gMCkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIga3YgaW4gZGljdFN0cikKICAgICAgICAgICAgICAgICAgICBzdHJpbmdEaWN0W2t2LktleV0gPSBrdi5WYWx1ZSA/PyBzdHJpbmcuRW1wdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHN0cmluZ0RpY3QuQ291bnQgPT0gMCkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIHJldHVybiBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4geyBzdHJpbmdEaWN0IH07CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4gR2V0VmlkZW9DYWxsVXJsc0xpc3QoZHluYW1pYyBzb3VyY2UpCiAgICB7CiAgICAgICAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoIUhhc1Byb3BlcnR5KHNvdXJjZSwgInZpZGVvQ2FsbFVybHMiKSkgcmV0dXJuIG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PigpOwogICAgICAgICAgICB2YXIgdXJscyA9IHNvdXJjZS52aWRlb0NhbGxVcmxzOwogICAgICAgICAgICBpZiAodXJscyA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgICAgIHZhciBsaXN0ID0gdXJscyBhcyBJRW51bWVyYWJsZTxvYmplY3Q+OwogICAgICAgICAgICBpZiAobGlzdCA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgICAgIHZhciByZXN1bHQgPSBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4oKTsKICAgICAgICAgICAgZm9yZWFjaCAodmFyIGl0ZW0gaW4gbGlzdCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIGRpY3QgPSBpdGVtIGFzIElEaWN0aW9uYXJ5PHN0cmluZywgb2JqZWN0PjsKICAgICAgICAgICAgICAgIGlmIChkaWN0ICE9IG51bGwpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHN0cmluZ0RpY3QgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4oKTsKICAgICAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIga3YgaW4gZGljdCkKICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nRGljdFtrdi5LZXldID0ga3YuVmFsdWU/LlRvU3RyaW5nKCkgPz8gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICAgICAgICAgIHJlc3VsdC5BZGQoc3RyaW5nRGljdCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICB9CiAgICAgICAgY2F0Y2gKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4oKTsKICAgICAgICB9CiAgICB9Cn0K"
208
+ }
209
+ }
210
+ ]
160
211
  }
161
212
  ],
162
213
  "startTransition": {
163
214
  "key": "start",
164
- "target": "appointment-form",
215
+ "target": "validating",
165
216
  "versionStrategy": "Major",
166
217
  "triggerType": 0,
167
218
  "labels": [
@@ -178,7 +229,7 @@
178
229
  {
179
230
  "order": 1,
180
231
  "task": {
181
- "domain": "touch",
232
+ "domain": "morph-touch",
182
233
  "flow": "sys-tasks",
183
234
  "key": "set-user-from-headers-for-rezervation",
184
235
  "version": "1.0.0"
@@ -191,7 +242,7 @@
191
242
  {
192
243
  "order": 2,
193
244
  "task": {
194
- "domain": "touch",
245
+ "domain": "morph-touch",
195
246
  "flow": "sys-tasks",
196
247
  "key": "validate-date-for-rezervation",
197
248
  "version": "1.0.0"
@@ -200,6 +251,32 @@
200
251
  "location": "./src/ValidateDateForRezervationMapping.csx",
201
252
  "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBTY3JpcHQgVGFzayAodHlwZSA3KSBtYXBwaW5nIGZvciB2YWxpZGF0ZS1kYXRlLWZvci1yZXplcnZhdGlvbi4KLy8vIFZhbGlkYXRlcyBzdGFydERhdGVUaW1lIGFuZCBlbmREYXRlVGltZSBmcm9tIHJlemVydmF0aW9uIGluc3RhbmNlIGRhdGEuCi8vLyBUaHJvd3MgQXJndW1lbnRFeGNlcHRpb24gaWYgZGF0ZSBpcyBpbiB0aGUgcGFzdCBvciBpbnZhbGlkOyBvdGhlcndpc2UgcmV0dXJucyBzdWNjZXNzLgovLy8gUnVucyBiZWZvcmUgdmFsaWRhdGUtc2xvdC1mb3ItcmV6ZXJ2YXRpb24gdG8gYXZvaWQgY2FsbGluZyBnZXQtYXZhaWxhYmxlLXNsb3RzIHdpdGggaW52YWxpZCBkYXRlLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgVmFsaWRhdGVEYXRlRm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBpcyByZXF1aXJlZC4iKTsKCiAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICB2YXIgZW5kRGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgImVuZERhdGVUaW1lIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHN0YXJ0RGF0ZVRpbWVTdHIpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGVuZERhdGVUaW1lU3RyKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJzdGFydERhdGVUaW1lIGFuZCBlbmREYXRlVGltZSBhcmUgcmVxdWlyZWQuIiwgImRhdGUiKTsKCiAgICAgICAgRGF0ZVRpbWUgc3RhcnREdDsKICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydER0KSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJJbnZhbGlkIHN0YXJ0RGF0ZVRpbWUgZm9ybWF0LiIsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgRGF0ZVRpbWUgZW5kRHQ7CiAgICAgICAgaWYgKCFEYXRlVGltZS5UcnlQYXJzZShlbmREYXRlVGltZVN0ciwgb3V0IGVuZER0KSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJJbnZhbGlkIGVuZERhdGVUaW1lIGZvcm1hdC4iLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgdmFyIG5vdyA9IERhdGVUaW1lLlV0Y05vdzsKICAgICAgICBpZiAoc3RhcnREdCA8IG5vdyB8fCBlbmREdCA8IG5vdykKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJEYXRlIGNhbm5vdCBiZSBpbiB0aGUgcGFzdC4iLCAiZGF0ZSIpOwogICAgICAgIGlmIChlbmREdCA8PSBzdGFydER0KQogICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oImVuZERhdGVUaW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnREYXRlVGltZS4iLCAiZGF0ZSIpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
202
253
  }
254
+ },
255
+ {
256
+ "order": 3,
257
+ "task": {
258
+ "domain": "morph-touch",
259
+ "flow": "sys-tasks",
260
+ "key": "check-duplicate-rezervation",
261
+ "version": "1.0.0"
262
+ },
263
+ "mapping": {
264
+ "location": "./src/CheckDuplicateRezervationMapping.csx",
265
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY2hlY2stZHVwbGljYXRlLXJlemVydmF0aW9uIChEYXByU2VydmljZVRhc2sgLSBUeXBlIDMpLgovLy8gUXVlcmllcyByZXplcnZhdGlvbiB3b3JrZmxvdyBpbnN0YW5jZXMgdG8gZW5mb3JjZSB0d28gcnVsZXM6Ci8vLyAxLiBBIHVzZXIgY2FuIGhhdmUgYXQgbW9zdCAyIHJlc2VydmF0aW9ucyBpbiBjb25maXJtZWQgc3RhdGVzIChhY3RpdmUsIHVwZGF0ZS1jb250cm9sLCBjaGFuZ2UtYWR2aXNvciwgY2FuLXN0YXJ0LW1lZXRpbmcsIGFjY2VwdC10ZXJtcykuCi8vLyAyLiBBIHVzZXIgY2Fubm90IGhhdmUgdHdvIHJlc2VydmF0aW9ucyB3aXRoIG92ZXJsYXBwaW5nIHRpbWUgc2xvdHMuCi8vLwovLy8gRmxvdzoKLy8vIDEuIElucHV0SGFuZGxlcjogQnVpbGRzIHF1ZXJ5IHRvIGZpbmQgYWxsIGFjdGl2ZSByZXNlcnZhdGlvbnMgZm9yIHRoZSBzYW1lIHVzZXIuCi8vLyAyLiBPdXRwdXRIYW5kbGVyOiBDaGVja3MgY291bnQgKG1heCAyKSBhbmQgdGltZSBvdmVybGFwOyB0aHJvd3MgZXhjZXB0aW9uIG9uIHZpb2xhdGlvbi4KLy8vICAgIEV4Y2VwdGlvbiBmYWlscyB0aGUgdHJhbnNpdGlvbjsgaW5zdGFuY2Ugc3RheXMgaW4gaXRzIGN1cnJlbnQgc3RhdGUuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGVja0R1cGxpY2F0ZVJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc2VydmljZVRhc2sgPSB0YXNrIGFzIERhcHJTZXJ2aWNlVGFzazsKICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhIERhcHJTZXJ2aWNlVGFzayIpOwoKICAgICAgICB2YXIgYXBwSWQgPSBHZXRDb25maWdWYWx1ZSgiREFQUl9BUFBfSUQiKTsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgc2VydmljZVRhc2suU2V0QXBwSWQoYXBwSWQpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCB8fCAhSGFzUHJvcGVydHkoZGF0YSwgInVzZXIiKSB8fCBkYXRhLnVzZXIgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1BWF9SRVpFUlZBVElPTjogVXNlciBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZHVwbGljYXRlIGNoZWNrIik7CgogICAgICAgIHZhciB1c2VyID0gZGF0YS51c2VyLlRvU3RyaW5nKCk7CiAgICAgICAgdmFyIGN1cnJlbnRLZXkgPSBjb250ZXh0Lkluc3RhbmNlPy5LZXkgPz8gIiI7CgogICAgICAgIHZhciB1c2VyRXNjYXBlZCA9IHVzZXIuUmVwbGFjZSgiXFwiLCAiXFxcXCIpLlJlcGxhY2UoIlwiIiwgIlxcXCIiKTsKICAgICAgICB2YXIga2V5RXNjYXBlZCA9IGN1cnJlbnRLZXkuUmVwbGFjZSgiXFwiLCAiXFxcXCIpLlJlcGxhY2UoIlwiIiwgIlxcXCIiKTsKCiAgICAgICAgdmFyIHF1ZXJ5UGFyYW1zID0gbmV3IExpc3Q8c3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgInBhZ2VTaXplPTEwIiwKICAgICAgICAgICAgImZpbHRlcj0iICsKICAgICAgICAgICAgICAgICJ7XCJhbmRcIjpbIiArCiAgICAgICAgICAgICAgICAgICAgIntcImF0dHJpYnV0ZXNcIjp7XCJ1c2VyXCI6e1wiZXFcIjpcIiIgKyB1c2VyRXNjYXBlZCArICJcIn19fSwiICsKICAgICAgICAgICAgICAgICAgICAie1wia2V5XCI6e1wibmVcIjpcIiIgKyBrZXlFc2NhcGVkICsgIlwifX0sIiArCiAgICAgICAgICAgICAgICAgICAgIntcImN1cnJlbnRTdGF0ZVwiOntcImVxXCI6XCIiICsgImFjdGl2ZSIgKyAiXCJ9fSwiICArCiAgICAgICAgICAgICAgICAiXX0iCiAgICAgICAgfTsKCiAgICAgICAgc2VydmljZVRhc2suU2V0UXVlcnlTdHJpbmcoc3RyaW5nLkpvaW4oIiYiLCBxdWVyeVBhcmFtcykpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gY29udGV4dC5Cb2R5OwoKICAgICAgICBpZiAocmVzcG9uc2U/LmlzU3VjY2VzcyA9PSBmYWxzZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBlcnJvck1lc3NhZ2UgPSByZXNwb25zZT8uZXJyb3JNZXNzYWdlPy5Ub1N0cmluZygpID8/ICJTZXJ2aWNlIGNhbGwgZmFpbGVkIjsKICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkIlNFUlZJQ0VfRVJST1I6IHtlcnJvck1lc3NhZ2V9Iik7CiAgICAgICAgfQoKICAgICAgICB2YXIgcmVzcG9uc2VEYXRhID0gcmVzcG9uc2U/LmRhdGE7CiAgICAgICAgdmFyIGl0ZW1zID0gcmVzcG9uc2VEYXRhPy5pdGVtczsKCiAgICAgICAgaWYgKGl0ZW1zID09IG51bGwgfHwgaXRlbXMuQ291bnQgPT0gMCkKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CgogICAgICAgIGludCBjb3VudCA9IGl0ZW1zLkNvdW50OwoKICAgICAgICBpZiAoY291bnQgPj0gMikKICAgICAgICB7CiAgICAgICAgICAgIHZhciB1c2VyID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YT8udXNlcj8uVG9TdHJpbmcoKSA/PyAidW5rbm93biI7CiAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJCJNQVhfUkVaRVJWQVRJT046IFVzZXIgJ3t1c2VyfScgYWxyZWFkeSBoYXMge2NvdW50fSBhY3RpdmUgcmVzZXJ2YXRpb25zLiBNYXhpbXVtIGFsbG93ZWQgaXMgMi4iKTsKICAgICAgICB9CgogICAgICAgIHZhciBpbnN0YW5jZURhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIHZhciBuZXdTdGFydFN0ciA9IEdldFN0cmluZyhpbnN0YW5jZURhdGEsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgdmFyIG5ld0VuZFN0ciA9IEdldFN0cmluZyhpbnN0YW5jZURhdGEsICJlbmREYXRlVGltZSIpOwoKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KG5ld1N0YXJ0U3RyKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkobmV3RW5kU3RyKSkKICAgICAgICB7CiAgICAgICAgICAgIERhdGVUaW1lIG5ld1N0YXJ0ID0gZGVmYXVsdCwgbmV3RW5kID0gZGVmYXVsdDsKICAgICAgICAgICAgaWYgKERhdGVUaW1lLlRyeVBhcnNlKG5ld1N0YXJ0U3RyLCBvdXQgbmV3U3RhcnQpICYmIERhdGVUaW1lLlRyeVBhcnNlKG5ld0VuZFN0ciwgb3V0IG5ld0VuZCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBpdGVtIGluIGl0ZW1zKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGlmIChpdGVtID09IG51bGwpIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICB2YXIgZXhpc3RpbmdTdGFydFN0ciA9IEdldE5lc3RlZFN0cmluZyhpdGVtLCAiYXR0cmlidXRlcyIsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIGV4aXN0aW5nRW5kU3RyID0gR2V0TmVzdGVkU3RyaW5nKGl0ZW0sICJhdHRyaWJ1dGVzIiwgImVuZERhdGVUaW1lIik7CgogICAgICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JFbXB0eShleGlzdGluZ1N0YXJ0U3RyKSB8fCBzdHJpbmcuSXNOdWxsT3JFbXB0eShleGlzdGluZ0VuZFN0cikpCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICBEYXRlVGltZSBleGlzdGluZ1N0YXJ0ID0gZGVmYXVsdCwgZXhpc3RpbmdFbmQgPSBkZWZhdWx0OwogICAgICAgICAgICAgICAgICAgIGlmICghRGF0ZVRpbWUuVHJ5UGFyc2UoZXhpc3RpbmdTdGFydFN0ciwgb3V0IGV4aXN0aW5nU3RhcnQpIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICFEYXRlVGltZS5UcnlQYXJzZShleGlzdGluZ0VuZFN0ciwgb3V0IGV4aXN0aW5nRW5kKSkKICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CgogICAgICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ1N0YXJ0IDwgbmV3RW5kICYmIGV4aXN0aW5nRW5kID4gbmV3U3RhcnQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXhpc3RpbmdLZXkgPSBIYXNQcm9wZXJ0eShpdGVtLCAia2V5IikgPyBpdGVtLmtleT8uVG9TdHJpbmcoKSA6ICJ1bmtub3duIjsKICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQiVElNRV9PVkVSTEFQOiBSZXF1ZXN0ZWQgdGltZSB7bmV3U3RhcnRTdHJ9IC0ge25ld0VuZFN0cn0gb3ZlcmxhcHMgd2l0aCBleGlzdGluZyByZXNlcnZhdGlvbiAne2V4aXN0aW5nS2V5fScgKHtleGlzdGluZ1N0YXJ0U3RyfSAtIHtleGlzdGluZ0VuZFN0cn0pLiIpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0TmVzdGVkU3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgcGFyZW50LCBzdHJpbmcgY2hpbGQpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIHBhcmVudCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBuZXN0ZWQgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgcGFyZW50KTsKICAgICAgICAgICAgICAgIGlmIChuZXN0ZWQgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShuZXN0ZWQsIGNoaWxkKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUobmVzdGVkLCBjaGlsZCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
266
+ }
267
+ },
268
+ {
269
+ "order": 4,
270
+ "task": {
271
+ "domain": "morph-touch",
272
+ "flow": "sys-tasks",
273
+ "key": "validate-slot-for-rezervation",
274
+ "version": "1.0.0"
275
+ },
276
+ "mapping": {
277
+ "location": "./src/ValidateSlotForRezervationMapping.csx",
278
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIEJCVC5Xb3JrZmxvdy5TY3JpcHRpbmc7CnVzaW5nIEJCVC5Xb3JrZmxvdy5EZWZpbml0aW9uczsKCi8vLyA8c3VtbWFyeT4KLy8vIE1hcHBpbmcgZm9yIHZhbGlkYXRlLXNsb3QtZm9yLXJlemVydmF0aW9uIHRhc2suCi8vLyBJbnZva2VzIGdldC1hdmFpbGFibGUtc2xvdHMgZnVuY3Rpb24gd2l0aCBhZHZpc29yIGFuZCBkYXRlIGZyb20gcmV6ZXJ2YXRpb24gaW5zdGFuY2UsCi8vLyB0aGVuIGNoZWNrcyBpZiB0aGUgcmVxdWVzdGVkIHN0YXJ0RGF0ZVRpbWUtZW5kRGF0ZVRpbWUgc2xvdCBpcyBpbiB0aGUgYXZhaWxhYmxlIHNsb3RzIGxpc3QuCi8vLyBPdXRwdXQ6IHNsb3RDaGVja1Jlc3VsdCB7IGF2YWlsYWJsZTogYm9vbCwga2V5Pzogc3RyaW5nIH0gZm9yIHVzZSBieSB2YWxpZGF0aW5nIHN0YXRlIGF1dG8gdHJhbnNpdGlvbnMuCi8vLyA8L3N1bW1hcnk+CmludGVybmFsIHNlYWxlZCBjbGFzcyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbiA6IEV4Y2VwdGlvbgp7CiAgICBwdWJsaWMgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oc3RyaW5nIG1lc3NhZ2UpIDogYmFzZShtZXNzYWdlKSB7IH0KfQoKcHVibGljIGNsYXNzIFZhbGlkYXRlU2xvdEZvclJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEYXByU2VydmljZVRhc2siKTsKCiAgICAgICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldEFwcElkKGFwcElkKTsKCiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJJbnN0YW5jZSBkYXRhIGlzIHJlcXVpcmVkIik7CgogICAgICAgICAgICB2YXIgYWR2aXNvciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvciIpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZVN0ciA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgS2V5ID0gInZhbGlkYXRpb24tZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBEYXRlVGltZSBzdGFydERhdGVUaW1lOwogICAgICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydERhdGVUaW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBLZXkgPSAidmFsaWRhdGlvbi1lcnJvciIsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3IHsgYXZhaWxhYmxlID0gZmFsc2UsIGtleSA9ICJ2YWxpZGF0aW9uLWVycm9yIiB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHZhciBkYXRlU3RyID0gc3RhcnREYXRlVGltZS5Ub1N0cmluZygieXl5eS1NTS1kZCIpOwogICAgICAgICAgICB2YXIgcXVlcnlQYXJhbXMgPSBuZXcgTGlzdDxzdHJpbmc+CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhZHZpc29ySWQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGFkdmlzb3IpLAogICAgICAgICAgICAgICAgImRhdGU9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGRhdGVTdHIpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldFF1ZXJ5U3RyaW5nKHN0cmluZy5Kb2luKCImIiwgcXVlcnlQYXJhbXMpKTsKCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgS2V5ID0gImlucHV0LWVycm9yIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAiaW5wdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgICB2YXIgYm9keSA9IGNvbnRleHQuQm9keTsKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBlcnJOb2RlID0gSGFzUHJvcGVydHkoYm9keSwgImRhdGEiKSA/IGJvZHkuZGF0YSA6IG51bGw7CiAgICAgICAgICAgICAgICB2YXIgZGV0YWlsID0gR2V0U3RyaW5nKGVyck5vZGUsICJkZXRhaWwiKSA/PyBHZXRTdHJpbmcoYm9keSwgImVycm9yTWVzc2FnZSIpID8/IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oZGV0YWlsID8/ICJGdW5jdGlvbiBjYWxsIGZhaWxlZCIsIiIpOwogICAgICAgICAgICB9CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgICAgIGlmIChkYXRhID09IG51bGwpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAibm8taW5zdGFuY2UtZGF0YSIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lU3RyID0gR2V0U3RyaW5nKGRhdGEsICJlbmREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWVTdHIpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBzbG90Q2hlY2tSZXN1bHQgPSBuZXcgeyBhdmFpbGFibGUgPSBmYWxzZSwga2V5ID0gInZhbGlkYXRpb24tZXJyb3IiIH0gfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERhdGVUaW1lIHN0YXJ0RHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgRGF0ZVRpbWUgZW5kRHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0YXJ0RHQgPSBEYXRlVGltZS5QYXJzZShzdGFydERhdGVUaW1lU3RyKTsKICAgICAgICAgICAgICAgIGVuZER0ID0gRGF0ZVRpbWUuUGFyc2UoZW5kRGF0ZVRpbWVTdHIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIChFeGNlcHRpb24gZXgpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHR6ID0gUmVzb2x2ZUJ1c2luZXNzVGltZVpvbmUoKTsKICAgICAgICAgICAgdmFyIGxvY2FsU3RhcnQgPSBDb252ZXJ0VG9UaW1lWm9uZShzdGFydER0LCBzdGFydERhdGVUaW1lU3RyLCB0eik7CiAgICAgICAgICAgIHZhciBsb2NhbEVuZCA9IENvbnZlcnRUb1RpbWVab25lKGVuZER0LCBlbmREYXRlVGltZVN0ciwgdHopOwogICAgICAgICAgICB2YXIgcmVxdWVzdGVkU2xvdCA9IGxvY2FsU3RhcnQuVG9TdHJpbmcoIkhIOm1tIikgKyAiLSIgKyBsb2NhbEVuZC5Ub1N0cmluZygiSEg6bW0iKTsKCiAgICAgICAgICAgIGJvb2wgYXZhaWxhYmxlID0gZmFsc2U7CiAgICAgICAgICAgIHN0cmluZyByZXNwb25zZUtleSA9IG51bGw7CiAgICAgICAgICAgIGR5bmFtaWMgcmVzb2x2ZWRTbG90cyA9IG51bGw7CgogICAgICAgICAgICBpZiAoYm9keSAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXNwb25zZUtleSA9IEdldFN0cmluZyhib2R5LCAia2V5IikgPz8gR2V0U3RyaW5nKGJvZHksICJLZXkiKTsKCiAgICAgICAgICAgICAgICBkeW5hbWljIHNsb3RzQ29udGFpbmVyID0gbnVsbDsKCiAgICAgICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkoYm9keSwgImdldEF2YWlsYWJsZVNsb3RzIikpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgc2xvdHNDb250YWluZXIgPSBib2R5LmdldEF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBkYXRhTm9kZSA9IEhhc1Byb3BlcnR5KGJvZHksICJkYXRhIikgPyBib2R5LmRhdGEgOiAoSGFzUHJvcGVydHkoYm9keSwgIkRhdGEiKSA/IGJvZHkuRGF0YSA6IG51bGwpOwogICAgICAgICAgICAgICAgICAgIGlmIChkYXRhTm9kZSAhPSBudWxsICYmIEhhc1Byb3BlcnR5KGRhdGFOb2RlLCAiZ2V0QXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gZGF0YU5vZGUuZ2V0QXZhaWxhYmxlU2xvdHM7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGRhdGFOb2RlICE9IG51bGwgJiYgSGFzUHJvcGVydHkoZGF0YU5vZGUsICJhdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdHNDb250YWluZXIgPSBkYXRhTm9kZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHNsb3RzQ29udGFpbmVyICE9IG51bGwgJiYgSGFzUHJvcGVydHkoc2xvdHNDb250YWluZXIsICJhdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBhdmFpbGFibGVTbG90cyA9IHNsb3RzQ29udGFpbmVyLmF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgICAgIHJlc29sdmVkU2xvdHMgPSBhdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgICAgICBpZiAoYXZhaWxhYmxlU2xvdHMgIT0gbnVsbCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gYXZhaWxhYmxlU2xvdHMgYXMgSUVudW1lcmFibGU8b2JqZWN0PjsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpc3QgIT0gbnVsbCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIHMgaW4gbGlzdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgc2xvdFN0ciA9IHM/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNsb3RTdHIgPT0gcmVxdWVzdGVkU2xvdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGV0YWlsTXNnID0gR2V0U3RyaW5nKGJvZHksICJkZXRhaWwiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGRldGFpbE1zZykpCiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbihkZXRhaWxNc2cpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZUtleSA9PSBudWxsICYmIEhhc1Byb3BlcnR5KGJvZHksICJpc1N1Y2Nlc3MiKSAmJiBib2R5LmlzU3VjY2VzcyA9PSBmYWxzZSkKICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUgPSBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBEYXRhID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9IHJlc3BvbnNlS2V5ID8/IChhdmFpbGFibGUgPyAiYXZhaWxhYmxlLXNsb3RzLXN1Y2Nlc3MiIDogInNsb3QtdW5hdmFpbGFibGUiKSwKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdHMgPSByZXNvbHZlZFNsb3RzCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKCiAgICAgICAgfQogICAgICAgIGNhdGNoIChHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbikKICAgICAgICB7CiAgICAgICAgICAgIHRocm93OwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9ICJvdXRwdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIFRpbWVab25lSW5mbyBSZXNvbHZlQnVzaW5lc3NUaW1lWm9uZSgpCiAgICB7CiAgICAgICAgdmFyIGlkID0gR2V0Q29uZmlnVmFsdWUoIkFwcG9pbnRtZW50czpUaW1lWm9uZSIpID8/IEdldENvbmZpZ1ZhbHVlKCJBUFBPSU5UTUVOVF9USU1FWk9ORSIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGlkKSkKICAgICAgICAgICAgaWQgPSAiRXVyb3BlL0lzdGFuYnVsIjsKCiAgICAgICAgdHJ5IHsgcmV0dXJuIFRpbWVab25lSW5mby5GaW5kU3lzdGVtVGltZVpvbmVCeUlkKGlkLlRyaW0oKSk7IH0gY2F0Y2ggeyB9CiAgICAgICAgdHJ5IHsgcmV0dXJuIFRpbWVab25lSW5mby5GaW5kU3lzdGVtVGltZVpvbmVCeUlkKCJUdXJrZXkgU3RhbmRhcmQgVGltZSIpOyB9IGNhdGNoIHsgfQogICAgICAgIHJldHVybiBUaW1lWm9uZUluZm8uQ3JlYXRlQ3VzdG9tVGltZVpvbmUoIlRSVCIsIFRpbWVTcGFuLkZyb21Ib3VycygzKSwgIlRSVCAoVVRDKzMpIiwgIlRSVCAoVVRDKzMpIik7CiAgICB9CgogICAgcHJpdmF0ZSBzdGF0aWMgRGF0ZVRpbWUgQ29udmVydFRvVGltZVpvbmUoRGF0ZVRpbWUgZHQsIHN0cmluZyBvcmlnaW5hbCwgVGltZVpvbmVJbmZvIHR6KQogICAgewogICAgICAgIGlmIChkdC5LaW5kID09IERhdGVUaW1lS2luZC5VdGMpCiAgICAgICAgICAgIHJldHVybiBUaW1lWm9uZUluZm8uQ29udmVydFRpbWVGcm9tVXRjKGR0LCB0eik7CgogICAgICAgIGlmIChEYXRlVGltZU9mZnNldC5UcnlQYXJzZShvcmlnaW5hbCwgb3V0IHZhciBkdG8pKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIHV0YyA9IGR0by5VdGNEYXRlVGltZTsKICAgICAgICAgICAgcmV0dXJuIFRpbWVab25lSW5mby5Db252ZXJ0VGltZUZyb21VdGModXRjLCB0eik7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gZHQ7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
279
+ }
203
280
  }
204
281
  ]
205
282
  },
@@ -221,7 +298,7 @@
221
298
  "transitions": [
222
299
  {
223
300
  "key": "confirm-selection",
224
- "target": "validating",
301
+ "target": "active",
225
302
  "triggerType": 0,
226
303
  "versionStrategy": "Minor",
227
304
  "labels": [
@@ -238,44 +315,59 @@
238
315
  {
239
316
  "order": 1,
240
317
  "task": {
241
- "domain": "touch",
318
+ "domain": "morph-touch",
242
319
  "flow": "sys-tasks",
243
- "key": "validate-date-for-rezervation",
320
+ "key": "set-previous-advisor",
244
321
  "version": "1.0.0"
245
322
  },
246
323
  "mapping": {
247
- "location": "./src/ValidateDateForRezervationMapping.csx",
248
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBTY3JpcHQgVGFzayAodHlwZSA3KSBtYXBwaW5nIGZvciB2YWxpZGF0ZS1kYXRlLWZvci1yZXplcnZhdGlvbi4KLy8vIFZhbGlkYXRlcyBzdGFydERhdGVUaW1lIGFuZCBlbmREYXRlVGltZSBmcm9tIHJlemVydmF0aW9uIGluc3RhbmNlIGRhdGEuCi8vLyBUaHJvd3MgQXJndW1lbnRFeGNlcHRpb24gaWYgZGF0ZSBpcyBpbiB0aGUgcGFzdCBvciBpbnZhbGlkOyBvdGhlcndpc2UgcmV0dXJucyBzdWNjZXNzLgovLy8gUnVucyBiZWZvcmUgdmFsaWRhdGUtc2xvdC1mb3ItcmV6ZXJ2YXRpb24gdG8gYXZvaWQgY2FsbGluZyBnZXQtYXZhaWxhYmxlLXNsb3RzIHdpdGggaW52YWxpZCBkYXRlLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgVmFsaWRhdGVEYXRlRm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBpcyByZXF1aXJlZC4iKTsKCiAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICB2YXIgZW5kRGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgImVuZERhdGVUaW1lIik7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHN0YXJ0RGF0ZVRpbWVTdHIpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGVuZERhdGVUaW1lU3RyKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJzdGFydERhdGVUaW1lIGFuZCBlbmREYXRlVGltZSBhcmUgcmVxdWlyZWQuIiwgImRhdGUiKTsKCiAgICAgICAgRGF0ZVRpbWUgc3RhcnREdDsKICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydER0KSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJJbnZhbGlkIHN0YXJ0RGF0ZVRpbWUgZm9ybWF0LiIsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgRGF0ZVRpbWUgZW5kRHQ7CiAgICAgICAgaWYgKCFEYXRlVGltZS5UcnlQYXJzZShlbmREYXRlVGltZVN0ciwgb3V0IGVuZER0KSkKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJJbnZhbGlkIGVuZERhdGVUaW1lIGZvcm1hdC4iLCAiZW5kRGF0ZVRpbWUiKTsKCiAgICAgICAgdmFyIG5vdyA9IERhdGVUaW1lLlV0Y05vdzsKICAgICAgICBpZiAoc3RhcnREdCA8IG5vdyB8fCBlbmREdCA8IG5vdykKICAgICAgICAgICAgdGhyb3cgbmV3IEFyZ3VtZW50RXhjZXB0aW9uKCJEYXRlIGNhbm5vdCBiZSBpbiB0aGUgcGFzdC4iLCAiZGF0ZSIpOwogICAgICAgIGlmIChlbmREdCA8PSBzdGFydER0KQogICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oImVuZERhdGVUaW1lIG11c3QgYmUgYWZ0ZXIgc3RhcnREYXRlVGltZS4iLCAiZGF0ZSIpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
324
+ "location": "./src/SetPreviousAdvisorMapping.csx",
325
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzZXQtcHJldmlvdXMtYWR2aXNvciBTY3JpcHQgVGFzayAoVHlwZSA3KS4KLy8vIFN0b3JlcyBjb250ZXh0Lkluc3RhbmNlLkRhdGEuYWR2aXNvciBhcyBwcmV2aW91c0Fkdmlzb3Igb24gdGhlIGluc3RhbmNlLgovLy8gVXNlZCB3aGVuOiAoMSkgY3JlYXRlLWFwcG9pbnRtZW50IC0gYWR2aXNvciBpcyBjdXJyZW50IGJlZm9yZSBtZXJnZTsgKDIpIHRvLWFjdGl2ZSAtIGFkdmlzb3IgaXMgdGhlIG5ldyBvbmUgYWZ0ZXIgdXBkYXRlLWNvbnRyb2wgcHJvY2Vzc2luZy4KLy8vIFNjcmlwdCB0YXNrIG9ubHkgcmV0dXJucyBPdXRwdXRIYW5kbGVyIGRhdGE7IG5vIEhUVFAgb3IgU3RhcnRUYXNrIGNhbGxzLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgU2V0UHJldmlvdXNBZHZpc29yTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGFkdmlzb3IgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhPy5hZHZpc29yPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIEtleSA9ICJzZXQtcHJldmlvdXMtYWR2aXNvci1vdXRwdXQiLAogICAgICAgICAgICBEYXRhID0gbmV3IHsgcHJldmlvdXNBZHZpc29yID0gYWR2aXNvciA/PyAoc3RyaW5nKW51bGwgfQogICAgICAgIH0pOwogICAgfQp9Cg=="
249
326
  }
250
327
  },
251
328
  {
252
329
  "order": 2,
253
330
  "task": {
254
- "domain": "touch",
331
+ "domain": "morph-touch",
255
332
  "flow": "sys-tasks",
256
- "key": "check-duplicate-rezervation",
333
+ "key": "get-user-info-for-rezervation",
257
334
  "version": "1.0.0"
258
335
  },
259
336
  "mapping": {
260
- "location": "./src/CheckDuplicateRezervationMapping.csx",
261
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgY2hlY2stZHVwbGljYXRlLXJlemVydmF0aW9uIChEYXByU2VydmljZVRhc2sgLSBUeXBlIDMpLgovLy8gUXVlcmllcyByZXplcnZhdGlvbiB3b3JrZmxvdyBpbnN0YW5jZXMgdG8gZW5mb3JjZSB0d28gcnVsZXM6Ci8vLyAxLiBBIHVzZXIgY2FuIGhhdmUgYXQgbW9zdCAyIHJlc2VydmF0aW9ucyBpbiBjb25maXJtZWQgc3RhdGVzIChhY3RpdmUsIHVwZGF0ZS1jb250cm9sLCBjaGFuZ2UtYWR2aXNvciwgY2FuLXN0YXJ0LW1lZXRpbmcsIGFjY2VwdC10ZXJtcykuCi8vLyAyLiBBIHVzZXIgY2Fubm90IGhhdmUgdHdvIHJlc2VydmF0aW9ucyB3aXRoIG92ZXJsYXBwaW5nIHRpbWUgc2xvdHMuCi8vLwovLy8gRmxvdzoKLy8vIDEuIElucHV0SGFuZGxlcjogQnVpbGRzIHF1ZXJ5IHRvIGZpbmQgYWxsIGFjdGl2ZSByZXNlcnZhdGlvbnMgZm9yIHRoZSBzYW1lIHVzZXIuCi8vLyAyLiBPdXRwdXRIYW5kbGVyOiBDaGVja3MgY291bnQgKG1heCAyKSBhbmQgdGltZSBvdmVybGFwOyB0aHJvd3MgZXhjZXB0aW9uIG9uIHZpb2xhdGlvbi4KLy8vICAgIEV4Y2VwdGlvbiBmYWlscyB0aGUgdHJhbnNpdGlvbjsgaW5zdGFuY2Ugc3RheXMgaW4gaXRzIGN1cnJlbnQgc3RhdGUuCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBDaGVja0R1cGxpY2F0ZVJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc2VydmljZVRhc2sgPSB0YXNrIGFzIERhcHJTZXJ2aWNlVGFzazsKICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhIERhcHJTZXJ2aWNlVGFzayIpOwoKICAgICAgICB2YXIgYXBwSWQgPSBHZXRDb25maWdWYWx1ZSgiREFQUl9BUFBfSUQiKTsKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgc2VydmljZVRhc2suU2V0QXBwSWQoYXBwSWQpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCB8fCAhSGFzUHJvcGVydHkoZGF0YSwgInVzZXIiKSB8fCBkYXRhLnVzZXIgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIk1BWF9SRVpFUlZBVElPTjogVXNlciBmaWVsZCBpcyByZXF1aXJlZCBmb3IgZHVwbGljYXRlIGNoZWNrIik7CgogICAgICAgIHZhciB1c2VyID0gZGF0YS51c2VyLlRvU3RyaW5nKCk7CiAgICAgICAgdmFyIGN1cnJlbnRLZXkgPSBjb250ZXh0Lkluc3RhbmNlPy5LZXkgPz8gIiI7CgogICAgICAgIHZhciB1c2VyRXNjYXBlZCA9IHVzZXIuUmVwbGFjZSgiXFwiLCAiXFxcXCIpLlJlcGxhY2UoIlwiIiwgIlxcXCIiKTsKICAgICAgICB2YXIga2V5RXNjYXBlZCA9IGN1cnJlbnRLZXkuUmVwbGFjZSgiXFwiLCAiXFxcXCIpLlJlcGxhY2UoIlwiIiwgIlxcXCIiKTsKCiAgICAgICAgdmFyIHF1ZXJ5UGFyYW1zID0gbmV3IExpc3Q8c3RyaW5nPgogICAgICAgIHsKICAgICAgICAgICAgInBhZ2VTaXplPTEwIiwKICAgICAgICAgICAgImZpbHRlcj0iICsKICAgICAgICAgICAgICAgICJ7XCJhbmRcIjpbIiArCiAgICAgICAgICAgICAgICAgICAgIntcImF0dHJpYnV0ZXNcIjp7XCJ1c2VyXCI6e1wiZXFcIjpcIiIgKyB1c2VyRXNjYXBlZCArICJcIn19fSwiICsKICAgICAgICAgICAgICAgICAgICAie1wia2V5XCI6e1wibmVcIjpcIiIgKyBrZXlFc2NhcGVkICsgIlwifX0sIiArCiAgICAgICAgICAgICAgICAgICAgIntcImN1cnJlbnRTdGF0ZVwiOntcImVxXCI6XCIiICsgImFjdGl2ZSIgKyAiXCJ9fSwiICArCiAgICAgICAgICAgICAgICAiXX0iCiAgICAgICAgfTsKCiAgICAgICAgc2VydmljZVRhc2suU2V0UXVlcnlTdHJpbmcoc3RyaW5nLkpvaW4oIiYiLCBxdWVyeVBhcmFtcykpOwoKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gY29udGV4dC5Cb2R5OwoKICAgICAgICBpZiAocmVzcG9uc2U/LmlzU3VjY2VzcyA9PSBmYWxzZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBlcnJvck1lc3NhZ2UgPSByZXNwb25zZT8uZXJyb3JNZXNzYWdlPy5Ub1N0cmluZygpID8/ICJTZXJ2aWNlIGNhbGwgZmFpbGVkIjsKICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigkIlNFUlZJQ0VfRVJST1I6IHtlcnJvck1lc3NhZ2V9Iik7CiAgICAgICAgfQoKICAgICAgICB2YXIgcmVzcG9uc2VEYXRhID0gcmVzcG9uc2U/LmRhdGE7CiAgICAgICAgdmFyIGl0ZW1zID0gcmVzcG9uc2VEYXRhPy5pdGVtczsKCiAgICAgICAgaWYgKGl0ZW1zID09IG51bGwgfHwgaXRlbXMuQ291bnQgPT0gMCkKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CgogICAgICAgIGludCBjb3VudCA9IGl0ZW1zLkNvdW50OwoKICAgICAgICBpZiAoY291bnQgPj0gMikKICAgICAgICB7CiAgICAgICAgICAgIHZhciB1c2VyID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YT8udXNlcj8uVG9TdHJpbmcoKSA/PyAidW5rbm93biI7CiAgICAgICAgICAgIHRocm93IG5ldyBFeGNlcHRpb24oJCJNQVhfUkVaRVJWQVRJT046IFVzZXIgJ3t1c2VyfScgYWxyZWFkeSBoYXMge2NvdW50fSBhY3RpdmUgcmVzZXJ2YXRpb25zLiBNYXhpbXVtIGFsbG93ZWQgaXMgMi4iKTsKICAgICAgICB9CgogICAgICAgIHZhciBpbnN0YW5jZURhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIHZhciBuZXdTdGFydFN0ciA9IEdldFN0cmluZyhpbnN0YW5jZURhdGEsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgdmFyIG5ld0VuZFN0ciA9IEdldFN0cmluZyhpbnN0YW5jZURhdGEsICJlbmREYXRlVGltZSIpOwoKICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KG5ld1N0YXJ0U3RyKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkobmV3RW5kU3RyKSkKICAgICAgICB7CiAgICAgICAgICAgIERhdGVUaW1lIG5ld1N0YXJ0ID0gZGVmYXVsdCwgbmV3RW5kID0gZGVmYXVsdDsKICAgICAgICAgICAgaWYgKERhdGVUaW1lLlRyeVBhcnNlKG5ld1N0YXJ0U3RyLCBvdXQgbmV3U3RhcnQpICYmIERhdGVUaW1lLlRyeVBhcnNlKG5ld0VuZFN0ciwgb3V0IG5ld0VuZCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBpdGVtIGluIGl0ZW1zKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGlmIChpdGVtID09IG51bGwpIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICB2YXIgZXhpc3RpbmdTdGFydFN0ciA9IEdldE5lc3RlZFN0cmluZyhpdGVtLCAiYXR0cmlidXRlcyIsICJzdGFydERhdGVUaW1lIik7CiAgICAgICAgICAgICAgICAgICAgdmFyIGV4aXN0aW5nRW5kU3RyID0gR2V0TmVzdGVkU3RyaW5nKGl0ZW0sICJhdHRyaWJ1dGVzIiwgImVuZERhdGVUaW1lIik7CgogICAgICAgICAgICAgICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JFbXB0eShleGlzdGluZ1N0YXJ0U3RyKSB8fCBzdHJpbmcuSXNOdWxsT3JFbXB0eShleGlzdGluZ0VuZFN0cikpCiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnRpbnVlOwoKICAgICAgICAgICAgICAgICAgICBEYXRlVGltZSBleGlzdGluZ1N0YXJ0ID0gZGVmYXVsdCwgZXhpc3RpbmdFbmQgPSBkZWZhdWx0OwogICAgICAgICAgICAgICAgICAgIGlmICghRGF0ZVRpbWUuVHJ5UGFyc2UoZXhpc3RpbmdTdGFydFN0ciwgb3V0IGV4aXN0aW5nU3RhcnQpIHx8CiAgICAgICAgICAgICAgICAgICAgICAgICFEYXRlVGltZS5UcnlQYXJzZShleGlzdGluZ0VuZFN0ciwgb3V0IGV4aXN0aW5nRW5kKSkKICAgICAgICAgICAgICAgICAgICAgICAgY29udGludWU7CgogICAgICAgICAgICAgICAgICAgIGlmIChleGlzdGluZ1N0YXJ0IDwgbmV3RW5kICYmIGV4aXN0aW5nRW5kID4gbmV3U3RhcnQpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgZXhpc3RpbmdLZXkgPSBIYXNQcm9wZXJ0eShpdGVtLCAia2V5IikgPyBpdGVtLmtleT8uVG9TdHJpbmcoKSA6ICJ1bmtub3duIjsKICAgICAgICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEV4Y2VwdGlvbigKICAgICAgICAgICAgICAgICAgICAgICAgICAgICQiVElNRV9PVkVSTEFQOiBSZXF1ZXN0ZWQgdGltZSB7bmV3U3RhcnRTdHJ9IC0ge25ld0VuZFN0cn0gb3ZlcmxhcHMgd2l0aCBleGlzdGluZyByZXNlcnZhdGlvbiAne2V4aXN0aW5nS2V5fScgKHtleGlzdGluZ1N0YXJ0U3RyfSAtIHtleGlzdGluZ0VuZFN0cn0pLiIpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0TmVzdGVkU3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgcGFyZW50LCBzdHJpbmcgY2hpbGQpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIHBhcmVudCkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBuZXN0ZWQgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgcGFyZW50KTsKICAgICAgICAgICAgICAgIGlmIChuZXN0ZWQgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShuZXN0ZWQsIGNoaWxkKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgdiA9IEdldFByb3BlcnR5VmFsdWUobmVzdGVkLCBjaGlsZCk7CiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
337
+ "location": "./src/GetUserInfoForRezervationMapping.csx",
338
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nLkZ1bmN0aW9uczsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgZ2V0LXVzZXItaW5mby1mb3ItcmV6ZXJ2YXRpb24gSHR0cFRhc2suCi8vLyBHZXRzIHVzZXIgZnJvbSBpbnN0YW5jZSBkYXRhIChzZXQgYXQgc3RhcnQgYnkgc2V0LXVzZXItZnJvbS1oZWFkZXJzLWZvci1yZXplcnZhdGlvbiBmcm9tIEhlYWRlcnMgc3ViKSwgdXNlclNlZ21lbnRCYXNlVXJsIGZyb20gdmF1bHQgKEdldFNlY3JldEFzeW5jKSwgYnVpbGRzIEdFVCB1cmwvdXNlci1pbmZvL3t1c2VyfSwgc2V0cyBVUkwgb24gSHR0cFRhc2suCi8vLyBPdXRwdXQgbWVyZ2VzIHVzZXItaW5mbyByZXNwb25zZSBhcyB1c2VySW5mbyBmb3Igb3JkZXIgMiAoc3RhcnQtbm90aWZpY2F0aW9uLXNlbmRlcikgdG8gdXNlLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgR2V0VXNlckluZm9Gb3JSZXplcnZhdGlvbk1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInN1YiIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBzdWIgaXMgcmVxdWlyZWQgZm9yIHVzZXItaW5mbyBjYWxsIChzZXQgYXQgc3RhcnQgZnJvbSBIZWFkZXJzIHN1YikiKTsKCiAgICAgICAgdmFyIGJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYygidm5leHQtc2VjcmV0IiwgIndvcmtmbG93LXNlY3JldCIsICJVc2VyU2VnbWVudEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShiYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlVzZXJTZWdtZW50QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHRyaW1tZWRCYXNlID0gYmFzZVVybC5UcmltRW5kKCcvJyk7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSB0cmltbWVkQmFzZSArICIvdXNlci1pbmZvLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyh1c2VyLlRyaW0oKSk7CgogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgdmFyIHJhdyA9IHJlc3BvbnNlPy5kYXRhID8/IHJlc3BvbnNlPy5EYXRhID8/IHJlc3BvbnNlOwogICAgICAgIHZhciB1c2VySW5mbyA9IHJhdzsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgeyB1c2VySW5mbyB9CiAgICAgICAgfSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
262
339
  }
263
340
  },
264
341
  {
265
342
  "order": 3,
266
343
  "task": {
267
- "domain": "touch",
344
+ "domain": "morph-touch",
268
345
  "flow": "sys-tasks",
269
- "key": "validate-slot-for-rezervation",
346
+ "key": "start-notification-sender",
270
347
  "version": "1.0.0"
271
348
  },
272
349
  "mapping": {
273
- "location": "./src/ValidateSlotForRezervationMapping.csx",
274
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIEJCVC5Xb3JrZmxvdy5TY3JpcHRpbmc7CnVzaW5nIEJCVC5Xb3JrZmxvdy5EZWZpbml0aW9uczsKCi8vLyA8c3VtbWFyeT4KLy8vIE1hcHBpbmcgZm9yIHZhbGlkYXRlLXNsb3QtZm9yLXJlemVydmF0aW9uIHRhc2suCi8vLyBJbnZva2VzIGdldC1hdmFpbGFibGUtc2xvdHMgZnVuY3Rpb24gd2l0aCBhZHZpc29yIGFuZCBkYXRlIGZyb20gcmV6ZXJ2YXRpb24gaW5zdGFuY2UsCi8vLyB0aGVuIGNoZWNrcyBpZiB0aGUgcmVxdWVzdGVkIHN0YXJ0RGF0ZVRpbWUtZW5kRGF0ZVRpbWUgc2xvdCBpcyBpbiB0aGUgYXZhaWxhYmxlIHNsb3RzIGxpc3QuCi8vLyBPdXRwdXQ6IHNsb3RDaGVja1Jlc3VsdCB7IGF2YWlsYWJsZTogYm9vbCwga2V5Pzogc3RyaW5nIH0gZm9yIHVzZSBieSB2YWxpZGF0aW5nIHN0YXRlIGF1dG8gdHJhbnNpdGlvbnMuCi8vLyA8L3N1bW1hcnk+CmludGVybmFsIHNlYWxlZCBjbGFzcyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbiA6IEV4Y2VwdGlvbgp7CiAgICBwdWJsaWMgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oc3RyaW5nIG1lc3NhZ2UpIDogYmFzZShtZXNzYWdlKSB7IH0KfQoKcHVibGljIGNsYXNzIFZhbGlkYXRlU2xvdEZvclJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEYXByU2VydmljZVRhc2siKTsKCiAgICAgICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldEFwcElkKGFwcElkKTsKCiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJJbnN0YW5jZSBkYXRhIGlzIHJlcXVpcmVkIik7CgogICAgICAgICAgICB2YXIgYWR2aXNvciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvciIpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZVN0ciA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgS2V5ID0gInZhbGlkYXRpb24tZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBEYXRlVGltZSBzdGFydERhdGVUaW1lOwogICAgICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydERhdGVUaW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBLZXkgPSAidmFsaWRhdGlvbi1lcnJvciIsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3IHsgYXZhaWxhYmxlID0gZmFsc2UsIGtleSA9ICJ2YWxpZGF0aW9uLWVycm9yIiB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHZhciBkYXRlU3RyID0gc3RhcnREYXRlVGltZS5Ub1N0cmluZygieXl5eS1NTS1kZCIpOwogICAgICAgICAgICB2YXIgcXVlcnlQYXJhbXMgPSBuZXcgTGlzdDxzdHJpbmc+CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhZHZpc29ySWQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGFkdmlzb3IpLAogICAgICAgICAgICAgICAgImRhdGU9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGRhdGVTdHIpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldFF1ZXJ5U3RyaW5nKHN0cmluZy5Kb2luKCImIiwgcXVlcnlQYXJhbXMpKTsKCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgS2V5ID0gImlucHV0LWVycm9yIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAiaW5wdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgICB2YXIgYm9keSA9IGNvbnRleHQuQm9keTsKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBlcnJOb2RlID0gSGFzUHJvcGVydHkoYm9keSwgImRhdGEiKSA/IGJvZHkuZGF0YSA6IG51bGw7CiAgICAgICAgICAgICAgICB2YXIgZGV0YWlsID0gR2V0U3RyaW5nKGVyck5vZGUsICJkZXRhaWwiKSA/PyBHZXRTdHJpbmcoYm9keSwgImVycm9yTWVzc2FnZSIpID8/IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oZGV0YWlsID8/ICJGdW5jdGlvbiBjYWxsIGZhaWxlZCIsIiIpOwogICAgICAgICAgICB9CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgICAgIGlmIChkYXRhID09IG51bGwpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAibm8taW5zdGFuY2UtZGF0YSIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lU3RyID0gR2V0U3RyaW5nKGRhdGEsICJlbmREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWVTdHIpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBzbG90Q2hlY2tSZXN1bHQgPSBuZXcgeyBhdmFpbGFibGUgPSBmYWxzZSwga2V5ID0gInZhbGlkYXRpb24tZXJyb3IiIH0gfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERhdGVUaW1lIHN0YXJ0RHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgRGF0ZVRpbWUgZW5kRHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0YXJ0RHQgPSBEYXRlVGltZS5QYXJzZShzdGFydERhdGVUaW1lU3RyKTsKICAgICAgICAgICAgICAgIGVuZER0ID0gRGF0ZVRpbWUuUGFyc2UoZW5kRGF0ZVRpbWVTdHIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIChFeGNlcHRpb24gZXgpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHJlcXVlc3RlZFNsb3QgPSBzdGFydER0LlRvU3RyaW5nKCJISDptbSIpICsgIi0iICsgZW5kRHQuVG9TdHJpbmcoIkhIOm1tIik7CgogICAgICAgICAgICBib29sIGF2YWlsYWJsZSA9IGZhbHNlOwogICAgICAgICAgICBzdHJpbmcgcmVzcG9uc2VLZXkgPSBudWxsOwogICAgICAgICAgICBkeW5hbWljIHJlc29sdmVkU2xvdHMgPSBudWxsOwoKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmVzcG9uc2VLZXkgPSBHZXRTdHJpbmcoYm9keSwgImtleSIpID8/IEdldFN0cmluZyhib2R5LCAiS2V5Iik7CgogICAgICAgICAgICAgICAgZHluYW1pYyBzbG90c0NvbnRhaW5lciA9IG51bGw7CgogICAgICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGJvZHksICJnZXRBdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gYm9keS5nZXRBdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGF0YU5vZGUgPSBIYXNQcm9wZXJ0eShib2R5LCAiZGF0YSIpID8gYm9keS5kYXRhIDogKEhhc1Byb3BlcnR5KGJvZHksICJEYXRhIikgPyBib2R5LkRhdGEgOiBudWxsKTsKICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YU5vZGUgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShkYXRhTm9kZSwgImdldEF2YWlsYWJsZVNsb3RzIikpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBzbG90c0NvbnRhaW5lciA9IGRhdGFOb2RlLmdldEF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChkYXRhTm9kZSAhPSBudWxsICYmIEhhc1Byb3BlcnR5KGRhdGFOb2RlLCAiYXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gZGF0YU5vZGU7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChzbG90c0NvbnRhaW5lciAhPSBudWxsICYmIEhhc1Byb3BlcnR5KHNsb3RzQ29udGFpbmVyLCAiYXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYXZhaWxhYmxlU2xvdHMgPSBzbG90c0NvbnRhaW5lci5hdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgICAgICByZXNvbHZlZFNsb3RzID0gYXZhaWxhYmxlU2xvdHM7CiAgICAgICAgICAgICAgICAgICAgaWYgKGF2YWlsYWJsZVNsb3RzICE9IG51bGwpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGlzdCA9IGF2YWlsYWJsZVNsb3RzIGFzIElFbnVtZXJhYmxlPG9iamVjdD47CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaXN0ICE9IG51bGwpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBzIGluIGxpc3QpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHNsb3RTdHIgPSBzPy5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzbG90U3RyID09IHJlcXVlc3RlZFNsb3QpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGRldGFpbE1zZyA9IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFzdHJpbmcuSXNOdWxsT3JFbXB0eShkZXRhaWxNc2cpKQogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oZGV0YWlsTXNnKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2VLZXkgPT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSByZXNwb25zZUtleSA/PyAoYXZhaWxhYmxlID8gImF2YWlsYWJsZS1zbG90cy1zdWNjZXNzIiA6ICJzbG90LXVuYXZhaWxhYmxlIiksCiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzID0gcmVzb2x2ZWRTbG90cwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgogICAgICAgIH0KICAgICAgICBjYXRjaCAoR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24pCiAgICAgICAgewogICAgICAgICAgICB0aHJvdzsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAib3V0cHV0LWVycm9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSBleC5NZXNzYWdlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
350
+ "location": "./src/StartNotificationForRezervationFromUserInfoMapping.csx",
351
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1ub3RpZmljYXRpb24tc2VuZGVyIHdoZW4gdHJpZ2dlcmVkIGZyb20gcmV6ZXJ2YXRpb24gc2VuZC11c2VyLW5vdGlmaWNhdGlvbiBhdXRvIHRyYW5zaXRpb24uCi8vLyBCdWlsZHMgbm90aWZpY2F0aW9uIGJvZHkgZnJvbSBvcmRlciAxIHVzZXJJbmZvICh1c2VyLWluZm8gcmVzcG9uc2UpIGFuZCByZXplcnZhdGlvbiBpbnN0YW5jZSBkYXRhLgovLy8gT24gc3VjY2VzcyByZXR1cm5zIElzTm90ZlNlbnQ6IHRydWUgc28gaW5zdGFuY2UgaXMgdXBkYXRlZCBhbmQgdGhlIGF1dG8gdHJhbnNpdGlvbiBkb2VzIG5vdCBydW4gYWdhaW4uCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBTdGFydE5vdGlmaWNhdGlvbkZvclJlemVydmF0aW9uRnJvbVVzZXJJbmZvTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSB7IERhdGEgPSBuZXcgeyBpc05vdGZTZW50ID0gdHJ1ZSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSBmYWxzZSB9IH0pOwoKICAgICAgICB2YXIgdXNlckluZm8gPSBkYXRhLnVzZXJJbmZvOwogICAgICAgIGlmICh1c2VySW5mbyA9PSBudWxsKQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSB7IERhdGEgPSBuZXcgeyBpc05vdGZTZW50ID0gdHJ1ZSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSBmYWxzZSB9IH0pOwoKICAgICAgICB2YXIgaW5zdGFuY2VLZXkgPSBjb250ZXh0Lkluc3RhbmNlPy5LZXkgPz8gInVua25vd24iOwogICAgICAgIHZhciBub3RpZmljYXRpb25LZXkgPSAibm90aWZpY2F0aW9uLXVzZXItIiArIE5vcm1hbGl6ZUZvcktleShpbnN0YW5jZUtleSk7CgogICAgICAgIHN0YXJ0VGFzay5TZXREb21haW4oIm1vcnBoLXRvdWNoIik7CiAgICAgICAgc3RhcnRUYXNrLlNldEZsb3coIm5vdGlmaWNhdGlvbi1zZW5kZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0S2V5KG5vdGlmaWNhdGlvbktleSk7CgogICAgICAgIHZhciBwaG9uZSA9IEdldFZhbHVlKHVzZXJJbmZvLCAicGhvbmVOdW1iZXIiKTsKICAgICAgICB2YXIgY291bnRyeUNvZGUgPSBHZXRTdHJpbmcocGhvbmUsICJjb3VudHJ5Q29kZSIpID8/ICI5MCI7CiAgICAgICAgLy8gdmFyIHByZWZpeCA9IEdldFN0cmluZyhwaG9uZSwgInByZWZpeCIpID8/ICIiOwogICAgICAgIC8vIHZhciBudW1iZXIgPSBHZXRTdHJpbmcocGhvbmUsICJudW1iZXIiKSA/PyAiIjsKICAgICAgICB2YXIgcHJlZml4ID0gIjU1NCI7CiAgICAgICAgdmFyIG51bWJlciA9ICIzODE2ODQ2IjsKICAgICAgICB2YXIgY2l0aXplbnNoaXBObyA9IEdldFN0cmluZyh1c2VySW5mbywgImNpdGl6ZW5zaGlwTnVtYmVyIikgPz8gR2V0U3RyaW5nKHVzZXJJbmZvLCAidGNrbiIpID8/ICIiOwogICAgICAgIHZhciBjdXN0b21lck5vID0gMDsKICAgICAgICBpZiAoSGFzUHJvcGVydHkodXNlckluZm8sICJjdXN0b21lcl9ubyIpKSB0cnkgeyBjdXN0b21lck5vID0gKGludCl1c2VySW5mby5jdXN0b21lcl9ubzsgfSBjYXRjaCB7IH0KICAgICAgICBlbHNlIGlmIChIYXNQcm9wZXJ0eSh1c2VySW5mbywgImN1c3RvbWVyTnVtYmVyIikpIHRyeSB7IGN1c3RvbWVyTm8gPSAoaW50KXVzZXJJbmZvLmN1c3RvbWVyTnVtYmVyOyB9IGNhdGNoIHsgfQoKICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpID8/ICIiOwogICAgICAgIHZhciBlbmREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAiZW5kRGF0ZVRpbWUiKSA/PyAiIjsKICAgICAgICB2YXIgYWR2aXNvck5hbWUgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JOYW1lIikgPz8gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29yIikgPz8gIiI7CgogICAgICAgIHZhciBib2R5ID0gbmV3CiAgICAgICAgewogICAgICAgICAgICB1c2VyVHlwZSA9ICJ1c2VyIiwKICAgICAgICAgICAgY2hhbm5lbHMgPSBuZXcgeyBzbXMgPSB0cnVlLCBwdXNoID0gdHJ1ZSB9LAogICAgICAgICAgICBoYXNSZWdpc3RlcmVkRGV2aWNlID0gdHJ1ZSwKICAgICAgICAgICAgcmVjaXBpZW50ID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHBob25lID0gbmV3IHsgY291bnRyeUNvZGUsIHByZWZpeCwgbnVtYmVyIH0sCiAgICAgICAgICAgICAgICBjaXRpemVuc2hpcE5vLAogICAgICAgICAgICAgICAgY3VzdG9tZXJObwogICAgICAgICAgICB9LAogICAgICAgICAgICBjb250ZXh0ID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJlc2VydmF0aW9uS2V5ID0gaW5zdGFuY2VLZXksCiAgICAgICAgICAgICAgICBhZHZpc29yTmFtZSwKICAgICAgICAgICAgICAgIHN0YXJ0RGF0ZVRpbWUsCiAgICAgICAgICAgICAgICBlbmREYXRlVGltZQogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgc3RhcnRUYXNrLlNldEJvZHkoYm9keSk7CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgewogICAgICAgICAgICBEYXRhID0gbmV3IHsgdXNlck5vdGlmaWNhdGlvbktleSA9IG5vdGlmaWNhdGlvbktleSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSB0cnVlIH0KICAgICAgICB9KTsKICAgIH0KCiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgaWYgKGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUpCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3IHsgaXNOb3RmU2VudCA9IHRydWUsIHVzZXJOb3RpZmljYXRpb25TZW50ID0gdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlzTm90ZlNlbnQgPSB0cnVlLAogICAgICAgICAgICAgICAgdXNlck5vdGlmaWNhdGlvblNlbnQgPSBmYWxzZSwKICAgICAgICAgICAgICAgIHVzZXJOb3RpZmljYXRpb25FcnJvciA9IGNvbnRleHQuQm9keT8uZXJyb3JNZXNzYWdlPy5Ub1N0cmluZygpID8/ICJGYWlsZWQgdG8gc3RhcnQgdXNlciBub3RpZmljYXRpb24iCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXNwb25zZTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIG9iamVjdCBHZXRWYWx1ZShkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICAgICAgcmV0dXJuIEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSAgc3RyaW5nIE5vcm1hbGl6ZUZvcktleShzdHJpbmcgdmFsdWUpCiAgICB7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHZhbHVlKSkgcmV0dXJuIHZhbHVlOwogICAgICAgIHJldHVybiB2YWx1ZS5SZXBsYWNlKCI6IiwgIi0iKS5SZXBsYWNlKCIgIiwgIi0iKTsKICAgIH0KfQo="
275
352
  }
276
353
  }
277
354
  ]
278
355
  }
356
+ ],
357
+ "onEntries": [
358
+ {
359
+ "order": 1,
360
+ "task": {
361
+ "domain": "morph-touch",
362
+ "flow": "sys-tasks",
363
+ "key": "start-absence-entry-for-rezervation",
364
+ "version": "1.0.0"
365
+ },
366
+ "mapping": {
367
+ "location": "./src/CreateAbsenceEntryForRezervationMapping.csx",
368
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1hYnNlbmNlLWVudHJ5LWZvci1yZXplcnZhdGlvbiBTdGFydFRhc2sgKFR5cGUgMTEpLgovLy8gQ3JlYXRlcyBhbiBhYnNlbmNlLWVudHJ5IHJlemVydmF0aW9uIGluc3RhbmNlIHdoZW4gcmV6ZXJ2YXRpb24gcmVhY2hlcyBjb25maXJtYXRpb24gc3RhdGUuCi8vLyBLZXkgZm9ybWF0OiByZXplcnZhdGlvbi17YWR2aXNvcklkfS17c3RhcnREYXRlVGltZX0te2VuZERhdGVUaW1lfSAoVVJMLXNhZmU6IGNvbG9ucyByZXBsYWNlZCB3aXRoIGRhc2hlcykuCi8vLyBTdGFydCBnb2VzIGRpcmVjdGx5IHRvIGNvbXBsZXRlIHN0YXRlIChubyBzY2hlZHVsZSBuZWVkZWQpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ3JlYXRlQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIGlmIChkYXRhID09IG51bGwgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJ1c2VyIikgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJhZHZpc29yIikgfHwKICAgICAgICAgICAgIUhhc1Byb3BlcnR5KGRhdGEsICJzdGFydERhdGVUaW1lIikgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJlbmREYXRlVGltZSIpKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UgeyBEYXRhID0gbmV3IHsgYWJzZW5jZUVudHJ5S2V5ID0gKHN0cmluZyludWxsIH0gfSk7CiAgICAgICAgfQoKICAgICAgICB2YXIgdXNlciA9IGRhdGEudXNlcj8uVG9TdHJpbmcoKT8uVHJpbSgpOwogICAgICAgIHZhciBhZHZpc29yID0gZGF0YS5hZHZpc29yPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWUgPSBkYXRhLnN0YXJ0RGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICB2YXIgZW5kRGF0ZVRpbWUgPSBkYXRhLmVuZERhdGVUaW1lPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHVzZXIpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGFkdmlzb3IpIHx8CiAgICAgICAgICAgIHN0cmluZy5Jc051bGxPckVtcHR5KHN0YXJ0RGF0ZVRpbWUpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGVuZERhdGVUaW1lKSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlIHsgRGF0YSA9IG5ldyB7IGFic2VuY2VFbnRyeUtleSA9IChzdHJpbmcpbnVsbCB9IH0pOwogICAgICAgIH0KCiAgICAgICAgdmFyIGFkdmlzb3JJZCA9IE5vcm1hbGl6ZUZvcktleShhZHZpc29yKTsKICAgICAgICB2YXIgc3RhcnROb3JtID0gTm9ybWFsaXplRGF0ZVRpbWVGb3JLZXkoc3RhcnREYXRlVGltZSk7CiAgICAgICAgdmFyIGVuZE5vcm0gPSBOb3JtYWxpemVEYXRlVGltZUZvcktleShlbmREYXRlVGltZSk7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9ICQicmV6ZXJ2YXRpb24te2Fkdmlzb3JJZH0te3N0YXJ0Tm9ybX0te2VuZE5vcm19IjsKCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigibW9ycGgtdG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygiYWJzZW5jZS1lbnRyeSIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcKICAgICAgICB7CiAgICAgICAgICAgICAgICBhYnNlbmNlVHlwZSA9ICJyZXplcnZhdGlvbiIsCiAgICAgICAgICAgICAgICBhZHZpc29yLAogICAgICAgICAgICAgICAgc3RhcnREYXRlVGltZSwKICAgICAgICAgICAgICAgIGVuZERhdGVUaW1lLAogICAgICAgICAgICAgICAgdGl0bGUgPSAiUmFuZGV2dSIKICAgICAgICB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgeyBhYnNlbmNlRW50cnlLZXkgfQogICAgICAgIH0pOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzcG9uc2UgPSBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgICAgICBpZiAoY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gdHJ1ZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgdmFyIHVzZXIgPSBkYXRhPy51c2VyPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgICAgIHZhciBhZHZpc29yID0gZGF0YT8uYWR2aXNvcj8uVG9TdHJpbmcoKT8uVHJpbSgpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IGRhdGE/LnN0YXJ0RGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lID0gZGF0YT8uZW5kRGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICAgICAgaWYgKCFzdHJpbmcuSXNOdWxsT3JFbXB0eSh1c2VyKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgJiYKICAgICAgICAgICAgICAgICFzdHJpbmcuSXNOdWxsT3JFbXB0eShzdGFydERhdGVUaW1lKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgYWR2aXNvcklkID0gTm9ybWFsaXplRm9yS2V5KGFkdmlzb3IpOwogICAgICAgICAgICAgICAgdmFyIHN0YXJ0Tm9ybSA9IE5vcm1hbGl6ZURhdGVUaW1lRm9yS2V5KHN0YXJ0RGF0ZVRpbWUpOwogICAgICAgICAgICAgICAgdmFyIGVuZE5vcm0gPSBOb3JtYWxpemVEYXRlVGltZUZvcktleShlbmREYXRlVGltZSk7CiAgICAgICAgICAgICAgICB2YXIgYWJzZW5jZUVudHJ5S2V5ID0gJCJyZXplcnZhdGlvbi17YWR2aXNvcklkfS17c3RhcnROb3JtfS17ZW5kTm9ybX0iOwogICAgICAgICAgICAgICAgcmVzcG9uc2UuRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGFic2VuY2VFbnRyeUtleSwKICAgICAgICAgICAgICAgICAgICBhYnNlbmNlRW50cnlSZXNwb25zZSA9IGRhdGEsCiAgICAgICAgICAgICAgICAgICAgYWJzZW5jZUVudHJ5Q3JlYXRlZCA9IHRydWUKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3IHsgYWJzZW5jZUVudHJ5Q3JlYXRlZCA9IHRydWUgfTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGFic2VuY2VFbnRyeUNyZWF0ZWQgPSBmYWxzZSwKICAgICAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkZhaWxlZCB0byBzdGFydCBhYnNlbmNlLWVudHJ5IgogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KHJlc3BvbnNlKTsKICAgIH0KCiAgICBwcml2YXRlICBzdHJpbmcgTm9ybWFsaXplRm9yS2V5KHN0cmluZyB2YWx1ZSkKICAgIHsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkodmFsdWUpKSByZXR1cm4gdmFsdWU7CiAgICAgICAgcmV0dXJuIHZhbHVlLlJlcGxhY2UoIjoiLCAiLSIpLlJlcGxhY2UoIiAiLCAiLSIpOwogICAgfQoKICAgIHByaXZhdGUgIHN0cmluZyBOb3JtYWxpemVEYXRlVGltZUZvcktleShzdHJpbmcgZGF0ZVRpbWVTdHIpCiAgICB7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KGRhdGVUaW1lU3RyKSkgcmV0dXJuIGRhdGVUaW1lU3RyOwogICAgICAgIHJldHVybiBkYXRlVGltZVN0ci5SZXBsYWNlKCI6IiwgIi0iKS5SZXBsYWNlKCIgIiwgIi0iKTsKICAgIH0KfQo="
369
+ }
370
+ }
279
371
  ]
280
372
  },
281
373
  {
@@ -295,7 +387,7 @@
295
387
  "transitions": [
296
388
  {
297
389
  "key": "slot-available",
298
- "target": "confirmation",
390
+ "target": "appointment-form",
299
391
  "triggerType": 1,
300
392
  "versionStrategy": "Minor",
301
393
  "labels": [
@@ -369,7 +461,7 @@
369
461
  {
370
462
  "order": 1,
371
463
  "task": {
372
- "domain": "touch",
464
+ "domain": "morph-touch",
373
465
  "flow": "sys-tasks",
374
466
  "key": "validate-date-for-rezervation",
375
467
  "version": "1.0.0"
@@ -382,7 +474,7 @@
382
474
  {
383
475
  "order": 2,
384
476
  "task": {
385
- "domain": "touch",
477
+ "domain": "morph-touch",
386
478
  "flow": "sys-tasks",
387
479
  "key": "check-duplicate-rezervation",
388
480
  "version": "1.0.0"
@@ -395,14 +487,14 @@
395
487
  {
396
488
  "order": 3,
397
489
  "task": {
398
- "domain": "touch",
490
+ "domain": "morph-touch",
399
491
  "flow": "sys-tasks",
400
492
  "key": "validate-slot-for-rezervation",
401
493
  "version": "1.0.0"
402
494
  },
403
495
  "mapping": {
404
496
  "location": "./src/ValidateSlotForRezervationMapping.csx",
405
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIEJCVC5Xb3JrZmxvdy5TY3JpcHRpbmc7CnVzaW5nIEJCVC5Xb3JrZmxvdy5EZWZpbml0aW9uczsKCi8vLyA8c3VtbWFyeT4KLy8vIE1hcHBpbmcgZm9yIHZhbGlkYXRlLXNsb3QtZm9yLXJlemVydmF0aW9uIHRhc2suCi8vLyBJbnZva2VzIGdldC1hdmFpbGFibGUtc2xvdHMgZnVuY3Rpb24gd2l0aCBhZHZpc29yIGFuZCBkYXRlIGZyb20gcmV6ZXJ2YXRpb24gaW5zdGFuY2UsCi8vLyB0aGVuIGNoZWNrcyBpZiB0aGUgcmVxdWVzdGVkIHN0YXJ0RGF0ZVRpbWUtZW5kRGF0ZVRpbWUgc2xvdCBpcyBpbiB0aGUgYXZhaWxhYmxlIHNsb3RzIGxpc3QuCi8vLyBPdXRwdXQ6IHNsb3RDaGVja1Jlc3VsdCB7IGF2YWlsYWJsZTogYm9vbCwga2V5Pzogc3RyaW5nIH0gZm9yIHVzZSBieSB2YWxpZGF0aW5nIHN0YXRlIGF1dG8gdHJhbnNpdGlvbnMuCi8vLyA8L3N1bW1hcnk+CmludGVybmFsIHNlYWxlZCBjbGFzcyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbiA6IEV4Y2VwdGlvbgp7CiAgICBwdWJsaWMgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oc3RyaW5nIG1lc3NhZ2UpIDogYmFzZShtZXNzYWdlKSB7IH0KfQoKcHVibGljIGNsYXNzIFZhbGlkYXRlU2xvdEZvclJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEYXByU2VydmljZVRhc2siKTsKCiAgICAgICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldEFwcElkKGFwcElkKTsKCiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJJbnN0YW5jZSBkYXRhIGlzIHJlcXVpcmVkIik7CgogICAgICAgICAgICB2YXIgYWR2aXNvciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvciIpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZVN0ciA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgS2V5ID0gInZhbGlkYXRpb24tZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBEYXRlVGltZSBzdGFydERhdGVUaW1lOwogICAgICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydERhdGVUaW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBLZXkgPSAidmFsaWRhdGlvbi1lcnJvciIsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3IHsgYXZhaWxhYmxlID0gZmFsc2UsIGtleSA9ICJ2YWxpZGF0aW9uLWVycm9yIiB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHZhciBkYXRlU3RyID0gc3RhcnREYXRlVGltZS5Ub1N0cmluZygieXl5eS1NTS1kZCIpOwogICAgICAgICAgICB2YXIgcXVlcnlQYXJhbXMgPSBuZXcgTGlzdDxzdHJpbmc+CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhZHZpc29ySWQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGFkdmlzb3IpLAogICAgICAgICAgICAgICAgImRhdGU9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGRhdGVTdHIpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldFF1ZXJ5U3RyaW5nKHN0cmluZy5Kb2luKCImIiwgcXVlcnlQYXJhbXMpKTsKCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgS2V5ID0gImlucHV0LWVycm9yIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAiaW5wdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgICB2YXIgYm9keSA9IGNvbnRleHQuQm9keTsKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBlcnJOb2RlID0gSGFzUHJvcGVydHkoYm9keSwgImRhdGEiKSA/IGJvZHkuZGF0YSA6IG51bGw7CiAgICAgICAgICAgICAgICB2YXIgZGV0YWlsID0gR2V0U3RyaW5nKGVyck5vZGUsICJkZXRhaWwiKSA/PyBHZXRTdHJpbmcoYm9keSwgImVycm9yTWVzc2FnZSIpID8/IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oZGV0YWlsID8/ICJGdW5jdGlvbiBjYWxsIGZhaWxlZCIsIiIpOwogICAgICAgICAgICB9CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgICAgIGlmIChkYXRhID09IG51bGwpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAibm8taW5zdGFuY2UtZGF0YSIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lU3RyID0gR2V0U3RyaW5nKGRhdGEsICJlbmREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWVTdHIpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBzbG90Q2hlY2tSZXN1bHQgPSBuZXcgeyBhdmFpbGFibGUgPSBmYWxzZSwga2V5ID0gInZhbGlkYXRpb24tZXJyb3IiIH0gfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERhdGVUaW1lIHN0YXJ0RHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgRGF0ZVRpbWUgZW5kRHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0YXJ0RHQgPSBEYXRlVGltZS5QYXJzZShzdGFydERhdGVUaW1lU3RyKTsKICAgICAgICAgICAgICAgIGVuZER0ID0gRGF0ZVRpbWUuUGFyc2UoZW5kRGF0ZVRpbWVTdHIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIChFeGNlcHRpb24gZXgpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHJlcXVlc3RlZFNsb3QgPSBzdGFydER0LlRvU3RyaW5nKCJISDptbSIpICsgIi0iICsgZW5kRHQuVG9TdHJpbmcoIkhIOm1tIik7CgogICAgICAgICAgICBib29sIGF2YWlsYWJsZSA9IGZhbHNlOwogICAgICAgICAgICBzdHJpbmcgcmVzcG9uc2VLZXkgPSBudWxsOwogICAgICAgICAgICBkeW5hbWljIHJlc29sdmVkU2xvdHMgPSBudWxsOwoKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmVzcG9uc2VLZXkgPSBHZXRTdHJpbmcoYm9keSwgImtleSIpID8/IEdldFN0cmluZyhib2R5LCAiS2V5Iik7CgogICAgICAgICAgICAgICAgZHluYW1pYyBzbG90c0NvbnRhaW5lciA9IG51bGw7CgogICAgICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KGJvZHksICJnZXRBdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gYm9keS5nZXRBdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGF0YU5vZGUgPSBIYXNQcm9wZXJ0eShib2R5LCAiZGF0YSIpID8gYm9keS5kYXRhIDogKEhhc1Byb3BlcnR5KGJvZHksICJEYXRhIikgPyBib2R5LkRhdGEgOiBudWxsKTsKICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YU5vZGUgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShkYXRhTm9kZSwgImdldEF2YWlsYWJsZVNsb3RzIikpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBzbG90c0NvbnRhaW5lciA9IGRhdGFOb2RlLmdldEF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChkYXRhTm9kZSAhPSBudWxsICYmIEhhc1Byb3BlcnR5KGRhdGFOb2RlLCAiYXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gZGF0YU5vZGU7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChzbG90c0NvbnRhaW5lciAhPSBudWxsICYmIEhhc1Byb3BlcnR5KHNsb3RzQ29udGFpbmVyLCAiYXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgYXZhaWxhYmxlU2xvdHMgPSBzbG90c0NvbnRhaW5lci5hdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgICAgICByZXNvbHZlZFNsb3RzID0gYXZhaWxhYmxlU2xvdHM7CiAgICAgICAgICAgICAgICAgICAgaWYgKGF2YWlsYWJsZVNsb3RzICE9IG51bGwpCiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICB2YXIgbGlzdCA9IGF2YWlsYWJsZVNsb3RzIGFzIElFbnVtZXJhYmxlPG9iamVjdD47CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChsaXN0ICE9IG51bGwpCiAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZvcmVhY2ggKHZhciBzIGluIGxpc3QpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdmFyIHNsb3RTdHIgPSBzPy5Ub1N0cmluZygpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChzbG90U3RyID09IHJlcXVlc3RlZFNsb3QpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUgPSB0cnVlOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBicmVhazsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBlbHNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdmFyIGRldGFpbE1zZyA9IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICAgICAgaWYgKCFzdHJpbmcuSXNOdWxsT3JFbXB0eShkZXRhaWxNc2cpKQogICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oZGV0YWlsTXNnKTsKICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBpZiAocmVzcG9uc2VLZXkgPT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gZmFsc2U7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSByZXNwb25zZUtleSA/PyAoYXZhaWxhYmxlID8gImF2YWlsYWJsZS1zbG90cy1zdWNjZXNzIiA6ICJzbG90LXVuYXZhaWxhYmxlIiksCiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzID0gcmVzb2x2ZWRTbG90cwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfSk7CgogICAgICAgIH0KICAgICAgICBjYXRjaCAoR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24pCiAgICAgICAgewogICAgICAgICAgICB0aHJvdzsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggKEV4Y2VwdGlvbiBleCkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAib3V0cHV0LWVycm9yIiwKICAgICAgICAgICAgICAgICAgICAgICAgZXJyb3IgPSBleC5NZXNzYWdlCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICB9CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
497
+ "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLkxpbnE7CnVzaW5nIFN5c3RlbS5UaHJlYWRpbmcuVGFza3M7CnVzaW5nIEJCVC5Xb3JrZmxvdy5TY3JpcHRpbmc7CnVzaW5nIEJCVC5Xb3JrZmxvdy5EZWZpbml0aW9uczsKCi8vLyA8c3VtbWFyeT4KLy8vIE1hcHBpbmcgZm9yIHZhbGlkYXRlLXNsb3QtZm9yLXJlemVydmF0aW9uIHRhc2suCi8vLyBJbnZva2VzIGdldC1hdmFpbGFibGUtc2xvdHMgZnVuY3Rpb24gd2l0aCBhZHZpc29yIGFuZCBkYXRlIGZyb20gcmV6ZXJ2YXRpb24gaW5zdGFuY2UsCi8vLyB0aGVuIGNoZWNrcyBpZiB0aGUgcmVxdWVzdGVkIHN0YXJ0RGF0ZVRpbWUtZW5kRGF0ZVRpbWUgc2xvdCBpcyBpbiB0aGUgYXZhaWxhYmxlIHNsb3RzIGxpc3QuCi8vLyBPdXRwdXQ6IHNsb3RDaGVja1Jlc3VsdCB7IGF2YWlsYWJsZTogYm9vbCwga2V5Pzogc3RyaW5nIH0gZm9yIHVzZSBieSB2YWxpZGF0aW5nIHN0YXRlIGF1dG8gdHJhbnNpdGlvbnMuCi8vLyA8L3N1bW1hcnk+CmludGVybmFsIHNlYWxlZCBjbGFzcyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbiA6IEV4Y2VwdGlvbgp7CiAgICBwdWJsaWMgR2V0QXZhaWxhYmxlU2xvdHNFeGNlcHRpb24oc3RyaW5nIG1lc3NhZ2UpIDogYmFzZShtZXNzYWdlKSB7IH0KfQoKcHVibGljIGNsYXNzIFZhbGlkYXRlU2xvdEZvclJlemVydmF0aW9uTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBzZXJ2aWNlVGFzayA9IHRhc2sgYXMgRGFwclNlcnZpY2VUYXNrOwogICAgICAgICAgICBpZiAoc2VydmljZVRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEYXByU2VydmljZVRhc2siKTsKCiAgICAgICAgICAgIHZhciBhcHBJZCA9IEdldENvbmZpZ1ZhbHVlKCJEQVBSX0FQUF9JRCIpOwogICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGFwcElkKSkKICAgICAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldEFwcElkKGFwcElkKTsKCiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgaWYgKGRhdGEgPT0gbnVsbCkKICAgICAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJJbnN0YW5jZSBkYXRhIGlzIHJlcXVpcmVkIik7CgogICAgICAgICAgICB2YXIgYWR2aXNvciA9IEdldFN0cmluZyhkYXRhLCAiYWR2aXNvciIpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZVN0ciA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgS2V5ID0gInZhbGlkYXRpb24tZXJyb3IiLAogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICB9CgogICAgICAgICAgICBEYXRlVGltZSBzdGFydERhdGVUaW1lOwogICAgICAgICAgICBpZiAoIURhdGVUaW1lLlRyeVBhcnNlKHN0YXJ0RGF0ZVRpbWVTdHIsIG91dCBzdGFydERhdGVUaW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBLZXkgPSAidmFsaWRhdGlvbi1lcnJvciIsCiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3IHsgYXZhaWxhYmxlID0gZmFsc2UsIGtleSA9ICJ2YWxpZGF0aW9uLWVycm9yIiB9CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIHZhciBkYXRlU3RyID0gc3RhcnREYXRlVGltZS5Ub1N0cmluZygieXl5eS1NTS1kZCIpOwogICAgICAgICAgICB2YXIgcXVlcnlQYXJhbXMgPSBuZXcgTGlzdDxzdHJpbmc+CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICJhZHZpc29ySWQ9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGFkdmlzb3IpLAogICAgICAgICAgICAgICAgImRhdGU9IiArIFVyaS5Fc2NhcGVEYXRhU3RyaW5nKGRhdGVTdHIpCiAgICAgICAgICAgIH07CiAgICAgICAgICAgIHNlcnZpY2VUYXNrLlNldFF1ZXJ5U3RyaW5nKHN0cmluZy5Kb2luKCImIiwgcXVlcnlQYXJhbXMpKTsKCiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgS2V5ID0gImlucHV0LWVycm9yIiwKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICBzbG90Q2hlY2tSZXN1bHQgPSBuZXcKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICBrZXkgPSAiaW5wdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwdWJsaWMgIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgICB2YXIgYm9keSA9IGNvbnRleHQuQm9keTsKICAgICAgICAgICAgaWYgKGJvZHkgIT0gbnVsbCAmJiBIYXNQcm9wZXJ0eShib2R5LCAiaXNTdWNjZXNzIikgJiYgYm9keS5pc1N1Y2Nlc3MgPT0gZmFsc2UpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciBlcnJOb2RlID0gSGFzUHJvcGVydHkoYm9keSwgImRhdGEiKSA/IGJvZHkuZGF0YSA6IG51bGw7CiAgICAgICAgICAgICAgICB2YXIgZGV0YWlsID0gR2V0U3RyaW5nKGVyck5vZGUsICJkZXRhaWwiKSA/PyBHZXRTdHJpbmcoYm9keSwgImVycm9yTWVzc2FnZSIpID8/IEdldFN0cmluZyhib2R5LCAiZGV0YWlsIik7CiAgICAgICAgICAgICAgICB0aHJvdyBuZXcgQXJndW1lbnRFeGNlcHRpb24oZGV0YWlsID8/ICJGdW5jdGlvbiBjYWxsIGZhaWxlZCIsIiIpOwogICAgICAgICAgICB9CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgICAgIGlmIChkYXRhID09IG51bGwpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAibm8taW5zdGFuY2UtZGF0YSIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWVTdHIgPSBHZXRTdHJpbmcoZGF0YSwgInN0YXJ0RGF0ZVRpbWUiKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lU3RyID0gR2V0U3RyaW5nKGRhdGEsICJlbmREYXRlVGltZSIpOwogICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoc3RhcnREYXRlVGltZVN0cikgfHwgc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWVTdHIpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBzbG90Q2hlY2tSZXN1bHQgPSBuZXcgeyBhdmFpbGFibGUgPSBmYWxzZSwga2V5ID0gInZhbGlkYXRpb24tZXJyb3IiIH0gfQogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIERhdGVUaW1lIHN0YXJ0RHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgRGF0ZVRpbWUgZW5kRHQgPSBEYXRlVGltZS5NaW5WYWx1ZTsKICAgICAgICAgICAgdHJ5CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHN0YXJ0RHQgPSBEYXRlVGltZS5QYXJzZShzdGFydERhdGVUaW1lU3RyKTsKICAgICAgICAgICAgICAgIGVuZER0ID0gRGF0ZVRpbWUuUGFyc2UoZW5kRGF0ZVRpbWVTdHIpOwogICAgICAgICAgICB9CiAgICAgICAgICAgIGNhdGNoIChFeGNlcHRpb24gZXgpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgRGF0YSA9IG5ldyB7IHNsb3RDaGVja1Jlc3VsdCA9IG5ldyB7IGF2YWlsYWJsZSA9IGZhbHNlLCBrZXkgPSAidmFsaWRhdGlvbi1lcnJvciIgfSB9CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfQoKICAgICAgICAgICAgdmFyIHR6ID0gUmVzb2x2ZUJ1c2luZXNzVGltZVpvbmUoKTsKICAgICAgICAgICAgdmFyIGxvY2FsU3RhcnQgPSBDb252ZXJ0VG9UaW1lWm9uZShzdGFydER0LCBzdGFydERhdGVUaW1lU3RyLCB0eik7CiAgICAgICAgICAgIHZhciBsb2NhbEVuZCA9IENvbnZlcnRUb1RpbWVab25lKGVuZER0LCBlbmREYXRlVGltZVN0ciwgdHopOwogICAgICAgICAgICB2YXIgcmVxdWVzdGVkU2xvdCA9IGxvY2FsU3RhcnQuVG9TdHJpbmcoIkhIOm1tIikgKyAiLSIgKyBsb2NhbEVuZC5Ub1N0cmluZygiSEg6bW0iKTsKCiAgICAgICAgICAgIGJvb2wgYXZhaWxhYmxlID0gZmFsc2U7CiAgICAgICAgICAgIHN0cmluZyByZXNwb25zZUtleSA9IG51bGw7CiAgICAgICAgICAgIGR5bmFtaWMgcmVzb2x2ZWRTbG90cyA9IG51bGw7CgogICAgICAgICAgICBpZiAoYm9keSAhPSBudWxsKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXNwb25zZUtleSA9IEdldFN0cmluZyhib2R5LCAia2V5IikgPz8gR2V0U3RyaW5nKGJvZHksICJLZXkiKTsKCiAgICAgICAgICAgICAgICBkeW5hbWljIHNsb3RzQ29udGFpbmVyID0gbnVsbDsKCiAgICAgICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkoYm9keSwgImdldEF2YWlsYWJsZVNsb3RzIikpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgc2xvdHNDb250YWluZXIgPSBib2R5LmdldEF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgZWxzZQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBkYXRhTm9kZSA9IEhhc1Byb3BlcnR5KGJvZHksICJkYXRhIikgPyBib2R5LmRhdGEgOiAoSGFzUHJvcGVydHkoYm9keSwgIkRhdGEiKSA/IGJvZHkuRGF0YSA6IG51bGwpOwogICAgICAgICAgICAgICAgICAgIGlmIChkYXRhTm9kZSAhPSBudWxsICYmIEhhc1Byb3BlcnR5KGRhdGFOb2RlLCAiZ2V0QXZhaWxhYmxlU2xvdHMiKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHNsb3RzQ29udGFpbmVyID0gZGF0YU5vZGUuZ2V0QXZhaWxhYmxlU2xvdHM7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGRhdGFOb2RlICE9IG51bGwgJiYgSGFzUHJvcGVydHkoZGF0YU5vZGUsICJhdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdHNDb250YWluZXIgPSBkYXRhTm9kZTsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgaWYgKHNsb3RzQ29udGFpbmVyICE9IG51bGwgJiYgSGFzUHJvcGVydHkoc2xvdHNDb250YWluZXIsICJhdmFpbGFibGVTbG90cyIpKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBhdmFpbGFibGVTbG90cyA9IHNsb3RzQ29udGFpbmVyLmF2YWlsYWJsZVNsb3RzOwogICAgICAgICAgICAgICAgICAgIHJlc29sdmVkU2xvdHMgPSBhdmFpbGFibGVTbG90czsKICAgICAgICAgICAgICAgICAgICBpZiAoYXZhaWxhYmxlU2xvdHMgIT0gbnVsbCkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIHZhciBsaXN0ID0gYXZhaWxhYmxlU2xvdHMgYXMgSUVudW1lcmFibGU8b2JqZWN0PjsKICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGxpc3QgIT0gbnVsbCkKICAgICAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIHMgaW4gbGlzdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB2YXIgc2xvdFN0ciA9IHM/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHNsb3RTdHIgPT0gcmVxdWVzdGVkU2xvdCkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGF2YWlsYWJsZSA9IHRydWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICB2YXIgZGV0YWlsTXNnID0gR2V0U3RyaW5nKGJvZHksICJkZXRhaWwiKTsKICAgICAgICAgICAgICAgICAgICBpZiAoIXN0cmluZy5Jc051bGxPckVtcHR5KGRldGFpbE1zZykpCiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbihkZXRhaWxNc2cpOwogICAgICAgICAgICAgICAgfQoKICAgICAgICAgICAgICAgIGlmIChyZXNwb25zZUtleSA9PSBudWxsICYmIEhhc1Byb3BlcnR5KGJvZHksICJpc1N1Y2Nlc3MiKSAmJiBib2R5LmlzU3VjY2VzcyA9PSBmYWxzZSkKICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUgPSBmYWxzZTsKICAgICAgICAgICAgfQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBEYXRhID0gbmV3CiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgc2xvdENoZWNrUmVzdWx0ID0gbmV3CiAgICAgICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgICAgICBhdmFpbGFibGUsCiAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9IHJlc3BvbnNlS2V5ID8/IChhdmFpbGFibGUgPyAiYXZhaWxhYmxlLXNsb3RzLXN1Y2Nlc3MiIDogInNsb3QtdW5hdmFpbGFibGUiKSwKICAgICAgICAgICAgICAgICAgICAgICAgc2xvdHMgPSByZXNvbHZlZFNsb3RzCiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKCiAgICAgICAgfQogICAgICAgIGNhdGNoIChHZXRBdmFpbGFibGVTbG90c0V4Y2VwdGlvbikKICAgICAgICB7CiAgICAgICAgICAgIHRocm93OwogICAgICAgIH0KICAgICAgICBjYXRjaCAoRXhjZXB0aW9uIGV4KQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHNsb3RDaGVja1Jlc3VsdCA9IG5ldwogICAgICAgICAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgICAgICAgICAgYXZhaWxhYmxlID0gZmFsc2UsCiAgICAgICAgICAgICAgICAgICAgICAgIGtleSA9ICJvdXRwdXQtZXJyb3IiLAogICAgICAgICAgICAgICAgICAgICAgICBlcnJvciA9IGV4Lk1lc3NhZ2UKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KICAgIH0KCiAgICBwcml2YXRlIFRpbWVab25lSW5mbyBSZXNvbHZlQnVzaW5lc3NUaW1lWm9uZSgpCiAgICB7CiAgICAgICAgdmFyIGlkID0gR2V0Q29uZmlnVmFsdWUoIkFwcG9pbnRtZW50czpUaW1lWm9uZSIpID8/IEdldENvbmZpZ1ZhbHVlKCJBUFBPSU5UTUVOVF9USU1FWk9ORSIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKGlkKSkKICAgICAgICAgICAgaWQgPSAiRXVyb3BlL0lzdGFuYnVsIjsKCiAgICAgICAgdHJ5IHsgcmV0dXJuIFRpbWVab25lSW5mby5GaW5kU3lzdGVtVGltZVpvbmVCeUlkKGlkLlRyaW0oKSk7IH0gY2F0Y2ggeyB9CiAgICAgICAgdHJ5IHsgcmV0dXJuIFRpbWVab25lSW5mby5GaW5kU3lzdGVtVGltZVpvbmVCeUlkKCJUdXJrZXkgU3RhbmRhcmQgVGltZSIpOyB9IGNhdGNoIHsgfQogICAgICAgIHJldHVybiBUaW1lWm9uZUluZm8uQ3JlYXRlQ3VzdG9tVGltZVpvbmUoIlRSVCIsIFRpbWVTcGFuLkZyb21Ib3VycygzKSwgIlRSVCAoVVRDKzMpIiwgIlRSVCAoVVRDKzMpIik7CiAgICB9CgogICAgcHJpdmF0ZSBzdGF0aWMgRGF0ZVRpbWUgQ29udmVydFRvVGltZVpvbmUoRGF0ZVRpbWUgZHQsIHN0cmluZyBvcmlnaW5hbCwgVGltZVpvbmVJbmZvIHR6KQogICAgewogICAgICAgIGlmIChkdC5LaW5kID09IERhdGVUaW1lS2luZC5VdGMpCiAgICAgICAgICAgIHJldHVybiBUaW1lWm9uZUluZm8uQ29udmVydFRpbWVGcm9tVXRjKGR0LCB0eik7CgogICAgICAgIGlmIChEYXRlVGltZU9mZnNldC5UcnlQYXJzZShvcmlnaW5hbCwgb3V0IHZhciBkdG8pKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIHV0YyA9IGR0by5VdGNEYXRlVGltZTsKICAgICAgICAgICAgcmV0dXJuIFRpbWVab25lSW5mby5Db252ZXJ0VGltZUZyb21VdGModXRjLCB0eik7CiAgICAgICAgfQoKICAgICAgICByZXR1cm4gZHQ7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
406
498
  }
407
499
  }
408
500
  ]
@@ -410,126 +502,6 @@
410
502
  ],
411
503
  "_comment": "## State Overview\n\n**Purpose:** Rezervasyon temel bilgilerini girmek icin kullanilir.\n\n* Tarih : Rezervasyon Tarihi\n* Saat : Rezervasyon Saati"
412
504
  },
413
- {
414
- "key": "confirmation",
415
- "stateType": 2,
416
- "versionStrategy": "Minor",
417
- "labels": [
418
- {
419
- "label": "Confirmation",
420
- "language": "en-US"
421
- },
422
- {
423
- "label": "Randevu Onayı",
424
- "language": "tr-TR"
425
- }
426
- ],
427
- "onEntries": [
428
- {
429
- "order": 1,
430
- "task": {
431
- "domain": "touch",
432
- "flow": "sys-tasks",
433
- "key": "start-absence-entry-for-rezervation",
434
- "version": "1.0.0"
435
- },
436
- "mapping": {
437
- "location": "./src/CreateAbsenceEntryForRezervationMapping.csx",
438
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1hYnNlbmNlLWVudHJ5LWZvci1yZXplcnZhdGlvbiBTdGFydFRhc2sgKFR5cGUgMTEpLgovLy8gQ3JlYXRlcyBhbiBhYnNlbmNlLWVudHJ5IHJlemVydmF0aW9uIGluc3RhbmNlIHdoZW4gcmV6ZXJ2YXRpb24gcmVhY2hlcyBjb25maXJtYXRpb24gc3RhdGUuCi8vLyBLZXkgZm9ybWF0OiByZXplcnZhdGlvbi17YWR2aXNvcklkfS17c3RhcnREYXRlVGltZX0te2VuZERhdGVUaW1lfSAoVVJMLXNhZmU6IGNvbG9ucyByZXBsYWNlZCB3aXRoIGRhc2hlcykuCi8vLyBTdGFydCBnb2VzIGRpcmVjdGx5IHRvIGNvbXBsZXRlIHN0YXRlIChubyBzY2hlZHVsZSBuZWVkZWQpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ3JlYXRlQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciBzdGFydFRhc2sgPSB0YXNrIGFzIFN0YXJ0VGFzazsKICAgICAgICBpZiAoc3RhcnRUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBTdGFydFRhc2siKTsKCiAgICAgICAgdmFyIGRhdGEgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhOwogICAgICAgIGlmIChkYXRhID09IG51bGwgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJ1c2VyIikgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJhZHZpc29yIikgfHwKICAgICAgICAgICAgIUhhc1Byb3BlcnR5KGRhdGEsICJzdGFydERhdGVUaW1lIikgfHwgIUhhc1Byb3BlcnR5KGRhdGEsICJlbmREYXRlVGltZSIpKQogICAgICAgIHsKICAgICAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UgeyBEYXRhID0gbmV3IHsgYWJzZW5jZUVudHJ5S2V5ID0gKHN0cmluZyludWxsIH0gfSk7CiAgICAgICAgfQoKICAgICAgICB2YXIgdXNlciA9IGRhdGEudXNlcj8uVG9TdHJpbmcoKT8uVHJpbSgpOwogICAgICAgIHZhciBhZHZpc29yID0gZGF0YS5hZHZpc29yPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgdmFyIHN0YXJ0RGF0ZVRpbWUgPSBkYXRhLnN0YXJ0RGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICB2YXIgZW5kRGF0ZVRpbWUgPSBkYXRhLmVuZERhdGVUaW1lPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHVzZXIpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGFkdmlzb3IpIHx8CiAgICAgICAgICAgIHN0cmluZy5Jc051bGxPckVtcHR5KHN0YXJ0RGF0ZVRpbWUpIHx8IHN0cmluZy5Jc051bGxPckVtcHR5KGVuZERhdGVUaW1lKSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlIHsgRGF0YSA9IG5ldyB7IGFic2VuY2VFbnRyeUtleSA9IChzdHJpbmcpbnVsbCB9IH0pOwogICAgICAgIH0KCiAgICAgICAgdmFyIGFkdmlzb3JJZCA9IE5vcm1hbGl6ZUZvcktleShhZHZpc29yKTsKICAgICAgICB2YXIgc3RhcnROb3JtID0gTm9ybWFsaXplRGF0ZVRpbWVGb3JLZXkoc3RhcnREYXRlVGltZSk7CiAgICAgICAgdmFyIGVuZE5vcm0gPSBOb3JtYWxpemVEYXRlVGltZUZvcktleShlbmREYXRlVGltZSk7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9ICQicmV6ZXJ2YXRpb24te2Fkdmlzb3JJZH0te3N0YXJ0Tm9ybX0te2VuZE5vcm19IjsKCiAgICAgICAgc3RhcnRUYXNrLlNldERvbWFpbigidG91Y2giKTsKICAgICAgICBzdGFydFRhc2suU2V0RmxvdygiYWJzZW5jZS1lbnRyeSIpOwogICAgICAgIHN0YXJ0VGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICBzdGFydFRhc2suU2V0Qm9keShuZXcKICAgICAgICB7CiAgICAgICAgICAgICAgICBhYnNlbmNlVHlwZSA9ICJyZXplcnZhdGlvbiIsCiAgICAgICAgICAgICAgICBhZHZpc29yLAogICAgICAgICAgICAgICAgc3RhcnREYXRlVGltZSwKICAgICAgICAgICAgICAgIGVuZERhdGVUaW1lLAogICAgICAgICAgICAgICAgdGl0bGUgPSAiUmFuZGV2dSIKICAgICAgICB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgeyBhYnNlbmNlRW50cnlLZXkgfQogICAgICAgIH0pOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzcG9uc2UgPSBuZXcgU2NyaXB0UmVzcG9uc2UoKTsKICAgICAgICBpZiAoY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gdHJ1ZSkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICAgICAgdmFyIHVzZXIgPSBkYXRhPy51c2VyPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgICAgIHZhciBhZHZpc29yID0gZGF0YT8uYWR2aXNvcj8uVG9TdHJpbmcoKT8uVHJpbSgpOwogICAgICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IGRhdGE/LnN0YXJ0RGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICAgICAgdmFyIGVuZERhdGVUaW1lID0gZGF0YT8uZW5kRGF0ZVRpbWU/LlRvU3RyaW5nKCk/LlRyaW0oKTsKICAgICAgICAgICAgaWYgKCFzdHJpbmcuSXNOdWxsT3JFbXB0eSh1c2VyKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkoYWR2aXNvcikgJiYKICAgICAgICAgICAgICAgICFzdHJpbmcuSXNOdWxsT3JFbXB0eShzdGFydERhdGVUaW1lKSAmJiAhc3RyaW5nLklzTnVsbE9yRW1wdHkoZW5kRGF0ZVRpbWUpKQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICB2YXIgYWR2aXNvcklkID0gTm9ybWFsaXplRm9yS2V5KGFkdmlzb3IpOwogICAgICAgICAgICAgICAgdmFyIHN0YXJ0Tm9ybSA9IE5vcm1hbGl6ZURhdGVUaW1lRm9yS2V5KHN0YXJ0RGF0ZVRpbWUpOwogICAgICAgICAgICAgICAgdmFyIGVuZE5vcm0gPSBOb3JtYWxpemVEYXRlVGltZUZvcktleShlbmREYXRlVGltZSk7CiAgICAgICAgICAgICAgICB2YXIgYWJzZW5jZUVudHJ5S2V5ID0gJCJyZXplcnZhdGlvbi17YWR2aXNvcklkfS17c3RhcnROb3JtfS17ZW5kTm9ybX0iOwogICAgICAgICAgICAgICAgcmVzcG9uc2UuRGF0YSA9IG5ldwogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIGFic2VuY2VFbnRyeUtleSwKICAgICAgICAgICAgICAgICAgICBhYnNlbmNlRW50cnlSZXNwb25zZSA9IGRhdGEsCiAgICAgICAgICAgICAgICAgICAgYWJzZW5jZUVudHJ5Q3JlYXRlZCA9IHRydWUKICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgZWxzZQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3IHsgYWJzZW5jZUVudHJ5Q3JlYXRlZCA9IHRydWUgfTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGFic2VuY2VFbnRyeUNyZWF0ZWQgPSBmYWxzZSwKICAgICAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkZhaWxlZCB0byBzdGFydCBhYnNlbmNlLWVudHJ5IgogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KHJlc3BvbnNlKTsKICAgIH0KCiAgICBwcml2YXRlICBzdHJpbmcgTm9ybWFsaXplRm9yS2V5KHN0cmluZyB2YWx1ZSkKICAgIHsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkodmFsdWUpKSByZXR1cm4gdmFsdWU7CiAgICAgICAgcmV0dXJuIHZhbHVlLlJlcGxhY2UoIjoiLCAiLSIpLlJlcGxhY2UoIiAiLCAiLSIpOwogICAgfQoKICAgIHByaXZhdGUgIHN0cmluZyBOb3JtYWxpemVEYXRlVGltZUZvcktleShzdHJpbmcgZGF0ZVRpbWVTdHIpCiAgICB7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KGRhdGVUaW1lU3RyKSkgcmV0dXJuIGRhdGVUaW1lU3RyOwogICAgICAgIHJldHVybiBkYXRlVGltZVN0ci5SZXBsYWNlKCI6IiwgIi0iKS5SZXBsYWNlKCIgIiwgIi0iKTsKICAgIH0KfQo="
439
- }
440
- }
441
- ],
442
- "transitions": [
443
- {
444
- "key": "create-appointment",
445
- "target": "active",
446
- "triggerType": 0,
447
- "versionStrategy": "Minor",
448
- "labels": [
449
- {
450
- "label": "Confirm",
451
- "language": "en-US"
452
- },
453
- {
454
- "label": "Onayla",
455
- "language": "tr-TR"
456
- }
457
- ],
458
- "onExecutionTasks": [
459
- {
460
- "order": 1,
461
- "task": {
462
- "domain": "touch",
463
- "flow": "sys-tasks",
464
- "key": "set-previous-advisor",
465
- "version": "1.0.0"
466
- },
467
- "mapping": {
468
- "location": "./src/SetPreviousAdvisorMapping.csx",
469
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzZXQtcHJldmlvdXMtYWR2aXNvciBTY3JpcHQgVGFzayAoVHlwZSA3KS4KLy8vIFN0b3JlcyBjb250ZXh0Lkluc3RhbmNlLkRhdGEuYWR2aXNvciBhcyBwcmV2aW91c0Fkdmlzb3Igb24gdGhlIGluc3RhbmNlLgovLy8gVXNlZCB3aGVuOiAoMSkgY3JlYXRlLWFwcG9pbnRtZW50IC0gYWR2aXNvciBpcyBjdXJyZW50IGJlZm9yZSBtZXJnZTsgKDIpIHRvLWFjdGl2ZSAtIGFkdmlzb3IgaXMgdGhlIG5ldyBvbmUgYWZ0ZXIgdXBkYXRlLWNvbnRyb2wgcHJvY2Vzc2luZy4KLy8vIFNjcmlwdCB0YXNrIG9ubHkgcmV0dXJucyBPdXRwdXRIYW5kbGVyIGRhdGE7IG5vIEhUVFAgb3IgU3RhcnRUYXNrIGNhbGxzLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgU2V0UHJldmlvdXNBZHZpc29yTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSgpKTsKICAgIH0KCiAgICBwdWJsaWMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGFkdmlzb3IgPSBjb250ZXh0Lkluc3RhbmNlPy5EYXRhPy5hZHZpc29yPy5Ub1N0cmluZygpPy5UcmltKCk7CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIEtleSA9ICJzZXQtcHJldmlvdXMtYWR2aXNvci1vdXRwdXQiLAogICAgICAgICAgICBEYXRhID0gbmV3IHsgcHJldmlvdXNBZHZpc29yID0gYWR2aXNvciA/PyAoc3RyaW5nKW51bGwgfQogICAgICAgIH0pOwogICAgfQp9Cg=="
470
- }
471
- },
472
- {
473
- "order": 2,
474
- "task": {
475
- "domain": "touch",
476
- "flow": "sys-tasks",
477
- "key": "get-user-info-for-rezervation",
478
- "version": "1.0.0"
479
- },
480
- "mapping": {
481
- "location": "./src/GetUserInfoForRezervationMapping.csx",
482
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nLkZ1bmN0aW9uczsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWFwcGluZyBmb3IgZ2V0LXVzZXItaW5mby1mb3ItcmV6ZXJ2YXRpb24gSHR0cFRhc2suCi8vLyBHZXRzIHVzZXIgZnJvbSBpbnN0YW5jZSBkYXRhIChzZXQgYXQgc3RhcnQgYnkgc2V0LXVzZXItZnJvbS1oZWFkZXJzLWZvci1yZXplcnZhdGlvbiBmcm9tIEhlYWRlcnMgc3ViKSwgdXNlclNlZ21lbnRCYXNlVXJsIGZyb20gdmF1bHQgKEdldFNlY3JldEFzeW5jKSwgYnVpbGRzIEdFVCB1cmwvdXNlci1pbmZvL3t1c2VyfSwgc2V0cyBVUkwgb24gSHR0cFRhc2suCi8vLyBPdXRwdXQgbWVyZ2VzIHVzZXItaW5mbyByZXNwb25zZSBhcyB1c2VySW5mbyBmb3Igb3JkZXIgMiAoc3RhcnQtbm90aWZpY2F0aW9uLXNlbmRlcikgdG8gdXNlLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgR2V0VXNlckluZm9Gb3JSZXplcnZhdGlvbk1hcHBpbmcgOiBTY3JpcHRCYXNlLCBJTWFwcGluZwp7CiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gSW5wdXRIYW5kbGVyKFdvcmtmbG93VGFzayB0YXNrLCBTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIGh0dHBUYXNrID0gdGFzayBhcyBIdHRwVGFzazsKICAgICAgICBpZiAoaHR0cFRhc2sgPT0gbnVsbCkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlRhc2sgbXVzdCBiZSBhbiBIdHRwVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIHVzZXIgPSBHZXRTdHJpbmcoZGF0YSwgInN1YiIpOwogICAgICAgIGlmIChzdHJpbmcuSXNOdWxsT3JXaGl0ZVNwYWNlKHVzZXIpKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiSW5zdGFuY2UgZGF0YSBzdWIgaXMgcmVxdWlyZWQgZm9yIHVzZXItaW5mbyBjYWxsIChzZXQgYXQgc3RhcnQgZnJvbSBIZWFkZXJzIHN1YikiKTsKCiAgICAgICAgdmFyIGJhc2VVcmwgPSBhd2FpdCBHZXRTZWNyZXRBc3luYygidm5leHQtc2VjcmV0IiwgIndvcmtmbG93LXNlY3JldCIsICJVc2VyU2VnbWVudEJhc2VVcmwiKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yV2hpdGVTcGFjZShiYXNlVXJsKSkKICAgICAgICAgICAgdGhyb3cgbmV3IEludmFsaWRPcGVyYXRpb25FeGNlcHRpb24oIlVzZXJTZWdtZW50QmFzZVVybCBzZWNyZXQgaXMgcmVxdWlyZWQiKTsKCiAgICAgICAgdmFyIHRyaW1tZWRCYXNlID0gYmFzZVVybC5UcmltRW5kKCcvJyk7CiAgICAgICAgdmFyIGZ1bGxVcmwgPSB0cmltbWVkQmFzZSArICIvdXNlci1pbmZvLyIgKyBVcmkuRXNjYXBlRGF0YVN0cmluZyh1c2VyLlRyaW0oKSk7CgogICAgICAgIGh0dHBUYXNrLlNldFVybChmdWxsVXJsKTsKCiAgICAgICAgcmV0dXJuIG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgcmVzcG9uc2UgPSBjb250ZXh0LkJvZHk7CiAgICAgICAgdmFyIHJhdyA9IHJlc3BvbnNlPy5kYXRhID8/IHJlc3BvbnNlPy5EYXRhID8/IHJlc3BvbnNlOwogICAgICAgIHZhciB1c2VySW5mbyA9IHJhdzsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgeyB1c2VySW5mbyB9CiAgICAgICAgfSk7CiAgICB9CgogICAgcHJpdmF0ZSBzdHJpbmcgR2V0U3RyaW5nKGR5bmFtaWMgb2JqLCBzdHJpbmcgbmFtZSkKICAgIHsKICAgICAgICBpZiAob2JqID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgIHRyeQogICAgICAgIHsKICAgICAgICAgICAgaWYgKEhhc1Byb3BlcnR5KG9iaiwgbmFtZSkpCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHZhciB2ID0gR2V0UHJvcGVydHlWYWx1ZShvYmosIG5hbWUpOwogICAgICAgICAgICAgICAgcmV0dXJuIHY/LlRvU3RyaW5nKCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn0K"
483
- }
484
- },
485
- {
486
- "order": 3,
487
- "task": {
488
- "domain": "touch",
489
- "flow": "sys-tasks",
490
- "key": "start-notification-sender",
491
- "version": "1.0.0"
492
- },
493
- "mapping": {
494
- "location": "./src/StartNotificationForRezervationFromUserInfoMapping.csx",
495
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBzdGFydC1ub3RpZmljYXRpb24tc2VuZGVyIHdoZW4gdHJpZ2dlcmVkIGZyb20gcmV6ZXJ2YXRpb24gc2VuZC11c2VyLW5vdGlmaWNhdGlvbiBhdXRvIHRyYW5zaXRpb24uCi8vLyBCdWlsZHMgbm90aWZpY2F0aW9uIGJvZHkgZnJvbSBvcmRlciAxIHVzZXJJbmZvICh1c2VyLWluZm8gcmVzcG9uc2UpIGFuZCByZXplcnZhdGlvbiBpbnN0YW5jZSBkYXRhLgovLy8gT24gc3VjY2VzcyByZXR1cm5zIElzTm90ZlNlbnQ6IHRydWUgc28gaW5zdGFuY2UgaXMgdXBkYXRlZCBhbmQgdGhlIGF1dG8gdHJhbnNpdGlvbiBkb2VzIG5vdCBydW4gYWdhaW4uCi8vLyA8L3N1bW1hcnk+CnB1YmxpYyBjbGFzcyBTdGFydE5vdGlmaWNhdGlvbkZvclJlemVydmF0aW9uRnJvbVVzZXJJbmZvTWFwcGluZyA6IFNjcmlwdEJhc2UsIElNYXBwaW5nCnsKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBJbnB1dEhhbmRsZXIoV29ya2Zsb3dUYXNrIHRhc2ssIFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgc3RhcnRUYXNrID0gdGFzayBhcyBTdGFydFRhc2s7CiAgICAgICAgaWYgKHN0YXJ0VGFzayA9PSBudWxsKQogICAgICAgICAgICB0aHJvdyBuZXcgSW52YWxpZE9wZXJhdGlvbkV4Y2VwdGlvbigiVGFzayBtdXN0IGJlIGEgU3RhcnRUYXNrIik7CgogICAgICAgIHZhciBkYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICBpZiAoZGF0YSA9PSBudWxsKQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSB7IERhdGEgPSBuZXcgeyBpc05vdGZTZW50ID0gdHJ1ZSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSBmYWxzZSB9IH0pOwoKICAgICAgICB2YXIgdXNlckluZm8gPSBkYXRhLnVzZXJJbmZvOwogICAgICAgIGlmICh1c2VySW5mbyA9PSBudWxsKQogICAgICAgICAgICByZXR1cm4gVGFzay5Gcm9tUmVzdWx0KG5ldyBTY3JpcHRSZXNwb25zZSB7IERhdGEgPSBuZXcgeyBpc05vdGZTZW50ID0gdHJ1ZSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSBmYWxzZSB9IH0pOwoKICAgICAgICB2YXIgaW5zdGFuY2VLZXkgPSBjb250ZXh0Lkluc3RhbmNlPy5LZXkgPz8gInVua25vd24iOwogICAgICAgIHZhciBub3RpZmljYXRpb25LZXkgPSAibm90aWZpY2F0aW9uLXVzZXItIiArIE5vcm1hbGl6ZUZvcktleShpbnN0YW5jZUtleSk7CgogICAgICAgIHN0YXJ0VGFzay5TZXREb21haW4oInRvdWNoIik7CiAgICAgICAgc3RhcnRUYXNrLlNldEZsb3coIm5vdGlmaWNhdGlvbi1zZW5kZXIiKTsKICAgICAgICBzdGFydFRhc2suU2V0S2V5KG5vdGlmaWNhdGlvbktleSk7CgogICAgICAgIHZhciBwaG9uZSA9IEdldFZhbHVlKHVzZXJJbmZvLCAicGhvbmVOdW1iZXIiKTsKICAgICAgICB2YXIgY291bnRyeUNvZGUgPSBHZXRTdHJpbmcocGhvbmUsICJjb3VudHJ5Q29kZSIpID8/ICI5MCI7CiAgICAgICAgLy8gdmFyIHByZWZpeCA9IEdldFN0cmluZyhwaG9uZSwgInByZWZpeCIpID8/ICIiOwogICAgICAgIC8vIHZhciBudW1iZXIgPSBHZXRTdHJpbmcocGhvbmUsICJudW1iZXIiKSA/PyAiIjsKICAgICAgICB2YXIgcHJlZml4ID0gIjU1NCI7CiAgICAgICAgdmFyIG51bWJlciA9ICIzODE2ODQ2IjsKICAgICAgICB2YXIgY2l0aXplbnNoaXBObyA9IEdldFN0cmluZyh1c2VySW5mbywgImNpdGl6ZW5zaGlwTnVtYmVyIikgPz8gR2V0U3RyaW5nKHVzZXJJbmZvLCAidGNrbiIpID8/ICIiOwogICAgICAgIHZhciBjdXN0b21lck5vID0gMDsKICAgICAgICBpZiAoSGFzUHJvcGVydHkodXNlckluZm8sICJjdXN0b21lcl9ubyIpKSB0cnkgeyBjdXN0b21lck5vID0gKGludCl1c2VySW5mby5jdXN0b21lcl9ubzsgfSBjYXRjaCB7IH0KICAgICAgICBlbHNlIGlmIChIYXNQcm9wZXJ0eSh1c2VySW5mbywgImN1c3RvbWVyTnVtYmVyIikpIHRyeSB7IGN1c3RvbWVyTm8gPSAoaW50KXVzZXJJbmZvLmN1c3RvbWVyTnVtYmVyOyB9IGNhdGNoIHsgfQoKICAgICAgICB2YXIgc3RhcnREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAic3RhcnREYXRlVGltZSIpID8/ICIiOwogICAgICAgIHZhciBlbmREYXRlVGltZSA9IEdldFN0cmluZyhkYXRhLCAiZW5kRGF0ZVRpbWUiKSA/PyAiIjsKICAgICAgICB2YXIgYWR2aXNvck5hbWUgPSBHZXRTdHJpbmcoZGF0YSwgImFkdmlzb3JOYW1lIikgPz8gR2V0U3RyaW5nKGRhdGEsICJhZHZpc29yIikgPz8gIiI7CgogICAgICAgIHZhciBib2R5ID0gbmV3CiAgICAgICAgewogICAgICAgICAgICB1c2VyVHlwZSA9ICJ1c2VyIiwKICAgICAgICAgICAgY2hhbm5lbHMgPSBuZXcgeyBzbXMgPSB0cnVlLCBwdXNoID0gdHJ1ZSB9LAogICAgICAgICAgICBoYXNSZWdpc3RlcmVkRGV2aWNlID0gdHJ1ZSwKICAgICAgICAgICAgcmVjaXBpZW50ID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHBob25lID0gbmV3IHsgY291bnRyeUNvZGUsIHByZWZpeCwgbnVtYmVyIH0sCiAgICAgICAgICAgICAgICBjaXRpemVuc2hpcE5vLAogICAgICAgICAgICAgICAgY3VzdG9tZXJObwogICAgICAgICAgICB9LAogICAgICAgICAgICBjb250ZXh0ID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIHJlc2VydmF0aW9uS2V5ID0gaW5zdGFuY2VLZXksCiAgICAgICAgICAgICAgICBhZHZpc29yTmFtZSwKICAgICAgICAgICAgICAgIHN0YXJ0RGF0ZVRpbWUsCiAgICAgICAgICAgICAgICBlbmREYXRlVGltZQogICAgICAgICAgICB9CiAgICAgICAgfTsKCiAgICAgICAgc3RhcnRUYXNrLlNldEJvZHkoYm9keSk7CgogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgewogICAgICAgICAgICBEYXRhID0gbmV3IHsgdXNlck5vdGlmaWNhdGlvbktleSA9IG5vdGlmaWNhdGlvbktleSwgdXNlck5vdGlmaWNhdGlvblN0YXJ0ZWQgPSB0cnVlIH0KICAgICAgICB9KTsKICAgIH0KCiAgICBwdWJsaWMgYXN5bmMgVGFzazxTY3JpcHRSZXNwb25zZT4gT3V0cHV0SGFuZGxlcihTY3JpcHRDb250ZXh0IGNvbnRleHQpCiAgICB7CiAgICAgICAgdmFyIHJlc3BvbnNlID0gbmV3IFNjcmlwdFJlc3BvbnNlKCk7CiAgICAgICAgaWYgKGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUpCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3IHsgaXNOb3RmU2VudCA9IHRydWUsIHVzZXJOb3RpZmljYXRpb25TZW50ID0gdHJ1ZSB9OwogICAgICAgIH0KICAgICAgICBlbHNlCiAgICAgICAgewogICAgICAgICAgICByZXNwb25zZS5EYXRhID0gbmV3CiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIGlzTm90ZlNlbnQgPSB0cnVlLAogICAgICAgICAgICAgICAgdXNlck5vdGlmaWNhdGlvblNlbnQgPSBmYWxzZSwKICAgICAgICAgICAgICAgIHVzZXJOb3RpZmljYXRpb25FcnJvciA9IGNvbnRleHQuQm9keT8uZXJyb3JNZXNzYWdlPy5Ub1N0cmluZygpID8/ICJGYWlsZWQgdG8gc3RhcnQgdXNlciBub3RpZmljYXRpb24iCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIHJldHVybiByZXNwb25zZTsKICAgIH0KCiAgICBwcml2YXRlIHN0cmluZyBHZXRTdHJpbmcoZHluYW1pYyBvYmosIHN0cmluZyBuYW1lKQogICAgewogICAgICAgIGlmIChvYmogPT0gbnVsbCkgcmV0dXJuIG51bGw7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoSGFzUHJvcGVydHkob2JqLCBuYW1lKSkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIHYgPSBHZXRQcm9wZXJ0eVZhbHVlKG9iaiwgbmFtZSk7CiAgICAgICAgICAgICAgICByZXR1cm4gdj8uVG9TdHJpbmcoKTsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgICAgICBjYXRjaCB7IH0KICAgICAgICByZXR1cm4gbnVsbDsKICAgIH0KCiAgICBwcml2YXRlIG9iamVjdCBHZXRWYWx1ZShkeW5hbWljIG9iaiwgc3RyaW5nIG5hbWUpCiAgICB7CiAgICAgICAgaWYgKG9iaiA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmIChIYXNQcm9wZXJ0eShvYmosIG5hbWUpKQogICAgICAgICAgICAgICAgcmV0dXJuIEdldFByb3BlcnR5VmFsdWUob2JqLCBuYW1lKTsKICAgICAgICB9CiAgICAgICAgY2F0Y2ggeyB9CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9CgogICAgcHJpdmF0ZSAgc3RyaW5nIE5vcm1hbGl6ZUZvcktleShzdHJpbmcgdmFsdWUpCiAgICB7CiAgICAgICAgaWYgKHN0cmluZy5Jc051bGxPckVtcHR5KHZhbHVlKSkgcmV0dXJuIHZhbHVlOwogICAgICAgIHJldHVybiB2YWx1ZS5SZXBsYWNlKCI6IiwgIi0iKS5SZXBsYWNlKCIgIiwgIi0iKTsKICAgIH0KfQo="
496
- }
497
- }
498
- ]
499
- },
500
- {
501
- "key": "back-to-form",
502
- "target": "appointment-form",
503
- "triggerType": 0,
504
- "versionStrategy": "Minor",
505
- "labels": [
506
- {
507
- "label": "Back",
508
- "language": "en-US"
509
- },
510
- {
511
- "label": "Geri",
512
- "language": "tr-TR"
513
- }
514
- ],
515
- "onExecutionTasks": [
516
- {
517
- "order": 1,
518
- "task": {
519
- "domain": "touch",
520
- "flow": "sys-tasks",
521
- "key": "cancel-absence-entry-for-rezervation",
522
- "version": "1.0.0"
523
- },
524
- "mapping": {
525
- "location": "./src/CancelAbsenceEntryForRezervationMapping.csx",
526
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uVGhyZWFkaW5nLlRhc2tzOwp1c2luZyBCQlQuV29ya2Zsb3cuU2NyaXB0aW5nOwp1c2luZyBCQlQuV29ya2Zsb3cuRGVmaW5pdGlvbnM7CgovLy8gPHN1bW1hcnk+Ci8vLyBNYXBwaW5nIGZvciBjYW5jZWwtYWJzZW5jZS1lbnRyeS1mb3ItcmV6ZXJ2YXRpb24gRGlyZWN0VHJpZ2dlclRhc2sgKFR5cGUgMTIpLgovLy8gVHJpZ2dlcnMgY2FuY2VsIHRyYW5zaXRpb24gb24gdGhlIGFic2VuY2UtZW50cnkgaW5zdGFuY2Ugd2hlbiBiYWNrLXRvLWZvcm0sIHVzZXItY2FuY2VsLCBvciBhZHZpc29yLWNhbmNlbCBpcyBleGVjdXRlZC4KLy8vIFVzZXMgYWJzZW5jZUVudHJ5S2V5IGZyb20gaW5zdGFuY2UgKHNldCBpbiBjb25maXJtYXRpb24gb25FbnRyeSkuIE5vLW9wIGlmIGFic2VuY2VFbnRyeUtleSBpcyBtaXNzaW5nIChlLmcuIG9sZCBpbnN0YW5jZXMpLgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgQ2FuY2VsQWJzZW5jZUVudHJ5Rm9yUmV6ZXJ2YXRpb25NYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciB0cmlnZ2VyVGFzayA9IHRhc2sgYXMgRGlyZWN0VHJpZ2dlclRhc2s7CiAgICAgICAgaWYgKHRyaWdnZXJUYXNrID09IG51bGwpCiAgICAgICAgICAgIHRocm93IG5ldyBJbnZhbGlkT3BlcmF0aW9uRXhjZXB0aW9uKCJUYXNrIG11c3QgYmUgYSBEaXJlY3RUcmlnZ2VyVGFzayIpOwoKICAgICAgICB2YXIgZGF0YSA9IGNvbnRleHQuSW5zdGFuY2U/LkRhdGE7CiAgICAgICAgdmFyIGFic2VuY2VFbnRyeUtleSA9IGRhdGE/LmFic2VuY2VFbnRyeUtleT8uVG9TdHJpbmcoKTsKICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkoYWJzZW5jZUVudHJ5S2V5KSkKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlCiAgICAgICAgICAgIHsKICAgICAgICAgICAgICAgIERhdGEgPSBuZXcgeyBjYW5jZWxUcmlnZ2VyZWQgPSBmYWxzZSwgcmVhc29uID0gIm5vLWFic2VuY2UtZW50cnkta2V5IiB9CiAgICAgICAgICAgIH0pOwogICAgICAgIH0KCiAgICAgICAgdHJpZ2dlclRhc2suU2V0RG9tYWluKCJ0b3VjaCIpOwogICAgICAgIHRyaWdnZXJUYXNrLlNldEZsb3coImFic2VuY2UtZW50cnkiKTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRLZXkoYWJzZW5jZUVudHJ5S2V5KTsKICAgICAgICB0cmlnZ2VyVGFzay5TZXRUcmFuc2l0aW9uTmFtZSgiY2FuY2VsIik7CiAgICAgICAgdHJpZ2dlclRhc2suU2V0Qm9keShuZXcgeyB9KTsKCiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UoKSk7CiAgICB9CgogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IE91dHB1dEhhbmRsZXIoU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHZhciByZXNwb25zZSA9IG5ldyBTY3JpcHRSZXNwb25zZSgpOwogICAgICAgIHJlc3BvbnNlLkRhdGEgPSBuZXcKICAgICAgICB7CiAgICAgICAgICAgIGNhbmNlbFRyaWdnZXJlZCA9IGNvbnRleHQuQm9keT8uaXNTdWNjZXNzID09IHRydWUsCiAgICAgICAgICAgIGVycm9yID0gY29udGV4dC5Cb2R5Py5pc1N1Y2Nlc3MgPT0gZmFsc2UgPyAoY29udGV4dC5Cb2R5Py5lcnJvck1lc3NhZ2UgPz8gIkNhbmNlbCBmYWlsZWQiKSA6IG51bGwKICAgICAgICB9OwogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQocmVzcG9uc2UpOwogICAgfQp9Cg=="
527
- }
528
- }
529
- ]
530
- }
531
- ]
532
- },
533
505
  {
534
506
  "key": "active",
535
507
  "stateType": 2,
@@ -565,7 +537,7 @@
565
537
  {
566
538
  "order": 1,
567
539
  "task": {
568
- "domain": "touch",
540
+ "domain": "morph-touch",
569
541
  "flow": "sys-tasks",
570
542
  "key": "merge-rezervation-update",
571
543
  "version": "1.0.0"
@@ -610,37 +582,6 @@
610
582
  }
611
583
  ],
612
584
  "transitions": [
613
- {
614
- "key": "video-call-url-update",
615
- "target": "in-meet",
616
- "triggerType": 0,
617
- "versionStrategy": "Minor",
618
- "labels": [
619
- {
620
- "label": "Video Call URL Update",
621
- "language": "en-US"
622
- },
623
- {
624
- "label": "Video Görüşme URL Güncelle",
625
- "language": "tr-TR"
626
- }
627
- ],
628
- "onExecutionTasks": [
629
- {
630
- "order": 1,
631
- "task": {
632
- "domain": "touch",
633
- "flow": "sys-tasks",
634
- "key": "merge-video-call-urls",
635
- "version": "1.0.0"
636
- },
637
- "mapping": {
638
- "location": "./src/VideoCallUrlUpdateMergeMapping.csx",
639
- "code": "dXNpbmcgU3lzdGVtOwp1c2luZyBTeXN0ZW0uQ29sbGVjdGlvbnMuR2VuZXJpYzsKdXNpbmcgU3lzdGVtLlRocmVhZGluZy5UYXNrczsKdXNpbmcgQkJULldvcmtmbG93LlNjcmlwdGluZzsKdXNpbmcgQkJULldvcmtmbG93LkRlZmluaXRpb25zOwoKLy8vIDxzdW1tYXJ5PgovLy8gTWVyZ2VzIGluY29taW5nIHZpZGVvQ2FsbFVybHMgaW50byByZXplcnZhdGlvbiBpbnN0YW5jZSBkYXRhLgovLy8gQXBwZW5kcyBuZXcgZW50cmllcyB0byBleGlzdGluZyB2aWRlb0NhbGxVcmxzIGFycmF5LgovLy8gPC9zdW1tYXJ5PgpwdWJsaWMgY2xhc3MgVmlkZW9DYWxsVXJsVXBkYXRlTWVyZ2VNYXBwaW5nIDogU2NyaXB0QmFzZSwgSU1hcHBpbmcKewogICAgcHVibGljIFRhc2s8U2NyaXB0UmVzcG9uc2U+IElucHV0SGFuZGxlcihXb3JrZmxvd1Rhc2sgdGFzaywgU2NyaXB0Q29udGV4dCBjb250ZXh0KQogICAgewogICAgICAgIHJldHVybiBUYXNrLkZyb21SZXN1bHQobmV3IFNjcmlwdFJlc3BvbnNlKCkpOwogICAgfQoKICAgIHB1YmxpYyBUYXNrPFNjcmlwdFJlc3BvbnNlPiBPdXRwdXRIYW5kbGVyKFNjcmlwdENvbnRleHQgY29udGV4dCkKICAgIHsKICAgICAgICB2YXIgaW5zdGFuY2VEYXRhID0gY29udGV4dC5JbnN0YW5jZT8uRGF0YTsKICAgICAgICB2YXIgaW5jb21pbmdCb2R5ID0gY29udGV4dC5Cb2R5OwogICAgICAgIHZhciBleGlzdGluZ0xpc3QgPSBHZXRWaWRlb0NhbGxVcmxzTGlzdChpbnN0YW5jZURhdGEpOwogICAgICAgIHZhciBpbmNvbWluZ0xpc3QgPSBHZXRJbmNvbWluZ0VudHJpZXMoaW5jb21pbmdCb2R5LCBpbnN0YW5jZURhdGEpOwogICAgICAgIGlmIChpbmNvbWluZ0xpc3QgIT0gbnVsbCAmJiBpbmNvbWluZ0xpc3QuQ291bnQgPiAwKQogICAgICAgIHsKICAgICAgICAgICAgZm9yZWFjaCAodmFyIGl0ZW0gaW4gaW5jb21pbmdMaXN0KQogICAgICAgICAgICB7CiAgICAgICAgICAgICAgICBpZiAoaXRlbSA9PSBudWxsIHx8IGl0ZW0uQ291bnQgPT0gMCkgY29udGludWU7CiAgICAgICAgICAgICAgICBzdHJpbmcgcGFydGljaXBhbnRJZCA9IG51bGw7CiAgICAgICAgICAgICAgICBzdHJpbmcgdXJsID0gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIGt2IGluIGl0ZW0pCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgcGFydGljaXBhbnRJZCA9IGt2LktleTsKICAgICAgICAgICAgICAgICAgICB1cmwgPSBrdi5WYWx1ZSA/PyBzdHJpbmcuRW1wdHk7CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBpZiAoc3RyaW5nLklzTnVsbE9yRW1wdHkocGFydGljaXBhbnRJZCkpIGNvbnRpbnVlOwogICAgICAgICAgICAgICAgaW50IGV4aXN0aW5nSWR4ID0gLTE7CiAgICAgICAgICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IGV4aXN0aW5nTGlzdC5Db3VudDsgaSsrKQogICAgICAgICAgICAgICAgewogICAgICAgICAgICAgICAgICAgIHZhciBkID0gZXhpc3RpbmdMaXN0W2ldOwogICAgICAgICAgICAgICAgICAgIGlmIChkICE9IG51bGwgJiYgZC5Db250YWluc0tleShwYXJ0aWNpcGFudElkKSkKICAgICAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgICAgIGV4aXN0aW5nSWR4ID0gaTsKICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgaWYgKGV4aXN0aW5nSWR4ID49IDApCiAgICAgICAgICAgICAgICAgICAgZXhpc3RpbmdMaXN0W2V4aXN0aW5nSWR4XVtwYXJ0aWNpcGFudElkXSA9IHVybDsKICAgICAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgICAgICAgICBleGlzdGluZ0xpc3QuQWRkKG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPiB7IHsgcGFydGljaXBhbnRJZCwgdXJsIH0gfSk7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIHZhciBkYXRhTGlzdCA9IG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBvYmplY3Q+PigpOwogICAgICAgIGZvcmVhY2ggKHZhciBkIGluIGV4aXN0aW5nTGlzdCkKICAgICAgICB7CiAgICAgICAgICAgIHZhciBvYmpEaWN0ID0gbmV3IERpY3Rpb25hcnk8c3RyaW5nLCBvYmplY3Q+KCk7CiAgICAgICAgICAgIGZvcmVhY2ggKHZhciBrdiBpbiBkKQogICAgICAgICAgICAgICAgb2JqRGljdFtrdi5LZXldID0ga3YuVmFsdWU7CiAgICAgICAgICAgIGRhdGFMaXN0LkFkZChvYmpEaWN0KTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIFRhc2suRnJvbVJlc3VsdChuZXcgU2NyaXB0UmVzcG9uc2UKICAgICAgICB7CiAgICAgICAgICAgIERhdGEgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIG9iamVjdD4geyB7ICJ2aWRlb0NhbGxVcmxzIiwgZGF0YUxpc3QgfSB9CiAgICAgICAgfSk7CiAgICB9CgogICAgcHJpdmF0ZSBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PiBHZXRJbmNvbWluZ0VudHJpZXMoZHluYW1pYyBib2R5LCBkeW5hbWljIGluc3RhbmNlRGF0YSkKICAgIHsKICAgICAgICB2YXIgZnJvbUJvZHkgPSBUcnlHZXRWaWRlb0NhbGxVcmxUb0FkZChib2R5KTsKICAgICAgICBpZiAoZnJvbUJvZHkgIT0gbnVsbCAmJiBmcm9tQm9keS5Db3VudCA+IDApIHJldHVybiBmcm9tQm9keTsKICAgICAgICB2YXIgZnJvbUluc3RhbmNlID0gVHJ5R2V0VmlkZW9DYWxsVXJsVG9BZGQoaW5zdGFuY2VEYXRhKTsKICAgICAgICBpZiAoZnJvbUluc3RhbmNlICE9IG51bGwgJiYgZnJvbUluc3RhbmNlLkNvdW50ID4gMCkgcmV0dXJuIGZyb21JbnN0YW5jZTsKICAgICAgICBpZiAoYm9keSAhPSBudWxsKQogICAgICAgIHsKICAgICAgICAgICAgdmFyIGZyb21Cb2R5VXJscyA9IEdldFZpZGVvQ2FsbFVybHNMaXN0KGJvZHkpOwogICAgICAgICAgICBpZiAoZnJvbUJvZHlVcmxzICE9IG51bGwgJiYgZnJvbUJvZHlVcmxzLkNvdW50ID4gMCkgcmV0dXJuIGZyb21Cb2R5VXJsczsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PigpOwogICAgfQoKICAgIHByaXZhdGUgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4gVHJ5R2V0VmlkZW9DYWxsVXJsVG9BZGQoZHluYW1pYyBzb3VyY2UpCiAgICB7CiAgICAgICAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4gbnVsbDsKICAgICAgICB0cnkKICAgICAgICB7CiAgICAgICAgICAgIGlmICghSGFzUHJvcGVydHkoc291cmNlLCAidmlkZW9DYWxsVXJsVG9BZGQiKSkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIHZhciB0b0FkZCA9IHNvdXJjZS52aWRlb0NhbGxVcmxUb0FkZDsKICAgICAgICAgICAgaWYgKHRvQWRkID09IG51bGwpIHJldHVybiBudWxsOwogICAgICAgICAgICB2YXIgc3RyaW5nRGljdCA9IG5ldyBEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPigpOwogICAgICAgICAgICB2YXIgZGljdE9iaiA9IHRvQWRkIGFzIElEaWN0aW9uYXJ5PHN0cmluZywgb2JqZWN0PjsKICAgICAgICAgICAgaWYgKGRpY3RPYmogIT0gbnVsbCAmJiBkaWN0T2JqLkNvdW50ID4gMCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgZm9yZWFjaCAodmFyIGt2IGluIGRpY3RPYmopCiAgICAgICAgICAgICAgICAgICAgc3RyaW5nRGljdFtrdi5LZXldID0ga3YuVmFsdWU/LlRvU3RyaW5nKCkgPz8gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICB9CiAgICAgICAgICAgIGVsc2UKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIGRpY3RTdHIgPSB0b0FkZCBhcyBJRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz47CiAgICAgICAgICAgICAgICBpZiAoZGljdFN0ciA9PSBudWxsIHx8IGRpY3RTdHIuQ291bnQgPT0gMCkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIga3YgaW4gZGljdFN0cikKICAgICAgICAgICAgICAgICAgICBzdHJpbmdEaWN0W2t2LktleV0gPSBrdi5WYWx1ZSA/PyBzdHJpbmcuRW1wdHk7CiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHN0cmluZ0RpY3QuQ291bnQgPT0gMCkgcmV0dXJuIG51bGw7CiAgICAgICAgICAgIHJldHVybiBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4geyBzdHJpbmdEaWN0IH07CiAgICAgICAgfQogICAgICAgIGNhdGNoIHsgfQogICAgICAgIHJldHVybiBudWxsOwogICAgfQoKICAgIHByaXZhdGUgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4gR2V0VmlkZW9DYWxsVXJsc0xpc3QoZHluYW1pYyBzb3VyY2UpCiAgICB7CiAgICAgICAgaWYgKHNvdXJjZSA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgdHJ5CiAgICAgICAgewogICAgICAgICAgICBpZiAoIUhhc1Byb3BlcnR5KHNvdXJjZSwgInZpZGVvQ2FsbFVybHMiKSkgcmV0dXJuIG5ldyBMaXN0PERpY3Rpb25hcnk8c3RyaW5nLCBzdHJpbmc+PigpOwogICAgICAgICAgICB2YXIgdXJscyA9IHNvdXJjZS52aWRlb0NhbGxVcmxzOwogICAgICAgICAgICBpZiAodXJscyA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgICAgIHZhciBsaXN0ID0gdXJscyBhcyBJRW51bWVyYWJsZTxvYmplY3Q+OwogICAgICAgICAgICBpZiAobGlzdCA9PSBudWxsKSByZXR1cm4gbmV3IExpc3Q8RGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4+KCk7CiAgICAgICAgICAgIHZhciByZXN1bHQgPSBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4oKTsKICAgICAgICAgICAgZm9yZWFjaCAodmFyIGl0ZW0gaW4gbGlzdCkKICAgICAgICAgICAgewogICAgICAgICAgICAgICAgdmFyIGRpY3QgPSBpdGVtIGFzIElEaWN0aW9uYXJ5PHN0cmluZywgb2JqZWN0PjsKICAgICAgICAgICAgICAgIGlmIChkaWN0ICE9IG51bGwpCiAgICAgICAgICAgICAgICB7CiAgICAgICAgICAgICAgICAgICAgdmFyIHN0cmluZ0RpY3QgPSBuZXcgRGljdGlvbmFyeTxzdHJpbmcsIHN0cmluZz4oKTsKICAgICAgICAgICAgICAgICAgICBmb3JlYWNoICh2YXIga3YgaW4gZGljdCkKICAgICAgICAgICAgICAgICAgICAgICAgc3RyaW5nRGljdFtrdi5LZXldID0ga3YuVmFsdWU/LlRvU3RyaW5nKCkgPz8gc3RyaW5nLkVtcHR5OwogICAgICAgICAgICAgICAgICAgIHJlc3VsdC5BZGQoc3RyaW5nRGljdCk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIHJlc3VsdDsKICAgICAgICB9CiAgICAgICAgY2F0Y2gKICAgICAgICB7CiAgICAgICAgICAgIHJldHVybiBuZXcgTGlzdDxEaWN0aW9uYXJ5PHN0cmluZywgc3RyaW5nPj4oKTsKICAgICAgICB9CiAgICB9Cn0K"
640
- }
641
- }
642
- ]
643
- },
644
585
  {
645
586
  "key": "end-meeting",
646
587
  "target": "meet-completed",